数据库技巧

  |  手机版

收藏网站

投稿QQ:1745232315

IT专家网,汇聚专业声音 解析IT潮流 IT专家网,汇聚专业声音 解析IT潮流

网络

专家视点在现场环球瞭望
IT专家网 > 数据库子站 > 数据库技巧

在SQL Server中如何与XML交互

作者:松晨出处:IT专家网2008-08-13 10:53

  【IT专家网独家】XML可以说是数据库表现的一种灵活的形式,在数据库开发过程中,很多时候我们都会需要涉及到XML,特别是用在数据交换。而在SQL Server 2005中,XML已成为一种流行的数据类型,XML已经做为一种新型的类型存储在数据库中。借助于基于XML模式的强类型化支持和基于服务器端的XML数据校验功能,开发者就可以对存储的XML文档进行轻松地远程修改。

  在SQL Server 2000中就已经包括了一些XML特征。最常用的是使用FOR XML语句以XML形式返回结果。SQL Server 2005的功能则明显不同。在SQL Server 2005中,XML是一种真正的数据类型;这意味着,可以使用XML作为表和视图中的列,XML可以用于T-SQL语句中或作为存储过程的参数。可以直接在数据库中存储、查询和管理XML文件。

  在SQL Server中,主要有以下几种操作XML的方式:

  1) FOR XML语句的使用

  FOR XML语句在使用的时候有三种模式,参数分别为:RAW、AUTO和EXPLICIT。

  先来分别看这几种模式:

  RAW模式:

  RAW 模式将查询结果集中的每一行转换为带有通用标识符 或可能提供元素名称的XML元素。默认情况下,行集中非 NULL 的每列值都将映射为 元素的一个属性。如果将 ELEMENTS 指令添加到 FOR XML 子句,则每个列值都将映射到 元素的子元素。

  先来看RAW的实现的方式:

  创建一个表:

CREATE TABLE [dbo].[Tb_User](
 [ID] [int] IDENTITY(1,1) NOT NULL,
 [user_name] [varchar](20) NULL,
 [user_Pwd] [varchar](20) NULL,
 CONSTRAINT [PK_User] PRIMARY KEY CLUSTERED
(
 [ID] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) ON [PRIMARY]

      语句一: 

SELECT ID, User_Name, User_pwd FROM Tb_User FOR XML RAW

  输出的结果如下:

<row ID="1" User_Name="admin" User_pwd="admin888" />
<row ID="2" User_Name="user" User_pwd="user" />
  

  语句二: 

SELECT ID, User_Name, User_pwd FROM Tb_User FOR XML RAW, ELEMENTS

相关文章

关键词:IT技术 SQLServer SQLServer2005 Web开发 XML 数据库 技巧

责任编辑:王晓晨

专题推荐

原创文章

微博互动

白皮书

网警备案