2024年3月19日发(作者:)

XML和SQL Server集成 创建XML数据类型变量

作为SQL Server 2005系统中的一种基本数据类型,同样可以像使用其他基本数据类型来

定义一个变量那样,定义一个基于XML数据类型的变量。与声明其他类型的数据变量一样,定

义一个XML类型的变量的语法如下所示:

DECLARE variable_name [AS] xml

[ ( [ DOCUMENT | CONTENT] schema__schema_collection_name ) ]

其中除variable_name用于表示变量名之外,其他参数的含义与上一节中介绍的创建数据

表时使用的参数是一致的。

下面通过示例说明XML类型变量的使用方法,单击【新建查询】按钮,在【查询编辑器】

中输入以下Transact-SQL代码:

USE Book

GO

DECLARE @CategoryInfo AS XML

SET @CategoryInfo =

'

Condiments

Sweet and savory sauces, relishes, spreads, and seasonings

'

INSERT INTO xml_Categories(CategoryID,CategoryInfo)

VALUES(2,@CategoryInfo)

GO

上述Transact-SQL脚本中声明了一个名为@CategoryInfo的XML型变量,并使用SET命

令对该变量进行赋值。然后再通过该变量向数据表xml_Categories中插入一条记录。

单击【执行】按钮,执行上述Transact-SQL脚本,向数据库xml_Categories中插入一条

记录,如图6-4所示。

图6-4 执行结果

继续在【查询编辑器】中输入下面的Transact SQL脚本,将上述脚本中的

更改为会出现什么样的情况呢?单击【执行】按钮,【查

询编辑器】将报告如图6-5所示的错误。

图6-5 执行结果

由此可见,XML的确是区分大小写的,因此在输入XML类型的数据时,一定要注意标签的

大小写一定要统一。而在Transact-SQL中,所有的变量都是不区分大小写的。因此在

Transact-SQL中编写带有XML元素的脚本时应该注意两者的区别。