首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

DateTime类型为空时,怎么插入

2012-01-02 
DateTime类型为空时,如何插入?我的数据库中有一个时间字段,如果时间为空时,我想让数据库中相应字段变为NUL

DateTime类型为空时,如何插入?
我的数据库中有一个时间字段,如果时间为空时,我想让数据库中相应字段变为NULL,当文本框中不选择时,我将其赋为 "9999-12-30   00:00:00 "
然后想让其为NULL,可是插入的值却是1900-1-1   00:00:00,应该怎么插入?

strSql.Append( "insert   into   t_Contract( ");
strSql.Append( "Contract_EndDate,Contract_DelFlag ");
strSql.Append( ") ");
strSql.Append( "   values   ( ");

if(Contract_EndDate==Convert.ToDateTime( "9999-12-30   00:00:00 "))
{
strSql.Append( " ' "+DBNull.Value+ " ', ");
}
else
{
                  strSql.Append( " ' "+Contract_EndDate+ " ', ");
}

strSql.Append( "   0   ");
strSql.Append( ") ");

[解决办法]
DateTime没有空值 默认赋值的
if(Contract_EndDate==Convert.ToDateTime( "1900-1-1 00:00:00 "))
[解决办法]
一定要null啊,加一个默认时间不行吗,做的什么啊,有这种要求
[解决办法]
也可以这样进行比较
if(Contract_EndDate==DateTime.MinValue)

[解决办法]
"9999-12-30 00:00:00 "
超出日期型的范围了

"1900-1-1 00:00:00 " 是空插入的默认值

在前台显示的时候 可以将 "1900-1-1 00:00:00 " 替换为空

[解决办法]
你直接在数据库中把DateTime改为其他的Nchar
DateTime微软规定了不可为Null

热点排行