-1
EXECUTE IMMEDIATE
  'Create Table '||vCUPRSBaseTableName
  ||' As Select * From '||vCUPRSTableName
  ||' where C_DESTINATION_ENTITY='''||l_bc_a(i)
  ||''' and LATEST=1'
4

2 回答 2

1

您不能将静态 sql 的表名绑定到变量。唯一的方法是使用动态 sql

于 2012-05-15T06:12:18.917 回答
0

无法在存储过程中执行 DDL。再加上您希望灵活地命名目标表和源表这一事实,动态 SQL 是您唯一的选择。

然而,正如 David A 所观察到的,实际上很少需要以这种方式创建表。如果您要解释您的用例,我们应该能够提出更好的方法。如果我是一个赌徒,我会把钱放在临时桌子上,作为你真正想要的解决方案。 了解更多

于 2013-01-20T14:13:45.747 回答