SqlDateTime 溢出。必须介于 1/1/1753 12:00:00 AM 和 12/31/9999 11:59:59 PM 之间。
这个是哪里的问题 帮忙解决一下
[解决办法]
输入的时间超过了系统限制的范围,你调试下把看看报错的那个地方时间值是多少
[解决办法]
[解决办法]
Database db = DatabaseFactory.CreateDatabase();
DbCommand cmd = db.GetSqlStringCommand(SQL_INSERT);
db.AddInParameter(cmd, "@NewsID", DbType.Int64, info.NewsID);
db.AddInParameter(cmd, "@CategoryID", DbType.Int32, info.CategoryID);
db.AddInParameter(cmd, "@ActivityID", DbType.Int64, info.ActivityID);
db.AddInParameter(cmd, "@ActivityName", DbType.String, info.ActivityName);
db.AddInParameter(cmd, "@NewsTitle", DbType.String, info.NewsTitle);
db.AddInParameter(cmd, "@NewsContent", DbType.String, info.NewsContent);
db.AddInParameter(cmd, "@BeginDate", DbType.DateTime, info.BeginDate);
db.AddInParameter(cmd, "@EndDate", DbType.DateTime, info.EndDate);
db.AddInParameter(cmd, "@CreateDate", DbType.DateTime, info.CreateDate);
db.AddInParameter(cmd, "@ActivityBeginDate", DbType.DateTimeinfo.ActivityBeginDate);
db.AddInParameter(cmd, "@ActivityEndDate", DbType.DateTime, info.ActivityEndDate);
db.AddInParameter(cmd, "@CompanyAbbreviationName", DbType.String, info.CompanyAbbreviationName);
db.ExecuteScalar(cmd);
最后报错
[解决办法]
txtBeginDate.Text和txtEndDate.Text的值是什么?
[解决办法]
你可能是忘记给某个时间字段赋值了,你检查一下,比如一个模型层对象里有AddTime和ModifyTime,而你只给一个字段赋了值,却忘记另一个字段了,就会出现这个错误,其实并不是C#中的DateTime的最小日期超出了Sql的日期范围,而是某个日期字段本来该赋值的,但你却没有给它赋值,系统就自动用C#的DateTime的最小日期给它赋了值,结果就造成这个错误了,它这个错误是提示你有一个字段没有赋值,而不是表面上说的那个意思,你好好检查一下
[解决办法]
你给值是正确的,但应该存在细节问题,你断点跟综一下,txtBeginDate.Text.Trim()得的值是什么?
有可能不是你想像的那个值,断点跟综一下
[解决办法]
你insert那么多字段,所有字段都有赋值吗?特别是有日期的字段。
数据库中你insert是否可以为空,不能为空的话,就必须给其赋值