メソッドにはいくつかのクエリがあります。条件に応じて、特定のクエリが実行されます。各クエリは同じパラメーターを使用します。
例えば:
public static void Method(param1, param2, param3)
{
....
cmd.CommandType = CommandType.Text;
if(Condition1)
{
cmd.CommandText = "select * from Table1 where id=@id"
cmd.Parameters.AddWithValue("@id", param1);
cmd.ExecuteNonQuery();
foreach(int i in IntegerList)
{
....
cmd.CommandText = "insert into Table2(id,type,model) values(@id,@type,@model)
cmd.Parameters.AddWithValue("@id", param1);
cmd.ExecuteNonQuery();
....
}
}
else
{
cmd.CommandText="select * from Table3 where id = @id"
cmd.Parameters.AddWithValue("@id", param1);
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = cmd;
DataSet ds = new DataSet();
da.Fill(ds);
cmd.Dispose();
da.Dispose();
....
}
cmd.CommandText = "delete from Table3 where id = @id and model=@model..."
....
}
@id
私の質問は、別のクエリを実行する必要があるたびにパラメーターを追加し続けるとエラーが発生するか、クエリの実行後にパラメーターが削除されるかということです。