运行一个简单的VBA脚本来testing一个连接

我试图testing一个GoDaddy SQL Server数据库的连接。 我得到一个“无效的连接string属性”。

这个脚本有什么问题?

Dim cnn As ADODB.Connection Dim canConnect As Boolean Public Sub TestConnection() Set cnn = New ADODB.Connection cnn.Open "Provider=sqloledb;Data Source=GoDaddyServer.com;Initial Catalog=dBase1;UserID=userID; Password='password';" If cnn.State = adStateOpen Then canConnect = True cnn.Close End If MsgBox canConnect End Sub 

IIRC,你必须在连接string之外指定Provider属性,如下所示:

 Dim conn Set conn = New ADODB.Connection conn.Provider = "sqloledb" conn.Open "Data Source=GoDaddyServer.com; Initial Catalog=dbase1; User ID=userid; Password=pass;" 

我从来没有见过像SQL Server连接string中引用的密码。 尝试删除引号:

 “Provider = sqloledb; Data Source = GoDaddyServer.com; Initial Catalog = dBase1; User ID = userID; Password = password;”   

你可能会发现connectionstrings.com将来有用。

可以在连接string中直接指定提供者

 Dim cnn as ADODB.Connection Dim cnn_str as String cnn_str = "Provider=SQLOLEDB;Data Source=SERVER;Initial Catalog=DB;User ID=sa;Password=PASSWORD" Set cnn = New ADODB.Connection cnn.Open cnn_str