您当前的位置:首页>>技术中心>>数据恢复文章>>正文
 
MSSQL 使用 EXPLICIT 模式二
作者: 来源: 日期:2009-7-28 17:54:33  点击次数:

D. 指定 xml 命令


      除了不对包含数据进行实体编码外("<"字符仍是"<"),xml 命令与 element 命令相似。例如,

如果 Customers 表中有一位客户联系人的姓名是 Mar<ia Andears,则下面的查询不对包含数据进

行实体编码,并将生成无效的 XML 文档。

 

-- Update a customer record.
UPDATE Customers
SET ContactName='Mar<ia Anders'
WHERE ContactName='Maria Anders'
GO

 

      下面的查询返回客户 ID 和联系人姓名信息。

      编写生成通用表的查询的过程和对通用表行集进行处理以生成所得到的 XML 文档的过程,与在示例

A 或示例 B 中描述的过程相似。

 

SELECT 1 as Tag, NULL as Parent,
       Customers.CustomerID as [Customer!1!CustomerID],
       Customers.ContactName as [Customer!1!ContactName!xml]
FROM Customers
ORDER BY [Customer!1!CustomerID]
FOR XML EXPLICIT
GO
-- Set customer record back to the original.
UPDATE Customers
SET ContactName='Maria Anders'
WHERE ContactName='Mar<ia Anders'
GO

 

      下面显示部分结果。因为在查询中指定了该命令,所以指定的特性名是包含元素的名称。

 

<Customer CustomerID="ALFKI">
   <ContactName>Mar<ia Anders</ContactName>
</Customer>
<Customer CustomerID="ANATR">
   <ContactName>Ana Trujillo</ContactName>
</Customer>

 

E. 指定隐藏命令


      下例说明 hide 命令的使用。当希望查询返回一个特性以便对该查询所返回的通用表中的行进行排序,

但是不希望该特性出现在最终所得到的 XML 文档中时,该命令很有用。  

      假定希望生成下面的层次结构,在该结构中 <Customer> 元素按 CustomerID 进行排序,并且在

每个 <Customer> 元素中,<Order> 元素按 OrderID 进行排序。注意 OrderID 特性不出现在所得

到的 XML 文档中:

 

<Customer CustomerID="ALFKI">
  <Order OrderDate="1997-08-25T00:00:00" />
  <Order OrderDate="1997-10-03T00:00:00" />
  <Order OrderDate="1997-10-13T00:00:00" />
</Customer>

 

      在这种情况下,为排序而检索 OrderID,但是在为该特性指定列名时指定 hide 命令。结果,OrderID

 特性不显示为所得到的 XML 文档的一部分。

      编写生成通用表的查询的过程和对通用表行集进行处理以生成所得到的 XML 文档的过程,与在示例 A

或示例 B 中描述的过程相似。

 

      以下是查询语句:

 

SELECT 1 as Tag,
       NULL as Parent,
       Customers.CustomerID as [Customer!1!CustomerID],
       NULL                 as [Order!2!OrderID!hide],
       NULL                 as [Order!2!OrderDate]
FROM Customers
UNION ALL
SELECT 2,

本新闻共9页,当前在第1页  1  2  3  4  5  6  7  8  9  


上一篇:MSSQL 使用 EXPLICIT 模式一
下一篇:没有了
  北京总部: 4006-505-808
  天 津 部: 4006-505-808
  上 海 部: 4006-505-808
  深 圳 部: 4006-505-808
  广 州 部: 4006-505-808
  重 庆 部: 4006-505-808
  南 京 部: 4006-505-808
  其它地区: 4006-505-808
经典案例
中国石油管理局-Oracle数据库恢
中国网通-IBM EXP300磁盘阵列数
大连鸿德经贸有限责任公司-SQL
中国地质环境监测院-HP LH3000
藁城市东街百货-EFS文件解密成
工商银行某省分行-AIX删除LV数
中央电视台新闻评论部-苹果分
promise乔鼎硬盘阵列数据恢复成
麒麟童文化-苹果分区无法打开,
NAS 8100服务器数据恢复成功 
解决方案
raid磁盘阵列OFFLINE后的应急方
磁盘未被格式化,是否格式化数据
误GHOST、误一键恢复灾难应急方
误删除、误格式化数据灾难应急
LINUX FSCK数据出错灾难应急方
北亚数据恢复 - 联系我们 - 关于北亚 - 友情链接 - 网站地图 - RSS聚合 
版权所有 北亚数据恢复中心
全国统一客服热线:4006-505-808
北京总部:北京市海淀区中关村大街11号E世界A座8层832B室