Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL Server Convert ISO 8601未按文档所述工作_Sql_Sql Server_Datetime - Fatal编程技术网

SQL Server Convert ISO 8601未按文档所述工作

SQL Server Convert ISO 8601未按文档所述工作,sql,sql-server,datetime,Sql,Sql Server,Datetime,Perconvert应使用127作为样式参数,正确解析带有时区的ISO 8601日期 可选的时区指示符Z用于更容易地将具有时区信息的XML日期时间值映射到没有时区的SQL Server日期时间值。Z是时区UTC-0的指示器。其他时区在+或-方向上以HH:MM偏移表示。例如:2006-12-12T23:45:12-08:00 以下所有日期都是有效的ISO 8601日期,但从字符串转换日期和/或时间时返回转换失败 有人对此问题有解决方案或解决方法吗?解决方法?:使用: 选择convert(datet

Perconvert应使用127作为样式参数,正确解析带有时区的ISO 8601日期

可选的时区指示符Z用于更容易地将具有时区信息的XML日期时间值映射到没有时区的SQL Server日期时间值。Z是时区UTC-0的指示器。其他时区在+或-方向上以HH:MM偏移表示。例如:2006-12-12T23:45:12-08:00

以下所有日期都是有效的ISO 8601日期,但从字符串转换日期和/或时间时返回转换失败

有人对此问题有解决方案或解决方法吗?

解决方法?:使用:


选择convert(datetimeoffset,N'2014-02-07T13:51:00+07:00',127)--使用
datetimeoffset或datetime2
而不是
datetime

看起来您指定的样式需要使用
Z
而不是时区。很明显,这与您的输入字符串不匹配。谢谢您快速准确的回答!与SQL Server 2008及以上版本相关。是的,你告诉他们。这会教他晚八分钟回答。
select convert(datetime, N'2014-02-07T13:51:00+07:00', 127)
select convert(datetime, N'2014-02-07T13:51:00+07', 127)
select convert(datetime, N'2006-12-12T23:45:12-08:00', 127)
select convert(datetimeoffset, N'2014-02-07T13:51:00+07:00', 127) --<-- This one works...
select convert(datetimeoffset, N'2014-02-07T13:51:00+07', 127)
select convert(datetimeoffset, N'2006-12-12T23:45:12-08:00') --<-- and this one works...