易截截图软件、单文件、免安装、纯绿色、仅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


相关文档:

hibernate 生成的 sql 语句 ? 代值

转自: http://hi.baidu.com/beanchx/blog/item/ed056509d66f65cc3bc763f4.html
p6spy的替代品:jdbc logger
2007年09月13日 下午 01:07
首先介绍一下这个开源的项目。这个是一个对jdbc中的sql进行logger的一个工具。若在项目中采用了较多的preparedStatement,那么打印出来的sql会有很多"?",非常不方便。有一个产品为p ......

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 ......

oracle PL SQL学习案例(一)

【示例1.1】  查询雇员编号为7788的雇员姓名和工资。
  步骤1:用SCOTT/TIGER账户登录SQL*Plus。
  步骤2:在输入区输入以下程序:
   /*这是一个简单的示例程序*/
  SET SERVEROUTPUT ON
  DECLARE--定义部分标识
    v_name  VARCHAR2 ......

oracle PL SQL学习案例(三)

存储过程
========================================================================== 
========================================================================== 
【训练15.1】  创建一个显示雇员总人数的存储过程。
  步骤1:登录SCOTT账户(或学生个人账户)。
  步骤2: ......

PHP SQL 注入攻击的技术实现以及预防办法

 最近在折腾 PHP + MYSQL
的编程。了解了一些 PHP SQL 注入攻击
的知识,于是写了这篇文章 http://www.xiaohui.com/weekly/20070314.htm,总结一下经验。在我看来,引发 SQL 注入攻击
的主要原因,是因为以下两点原因:
  1. php 配置文件 php.ini 中的 magic_quotes_gpc
选项没有打开,被置为 off
  2. 开发 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号