我想在过程中创建一个临时表,并在该过程中仅在完成执行'SP'后才使用该表,然后自动删除该表,那么我该怎么做?创建临时表
Q
创建临时表
0
A
回答
0
您可以使用动态SQL
Execute immediate 'create table...'
然后你就可以在同样的方式做你的STAF
毕竟所有的人,你可以删除表
execute immediate 'drop table....
0
你你可以动态SQL
execute immediate 'create table my_table (/* cols here */)';
,并在年底:
execute immediate 'drop table my_table';
另外值得一提的是,你不能同时直接使用临时表与表不存在在编译时编译代码。您必须使用动态SQL才能使用它。
+0
我可以知道为什么downvote吗? – GurV
相关问题
- 1. 创建临时表
- 2. 创建临时表
- 3. 创建临时Excel图表
- 4. 如何创建临时表
- 5. 减少创建临时表的时间
- 6. 在SQL中实时创建临时表
- 7. 从SQL Server中的临时表创建临时视图
- 8. 在SQL中创建临时表
- 9. SQL-为计算而创建临时表
- 10. MySQL连接池和创建临时表
- 11. 全局临时表创建失败
- 12. SQL中的临时表创建
- 13. pl/sql创建临时全局表
- 14. 用条件标准创建临时表
- 15. 创建临时表空间DB2
- 16. Teradata创建全局临时表
- 17. 如何使用PetaPoco创建临时表?
- 18. SQL - 用IF创建临时表然后
- 19. 从光标创建临时表
- 20. 临时表在哪里创建?
- 21. 创建和使用临时表
- 22. 在函数内部创建临时表
- 23. SHOW STATUS创建临时磁盘表
- 24. Geeting价值观和创建临时表
- 25. 在mysql中创建临时表
- 26. WITH子句 - 临时表创建
- 27. SQL - 创建加入的临时表
- 28. MySQL创建临时表语法错误
- 29. 如何使用ifnull创建临时表
- 30. PostgreSQL的创建临时表PLPGSQL功能
检查动态sql? – GurV
我建议你使用全局临时表而不是这种方法。 GTT中的数据特定于会话。您必须在程序外创建表格一次,并在程序中使用它。 https://oracle-base.com/articles/misc/temporary-tables –
如果两个会话想要同时运行该过程会怎么样?你会有一些代码在尝试创建它之前检查你的表是否存在?如果其他会话可能会使用它,您将如何知道它是否可以被删除?另外,你的意思是“删除”或“放”吗? –