2

ユーザー アカウントを格納する MySql データベースにテーブルがあります。列の 1 つである expires には有効期限が格納されますが、デフォルトは NULL です。有効期限を削除してデフォルト値に戻す必要があります。

現在、私の CRUD ルーチンはすべて、MySqlCommand とパラメーターを使用して記述されています。これは MySqlParameter で直接行うことができますか? それとも、この不測の事態を処理するために別のコマンド オブジェクトを作成する必要がありますか?

4

3 に答える 3

3

問題はDBNullで、次のことを行いました:

command.Parameters.AddWithValue("@parameter", null);

コンパイルOK。

于 2008-09-12T04:02:21.970 に答える
0

あなたが話している条件は明らかではありません。列をデフォルト値に設定する場合は、DbNull.Valueを使用できます。

command.AddWithValue("@param", DbNull.Value);

or

command.Parameters.Add("@param", <data type>).Value = DBNull.Value;
于 2008-09-09T05:31:47.957 に答える
0

私は通常、デフォルト/空白にすることを目的とした値をコードで null に設定し、クエリを実行する前に、次のループを実行します。

foreach(MySqlParameter param in cmd.Parameters)
    if (param.Value == null) param.Value = DBNull.Value;
于 2010-11-22T19:20:24.633 に答える