【发布时间】:2011-03-19 06:08:20
【问题描述】:
谁能提供这方面的见解?
我开发了一个使用 XML 数据类型的导入过程。在导入 sProc 将数据插入到表中后,我运行另一个过程以使用导入的表更新另一个表。
如果使用 SET QUOTED_IDENTIFIER OFF 创建更新过程,则会引发异常。我想了解为什么会这样。
代码如下:
DECLARE @xmlRecords XML
SET @xmlRecords = (SELECT importedXML FROM importTable WHERE importId = @lastImportId)
UPDATE o
SET o.ReferralCode = import.refCode
FROM (
SELECT records.record.value('(@orderId)[1]', 'INT') AS orderId,
records.record.value('(@refCode)[1]', 'VARCHAR(15)') AS refCode
FROM @xmlRecords.nodes('/records/record') records(record)
) import
INNER JOIN tblOrder o ON import.OrderId = o.orderId
我假设它与引用的数据类型('VARCHAR(15)')或 xml 查询路径元素('/records/record')有关。
感谢您提供的任何见解。
【问题讨论】:
标签: sql-server xml quoted-identifier