易截截图软件、单文件、免安装、纯绿色、仅160KB

SQl 2005 For XMl 简单查询(Raw,Auto,Path模式)(2)

文章导航 SQL Server 2005 学习笔记系列文章导航
     在SQl 2005 For XMl 简单查询(Raw,Auto,Path模式)(1) 里我们说了关于Path,Raw和Auto模式的用法,其实里面不仅仅 是这些简单的操作,还有一些其它的特性,比如说Type或OpenXml方法,sp_xml_preparedocument存储过程 等这些增加的东东,我们来一个一个的看吧,
    第一个Type关键字,Type大家都 知道 英文意思是类型,在这里也是和类型相关的,意思就是说让子集里面类型和集合的类型统一,具体 是怎么统一的这个我也不懂,大家还得自己去查或是找找MS的网站吧,我们还用上一节的数据库和表来实现具体表的结构还请大家参考SQl 2005 For XMl 简单查询(Raw,Auto,Path模式)(1)里面的   我们来做写一个这样的子查询
             
SELECT SID,SName,(SELECT ClassInfo.CName from ClassInfo  WHERE ClassInfo.CID=Students.CID  FOR xml raw)
from Students
ORDER BY CID FOR xml auto 
      我们可以清楚的看到子查询返回的是一个Xml类型的而外面的集合也是一个Xml类型的,这个时候如果我们直接执行的话就会发生错误
  消息 6809,级别 16,状态 1,第 1 行
      不能将未命名的表用作 XML 标识符,也不能将未命名的列用于属性名称。请在 SELECT 语句中使用 AS 对未命名的列/表进行命名。
    我们知道 如果是正常的情况下是可以的,无非就是这一列没有列名,但是是不会报错的,那这个时候我们就可以这样来写了
  
SELECT SID,SName,(SELECT ClassInfo.CName from ClassInfo  WHERE ClassInfo.CID=Students.CID  FOR xml raw,type)
from Students
ORDER BY CID FOR xml auto
   只要在子集的后面加上一个Type就可以了,我们的Type就是在这种情况下使用的,也可能是我了解的太少了,我个人感觉 这个东东是没有什么太大的用处的,我们可以这样来写
SELECT SID,SName,(SELECT ClassInfo.CName from ClassInfo  WHERE ClassInfo.CID=Studen


相关文档:

SQL SERVER 2005 远程访问

(适用 SQL Server 2005 其他版本)
收藏



SQL Server 2005 Express 是微软提供的数据库的低端解决方案,
可免费任意随产品分发, 可以在XP等非专业服务器系统下安装, 还可以远程访问, 对于小型数据应用程序已足够满足数据使用要求.
默认安装下,SQL Server ......

SQL Server连接远程数据源

SQL Server连接远程数据源的基本方法有下面三种:
OPENDATASOURCE
: The OPENDATASOURCE function is used to
specify connection information for a remote data source by specifying
the OLE DB provider and an initialization string. OPENDATASOURCE can be
used directly within a SELECT, INSERT, UPDATE, or ......

改进的Java XML文件合并工具类

工作中遇到需要合并XML的问题,遂从网上查找相关资料,
1、 《 XML merging made easy  


2 、《java中合并xml文档的设计与实现 

测试后发现均不符合实际需求,实际需求如下:
file1.xml: 
<root>
<a>
<b name="1"/>
</a>
<d /& ......

使用自定义表类型(SQL Server 2008)

使用自定义表类型(SQL Server 2008)
http://tech.ddvip.com    2009年09月19日    来源:博客园    作者:陈希章   
  在 SQL Server 2008 中,用户定义表类型是指用户所定义的表示表结构定义的类型。您可以使用用户定义表类型为存储过程或函数声明表值参数,或者声明您要在 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号