oracle - Oracle临时表创建

标签 oracle temp-tables

有什么方法可以在 Oracle 中创建一个临时表,一旦模式连接关闭,它就会自行删除?本地临时表的工作方式是否类似?

最佳答案

我认为您的问题的解决方案是使用 GTT ( Global Temporary Tables )。

它们将允许您在其中存储临时数据,这些数据将在每个 session 中可用。

CREATE GLOBAL TEMPORARY TABLE my_temp_table (
  id           NUMBER,
  description  VARCHAR2(20)
)

此外,可以通过在创建脚本末尾指定 ON COMMIT DELETE ROWS; 选项来删除此数据,例如:

CREATE GLOBAL TEMPORARY TABLE my_temp_table (
  id           NUMBER,
  description  VARCHAR2(20)
)
ON COMMIT DELETE ROWS;

如网站上所述:

ON COMMIT DELETE ROWS 子句指示应在事务结束时或 session 结束时删除数据。”

您还可以查看 Oracle docs here .

关于oracle - Oracle临时表创建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32607737/

相关文章:

TSQL:确定存储过程返回的列数

php - MySQL临时表

sql - Oracle中如何将表从一个数据库复制到另一个数据库

spring - Spring 批处理中的 JdbcPagingItemReader 没有给出正确的结果

sql - 在 Oracle 中将 mm/dd/yyyy 转换为 yyyy-mm-dd

mysql - 如何将查询的输出存储到临时表中并在新查询中使用该表?

sql - 如何复制表的结构和内容,但顺序不同?

sql-server - 动态创建临时表,插入临时表,然后选择

Oracle如何从表中删除少数分区数据

c# - 如何将参数值存储在 webservice 的 oracle 过程中