北天软件工作室
北天软件集网站建设、网站开发、软件开发、网站优化SEO、网站宣传、网站开发成一体的网络公司。北天软件是专业的网站建设、网站开发、设计、制作和网站国际推广、搜索引擎推广的网络公司。口号:考虑企业所需,实现企业所想。JAVA技术网热情为java爱好者服务,本网内容包括JAVA(JSP、servlet、EJB、webservice、j2ee、javabean、应用服务器、JavaScript),数据库(MYSQL、SQL Server、Sybase、Oracle、DB2、数据库综合知识),设计研究(设计模式、Struts、Spring、Hibernate、设计框架、设计综合知识),WEB2.0新技术(主要介绍AJAX),以及各种技术的入门、实例、例子等等,欢迎各位多来坐坐!◆  诚邀各位JAVA爱好者加盟!◆  本网站内容丰富,更新快,保证每周20篇以上!   旧版java技术网 | 设为首页 | 文章搜索 | RSS订阅地图
免费使用JavaCMS自助建站系统
  文章搜索:   
初学者园地  javascript  java技术  .Net技术 XML/WebService  数据库技术  web2.0技术  设计模式  设计框架  SEO技术  综合知识
您现在的位置是: 北天软件门户网>>java技术>>详细信息
详解SQL中FOR XML子句的各种用法
        FOR XML子句有四种最基本的模式,如上图所示:

  1、AUTO模式:返回数据表为起表名的元素,每一列的值返回为属性;

  2、RAW模式:返回数据行为元素,每一列的值作为元素的属性;

  3、PATH模式:通过简单的XPath语法来允许用户自定义嵌套的XML结构、元素、属性值

  4、EXPLICIT模式:通过SELECT语法定义输出XML的结构

  具体实例如下:

  1、AUTO模式

  (1). SQL语句:

  1: SELECT EmployeeID,FirstName,LastName FROM Employees FORXMLAUTO, XMLSCHEMA

  (2). 所生成的XML文件:

  返回XML文件的XML Schema

  <xsd:schematargetNamespace="urn:schemas-microsoft-com:sql:SqlRowSet1"xmlns:schema="urn:schemas-microsoft-com:sql:SqlRowSet1"xmlns:xsd="http://www.w3.org/2001/XMLSchema"xmlns:sqltypes="http://schemas.microsoft.com/sqlserver/2004/sqltypes"elementFormDefault="qualified"><xsd:importnamespace="http://schemas.microsoft.com/sqlserver/2004/sqltypes"schemaLocation="http://schemas.microsoft.com/sqlserver/2004/sqltypes/sqltypes.xsd"/><xsd:elementname="Employees"><xsd:complexType><xsd:attributename="EmployeeID"type="sqltypes:int" use="required"/><xsd:attributename="FirstName"use="required"><xsd:simpleType><xsd:restrictionbase="sqltypes:nvarchar"sqltypes:localeId="1033"sqltypes:sqlCompareOptions="IgnoreCaseIgnoreKanaTypeIgnoreWidth"sqltypes:sqlSortId="52"><xsd:maxLengthvalue="10"/>xsd:restriction>xsd:simpleType>xsd:attribute><xsd:attributename="LastName"use="required"><xsd:simpleType><xsd:restrictionbase="sqltypes:nvarchar"sqltypes:localeId="1033"sqltypes:sqlCompareOptions="IgnoreCaseIgnoreKanaTypeIgnoreWidth"sqltypes:sqlSortId="52"><xsd:maxLengthvalue="20"/>xsd:restriction>xsd:simpleType>xsd:attribute>xsd:complexType>xsd:element>xsd:schema><Employeesxmlns="urn:schemas-microsoft-com:sql:SqlRowSet1"EmployeeID="1"FirstName="Nancy" LastName="Davolio"/><Employeesxmlns="urn:schemas-microsoft-com:sql:SqlRowSet1"EmployeeID="2"FirstName="Andrew" LastName="Fuller"/><Employeesxmlns="urn:schemas-microsoft-com:sql:SqlRowSet1"EmployeeID="3"FirstName="Janet" LastName="Leverling"/><Employeesxmlns="urn:schemas-microsoft-com:sql:SqlRowSet1"EmployeeID="4"FirstName="Margaret" LastName="Peacock"/><Employeesxmlns="urn:schemas-microsoft-com:sql:SqlRowSet1"EmployeeID="5"FirstName="Steven" LastName="Buchanan"/><Employeesxmlns="urn:schemas-microsoft-com:sql:SqlRowSet1"EmployeeID="6"FirstName="Michael" LastName="Suyama"/><Employeesxmlns="urn:schemas-microsoft-com:sql:SqlRowSet1"EmployeeID="7"FirstName="Robert" LastName="King"/><Employeesxmlns="urn:schemas-microsoft-com:sql:SqlRowSet1"EmployeeID="8"FirstName="Laura" LastName="Callahan"/><Employeesxmlns="urn:schemas-microsoft-com:sql:SqlRowSet1"EmployeeID="9"FirstName="Anne" LastName="Dodsworth" />

  2、RAW模式

  1: 将元素命名为自定义的名称Employee2: SELECTEmployeeID,FirstName,LastNameFROM Employees FOR XML RAW("Employee") (2). 所生成的XML文件: 1:<Employee EmployeeID="1"FirstName="Nancy" LastName="Davolio"/> 2: <EmployeeEmployeeID="2" FirstName="Andrew"LastName="Fuller" /> 3:<Employee EmployeeID="3"FirstName="Janet" LastName="Leverling"/> 4: <EmployeeEmployeeID="4" FirstName="Margaret"LastName="Peacock" /> 5:<Employee EmployeeID="5"FirstName="Steven" LastName="Buchanan"/> 6: <EmployeeEmployeeID="6" FirstName="Michael"LastName="Suyama" /> 7:<Employee EmployeeID="7"FirstName="Robert" LastName="King" />8: <EmployeeEmployeeID="8" FirstName="Laura" LastName="Callahan"/> 9:<Employee EmployeeID="9" FirstName="Anne"LastName="Dodsworth"/>

21/212>
关闭窗口 】   【 返回首页
推荐文章
· 总结用XML配置的十二...
· Windows 7采用Xml格...
· 在Silverlight3中消耗...
· Eclipse SDK 3.5RC2(S...
· NetBeans 6.7 RC1发布
· JDK7中的Java NIO.2 F...
· Eclipse Ganymede:深...
· Eclipse配置的备注
· NetBeans 6.7 RC3发布
· Windows XP操作系统...
· JVM报错代码对应的错...
· 用JavaFX写用户界面...
· Java技巧:创建Excel...
· 有关Java未来的三个...
· SUN技术中心落户浑南
· 美司法部调查甲骨文Ja...
· Google开放原生软件 ...
· 如何实现.net程序的...
· ADO.NET Entity&...
· 虚拟主机上用Asp.net...
北天软件工作室 粤ICP备06079815号 版权所有©2006-2008
精彩出品 JavaCMS自助建站 (C)2006-2008 www.it3838.com limited.all rights reserved.
Powered by JavaCMS V2.6.0