问题标签 [oracle-xml-db]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
oracle - Oracle XMLQuery - 显示带有两个 XML 节点的逗号分隔列表
我有一个这样的查询-
尽管上面指定的示例包含一个节点,但在我的实际问题中,并不是每个<parent>
节点都包含一个<item>
节点。因此,我无法使用此答案中描述的 XMLTable 解决方案。
该SELECT xmlcast(...
查询是我迄今为止在上面尝试过的,但它不起作用。我的预期输出是这个-
请建议我如何修改我的 XMLQuery。
sql - Oracle SQL 函数 XMLISVALID 总是返回 0
知道有人为什么这个语句给我的结果是 0 而不是 1
不可能有更多细节
oracle - Oracle XMLDB 检索无效 XML
我在使用 FTP 上传的 XML DB 中有无效的 XML 文件(缺少某些标记)。当我尝试使用 检索这些文件RESOURCE_VIEW
时,出现以下错误。
ORA-31011: XML 解析失败 ORA-19213: 在第 1 行的 XML 处理中发生错误
LPX-00210: 期望 '<' 而不是 't'ORA-06512:在“SYS.XMLTYPE”,第 138 行
31011。00000 -“XML 解析失败”
*原因:XML 解析器在尝试解析文档时返回错误。
*Action:检查要解析的文档是否有效。
如何使用 SQL 或 PL/SQL 检索此类内容,以便对其进行编辑和保存?
oracle - 如何使用 Oracle XML DB Webservices 将表作为一行返回
我正在尝试使用 XML DB Service 将 Oracle 表公开为 Web 服务。我想根据 Web 服务的请求中传递的条件返回多行表。
以下-:native-oracle-xml-db-web-services-11gr1
开发了一个以 PK 列作为输入并返回列作为输出的过程。它在逐列返回时起作用。但是当我尝试将完整的行作为类型返回时,它不起作用。
这是有效的。
网络服务的 URL -: http://domain:8080/orawsv/TEST/GET_TEST_TAB?wsdl
现在我想返回 TEST_TAB 表的多行,而不用硬编码列名。
oracle - 删除 Oracle dbms_xmlschema.registerschema 添加到模式中的所有注释
我通过 dbms_xmlschema.registerschema() 包子程序将模式注册到 Oracle XMLDB。
然后我从 user_xml_schemas 中选择注册的模式。
模式返回正常,但 Oracle 已将各种 Oracle 相关信息插入到模式中。这是一个示例插入(这只是其中之一):
xmlns:oraxdb="http://xmlns.oracle.com/xdb" oraxdb:storeVarrayAsTable="true" oraxdb:flags="2105633" oraxdb:schemaURL="mySchema.xsd" oraxdb:schemaOwner="bob" oraxdb:numProps ="22"
这与我在数据库中的使用无关,但是我需要向数据库外部的消费者提供架构,而 Oracle 注释只是让我的目标外部消费者感到困惑。
我想要的是能够使用我的“发明”dbms_xmlschema_annotate 来实现类似以下代码的功能。stripAllOracleAnnotations子程序:
所以我可以向外部消费者提供vMyOriginalPreRegisteredSchema 。
我已经搜索过,但找不到任何可以从 xml db 返回“原始、干净”模式的东西。
任何帮助将不胜感激。
注意:我尝试使用 XSL 转换来去除 Oracle 注释,但是虽然我创建的 XSL 文件在 XMLSpy 中完美运行,但 Oracle (18c) 完成了转换而没有错误,但返回的结果完全不正确。我通过 xmltransform() 和 xmltype.transform() 进行了测试。我只能假设这是因为 Oracle 在内部解释 oraxdb: 节点并“做自己的事情”。
oracle - 通过整个 XML 结果提取单个重复的 XML 节点
鉴于下面的 XML 示例,我如何<table_no>
使用 Oracle XML 提取从上到下提取所有值。
基于以下,我希望从我的选择中看到以下单独的行:
XML 代码:
plsql - 从 PL/SQL 中的 XMLType 而不是表中提取 CLOB 中的节点值
假设我将以下 XML 数据分配给 CLOB 类型的 PL/SQL 中的局部变量,即:
因此,我不会将此 XML 存储在表列中,因为我想单独在我的 PL/SQL 包过程中进行处理。
使用上面的l_clob
变量,我然后执行以下操作:
现在在我的程序中:
retrieve_all_table_no(p_response in XMLType)
如何逐行提取其中的所有节点值<table_no>
?
同样,这不是来自表,而是在 PL/SQL 中动态完成的。
我希望能够访问每个单独的值,以便我处理,即:
我不能使用提取,因为这将连接所有值。
xml - Oracle - 针对 XSD 验证 XML 中的日期格式 (yyyy-mm-ddThh24:mi:ssZ)
甲骨文版本:
这个查询的结果select * from v$version;
是:
我的情况介绍:
我正在使用我的过程创建一个大型 xmltype,并将其插入到我的表中。然后,我尝试针对已在数据库中注册的 .xsd 验证创建的 xmltype 文件。我已经成功地缩短了 xmltype 数据和 .xsd 文件,因此我可以准确地向您展示 .xml 文件内的哪一行我遇到了问题。
我准备的代码你可以复制粘贴进行测试:
这是我的简单表:
创建 xmltype 数据并将其插入此表的过程如下:
然后我像这样注册我的 .xsd 架构:
然后我调用我的程序:
毕竟,我去尝试根据我注册的 .xsd 文件验证表中创建的 xmltype 数据。我尝试通过两种方式做到这一点:
1.通过使用isSchemaValid
2.通过使用schemaValidate
问题:
使用我使用的第一个方法(isSchemaValid),我得到的结果是 1。这意味着当我根据提供的 .xsd 模式验证它时,我的 xmltype 数据是正确的。使用我使用的第二种方法(schemaValidate),我得到的结果是一个错误:
我试过的:
当我从日期格式中删除“Z”部分时,一切正常,但这不是一个适合我的解决方案。日期的格式必须和现在一样。
sql - Oracle XMLtable 提供交叉连接的数据
我编写了一个 Oracle XML sql,它给出的输出如下所示。为了您的快速帮助,我已经给出了下面从创建表到下面的 sql 的整个代码。输出:(错误)
想要制作如下输出(必需输出):
代码:
我尝试了以下sql,您可以修改它或使用它创建一个新的:
oracle - ORA-31061: XDB 错误: 特殊字符到转义字符的转换失败
我对 Oracle 的 XDB 完全陌生,试图在我完全陌生的生产环境中修复代码。
当我尝试执行上述查询时,Oracle 返回以下错误
ORA-31061: XDB 错误: 特殊字符到转义字符的转换失败。
这曾经在旧版本的 Oracle 中工作,在迁移到 oracle 12c 后,我们面临这个问题。