科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道在Oracle 10gR2 SQL*Plus中交互测试XML查询

在Oracle 10gR2 SQL*Plus中交互测试XML查询

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

Oracle 10gR2 SQL*Plus中增加了XQUERY命令。它以命令行的形式对XQuery 1.0进行交互搜索。

作者:builder.com.cn 2007年3月21日

关键字: XML SQL SQL*Plus Oracle 10gR2 ORACLE

  • 评论
  • 分享微博
  • 分享邮件

XML已成为信息交换的公共标准;而XQuery 1.0则是查询XML数据的标准语言。人们通常把XQuery叫做XML的SQL,因为它对XML执行SQL语言对关系数据执行相同功能。

Oracle 10gR2 SQL*Plus中增加了XQUERY命令。它以命令行的形式对XQuery 1.0进行交互搜索。因此,你不需要使用XMLQUERY函数,将结果提交给一个变量,再显示这个变量;现在你只需输入XQUERY语句,让SQL*Plus完成显示。

这个命令的格式如下:

XQUERY xquery_statement

/

前斜杠(/)独立成行,像在SQL查询中一样终止查询代码。Xquery_statement可以是任何有效的XQuery 1.0语句。两个最普通的类型为XPath表达式和FLWOR(读作“flower”)表达式。

FLWER(For、Let、Where、Order By和Return的缩写)是一个XQuery语句的组成部分。列表A显示了一个例子,它使用Oracle提供的样本模式。

为找出哪些工作的最低月工资超过8000美元,在SQL中使用的查询语句为:

SELECT * FROM jobs WHERE min_salary > 8000

/

其结果将返回一组关系行。对应的XML查询语句为:

XQUERY for $i in ora:view("JOBS")

where $i/ROW/MIN_SALARY > 8000

return $i

/

注意,“where”子句中包括一个XPath表达式,指出检查XML文档中的哪些元素。在这种情况下,输出结果中有几个ROW元素,每个ROW中有一个MIN_SLARY元素。XPath表达式根据8000这个截止值检查每个这样的元素。

“return”子句返回整个行。它也可能只是一个表达式,指出返回行的哪些部分。

这个例子说明了Oracle的另一个特性:ora:view函数。这个XML函数返回一个关系表或视图的XML代表(XML representation)。

欲了解Oracle中XML处理的更多信息,请查阅Oracle数据库10g XML数据库开发者指南


Bob Watkins(OCP、MCDBA、MCSE、MCT)是一位有25年经验的计算机专业人士,从事过技术培训师、顾问与数据库管理员等职

责任编辑:德东

查看本文国际来源

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章