-2

LOGは3つの列を持つテーブルを使用しています:

  • Login nvarchar(50)
  • Date int
  • Logout nvarchar(50)

Logout列に値を入力しない場合は、NULL保存する必要があります。しかし、私にとっては、として保存され" "ます。

スクリーンショット 1 にテーブル定義を、スクリーンショット 2 にテーブル データを示します。

ここに画像の説明を入力

ここに画像の説明を入力

4

4 に答える 4

0

INSERT INTO log (Login, Date, Logout) VALUES(...) を使用している INSERT クエリで、Logout フィールドの値として "" を使用している可能性があります。挿入ステートメントをチェックして、この間違いを犯していないことを確認してください。

于 2013-05-03T05:56:24.140 に答える
0

このようにしてみてください

if (!string.IsNullOrEmpty(Impdate.ToString()))
                {
                    cmd.Parameters.Add("@Logout", SqlDbType.Date).Value = Impdate;
                }
                else
                {
                    cmd.Parameters.Add("@Logout", SqlDbType.Date).Value = "";
                }
于 2013-07-18T06:49:41.987 に答える
0

このコードを試してください。

if (!string.IsNullOrEmpty(Impdate.ToString()))
                {
                    cmd.Parameters.Add("@Logout", SqlDbType.Date).Value = Impdate;
                }
                else
                {
                    cmd.Parameters.Add("@Logout", SqlDbType.Date).Value = SqlDateTime.Null;
                }
于 2013-05-03T06:38:38.803 に答える