AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / dba / 问题 / 1110
Accepted
Lazer
Lazer
Asked: 2011-02-08 00:37:51 +0800 CST2011-02-08 00:37:51 +0800 CST 2011-02-08 00:37:51 +0800 CST

这两个 create table 语句有什么区别?

  • 772

一个)

SQL> CREATE TABLE xml_tab1(poDoc XMLTYPE);

Table created.

SQL> desc xml_tab1;
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------------
 PODOC                                              PUBLIC.XMLTYPE

b)

SQL> CREATE TABLE xml_tab2 of XMLType;

Table created.

SQL> desc xml_tab2;
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------------
 TABLE of PUBLIC.XMLTYPE

来自这里的代码。

在第一个中,我们正在创建一个类型为 的列XMLTYPE。第二个是做什么的?我什么时候应该使用第一个或第二个?

oracle oracle-11g-r2
  • 2 2 个回答
  • 2225 Views

2 个回答

  • Voted
  1. Best Answer
    Justin Cave
    2011-02-08T01:18:21+08:002011-02-08T01:18:21+08:00

    第二条语句是创建一个对象表。

    几乎从来没有真正想要使用对象表的情况。这是在 8i 时间框架中引入的东西,当时 Oracle 正在使数据库面向对象。虽然许多面向对象的 PL/SQL 增强功能很有用,但我不推荐在 SQL 中使用对象类型。

    • 7
  2. Marco Gralike
    2014-09-16T23:59:33+08:002014-09-16T23:59:33+08:00

    ...但话又说回来... XML 与 SQL 无关,所以一些正常的推理可能不适用...(例如关于对象类型)。

    第一个示例是 XMLType,根据您的数据库版本,基础存储定义可能是 Securefile CLOB 或 Securefile Binary XML。由于非最佳性能原因,第一个从 Oracle 12c 及更高版本已弃用。

    第二个示例(XMLtype 表)如果语法不像上面那样更具体,还有 Securefile CLOB 或 Securefile Binary XML。

    XMLType 列示例在其使用中更加“SQL”原生(将 XML 插入列,从 xmlcolumn 的表中选择 * 等),如果 XMLType 表更 XML 原生(将 XML 插入 XML 表,(X)查询“doc”用法)。

    XMLtype 表可以很容易地与 XMLDB XDB 存储库(“启用层次结构”)一起使用,它可以与通过例如 FTP、WebDaV 或通过 HTTP 访问的查询的自动 XML schredding 一起使用。对此行为扩展,它们也通过 XMLDB ACL 安全实现受到保护。

    XMLType 列可以具有相同的 FTP/WebDAV/HTTP 特征,但此功能的实现不像 XMLType 表示例那样“开箱即用”。

    BTW Oracle 面向对象的功能是在 Oracle 8.0 中引入的。

    以上两个示例,以其当前形式,将导致与面向对象功能无关的安全文件替代方案。

    在 XMLDB 主页上查看 XMLType 用例的差异以及更多内容

    Oracle XML DB in Oracle Database 12c, June 2013
    Best Practices for XQuery processing in Oracle Database, 12c June 2013
    Best Practices for XML Storage in Oracle Database, 12c Oct 2013
    

    http://www.oracle.com/technetwork/database/database-technologies/xmldb/overview/index.html

    更多信息和操作方法信息可以在 Oracle XMLDB 论坛和/或 www.xmldb.nl 上找到(例如http://www.liberidu.com/blog/2007/06/24/oracle-11g-xmltype-storage -options/查看有关 XMLType 存储选项之间语法差异的一些差异)

    高温高压

    • 2

相关问题

  • Oracle 中的数据库备份 - 导出数据库还是使用其他工具?

  • ORDER BY 使用文本列的自定义优先级

  • 舒服的sqlplus界面?[关闭]

  • 如何在数据库中找到最新的 SQL 语句?

  • 如何使用正则表达式查询名称?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    你如何mysqldump特定的表?

    • 4 个回答
  • Marko Smith

    您如何显示在 Oracle 数据库上执行的 SQL?

    • 2 个回答
  • Marko Smith

    如何选择每组的第一行?

    • 6 个回答
  • Marko Smith

    使用 psql 列出数据库权限

    • 10 个回答
  • Marko Smith

    我可以查看在 SQL Server 数据库上运行的历史查询吗?

    • 6 个回答
  • Marko Smith

    如何在 PostgreSQL 中使用 currval() 来获取最后插入的 id?

    • 10 个回答
  • Marko Smith

    如何在 Mac OS X 上运行 psql?

    • 11 个回答
  • Marko Smith

    如何从 PostgreSQL 中的选择查询中将值插入表中?

    • 4 个回答
  • Marko Smith

    如何使用 psql 列出所有数据库和表?

    • 7 个回答
  • Marko Smith

    将数组参数传递给存储过程

    • 12 个回答
  • Martin Hope
    Manuel Leduc PostgreSQL 多列唯一约束和 NULL 值 2011-12-28 01:10:21 +0800 CST
  • Martin Hope
    markdorison 你如何mysqldump特定的表? 2011-12-17 12:39:37 +0800 CST
  • Martin Hope
    Stuart Blackler 什么时候应该将主键声明为非聚集的? 2011-11-11 13:31:59 +0800 CST
  • Martin Hope
    pedrosanta 使用 psql 列出数据库权限 2011-08-04 11:01:21 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 对 SQL 查询进行计时? 2011-06-04 02:22:54 +0800 CST
  • Martin Hope
    Jonas 如何从 PostgreSQL 中的选择查询中将值插入表中? 2011-05-28 00:33:05 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 列出所有数据库和表? 2011-02-18 00:45:49 +0800 CST
  • Martin Hope
    BrunoLM Guid vs INT - 哪个更好作为主键? 2011-01-05 23:46:34 +0800 CST
  • Martin Hope
    bernd_k 什么时候应该使用唯一约束而不是唯一索引? 2011-01-05 02:32:27 +0800 CST
  • Martin Hope
    Patrick 如何优化大型数据库的 mysqldump? 2011-01-04 13:13:48 +0800 CST

热门标签

sql-server mysql postgresql sql-server-2014 sql-server-2016 oracle sql-server-2008 database-design query-performance sql-server-2017

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve