Sql server SQL Server 2014中的查询XML
这是我的桌子Sql server SQL Server 2014中的查询XML,sql-server,xquery,Sql Server,Xquery,这是我的桌子 CREATE TABLE tab_customerxml ( id INT IDENTITY, xmldata XML ) 我加载了一个带有insert的xml 我想运行这个简单的查询 SELECT xmldata.query('/customer') FROM tab_customerxml WHERE id = 4; 但我得到了这个错误: 无法运行,因为以下集合选项的选择设置不正确 我不知道如何解决这个问题 谢谢请尝试运行
CREATE TABLE tab_customerxml
(
id INT IDENTITY,
xmldata XML
)
我加载了一个带有insert的xml
我想运行这个简单的查询
SELECT
xmldata.query('/customer')
FROM
tab_customerxml
WHERE
id = 4;
但我得到了这个错误:
无法运行,因为以下集合选项的选择设置不正确
我不知道如何解决这个问题
谢谢请尝试运行以下命令:
- 放下你的桌子
DROP TABLE tab_customerxml;
- 使用以下设备上的正确设置重新创建:
SET ANSI_NULLS ON SET QUOTED_IDENTIFIER ON SET ANSI_PADDING ON CREATE TABLE tab_customerxml ( id INT IDENTITY, xmldata XML )
- 现在重试您的查询
SELECT xmldata.query('/customer') FROM tab_customerxml WHERE id = 4;
这有帮助吗?旁注:由于您的
id
列的类型为int
,您应该在WHERE
子句中使用此符号:WHERE id=4
-不要添加那些不必要的单引号-这使我们的'4'
成为一个字符串,必须隐式转换回int
。。。。。如果它是一个int
-不要用任何单引号开始,我更改了其中的id=4,但不适用于相同的@marc_salso,没有where语句,我总是得到相同的错误,谢谢它的工作。但我不明白到底是什么原因problem@Genny:错误清楚地表明:QUOTED\u IDENTIFIER
的设置错误。不知道为什么-但是添加这三个SET。。。。在创建表格之前,请在
行中为我工作