oracle建立一个临时表,查询临时表的记录,但是这个临时表是不存在的

2024-12-23 13:05:33
推荐回答(1个)
回答1:

 您想问什么?

你是想问为什么不存在,还是你希望它存在?

--------------------------------------------------------------------

取决于你的项目要求,如果你建立的是普通的Temporary Table, 那么你每次用完就消失了, 所以你的程序每次都需要建立一个。


那么如果你希望每次用完仅仅是数据消失, 而表是存在的, 就需要建立Global Temporary Table

取决你项目的要求, 可以加上来选择这个公共临时表在执行commit后的行为 

  1. ON COMMIT PRESERVE ROWS  -- 整个session都有数据, 只要Session存在,你就可以做查询之类

  2. 加上On Commit Delete Rows , 你每次commit后数据都会被truncate (不是DML的delete,而是直接 DDL所有的数据)

虽然数据没有了, 但是你的表结构还是存在的。