[英]InvalidOperationException on SqlConnection.Open
我正在設計一個小型IRC機器人,該機器人將用於聊天中的游戲。
源,程序和SQL連接的詳細信息永遠不會向公眾公開,因此我不必擔心安全性。
我的連接字符串如下:
"Server=sql.mydomain.com,3306;Database=sqldatabasename;User id=sqlusername;Password=sqlpassword;"
不用說,我已經在這里混淆了細節。 在四處搜尋並找到http://www.developerfusion.com/tools/sql-connection-string/之后,我用它來生成此字符串:
"Data Source=sql.mydomain.com,3306;Initial Catalog=sqldatabasename;Integrated Security=False;User ID=sqlusername;Password=sqlpassword;"
在這兩種情況下,我都嘗試使用以下代碼打開連接:
using (var sql = new SqlConnection(connectionString))
{
sql.Open();
//SQL operations here
}
但是我每次都在sql.Open()上收到InvalidOperationException。 我絕對可以確定我要輸入的連接字符串的詳細信息是正確的,並且根據我在google上找到的信息,最可能導致異常的原因似乎是連接字符串,所以我不確定我做錯了。
編輯:異常的消息只是“內部連接致命錯誤”。 根據MSDN,SqlConnection.Open上的InvalidOperationException只能表示2之1:連接字符串中未提供服務器或數據源,或者連接已打開。
我假設如果服務器或數據源無效,第一個也可以觸發,因為我嘗試用以下方法打開它:
if (sql.State != ConnectionState.Open) sql.Open();
而且我仍然收到錯誤。
進行了一些搜索,您的字符串似乎很完美。 甚至將我的字符串更改為完全屬於您的字符串,並在這里起作用。 我唯一能找到的就是這個,但是我不知道它是否對您有幫助還是值得一試(值得一試)。
“數據源= tcp:sql.mydomain.com,3306;初始目錄= sql數據庫名稱;集成安全性= False;用戶ID = sqlusername;密碼= sql密碼;”
在這個網站上看到了它,但再次,我不知道它是否改變了任何東西。
希望能幫助到你
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.