2012-05-15 47 views
-1
EXECUTE IMMEDIATE 
    'Create Table '||vCUPRSBaseTableName 
    ||' As Select * From '||vCUPRSTableName 
    ||' where C_DESTINATION_ENTITY='''||l_bc_a(i) 
    ||''' and LATEST=1' 
+0

歡迎StackOverflow上:如果您發佈的代碼,XML或數據樣本,** **請在高亮文本編輯器的線和編輯器工具欄上單擊「代碼示例」按鈕('{}')很好地格式和語法突出顯示它! –

+0

究竟什麼是你想怎麼辦? – Sathya

+0

這是非常罕見的,你必須創建一個表像這樣的甲骨文。如果你解釋理由,那麼也許有更好的方法可以建議。 –

回答

1

您不能將表名綁定到變量的靜態sql。做到這一點的唯一方法是使用動態SQL

0

這是不可能在存儲過程執行DDL。與要在命名,目標和源表的靈活性事實相結合,動態SQL是你唯一的選擇。

然而,正如大衛指出,它實際上是非常罕見必須創建以這種方式表。如果你要解釋你的用例,我們應該能夠提出一個更好的方法。如果我是一個投注人,我會把錢放在臨時桌上,作爲你真正想要的解決方案。 Find out more