找到 985 篇文章,关于软件与编码

如何在 Oracle 中执行模式注册和 XML 验证?

Kiran P
更新于 2020-12-04 10:45:21

1K+ 次查看

问题陈述:您希望在数据库中存储的 XML 数据上强制执行 XML 模式有效性。解决方案:Oracle 提供了 DBMS_XMLSCHEMA.REGISTERSCHEMA 函数来在 Oracle 数据库中定义 XML 模式。为了验证生成的 xml 数据,我们需要注册模式。在注册模式时,格式必须与生成的 xml 格式匹配,或者根据您希望生成 xml 的方式注册模式。注册提供了两个关键功能。首先,它允许 Oracle 识别它可以从中获取模式的外部位置或位置。其次,也是最重要的一点,REGISTERSCHEMA 会解析模式的语法正确性... 阅读更多

如何生成包含嵌套值的 XML?

Kiran P
更新于 2020-12-04 10:43:13

1K+ 次查看

问题陈述:您希望生成一个复杂的 XML 文档,在不同级别包含嵌套值。解决方案:Oracle 有相当数量的函数和过程可以从常规数据生成 XML。为了演示用法,我将使用 studentdata。我们将假设我们希望使用学生的 student_id 作为根元素的 XML 属性,并添加有关费用的详细信息,将付款期限指定为属性,并添加货币详细信息。Oracle 函数 XMLROOT、XMLELEMENT 和 XMLATTRIBUTE 提供对所需 XML 结构的完全控制。XMLROOT 提供必要的 XML 标头以将我们的结果... 阅读更多

如何在 Oracle 中从 XML 文档中提取关键 XML 元素?

Kiran P
更新于 2020-12-04 10:42:05

6K+ 次查看

问题陈述:您需要从 XML 文档中提取一部分/子集的元素值。解决方案:我们可以利用 Oracle 的 EXTRACT 函数,它支持 XMLTYPE 数据类型。EXTARCT 函数通过将结果作为 XMLTYPE 值返回,提供了保留 XML 元素名称和属性结构的能力。假设,我们在表 tmp_xml_gen 中有以下 XML,我们希望从中提取客户姓名。示例       134     taylor.cauchon@internalmail     Taylor Cauchon                   921         COMPLETE               ... 阅读更多

如何提取 XML 数据以供关系使用?

Kiran P
更新于 2020-12-04 10:40:47

547 次查看

问题陈述:您需要从 XML 文档中提取各个元素值。解决方案:Oracle 提供了 XMLTABLE 函数,可以使用 XQuery 和列映射到 Oracle 数据类型来操作 XML 文档。使用 XMLTABLE,我们可以以关系方式识别和使用 XML 文档中的数据元素。让我们假设,以下 XML 文档存储在表 tmp_xml_gen 中,我们希望从中提取元素。我们有客户详细信息以及订单相关信息。示例       134     taylor.cauchon@internalmail     Taylor Cauchon                   921     ... 阅读更多

如何在 Oracle 中将 XML 数据存储在表中?

Kiran P
更新于 2020-12-04 10:39:36

2K+ 次查看

问题陈述:您需要将本机 XML 数据存储到数据库中的关系表中。解决方案:Oracle 有几种存储 XML 文档的方法。一种存储数据的方法是我们的 XML 不需要更改,或者可以使用 XSLT 提取 XML 的一部分,就是使用 XMLTYPE 数据转换。我们将使用 XMLTYPE 调用将提供的文本转换为 XMLTYPE 数据类型。在后台,Oracle XMLTYPE 支持 CLOB 数据类型,因为 XML 在内部存储为 CLOB。这意味着我们可以使用相同的方法进行转换,将调用传递给 XMLTYPE 字符串... 阅读更多

如何在 Oracle 中将 SQL 数据转换为 XML?

Kiran P
更新于 2020-12-04 10:37:09

1K+ 次查看

问题陈述:您需要将数据库中以传统形式存储的数据转换为 XML 文档。解决方案:Oracle 有许多不同的函数可以将数据转换为 XML 格式。Oracle 提供的一些用于将关系数据转换为 XML 的函数是 SYS_XMLGEN、DBMS_XMLGEN 和 XMLELEMENT 函数。我们将使用 SYS_XMLGEN 将行转换为 XML。SYS_XMLGEN 函数根据行/行或类似行的表达式返回一个 XML 块。SYS_XMLGEN 可以接受文字值、单个列或用户定义类型作为输入参数。我们将从学生的记录数据创建 XML。我们将从... 阅读更多

如何编写一个通用的过程来查找并删除 Oracle 中任何表和列中的重复项?

Kiran P
更新于 2020-12-04 10:35:34

558 次查看

问题陈述:您希望编写一个通用的过程来查找并删除 Oracle 中任何表和列中的重复项。解决方案:我们可以使用 Oracle 的内部 ROWID 值来唯一地识别表中的行,以及带分区子句的 OLAP 函数 row_number。实现此目的的示例语法如下所示。delete from table where rowid in   (... query here ...)为了演示用法,我们将首先创建示例数据。示例-- 包含网球运动员排名的表 DROP TABLE atp_stats; CREATE TABLE atp_stats ( player_rank NUMBER NOT NULL,   player_name VARCHAR2(100) NOT NULL,   time_range  TIMESTAMP(6)); -- 示例记录 ... 阅读更多

如何在 Oracle 中查找并删除表中的重复项?

Kiran P
更新于 2020-12-04 10:33:21

833 次查看

问题陈述:您希望查找并删除 Oracle 中表中的重复项。解决方案:我们可以使用 Oracle 的内部 ROWID 值来唯一地识别表中的行。实现此目的的示例语法如下所示。delete from table where rowid in   (... query here ...)为了演示用法,我们将首先创建示例数据。示例-- 包含网球运动员排名的表 DROP TABLE atp_stats; CREATE TABLE atp_stats ( player_rank NUMBER NOT NULL,   player_name VARCHAR2(100) NOT NULL,   time_range  TIMESTAMP(6)); -- 示例记录 INSERT INTO atp_stats VALUES (1, 'ROGER FEDERER', CURRENT_TIMESTAMP); INSERT INTO atp_stats VALUES (2, 'RAFAEL NADAL', ... 阅读更多

如何在执行之前验证 Oracle 动态 SQL 的语法?

Kiran P
更新于 2020-12-04 10:31:30

2K+ 次查看

问题陈述:您希望在执行之前验证 SQL 的语法。解决方案:DBMS_SQL 默认包允许动态执行 SQL。它由 SYS 拥有,并使用 AUTHID CURRENT_USER 关键字定义,因此它以调用者的权限运行。我们可以利用 DBMS_SQL.PARSE 函数来验证语法。我们首先定义一个函数来接受 SQL 语句作为参数并解析 SQL 语句。/*  * ---------------------------------------------------------------------------  *  函数:check_syntax  *    输入  :sql 语句  *   输出  :数字  * ---------------------------------------------------------------------------  */    FUNCTION check_syntax     ( p_query IN CLOB ) ... 阅读更多

如何在 Oracle 中为指定维度的所有组合生成组小计?

Kiran P
更新于 2020-12-04 10:27:27

189 次查看

问题陈述:您希望在 Oracle 中查找指定维度所有组合的小计。解决方案:CUBE 函数将为指定的维度所有组合生成小计。如果“n”是 CUBE 中列出的列数,则将有 2n 个小计组合。我们将首先创建此要求所需的数据。示例-- 删除表 DROP TABLE atp_titles; -- 创建表 CREATE TABLE atp_titles (   player             VARCHAR2(100) NOT NULL,   title_type         VARCHAR2(100) NOT NULL,   titles             NUMBER NOT NULL);示例-- 插入 ... 阅读更多

广告