读书人

请教ado连接SQL Server2000的有关问题

发布时间: 2012-01-07 21:41:55 作者: rapoo

请问ado连接SQL Server2000的问题
我在VB 6.0中用ado连接不上我的本机SQL Server2k,请问需要怎么样的步骤?

[解决办法]
VB通过ADO连接SQL数据的两种方法

VB使用ADO数据库可以分为有源数据库和无源数据库,即是否使用了DSN数据源,如下例:
1、在连接数据库前首先要在VB菜单中“工程”-“引用”从中选择 microsoft activeX Data objects 2.6 library和 microsoft activeX Data objects recordset 2.6两个组件,这是在连接数据前所必做的工作。
2、接下来定义ADO的连接对象,如下所示:
Set conn = New ADODB.Connection
Set rs = New ADODB.Recordset

第一种方法采用的是无源的数据库连接方法
conn.ConnectionString = "Driver={sql server};server=JSZX3-11;uid=sa;pwd=;database=wzc "
conn.ConnectionTimeout = 30
conn.Open
rs.Open "select 用户名,密码 from login where 用户名= ' " & Trim(Combo1.Text) & " ' And 密码= ' " & Trim(Text1.Text) & " ' ", conn, adOpenStatic, adLockReadOnly, adCmdText
If rs.EOF = True And rs.BOF Then
m = MsgBox( "请重新登录 ", vbExclamation)
Text1.Text = " "
Text1.SetFocus
Else
Form1.Hide
End If
rs.Close

这是第二种方法连接数据库的方法,这一种方法是采用有源的方法与数据库连接的方法,代码如下所示:
Set conn = New ADODB.Connection
Set rs = New ADODB.Recordset
conn.ConnectionString = "DSN=login;uid=sa;pwd=; "
conn.ConnectionTimeout = 30
conn.Open
rs.Open "select 用户名 from login ", conn, adOpenStatic, adLockReadOnly, adCmdText
Dim i As String
For t = 0 To Val(rs.RecordCount) - 1
i = Trim(rs.Fields( "用户名 ").Value)
rs.MoveNext
Combo1.AddItem i
Next t
rs.Close
[解决办法]
Dim Conn As New ADODB.Connection
strcon = "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Password=sa;Initial Catalog=supplychain;Data Source=192.168.10.250 "
conn.CursorLocation = adUseClient
conn.Open strcon
引用miscroft activex data objects 2.0

读书人网 >VB

热点推荐