我使用了 MS 的这份白皮书作为参考: http: //msdn.microsoft.com/en-us/library/ms345117 (v=sql.90).aspx
但是,当我尝试以下查询时出现错误:
command = new SqlCommand(
"SET QUOTED_IDENTIFIER ON SELECT XML FROM XMLObject WHERE" +
"XML.exist('//Root/ActiveRecord[" + s1 +
"= " + s2 + "]') = 1"
, connection);
错误是:““。”附近的语法错误。
如果我删除“XMLObject”之后的所有内容直到逗号,我就能够执行该命令,并且如果数据库中存在元素,则返回一些内容。
我也很好奇我是否以正确的方式设置 QUOTED_IDENTIFIER 值。
我可能会看到的任何 C#/MSSQL 示例项目/教程也将不胜感激!
编辑:对于看到这一点的任何人,我还发现使用存在的正确方法是:
"...exist('/Root/ActiveRecord[" + s1 +
"= \"" + s2 + "\"]') = 1"
没有 "s 唯一的数字比较工作。