sql server2005中datetime类型数据插入失败
在表中定义了一个datetime类型数据birthday,向表里插入数据时insertintoperson(name,birthday)values('张三','1988...
在表中定义了一个datetime类型数据birthday,向表里插入数据时insert into person(name,birthday) values('张三','1988-01-01')提示从字符串向 datetime 转换时失败,怎么解决?
展开
5个回答
展开全部
'1988-01-01'你要用cast或者convert转换一下才可以的,不能将字符串直接赋值给时间类型
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你可以先运行 select CONVERT(datetime , '1988-01-01') 看看 1988-01-01 转换成datetime的结果:1988-01-01 00:00:00.000 ,所以你的日期要写成 1988-01-01 00:00:00.000
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
插入的时候把日期写成 cast('1988-01-01' as date) 或者是 cast('1988-01-01' as datetime)/.
不过我的做法是把日期列修改成varchar(10) 随便放,而在程序那里去 核实 日期是否合符格式的要求.yyyy-mm-dd
不过我的做法是把日期列修改成varchar(10) 随便放,而在程序那里去 核实 日期是否合符格式的要求.yyyy-mm-dd
追问
还是不行
追答
你修改成文本格式呢? 贴程序给我看.
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
语法无任何问题
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个字符转换是没问题的,你看看这个表是否有触发器操作,引起了其他列字符的转换
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询