当您使用SQL Server Management Studio生成用于创建表的脚本时,它所做的最后一件事是将ansi_padding设置为off.
我遇到了一个问题,当使用xml时,这个语句引起了进一步的问题.
该错误消息暗示在使用XQuery功能时必须打开ansi_padding,并且Google搜索确认.但是,我真的希望看到一些官方文件说明这是一项要求,以确保没有其他我们认为理所当然的事情.
我理解了这个选项的含义,并且已经删除了该声明,但我仍然想知道:
是否正式使用ansi_padding'on'来处理SQL Server中的xml列?
是的,这是官方要求的.
http://msdn.microsoft.com/en-us/library/ms188285.aspx
引自上面的链接:
使用xml数据类型方法查询xml类型列或变量时,必须如下所示设置以下选项.
设置选项
必需值
ANSI_NULLS
上
ANSI_PADDING
上
ANSI_WARNINGS
上
ARITHABORT
上
CONCAT_NULL_YIELDS_NULL
上
NUMERIC_ROUNDABORT
关闭
QUOTED_IDENTIFIER
上
如果未按所示设置选项,则对xml数据类型方法的查询和修改将失败.