SQLiteでExecuteScalarで値を取得する際に
var value = cmd.ExecuteScalar();
if (DBNull.Value.Equals(value))
{
// 存在しない
}
else
{
// 存在する
}
としても上手く判定出来ない?デバッグ作業で分かったのは
if (DBNull.Value.Equals(value)
{
// 存在しない
}
else if (value == null)
{
// null
}
else
{
// 存在する
}
とすると「存在しない」ではなく「null」になる。これが現在利用している環境のバグなのか仕様なのか謎だな!
追記 2023.2.16 18:25
Windows 11 Pro 22H2 ビルド 22621.1265
Visual Studio Community 2022 Ver. 17.4.4
Sysrem.Data.SQLite.Core Ver. 1.0.116
0 件のコメント:
コメントを投稿