【发布时间】:2014-08-22 19:32:38
【问题描述】:
我已阅读并了解 Oracle 仅使用全局临时表,这与允许 #temp 表的 MS SQL 不同。为了完成从 MS SQL 到 Oracle 的数据库转换,我需要创建数百个全局临时表。我想知道在 Oracle 存储过程中是否有另一种方法,而不是创建所有这些必须在数据库中维护的表。
谢谢
【问题讨论】:
-
为什么需要创建数百个全局临时表?你想解决什么问题?也许您可以使用 Oracle 集合而不是临时表。也许您可以使用视图而不是临时表。也许您可以使用流水线表函数。
-
也许你所需要的只是函数内部的一个 table 类型的变量。这真的取决于你在做什么。
-
我们正在努力保持应用程序的两个版本之间的一致性。创建临时表会起作用,但会导致我们在 Oracle 版本中维护 MSSQL 版本中不存在的所有这些表。大多数情况下,临时表唯一在存储过程中使用,然后在最后被截断。我们不断升级我们的应用程序,并让它们在一定程度上具有可比性,以确保在一个版本中进行更改时,可以轻松地将其合并到另一个版本中。
标签: oracle plsql temp-tables