我已经继承了大量的存储过程,它们将一个XML块作为其唯一参数,然后作者将其破解(使用OPENXML),然后更新一行。SQL,OPENXML和DateTime对话
我遇到的一个问题,同时更新具有datetime列一个表,下面是数据的一个片段,目前失败:
declare @stuff nvarchar (max);
set @stuff =
'<Booking xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<UpdatedDateTime>2009-08-14T15:32:09.7240556+01:00</UpdatedDateTime>
</Booking>';
declare @iDoc int;
exec sp_xml_preparedocument @idoc OUTPUT, @stuff;
SELECT UpdatedDateTime
FROM
OPENXML(@idoc, '/*')
WITH
(
UpdatedDateTime datetime 'UpdatedDateTime'
)
运行导致以下错误:
Msg 241, Level 16, State 1, Line 12
Conversion failed when converting datetime from character string.
如何将日期时间从XML片段转换为基于SQL的日期时间?
感谢
这是SQL Server? – 2009-08-14 15:29:08
是的,SQL Server 2005. – Kieron 2009-08-14 16:24:45