私LOG
は3つの列を持つテーブルを使用しています:
Login nvarchar(50)
Date int
Logout nvarchar(50)
Logout
列に値を入力しない場合は、NULL
保存する必要があります。しかし、私にとっては、として保存され" "
ます。
スクリーンショット 1 にテーブル定義を、スクリーンショット 2 にテーブル データを示します。
私LOG
は3つの列を持つテーブルを使用しています:
Login nvarchar(50)
Date int
Logout nvarchar(50)
Logout
列に値を入力しない場合は、NULL
保存する必要があります。しかし、私にとっては、として保存され" "
ます。
スクリーンショット 1 にテーブル定義を、スクリーンショット 2 にテーブル データを示します。
INSERT INTO log (Login, Date, Logout) VALUES(...) を使用している INSERT クエリで、Logout フィールドの値として "" を使用している可能性があります。挿入ステートメントをチェックして、この間違いを犯していないことを確認してください。
このようにしてみてください
if (!string.IsNullOrEmpty(Impdate.ToString()))
{
cmd.Parameters.Add("@Logout", SqlDbType.Date).Value = Impdate;
}
else
{
cmd.Parameters.Add("@Logout", SqlDbType.Date).Value = "";
}
このコードを試してください。
if (!string.IsNullOrEmpty(Impdate.ToString()))
{
cmd.Parameters.Add("@Logout", SqlDbType.Date).Value = Impdate;
}
else
{
cmd.Parameters.Add("@Logout", SqlDbType.Date).Value = SqlDateTime.Null;
}