Function cnn() As ADODB.Connection '建立資料庫連接通用函式
Set cnn = New ADODB.Connection
cnn.Open "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;User ID=jsb;pwd=jsbjsb;Initial Catalog=專案臺賬資料庫;Data Source=" & ipaddress & ";"
End Function
這是我模塊中的資料庫通用連接函式,其中ipaddress是用來輸入資料庫所在機器的IP地址的,用一個inputbox來實作輸入,sql server2008設定的是混合登陸模式,局域網內的電腦也已經設定好,允許遠程訪問,也開啟了guest賬戶,并且用access資料庫都能實作各臺電腦的訪問,但sql server就不能,主要二個問題:
1.我用vb開發的軟體訪問本地的sql server資料庫可以實作連接訪問,但是在局域網其他電腦上就不能實作連接,會彈出“計算機名/GUEST登陸失敗”,但用access資料庫都能實作各臺電腦連接。
2.我感覺我的字串連接通用函式是不是有問題,就是這個賬戶名和密碼,User ID=jsb;pwd=jsbjsb;我就是特意把密碼寫錯,居然在本地也能連接上,說明程式在連接時并沒有使用這個賬號密碼,所以我在想是不是因此才會導致局域網遠程連接失敗。它是不是使用了默認的windows登陸模式,那個模式我沒設密碼。但是我用sql server management studio登陸選擇混合模式,是一定要輸入正確的賬號密碼才能登陸的,說明我的連接字串有問題,系統在連接時沒有采用混合模式登陸,請哪位大俠幫忙指點一下。
uj5u.com熱心網友回復:
剛試驗成功了,將字串改成cnn.Open "Provider=SQLOLEDB.1;Persist Security Info=true;User ID=jsb;pwd=jsbjsb;Initial Catalog=專案臺賬資料庫;Data Source=" & ipaddress & ";"就OK了,Integrated Security=SSPI這個刪掉就默認要采用user id的賬戶,Persist Security Info=true改為true就能自動保存密碼,不用每次建立連接都要輸入密碼,這樣在程式里面操作就不會報錯。uj5u.com熱心網友回復:
這個好久了
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/121714.html
