日期类型

chenjg85 2007-10-21 10:10:48
create table #test
(ino int,
price float,
idate varchar(20))


insert #test values(1001,20.00,1998-01-01)
insert #test values(1001,30.00,1999-02-02)
insert #test values(1002,45.00,2006-10-10)
insert #test values(1002,34.00,2005-07-07)
insert #test values(1002,32.00,2007-01-01)
insert #test values(1003,10.00,2000-09-09)

最后查询的时候,结果是
1001 20.0 1996
1001 30.0 1995
1002 45.0 1986
1002 34.0 1991
1002 32.0 2005
1003 10.0 1982

为什么日期都变了啊,请大虾指教一下
...全文
149 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
chenjg85 2007-10-21
  • 打赏
  • 举报
回复
惭愧阿
haojieguangxin 2007-10-21
  • 打赏
  • 举报
回复
对 没有加单引号
xiangyu120 2007-10-21
  • 打赏
  • 举报
回复
字符加上单引号,要不sql 会认为是1998-01-01 =1996 !
呵呵
cxmcxm 2007-10-21
  • 打赏
  • 举报
回复
字符加上单引号即可
insert #test values(1001,20.00,'1998-01-01')
chenjg85 2007-10-21
  • 打赏
  • 举报
回复
改成datetime或者smalldatetime型时,结果是
1001 20.0 1905-06-20 00:00:00.000
1001 30.0 1905-06-19 00:00:00.000
1002 45.0 1905-06-10 00:00:00.000
1002 34.0 1905-06-15 00:00:00.000
1002 32.0 1905-06-29 00:00:00.000
1003 10.0 1905-06-06 00:00:00.000
插入的数据都没变,就是结果还是不对
fan22176391 2007-10-21
  • 打赏
  • 举报
回复
并且应插入'1998-01-01',而不是1998-01-01
fan22176391 2007-10-21
  • 打赏
  • 举报
回复
idate 应该定义为Datetime类型.

34,575

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧