MSSQL的datetime格式一定是“2012-01-04 13:06:31.000”吗?哪里查看数据库的时间格式和修改?我写的程序在我这边跑是OK的,但到客户那边就报时间溢出
“SqlDateTime overflow. Must be between 1/1/1753 12:00:00 AM and 12/31/9999 11:59:59 PM ”我这边又无法模拟,看代码觉得完全OK啊。所有涉及到时间的都加了DateTime.Now啊,而且数据库的日期字段都设成可为空。所以我猜会不会跟用户环境有问题,比如说软件装在PC A上,数据库装在PC B上,但PC A的时间格式是yyyy/MM/dd这种,但数据库却是MM/dd/yyyy这种。如果谁也碰到过这种情况,帮忙分析一下,谢谢!
if (usersEntity == null)
{
usersEntity = new UsersEntity
{
GroupID = groupEntity.GroupID,
UserName = userName,
UserType = "USER",
UserEmail = email ?? string.Empty,
AddDate = DateTime.Now,
UpdateDate = DateTime.Now,
……
“SqlDateTime overflow. Must be between 1/1/1753 12:00:00 AM and 12/31/9999 11:59:59 PM ”我这边又无法模拟,看代码觉得完全OK啊。所有涉及到时间的都加了DateTime.Now啊,而且数据库的日期字段都设成可为空。所以我猜会不会跟用户环境有问题,比如说软件装在PC A上,数据库装在PC B上,但PC A的时间格式是yyyy/MM/dd这种,但数据库却是MM/dd/yyyy这种。如果谁也碰到过这种情况,帮忙分析一下,谢谢!
if (usersEntity == null)
{
usersEntity = new UsersEntity
{
GroupID = groupEntity.GroupID,
UserName = userName,
UserType = "USER",
UserEmail = email ?? string.Empty,
AddDate = DateTime.Now,
UpdateDate = DateTime.Now,
……
嗯,请问我SQL中的时间格式在哪里调?不是“控制面板-》“区域和语言选项”-》“区域选项(自定义)”。我设了没用。
//??
string sql ="....UpdateDate=getdate()";
问题可能出在你保存数据的部分,就是insert或update部分,
是不是没有使用SqlParameter而是接拼的
Sql Server Profiler这个搜一下就知道怎么用了