首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

VB代码链接SQL2005有关问题,求解

2012-02-26 
VB代码链接SQL2005问题,求解Public Class Form1Private Sub Button1_Click(ByVal sender As System.Object

VB代码链接SQL2005问题,求解
Public Class Form1

  Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

  MsgBox(1)

  Dim Cnn As New ADODB.Connection '定义数据链接对象 ,保存连接数据库信息;请先添加ADO引用

  MsgBox(2)
  Dim Rs As New ADODB.Recordset '定义记录集对象,保存数据表

  MsgBox(3)
  Dim strCnn = "Provider=SQLOLEDB.1;Initial Catalog=qzsyck ;Data Source=服务大众;User ID=;Password=;Integrated Security=True;Persist Security Info=False;"

  MsgBox(4)
  Cnn.Open(strCnn)

  MsgBox("链接成功")

  Rs.Open("select * from userpw", Cnn) '定义SQL查询命令字符串

  MsgBox(6)

  End Sub
End Class


以上乃我的代码,VB链接SQL2005,但是运行到Cnn.Open(strCnn)这行时就报错
  -------多步 OLE DB 操作产生错误。如果可能,请检查每个 OLE DB 状态值。没有工作被完成。

该如何调试?是代码的问题还是数据库的问题?我是远程链接数据库的,还有,我已经添加引用了
Microsoft ADO Data Control
Microsoft DataGrid Control


[解决办法]
Provider=SQLOLEDB 是 SQL Server 2000 的驱动,2005 应该是:
 Provider=sqloledb;Data Source=服务大众;Initial Catalog=qzsyck ;Integrated Security=SSPI;

还有 Windows 验证是采用你当前登录用户进行连接的,服务大众\Administrator 看起来好像是服务器上的用户,不是你客户端的登录用户吧。
客户端需要用网络用户登录,并且该网络用户需要有 SQL Server 的访问权。
[解决办法]
2005 的贴错了
Provider=sqloledb;Data Source=服务大众;Initial Catalog=qzsyck ;Integrated Security=SSPI;
Provider=SQLNCLI;Server=大;Database=qzsyck ;Trusted_Connection=yes;
[解决办法]

探讨
diao编辑器
Provider=SQLNCLI;Server=服务大众;Database=qzsyck ;Trusted_Connection=yes;

热点排行