VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > 数据库 > sql数据库 >
  • sql语句大全之XML查询

XML查询sql语句大全

随着XML技术的广泛应用,SQL SERVER也开始了XML技术,比如在SQL SERVER 2008版本中引入了以XML的格式返回关系型数据、大量加载和切分XML文档,以及将数据库对象公开为基于XML的WEB服务等功能。SQL SERVER 2008中添加了对XQuery技术的支持,这就可以通过与XML数据类型相关的XQuery语言对XML数据进行查询。本节主要介绍XML查询中的相关知识,如XML数据类型以及SQuery语言等。

5.4.1  XML数据类型

SQL SERVER 2008中为了增强对XML技术的支持,引入了XML数据类型。XML数据类型与其他数据类型一样,比如String,varchar等也可以用在表中列的定义中、变量的定义中、存储过程的参数定义以及函数的返回类型中;也可以直接在数据库中存储、查询和管理XML文件;更重要的是,用户还能定义自己的XML必须遵从的模式。
作为SQL SERVER众多数据类型中的一种,XML数据类型与其他数据类型相比并不存在根本的区别,用户可以通过下面的语句创建一个XML变量并填充该变量:
DECLARE @doc xml
SET @doc=’<Team name=””””””Braves”/>’
在使用XML数据类型时一定要注意某些规则,比如在类型转换时XML数据类型与其他数据类型的唯一转换是从一个字符转换成一个XML类型,或从一个XML类型转换成一个字符串。XML数据类型在使用中还包括下面一些具体限制:
l  XML类型只能与string 类型相互转换。
l  XML列不能应用于GROUP BY语句中。
l  分布式局部(partitioned)视图不能包含XML数据类型。
l  使用sql_variant实例进不能把XML作为一种子类型。
l  XML列不能成为主键或外键的一部分。
l  XML列不能指定为唯一。
l  XML列不能使用在COLLATE子句上。
l  XML列不能加入到规则中。
l  可应用于XML列的内置标量函数是IS NULL和COALESCE。其他内置标量函数不支持使用XML列。
l  表中最多只能拥有32列XML数据类型。
l  具有XML列的表不能有一个超过15列的主键。
l  具有XML列的表不能有一个timestamp数据类型作为它们的主键的一部分。
l  存储在数据库中的XML仅支持128级的层次。

相关教程