朋友们,

我正在使用Oracle 10g,我需要使用以下xml格式的SQL从表中生成结果:

7839

KING

7369

SMITH

... Rest of the EMP table records

excluding KING

规则是显示在外部行中选择的记录,子行应包含除外部行中显示的记录之外的所有其他记录.记录没有层次结构.

在上面的示例中,在外部行中选择了King,因此子行应包含来自emp的所有记录,不包括King.

这个查询给了我需要的结果集:

select e.empno,

e.ename,

cursor(select empno,

ename

from emp where empno <> 7839)

from emp e

where empno = 7839

但是,当我尝试使用以下方法从此生成XML时:

select xmlelement("RESULTS",

xmlagg(xmlelement("ROW",

xmlelement("EMPNO", empno),

xmlelement("ENAME", ename),

cursor(SELECT xmlagg(xmlelement("SUBROWS", xmlelement("ROW",

xmlelement("EMPNO", empno),

xmlelement("ENAME", ename)

)

)

)

FROM emp

WHERE empno <> 7839

)

)

)

)

from emp

where empno = 7839

我收到以下错误:

ORA-22902: CURSOR expression not allowed

22902. 00000 - "CURSOR expression not allowed"

*Cause: CURSOR on a subquery is allowed only in the top-level

SELECT list of a query.

我尝试过使用DBMS_XMLGEN:

SELECT DBMS_XMLGEN.getXML('select empno,

ename,

cursor(select empno,

ename

from emp

where empno <> 7839) as SUBROWS

from emp

where empno = 7839')

FROM dual

Whist以预期的格式输出XML,但它没有显示正确的元素名称.

任何帮助解决这个问题将非常感激.

提前致谢

oracle实例增加xml组件,使用Oracle SQL生成嵌套XML相关推荐

  1. .net core将URL请求格式化为XML或JSON(网站动态生成sitemap.xml)

    .net core将URL请求格式化为XML或JSON(网站动态生成sitemap.xml) 首先设置 Startup.cs 文件 配置 ConfigureServices services.AddM ...

  2. ORACLE实例控制文件删除恢复,Oracle案例:损坏控制文件的恢复方法

    一: 损坏单个控制文件 损坏单个控制文件是比较容易恢复的,因为一般的数据库系统,控制文件都不是一个,而且所有的控制文件都互为镜相,只要拷贝一个好的控制文件替换坏的控制文件就可以了. 1.控制文件损坏, ...

  3. oracle实例名重命名,修改oracle实例名orcl为demo

    修改oracle实例名有六步: 1.sqlplus username/password as sysdba登陆,然后从spfile文件创建pfile文件 :create pfile from spfi ...

  4. oracle实例包括用户进程吗,ORACLE实例和ORACLE数据库详解(三)

    e.PMON:负责在一个Oracle进程失败时清理资源. 主要用于清除失效的用户进程,释放用户进程所用的资源.如PMON将回滚未提交的工作,释放锁,释放分配给失败进程的SGA资源. f.CKPT 同步 ...

  5. oracle 实例多一些的书,Oracle+Database+11g+PLSQL编程实战(书+源码)

    [实例简介] Oracle+Database+11g+PLSQL编程实战(书+源码) [实例截图] [核心代码] OracleDatabase11gPLSQL编程实战(书源码) ├── Oracle ...

  6. python写xml多了ns0_python – SUDS生成的XML不正确

    我正在尝试使用SUDS和 Python与SOAP Web服务进行通信.经过大量学习Python的麻烦(是的,我是新手),并研究如何使用SUDS,我遇到了一个问题. 根据肥皂泡沫,我呼吁的网络方法的签名 ...

  7. Oracle实例名,服务名等概念区别与联系

    数据库名.实例名.数据库域名.全局数据库名.服务名 , 这是几个令很多初学者容易混淆的概念.相信很多初学者都与我一样被标题上这些个概念搞得一头雾水.我们现在就来把它们弄个明白. 一.数据库名 什么是数 ...

  8. oracle实例名,数据库名,服务名等概念差别与联系

    数据库名.实例名.数据库域名.全局数据库名.服务名 这是几个令非常多刚開始学习的人easy混淆的概念.相信非常多刚開始学习的人都与我一样被标题上这些个概念搞得一头雾水.我们如今就来把它们弄个明确. 一 ...

  9. ora-01092: oracle 实例终止.强制断开连接,undo表空间故障特殊恢复(二)------ORA-01092: ORACLE 实例终止。强制断开连接...

    原文出处:http://blog.csdn.net/wyzxg/archive/2010/09/10/5874726.aspx undo表空间故障特殊恢复(二)------ORA-01092: ORA ...

最新文章

  1. mysql sql 事务写作_mysql中的事务
  2. Android Studio3.x上使用Lombok
  3. ADOBE ILLUSTRATOR CS5中文版经典教程 pdf
  4. 性别分析--微信数据分析(一)
  5. elementui 响应式导航栏网站_什么是响应式网站?响应式网站的优势介绍
  6. cf1556Compressed Bracket Sequence
  7. 对于一万条数据量使用Oracle游标,存储过程,一般查询的速度的对比
  8. springboot 指定 logback_Spring Boot日志框架实战解析
  9. 如何解决'chromedriver' executable needs to be in PATH.的问题
  10. 华为 36 岁工程师猝死,曾 22 月无休:比挣钱更重要的是活着
  11. 利用FFmpeg合并音频和视频
  12. 通过CE寻找内存基址
  13. 前端学习之路---node.js(二)
  14. linux系统程序问题报告,Linux程序设计实验报告.docx
  15. 微信小程序跳转第三方H5的方法
  16. 跟着老猫来搞GO,集跬步而致千里
  17. 平板电脑能安装java_手机上能安装的应用,平板电脑上是不是都能安装
  18. c语言 类void 方法 字节大小,C 语言数据类型
  19. SSM研究生推免网站
  20. 详解【负载均衡】(负载均衡算法、一致性hash、负载均衡架构分析)

热门文章

  1. 浅析不良资产商业性债转股法律相关问题
  2. 深信通一站式IT运维服务 帮IT部门变为利润中心
  3. 打开并导出注册表步骤
  4. office2016 如何把mathtype添加到office工具栏 解决MathPage.wll或MathType.dll文件找不到问题
  5. unity技美33——给游戏场景设置一个永远置于底层的UI背景
  6. 如何给图片批量重命名
  7. 8.一个项目实战(下载CSDN博客文章)
  8. 请问这个是什么意思?
  9. 优达学城 机器学习课程资源
  10. targetSdk27 FileProvider 摄像和照相