[英]Error during insert of record from asp.net into SQL Server database
這是我在按鈕單擊事件中的代碼
try
{
string ConnString = "Data Source=(LocalDB)\v11.0;AttachDbFilename=\\MOD03-PC\\Share Folder mod03\\amts\\amtsfuelconsuption\\AmtsFuelConsumption\\AmtsFuelConsumption\\App_Data\\AmtsDatabse.mdf;Integrated Security=True;Connect Timeout=900,providerName=System.Data.SqlClient";
SqlConnection con = new SqlConnection(@ConnString);
SqlCommand cmd = new SqlCommand("InsertBodyTypeMaster", con);
cmd.CommandTimeout = 0;
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("bodytypename", txtBTname.Text.ToString());
con.Open();
int k = cmd.ExecuteNonQuery();
if (k != 0)
{
lblmessage.Text = "Record Inserted Succesfully into the Database";
lblmessage.ForeColor = System.Drawing.Color.CornflowerBlue;
}
con.Close();
con.Dispose();
}
catch (Exception ex)
{
lblmessage.Text = ex.ToString();
}
我發現有些錯誤;
Connect Timeout=900,
更改為Connect Timeout=900;
providerName=System.Data.SqlClient
部分,因為您已經將.NET提供程序用於SQL Server。 .NET的提供程序名稱基於實現類是隱式的, 不需要在連接字符串中指定。 刪除時,您將不需要;
在Connect Timeout=900;
結束時Connect Timeout=900;
不再 using
語句自動處理連接和命令,而不是手動調用Close
或Dispose
方法。 AddWithValue
。 有時它可能會產生意外和令人驚訝的結果 。 使用Add
方法重載來指定您的參數類型及其大小。 最終連接字符串應為;
string ConnString = "Data Source=(LocalDB)\v11.0,AttachDbFilename=\\MOD03-PC\\Share Folder mod03\\amts\\amtsfuelconsuption\\AmtsFuelConsumption\\AmtsFuelConsumption\\App_Data\\AmtsDatabse.mdf;Integrated Security=True;Connect Timeout=900";
連接字符串中的連接超時屬性中的900后面有逗號而不是分號。
因為您的連接字符串很奇怪。 刪除那些;
並與替換它們,
。 另外,請確保正確拼寫它們。 應該像
string ConnString = "Data Source=(LocalDB)\v11.0,AttachDbFilename=\\MOD03-PC\\Share Folder mod03\\amts\\amtsfuelconsuption\\AmtsFuelConsumption\\AmtsFuelConsumption\\App_Data\\AmtsDatabse.mdf,Integrated Security=True,Connect Timeout=900;providerName=System.Data.SqlClient";
還有下面一行
SqlConnection con = new SqlConnection(@ConnString);
它應該是
SqlConnection con = new SqlConnection(ConnString);
您正在try
塊內調用Dispose()
,這是一個大錯誤,如下所示。 使用Using(...)
阻止(或) finally
阻止
try
{
....
con.Close();
con.Dispose();
}
應該
finally
{
con.Close();
con.Dispose();
}
看起來是時候開始閱讀文檔了。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.