簡體   English   中英

如何修復 ExecuteNonQuery 錯誤

[英]How to fix ExecuteNonQuery error

ExecuteNonQuery上拋出異常,我該如何解決?

string sqlQuery = "INSERT INTO transaction(ID,item_name,quantity,price,T_date) values (?,?,?,?,?)";
using (OleDbConnection conn = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\\KCdb.accdb"))
using (OleDbCommand cmd = new OleDbCommand(sqlQuery, conn))
{
    conn.Open();
    cmd.Parameters.AddWithValue("@ID", id);
    cmd.Parameters.AddWithValue("@item_name", item.ToString());
    cmd.Parameters.AddWithValue("@quantity", quantity);
    cmd.Parameters.AddWithValue("@price", price);
    cmd.Parameters.AddWithValue("@T_date", dt.ToString());
    cmd.ExecuteNonQuery();
}

為了指導你,我們需要例外,因為會有不同的失敗原因。 但是正如我在您的代碼中看到的那樣,在為參數分配值時有一些強制轉換,當您的參數是 DateTime 類型時,您應該將 DateTime 作為其值而不是字符串傳遞。 所以我認為你應該改變cmd.Parameters.AddWithValue("@T_date", dt.ToString()); cmd.Parameters.AddWithValue("@T_date", dt);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM