OLEDB连接SQLSERVER出错 使用ODBC却可以

神之左手 2013-04-19 04:39:07
在论坛里找了半天没有找到相关答案,故直接发帖求助

问题描述:
使用VB连接SQLSERVER数据库,数据库连接字符书写有两种方式,在下用ODBC的方式却可以正常连接,但是哟给OLEDB的方式却总提示:驱动程序管理器 未发现数据源名称并且未指定默认驱动程序 请问大家是什么问题

程序相关:
WIN7 SQLSERVER2005 VB6(SP6)

程序代码:

'连接方式一 ODBC 可以正常使用
ConnectStr = "Driver={sql server};server=" & SerName & ";Database=" & DBname & ";UId=" & Uid & ";PWD=" & Pwd

'连接方式二 OLEDB方式 提示错误
ConString = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=" & DBname & ";Data Source=" & SerName & ";User ID=" & Uid & ";Password=" & Pwd & ""


另外OLEDB的连接方式中有诸多不明白
1. 其中Provider=SQLOLEDB.1 网上也有写成Provider=SQLOLEDB 后面的.1表示版本呢还是其他
2. Integrated Security=SSPI 这个是什么意思
3. Persist Security Info=False 这个是什么意思
...全文
217 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
zbdzjx 2013-04-22
  • 打赏
  • 举报
回复
新建一个文件,改名为a.udl,双击此文件,会提示连接数据库,返回第一个页面,选择好SQL Server的连接,再回第二个页面,输入服务器、用户名、密码、数据库,再点测试连接,如果成功,保存,关闭。 然后,用记事本看a.udl文件的内容,基本上就是连接字符串了。
神之左手 2013-04-22
  • 打赏
  • 举报
回复
希望了解的朋友不惜赐教
神之左手 2013-04-19
  • 打赏
  • 举报
回复
原谅我的执着 其实用driver的方式连接是没有问题的 但项目中同事写法是用Provider的方法 他的环境是2003的系统 其实说白了 我的意图并不是只要实现连接数据库 如此其实我用driver的方法就行了 而不必关注另一个连接方法 但作为技术人员我还是想了解这两种方法的连接区别到底在哪里 为何在我本地我用driver的方法可行 但Provider的方法却不可用
饮水需思源 2013-04-19
  • 打赏
  • 举报
回复
不要用信认连接,改为使用用户名密码连接试试: ConString= "driver=SQL Server;server=实例名;uid=SA;pwd=SA的密码;database=数据库名"
神之左手 2013-04-19
  • 打赏
  • 举报
回复
问题重新描述 刚犯了个低级错误 其中连接的变量名写错了 一个是ConnectStr 一个是ConString 所以导致错误提示是 “驱动程序管理器 未发现数据源名称并且未指定默认驱动程序” 把ConString 修改为 ConnectStr 运行时的错误提示是 "DBNMPNTW拒绝访问"

22,210

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧