【发布时间】:2011-07-13 04:06:49
【问题描述】:
在我正在处理的一些使用 XML 数据类型的 T-SQL 中,我收到了上述警告。代码按预期运行,但警告很烦人,因为它显示在编辑器中以及当我在 VS2010 中构建我的数据库项目时。这是一个示例:
DECLARE @ID TABLE (ID INT)
INSERT @ID VALUES(1)
INSERT @ID VALUES(2)
INSERT @ID VALUES(3)
DECLARE @IDXml XML
SET @IDXml = (
SELECT ID FROM @ID FOR XML RAW('IDFilter')
)
-- Cannot find either column "item" or the user-defined function or aggregate
-- "item.value", or the name is ambiguous.
SELECT SomeID = item.value('@ID', 'INT')
FROM @IDXml.nodes('/IDFilter') AS T(item)
警告是正常的,还是我做错了什么?
【问题讨论】:
-
如果包含表名(“T”),是否会收到相同的警告? SELECT SomeID = T.item.value('@ID', 'INT')
-
当我将它粘贴到 SQL Server 2008 Management Studio 时,我看到的和你一样。看起来像一个错误。可能值得在 Microsoft Connect 网站上报告。