首页 > 解决方案 > 在 select 语句完成之前 Oracle 正在删除我的表

问题描述

在工作中,我们有一个大型 Oracle SQL 查询,旨在根据先前脚本中的分析和表组合输出两个选择语句。在这些选择语句的末尾,我们截断了创建的临时表。我的问题是,在 select 语句有时间运行之前表被截断,导致查询和空表的输出均为 0,现在需要再次运行整个过程以正确填充表。这是我试图帮助自动化的事情,但我一直坚持如何让 Oracle 在触发截断之前等待 select 语句完成处理。很简单,它看起来像:

Select * from temp; 
Truncate Table temp; 
commit;

标签: sqloracle

解决方案


TRUNCATE是Oracle中的一个DDL语句,这意味着它可以修改表和数据库的结构,而不是使用TRUNCATEWhy don't you try to change it for a simple DELETE,这是Oracle中的一个简单的DML语句,只更改数据。


推荐阅读