日期:2014-05-19  浏览次数:20585 次

为什么在我机子上插入所有日期都变成1900-1-1, 其它机子没问题的
如题

------解决方案--------------------
SET DATEFORMAT
设置用于输入 datetime 或 smalldatetime 数据的日期部分(月/日/年)的顺序。

语法

------解决方案--------------------
你是怎麼插入的?語句貼出來看看
------解决方案--------------------
应该是你在asp.net处理的问题,你可以把你的sql语句打印出来看看
------解决方案--------------------
--如果插入的日期前後沒有加上單引號,插入的數據就會變化成類似你說的樣子

Create Table TEST(ID Int, TestDate DateTime)
Insert TEST Select 1, '2007-03-26 '
Union All Select 2, 2007-03-26
GO
Select * From TEST
GO
Drop Table TEST
--Result
/*
ID TestDate
1 2007-03-26 00:00:00.000
2 1905-06-02 00:00:00.000
*/
------解决方案--------------------
设置下你自己机器上的时间格式试试
 控制面版--区域和语言悬想
      自定义--日期
  换成你要的格式


------解决方案--------------------
create table test_tb(date1 datetime)
insert test_tb
select 0
select * from test_tb
drop table test_tb

/*
date1
----------------------------------
1900-01-01 00:00:00.000
*/
------解决方案--------------------
关注,什么环境?