在打开 Connection 对象之前,必须定义有关数据源和连接类型的某些信息。 大部分信息由 Connection 对象的 Open 方法 的 ConnectionString 参数或 Connection 对象的 ConnectionString 属性 保存。 连接字符串包含由分号分隔的参数/值对列表,这些值括在单引号中。 例如:
Dim sConn As String
sConn = "Provider='SQLOLEDB';Data Source='MySqlServer';" & _
"Initial Catalog='Northwind';Integrated Security='SSPI';"
注意
还可以在连接字符串中指定 ODBC 数据源名称(DSN)或数据链接(UDL)文件。 有关 DSN 的详细信息,请参阅 ODBC 程序员参考中的 管理数据源。 有关 UDL 的详细信息,请参阅 OLE DB 程序员参考中的 数据链接 API 概述。
通常,通过使用相应的 连接字符串 作为参数调用 Connection.Open 方法来建立连接。 以下 Visual Basic 代码片段中显示了一个示例:
Dim oConn As ADODB.Connection
Dim oRs As ADODB.Recordset
Dim sConn As String
Dim sSQL as String
' Open a connection.
Set oConn = New ADODB.Connection
.Open
' Make a query over the connection.
sSQL = "SELECT ProductID, ProductName, CategoryID, UnitPrice " & _
"FROM Products"
Set oRs = New ADODB.Recordset
oRs.Open sSQL, , adOpenStatic, adLockBatchOptimistic, adCmdText
MsgBox oRs.RecordCount
' Close the connection.
oConn.Close
Set oConn = Nothing
此处 oRs.Open 采用 Connection 对象(oConn)变量作为其 ActiveConnection 参数的值。 此外,Connection.CursorLocation 属性假定 adUseServer的默认值。 这与上一部分中的 HelloData 示例形成对比。 以下指令将导致运行时错误。
oRs.MarshalOptions = adMarshalModifiedOnly
' Disconnect the Recordset.
Set oRs.ActiveConnection = Nothing