sql >> データベース >  >> RDS >> Sqlserver

's' 付近の構文が正しくありません。文字列 ')' の後の閉じていない引用符

    挿入するデータには、単一引用符などの特殊文字が含まれている可能性があります。パラメーター化されたクエリに変更して、値が適切にエスケープされるようにします。良い例と説明は http://www.codinghorror.com/blog/2005/04/give-me-parameterized-sql-or-give-me-death.html .

    [編集:例を追加しました。 ]

    たとえば、最初の関数の内容を次のように置き換えます。

    SqlCommand insertNewAreaPath = new SqlCommand(
        "INSERT INTO InterationPath (ID, NodePath) VALUES(@ID, @NodePath)",     
        conDS_ReleaseCriterions);
    insertNewAreaPath.Parameters.Add("@ID", dr[0]);
    insertNewAreaPath.Parameters.Add("@NodePath", dr[2]);
    insertNewAreaPath.ExecuteNonQuery();
    


    1. C#のプロシージャへの入力としてデータテーブルを渡す方法は?

    2. PHPを介したmysqlによる再帰的なツリートラバーサル

    3. oracle plsql:XMLを解析して表に挿入する方法

    4. MYSQLのより高いLIMITオフセットがクエリを遅くするのはなぜですか?