从 nvarchar 数据类型到 datetime 数据类型的转换产生一个超出范围的值。

[复制链接]
查看11 | 回复3 | 2016-2-25 17:05:56 | 显示全部楼层 |阅读模式
--把nvarchar转换成datetime之前先判断是否是日期,如果不是可置为null值或其它固定值(如:1900-01-01 00:00:00)drop table 事件状态统计select 事件编号,设备编号,cast(
(case when
isdate(
substring([恢复日期],1,4)+substring([恢复日期],6,2)+substring([恢复日期],9,2)+
' '+substring([恢复时间],1,2)+':'+
substring([恢复时间],3,2)+':'+substring([恢复时间],5,2)...
回复

使用道具 举报

千问 | 2016-2-25 17:05:56 | 显示全部楼层
你仔细看看 你的恢复日期,恢复时间,记录日期,记录日期的格式,你的问题 应该出现在转换越界,比如 月份有可能出现13的值/日期有可能出现出现32的值/ 小时 有出现24 值/分钟有60以上/秒有60以上的值,造成数据库转换越界。 或者 比如 : 2010-02-30 15:30:302010-02-29 15:30:30就...
回复

使用道具 举报

千问 | 2016-2-25 17:05:56 | 显示全部楼层
0000.00.00.1 转型不对...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行