广告
返回顶部
首页 > 资讯 > 数据库 >PLSQL中XML类型字段分析
  • 689
分享到

PLSQL中XML类型字段分析

2024-04-02 19:04:59 689人浏览 泡泡鱼
摘要

这篇文章主要讲解了“PLsql中XML类型字段分析”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“PLSQL中XML类型字段分析”吧!xmltype:&nbs

这篇文章主要讲解了“PLsql中XML类型字段分析”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“PLSQL中XML类型字段分析”吧!

xmltype: 

             oracle9i 支持一种新的系统定义数据类型,名为XMLType。XMLType提供了多种内建的成员函数,为创建、提取和索引存储在Oracle9i中的XML数据 提供了一种强有力的机制。作为一种新的数据类型,XMLType可用作表格和视图中的各个列的数据类型,并可在PL/SQL存储过程中作为参数、返回值和 变量使用。

      利用XMLType和这些功能,SQL开发者既可利用关系型数据库的强大能力,也可在XML的环境下工作。与此类似,XML开发者一方面可利用XML标准的强大能力,另一方面又能在关系型数据库的环境下工作。

  • 建立含有xmltype数据类型的表

CREATE TABLE abc 
(id number,
xmldoc sys.xmltype);

    声明xmltype型字段用:sys.xmltype

  • 向带有xmltype类型的表插入带有数据

INSERT INTO abc
  (id
  ,xmldoc) VALUE
  (abc.nextval
  ,sys.xmltype.createxml('<name><aid="1" value="some values">abc</a></name>'));

    插入用 sys.xmlType.createXML('some xml doc')

  • 直接查询xmltype字段里面的内容

     得到id=1的value变量的值

SELECT i.xmldoc.extract('//name/a[@id=1]/@value').getstringval() AS ennames
      ,id
FROM   abc i

      得到a节点的值

SELECT id
      ,i.xmldoc.extract('//name/a/text()').getstringval() AS truename
FROM   abc i

     得到节点id属性的值

SELECT hd.data_t.extract('/root/name/@id').getstringval() AS NAME
FROM   sehr_house_data hd
  • 更新xmltype里面的数据

UPDATE abc
SET    xmldoc = updatexml(xmldoc, '//name/a[@id=1]/@value', 'some new value')
WHERE  ......

(注意:如果里面没有<aid="1">这个节点,将不能update)

  • 添加超过4k字节的xml文档到xmltype型字段

可以通过使用临时表的办法实现:
先建立一个临时的表,其中的一个字段是clob类型;
再将要写入xmltype字段的xml doc写入这个临时的clob型的字段中;
最后insertinto abc (id,xmldoc) values (abc_q.nextval , sys.xmlType.createXML((select contentfrom 临时表whereid=......)));

EXISTSnode
--EXISTSNODE函数检查XML中的某一个节点是否存在。如果存在,返回1,否则返回0。  
SELECT existsnode(VALUE(a), 'Corporation/Name')
FROM   TABLE(xmlsequence(extract(v_xml, 'Root/Corporation'))) a;
SELECT COUNT(*)
FROM   TABLE(xmlsequence(extract(v_xml, 'Root/Corporation'))) a
WHERE  existsnode(xmlvalue, 'Corporation/Name[@id=1]') = 1;
EXTRACTVALUE
--EXTRACTVALUE()是从某个节点中读取值。ExtractValue只能返回一个确切的位置节点的值,如果存在多个相同节点,Oracle就会报错 。
SELECT extractvalue(VALUE(a), 'Corporation/Name') cor_nam
FROM   TABLE(xmlsequence(extract(v_xml, 'Root/Corporation'))) a;
EXTRACT
--EXTRACT函数返回一个XML文档的一个节点树,或者某一节点下所有符合条件的节点。
  SELECT extract(VALUE(a), 'Corporation/Persons/Person') cor_person
  
  FROM   TABLE(xmlsequence(extract(v_xml, 'Root/Corporation'))) a;
Xmlsequence、TABLE
--利用xmlsequence()和table()返回符合条件的节点的值 。
SELECT extract(VALUE(a), 'Corporation/Persons/Person') cor_person
FROM   TABLE(xmlsequence(extract(v_xml, 'Root/Corporation'))) a;
实例:
SELECT sys.xmltype.createxml(t.value1).extract('//TResponse/OrderInfo/OrderInfos/text()')
       .getclobval()
FROM   abc t

感谢各位的阅读,以上就是“PLSQL中XML类型字段分析”的内容了,经过本文的学习后,相信大家对PLSQL中XML类型字段分析这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

您可能感兴趣的文档:

--结束END--

本文标题: PLSQL中XML类型字段分析

本文链接: https://www.lsjlt.com/news/64730.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • PLSQL中XML类型字段分析
    这篇文章主要讲解了“PLSQL中XML类型字段分析”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“PLSQL中XML类型字段分析”吧!xmltype:&nbs...
    99+
    2022-10-18
  • plsql如何查看字段类型
    在PL/SQL中,可以使用以下两种方法来查看字段类型: 使用DESCRIBE命令:DESCRIBE命令用于查看表、视图或包中的对...
    99+
    2023-10-27
    plsql
  • Java中string类型的xml字符串实例分析
    这篇“Java中string类型的xml字符串实例分析”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Java中string类...
    99+
    2023-06-29
  • MySQL字段类型分为哪几类
    这篇文章主要介绍“MySQL字段类型分为哪几类”,在日常操作中,相信很多人在MySQL字段类型分为哪几类问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”MySQL字段类型分为哪...
    99+
    2022-10-19
  • Oracle中CLOB大数据字段类型操作的示例分析
    这篇文章主要为大家展示了“Oracle中CLOB大数据字段类型操作的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Oracle中CLOB大数据字段类型操...
    99+
    2022-10-18
  • mysql5.7 新增的json字段类型用法实例分析
    本文实例讲述了mysql5.7 新增的json字段类型用法。分享给大家供大家参考,具体如下: 一、我们先创建一个表,准备点数据 CREATE TABLE `json_test` ( `id` int(...
    99+
    2022-10-18
  • SQL Server中的XML数据类型实例分析
    本篇内容主要讲解“SQL Server中的XML数据类型实例分析”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“SQL Server中的XML数据类型实例分析”吧!SQL Se...
    99+
    2023-06-30
  • SAP CRM AET Application Reference类型扩展字段的示例分析
    这篇文章给大家介绍SAP CRM AET Application Reference类型扩展字段的示例分析,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。此字段用于将产品链接到另一个业务对象。通过这种扩展字段导航到目标业...
    99+
    2023-06-04
  • 详解MySQL中数据类型和字段类型
    目录1. mysql的数据类型 (1)数值型 (2)字符(串)型 (3)日期和时间型 (4)null值 2. mysql的列(字段)类型 2.1数值列类型&nb...
    99+
    2022-09-26
  • Java全面解析string类型的xml字符串
    目录解析string类型的xml字符串所需要的包自行导入解析String类型t复杂xml,多级节点,最好的例子字符串xml如下解析代码解析string类型的xml字符串 我先拼接一个...
    99+
    2022-11-13
  • MySQL中有哪些字段类型
    这篇文章给大家介绍MySQL中有哪些字段类型,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。  MySQL字段类型都有哪些  类型描述  INT一种数值类型,值的范围如下带符号的-214...
    99+
    2022-10-18
  • SQL中怎么判断字段类型
    这篇文章将为大家详细讲解有关SQL中怎么判断字段类型,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。-->Title:Generating test d...
    99+
    2022-10-18
  • js数据类型之数字类型的示例分析
    这篇文章主要介绍了js数据类型之数字类型的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。我们具体介绍一下js的数据类型其中一种。一、...
    99+
    2022-10-19
  • MySQL中JSON字段数据类型详解
    目录前言创建jsON值搜索JSON类型数据在 JSON 和非 JSON 值之间转换JSON 值的汇总总结前言JSON 类型是从 mysql 5.7 版本开始支持的功能,MySQL 支持由RFC 7159定义的本机JSON数...
    99+
    2022-06-14
    mysql的json数据类型 数据库json类型 数据库json字段
  • SQL SERVER中的字段类型有哪些
    SQL SERVER中的字段类型有哪些?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。SQL SERVER提供的说明。 ...
    99+
    2022-10-18
  • Mysql中如何使用date类型字段
    这期内容当中小编将会给大家带来有关Mysql中如何使用date类型字段,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。 字符串转日期: 应该...
    99+
    2022-10-18
  • MySQL之JSON类型字段的使用技巧分享
    目录准备工作jsON对象基础操作JSON数组操作更多操作JSON字段在Java中的实践测试环境: mysql8.0.19 准备工作 CREATE TABLE json_demo ( `id` INT ( 11 ) N...
    99+
    2022-08-25
  • redis字符串类型的示例分析
    这篇文章主要介绍redis字符串类型的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!我们都知道redis是采用C语言开发,那么在C语言中表示string都是采用char[]数...
    99+
    2022-10-18
  • Python数字类型实例代码分析
    这篇文章主要介绍了Python数字类型实例代码分析的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python数字类型实例代码分析文章都会有所收获,下面我们一起来看看吧。Python 数字类型Python 中有三...
    99+
    2023-07-06
  • PyTorch中inplace字段的示例分析
    小编给大家分享一下PyTorch中inplace字段的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!例如torch.nn.ReLU(inplace=Tru...
    99+
    2023-06-15
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作