もう一つ迷惑なものですが、おそらく単純なものです。SQLパラメータをプログラムで作成する
私はユーザー入力に基づいてクエリの可能なwhere節をいくつか持っていますが、私はこれらをプログラムで追加できますか?例えば
:
wherequery = @"WHERE fieldname = @p_FieldName AND ";
if (txtValue.textLength > 0){
wherequery += "fieldname2 = @p_FieldName2 AND ";
}
query = @"SELECT * FROM tabe" + wherequery;
sql = connection.CreateCommand();
sql.CommandText = query;
がどのように私はそのためのパラメータをやって行くのでしょうか? ArrayLists、Dictionariesなどいくつかのメソッドを試しましたが、その方法を見つけることができません。
SqlParameter[] sqlparams;
wherequery = @"WHERE fieldname = @p_FieldName AND ";
if (txtValue.textLength > 0){
wherequery += "fieldname2 = @p_FieldName2 AND ";
sqlparams.Parameters.Add("@p_FieldName2 ", SqlDbType.VarChar).Value = txtValue.text;
}
query = @"SELECT * FROM tabe" + wherequery;
sql = connection.CreateCommand();
sql.CommandText = query;
sql.Parameters.Add(sqlparams);
'Add'メソッドのパラメータを変更しましたか?私は主にWeb開発者ですが、これは 'AddWithValue'ではありませんか?そして、これはどのように変化しますか? – Curt
SqlParameterオブジェクトのインスタンス化を忘れました。私は適切な編集をしました。 –