簡體   English   中英

插入查詢語法問題

[英]insert query syntax problem

我有一個SQL查詢如下

  String S = Editor1.Content.ToString();
     Response.Write(S);   
    string sql = "insert into testcase.ishan(nmae,orders) VALUES ('9',@S)";
   OdbcCommand cmd = new OdbcCommand(sql, myConn);
            cmd.Parameters.AddWithValue("@S", S); 
            cmd.ExecuteNonQuery();

錯誤: Column 'orders' cannot be null at System.Data.Odbc.OdbcConnection.HandleError

最好使用類似:

var sqlCommandText = "insert into testcase.ishan(nmae,orders) VALUES ('9', @S)";
using (var connection = new SqlConnection())
{
    using (var command = new SqlCommand(sqlCommandText , connection))
    {
        command.Parameters.AddWithValue("@S", S);
        command.ExecuteNonQuery();
    }
}

使用參數可以防止SQL注入 我相信,安德魯斯解決方案不會。

如果需要,ExecuteNonQuery()將返回受影響的行數。

using語句將負責正確處理連接,因此之后,您將不再有打開的連接。 這是因為SqlConnection實現IDisposable。

暫無
暫無

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

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