设为首页 收藏本站
查看: 844|回复: 0

[经验分享] VC_ADO连接SQLSERVER时连接字符串的模式

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2014-7-2 09:40:51 | 显示全部楼层 |阅读模式
一、连接SQL SERVER的第一种连接字串:
是针对数据库身份验证模式为”SQL SERVER 和 windows“而言,
连接字串为:
CString strConn;
strConn = ”Provider = SQLOLEDB.1;\
Persist Security Info = true;\
User ID = sa;\
Password=123456;\
Initial Catalog = tempdb;\
Data Source = 127.0.0.1”;
(包含 6 项,有用户名和密码,数据库名,服务器名(服务器名可以是网络上的,此时是一个IP地址))


二、连接SQL SERVER的第二种连接字串:

       针对身份验证模式为“仅 windows”,
连接字串为:
strConn= “
Provider = SQLOLEDB.1;\
Integrated Security=SSPI;\
Persist Security Info =false;\
Initial Catalog = tempdb;\
Data Source = (local)”;
(包含 5 项,因为已经有windows验证了,所以不再需要用户名和密码,如果是本机的SQL SERVER,那么服务器名可写为(local))


三、连接SQL SERVER的第二种连接字串:
仅针对ODBC的连接方式,
连接字串为:
strConn= “
Provider = SQLOLEDB;\
Server = (local);\
Database = tempdb;\
uid = sa;\
pwd=12345;"


以上三种连接方式,记住任意一种即可,推荐使用第二种


关于连接字串的问题,我们可以借助 udl 文件来处理~~
新创建一个空的txt文件.把扩展名修改为udl就行了.UDL本身是个文本文件.它的主要作用是查看配置好的数据库连接字.先配置好.然后使用记事本打开
eg:我们在桌面创建一个 test.udl 文件,1.如果要连接SQLserver数据库,【提供程序】选择:
microsoft ole db provider for sql server这一项,
2.【连接】中,服务器名称,选择RICHARDLEE(即本机服务器名称)
如果我们选择windows认证模式,就不用指定用户名和密码了,
【在服务器上选择数据库】这一栏,就填我们在sqlserver中,某个自己想连接的数据库 ,比如 test
再点击【测试连接】,如果连接成功,说明我们的连接字串都是对的~~
3.(我们自己填写的连接字串,在【所有】这一栏中可以看到)
4.把文件的后缀名改为*.txt打开后,就可以发现连接字串了,eg:
[oledb]
; Everything after this line is an OLE DB initstring
Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=test1;Data Source=RICHARDLEE

5.上面的连接字串就可以用在我们的程序中,比如
hr = m_pConnection.CreateInstance(__uuidof(Connection));

hr = m_pConnection->Open("Provider=SQLOLEDB.1;\
Integrated Security=SSPI;\
Persist Security Info=False;\
Initial Catalog=test1;\
Data Source=(local)","","",adModeUnknown);



(PS:连接字串中,各部分的先后顺序对数据库连接没有影响,即Integrated Security和Persist Security Info,谁在前谁在后,都无所谓)


************************************************************************************************************************
VC_ADO连接SQLSERVER的连接字串和VC-ADO连接ACCESS的连接字串有些不一样的地方~~

1.连接ACCESS时,常用
hr = m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\\test1.mdb","","",adModeUnknown);

即,连接字串为"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\\test1.mdb"
这里的Data Source=D:\\test1.mdb是ACCESS数据库的名称,除非数据库文件放在了当前工程路径下,否则要写全部路径名,并且要写数据库的后缀名
要注意,是”D:\\“,而不是”D:\“,写成后者,会出错
2.连接SQLSERVER时,
Initial Catalog=test1;这一项表示连接的数据库名,要注意,这里的test1是数据库的名称,不能给他加上路径,也不能加上后缀*.mdf,写成

Initial Catalog=D:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\test1.mdf;会出错~~






运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-21425-1-1.html 上篇帖子: SQL Server 触发器 下篇帖子: SQL 如果存在就更新,如果不存在就添加,使用 Merge 函数(SQ... 字符串
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表