SqlDateTime 溢出。必须介于 1/1/1753 12:00:00 AM 和 12/31/9999 11:59:59 PM 之间

来源:百度知道 编辑:UC知道 时间:2024/05/29 04:34:55
SqlDateTime 溢出。必须介于 1/1/1753 12:00:00 AM 和 12/31/9999 11:59:59 PM 之间。 这个问题 应该怎样处理 我是想做没有值就等于空 应该 但是等于空会有默认值
一楼回答的有问题 我要的是没有值 就给个空值 但空值要转换 空值转换就变成了 0001-01-01 就是这个问题 应该怎样处理

如果你那个字段允许为NULL,那么就判断一下,有值就插入,没有就插入NULL
比如:
有值:
insert into table1 (col1) values('2006-1-1')
没有值:
insert into table1 (col1) values(null)

在C#中,数据NULL值转换成DataTime时为DateTime.MinValue=0001-01-01
但数据库时间范围是1/1/1753 -
解决方法为
if (date == System.DateTime.MinValue)
XXX= System.DateTime.Now;
else
XXX=date;

-------------
通常情况下,我们不在日期字段里存入空值.
当没有日期值时存入'1900-1-1',这个叫做默认时间值。
在读取数据的时候,遇到1900-1-1就认为数据库该时间没有值