2013-10-01 47 views
0

我的存儲過程在我的oracle模式中包含名稱內的一個點。在Oracle中刪除存儲過程使用名稱中的一個點

如果運行查詢

select owner, object_name, object_type from all_objects 

我:

owner: MYSCHEMA 
object_name: MYPROC.NAME 
object_type: PROCEDURE 

我嘗試使用引號刪除這個過程:

drop procedure "MYSCHEMA.MYPROC.NAME" 

但它是不成功的。我如何刪除此SP?

回答

3

你可以嘗試:

drop procedure MYSCHEMA."MYPROC.NAME"; 
+1

若昂 - 這個解決方案應該工作。如果不是這樣,那是因爲雙引號也會使名稱區分大小寫,所以請確保您的案例正確。我還建議使用「標準」名稱,以免將來遇到這種類型的問題。 –

+0

如果一個對象是用雙引號括起來的混合大小寫字母創建的,那麼數據字典視圖將顯示在創建對象時指定的名稱。例如:CREATE TABLE「miXED_casE_tesT」(x NUMBER); SELECT * FROM user_tables WHERE upper(table_name)='MIXED_CASE_TEST'; - 返回miXED_casE_tesT表名 –

+0

是的,它的工作原理!謝謝! –

相關問題