簡単な質問は、MS Query のフィールド値を 1 ずつインクリメントするにはどうすればよいかということです。int
パラメータ化された方法を使用して、SQL Server データベースの列に 1 (+1) を追加しようとしています。変数に対する i++ 操作に似ています。私は次の方法を使用しています:
public static int UpdateFieldCount(int parameterId)
{
// variable to hold the number of rows updated or the success of the query
int updatesuccess = 0;
// build your connection string
string connectionstring = WebConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
SqlConnection conn = new SqlConnection(connectionstring);
// build your SQL Query statement
string SQLString = "UPDATE TableName SET TableField + 1 WHERE SomeFilterField = @ParameterID";
SqlCommand sqlcmd = new SqlCommand(SQLString, conn);
sqlcmd.Parameters.AddWithValue("@ParameterID", parameterID);
conn.Open();
updatesuccess = sqlcmd.ExecuteNonQuery();
conn.Close();
return updatesuccess;
}
このメソッドは、SQL クエリのプラス記号 (+) に関連する次のエラーをスローしています。
「+」付近の構文が正しくありません。
説明: 現在の Web 要求の実行中に未処理の例外が発生しました。エラーの詳細とコード内のどこでエラーが発生したかについては、スタック トレースを確認してください。
例外の詳細: System.Data.SqlClient.SqlException: '+' 付近の構文が正しくありません。
ソース エラー:
315 行目:
316 行目: conn.Open();
行 317: updatesuccess = sqlcmd.ExecuteNonQuery();
行 318: conn.Close();
行 319:ソース ファイル: c:\testdevlocation\appname\App_Code\ClassFileName.cs 行: 317
これに関するアドバイスはありますか?