首页 文章

-Infinity为NpgsqlParameter Timestamp字段添加到数据库;期待NULL

提问于
浏览
1

我正在我的PostgresSQL表中插入一条记录,通过DBNull.Value获取一个没有时区字段的时间戳,使用NpgsqlParameter,如下所示:

ncmd.Parameters.Add(new NpgsqlParameter(":EndDate", NpgsqlDbType.Timestamp));
DateTime? dtval = sr.GetDateTime("EndDate");
ncmd.Parameters["EndDate"].IsNullable = true;
if (dtval.HasValue)
    ncmd.Parameters["EndDate"].Value = dtval;
else
    ncmd.Parameters["EndDate"].Value = DBNull.Value;

当我尝试仅选择那些字段为空值的记录时,我使用“Select * From”EVAL“Where”EndDate“IS NULL”但不返回任何内容 . 当我在pgAdmin中读取表数据时,我在字段中看到值“-infinity” . 请问有人能告诉我如何为NpgsqlParameter传递空值吗?

提前致谢,

达尼洛达席尔瓦

1 回答

  • 0

    对不起,我发现了我的错误 . 当我读取要从datareader插入的数据时,我得到DateTime字段的默认值,当它为null时,我插入默认值(DateTime)而不是DBNull.Value . 现在我正在测试dtval.HasValue && dtval!= default(DateTime),一切顺利 . 谢谢 .

相关问题