Sub ConnectionExample1() Dim cnn As ADODB.Connection Set cnn = New ADODB.Connection ' 用ODBC打开连接. cnn.Open "Pubs", "sa", "" ' 检查是否完成连接 If cnn.State = adStateOpen Then MsgBox "Welcome to Pubs!" Else MsgBox "Sorry. No Pubs today." End If 关闭connection对象 cnn.Close End Sub 如果你只需要连接一个数据源。下面的代码要比上面的简单。作为选择,你可以创建一个connection对象,在调用open方法前你可以先设置ConnectionString属性。这种方法容许你连接一个数据源后再重新用这个对象再连接另一个数据源。 Sub ConnectionExample2() Dim cnn As ADODB.Connection Set cnn = New ADODB.Connection ' 用ODBC DSN 建立连接 cnn.ConnectionString = "DSN=Pubs;UID=sa;PWD=;" cnn.Open ' 检查是否与数据源建立了连接. If cnn.State = adStateOpen Then MsgBox "Welcome to Pubs!" Else MsgBox "Sorry. No Pubs today." End If '关闭connection对象 cnn.Close End Sub 在你对CONNECTION对象建立连接前,你可以设置它的其它属性。例如,你可以设置连接超时。
Sub ConnectionExample3() Dim cnn As ADODB.Connection Set cnn = New ADODB.Connection ' 设置CONNECTION属性 cnn.ConnectionString = "DSN=Pubs;UID=sa;PWD=;" cnn.ConnectionTimeout = 30 ' 打开connection 对象 cnn.Open ' 检查是否已经连接上数据源 If cnn.State = adStateOpen Then MsgBox "Welcome to Pubs!" Else MsgBox "Sorry. No Pubs today." End If ' 关闭connection对象 cnn.Close End Sub ConnectionString属性的语法结构假定数据源已经被建立或利用系统管理员的身份使用ODBC.不依靠存在的odbc数据源变得流行起来。这样就减轻了安装的负担。下面的例子是一个连接SQL SERVER的可选择性的方法,仅依靠本身存在的odbc driver
. Sub ConnectionExample4() Dim cnn As ADODB.Connection Set cnn = New ADODB.Connection '利用引用ODBC DRIVER打开CONNECTION对象 cnn.ConnectionString = "driver={SQL Server};" & _ "server=rgreennt;uid=sa;pwd=;database=pubs" cnn.Open ' Find out if the attempt to connect worked. '检查是否已经建立连接 If cnn.State = adStateOpen Then MsgBox "Welcome to Pubs!" Else MsgBox "Sorry. No Pubs today." End If ' 关闭CONNECTION对象 cnn.Close End Sub 现在ODBC DRIVER 有更广的变化,你可以用ADO和数据源对话。不久将会有更的的OLE DB提供者与数据源建立连接。The Microsoft® OLE DB Provider for ODBC是当前ADO默认的提供者。你能用不同的提供者设置CONNECTION对象的provider属性。
Sub ConnectionExample5() Dim cnn As ADODB.Connection Set cnn = New ADODB.Connection '设置PROVIDER属性利用OLE DB Provider for ODBC cnn.Provider = "MSDASQL" '用ODBC DSN打开CONNECTION对象 cnn.ConnectionString = "driver={SQL Server};" & _ "server=rgreennt;uid=sa;pwd=;database=pubs" cnn.Open
'检查是否连接上数据源 If cnn.State = adStateOpen Then MsgBox "Welcome to Pubs!" Else MsgBox "Sorry. No Pubs today." End If
'关闭CONNECTION对象 cnn.Close
End Sub 上面的代码设置PROVIDER属性不是必须因为ADO的默认提供者就是OLE DB PROVIDER FOR