問題:
嘗試使用ExecuteNonQuery 執行 命令時),遇到錯誤,表示連線屬性尚未初始化。是什麼原因導致此問題?
答案:
錯誤訊息「ExecuteNonQuery:Connection 屬性尚未初始化」表示 SqlConnection 物件尚未初始化正確指派給 SqlCommand 物件。若要解決此問題,必須明確設定 SqlCommand 的連線屬性。
解決方案:
分配連接的一種方法是透過 SqlCommand類別的建構子:
cmd.InsertCommand = new SqlCommand("INSERT INTO Application VALUES (@EventLog, @TimeGenerated, @EventType, @SourceName, @ComputerName, @InstanceId, @Message) ", connection1);
或者,可以指派連接屬性直接:
cmd.InsertCommand.Connection = connection1;
其他注意事項:
其他注意事項:
using (var connection1 = new SqlConnection(@"Data Source=.\sqlexpress;Initial Catalog=syslog2;Integrated Security=True")) using (var cmd = new SqlDataAdapter()) using (var insertCommand = new SqlCommand("INSERT INTO Application VALUES (@EventLog, @TimeGenerated, @EventType, @SourceName, @ComputerName, @InstanceId, @Message) ")) { insertCommand.Connection = connection1; cmd.InsertCommand = insertCommand; // Other code... connection1.Open(); insertCommand.ExecuteNonQuery(); }
以上是為什麼 `ExecuteNonQuery()` 會失敗並出現「未初始化的連線屬性」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!