【问题标题】:Temporary table in Oracle? [duplicate]Oracle中的临时表? [复制]
【发布时间】:2012-06-21 03:16:29
【问题描述】:

可能重复:
How to create a temporary table in Oracle

我有一个 SQL 查询,它生成了一个我想多次重复使用的表。在 T-SQL 中我会创建一个临时表 (#temp),Oracle SQL 中的等价物是什么?

谢谢。

【问题讨论】:

  • 谷歌有什么要说的?
  • Google 谈论全局临时表,但在 SQL 中创建#temp 表不需要特定权限。当我尝试在 oracle 中创建全局临时表时,它说我没有权限。
  • Oracle 无法在没有特定权限的情况下创建临时表。请您的 DBA 授予您 CREATE TABLE 权限。如果您需要 PL/SQL 中的临时存储,请考虑使用 PL/SQL collection 类型。
  • @N. West,这是个坏建议,而不是 oracle 中临时表的工作方式
  • 一般来说,Oracle 中不需要像 SQL Server 中那样多的临时表(因为它是更有效的锁定实现)。在我看到的大多数情况下,您可以简单地将 SQL Server 临时表替换为相应的选择(或使用 WITH 子句)

标签: sql oracle


【解决方案1】:

临时表在 oracle 中的工作方式与在 sql server 中不同。我建议阅读 oracle 文档中的相应章节。要重用表的内容,请在提交时使用“保留行”子句。

【讨论】:

    猜你喜欢
    • 2012-09-17
    • 2010-12-24
    • 2015-12-12
    • 1970-01-01
    • 2015-12-02
    • 2012-06-10
    • 1970-01-01
    • 2011-01-29
    • 1970-01-01
    相关资源
    最近更新 更多