2015-11-08 18 views
-1

我的是Oracle 11g XE。我已經安裝了Navicat 11以實現簡單的UI控制。它是處理包括Oracle在內的多種數據庫軟件的非常方便的軟件。在該軟件中,用戶'wahid'被創建(以及該用戶下的一個新表),但是當我嘗試插入數據時,從我的php代碼創建,它顯示一個表示該表不存在的錯誤。所以我試圖從Navicat中刪除用戶'wahid',但它顯示錯誤說「ORA-01922:CASCADE必須指定放棄'wahid'」。oracle 11g用戶存在,但試圖放棄時說用戶不存在

在下一步中,我嘗試從Oracle命令行中刪除它。那裏說'wahid'不存在。但問題在於它的確存在。我甚至嘗試了CASCADE選項,但它沒有奏效。

的SQL命令行截圖鏈接:http://i.imgur.com/HAdVqig.png

我應該怎麼做或者我應該在哪裏看? TIA。

回答

2

嘗試包圍引號用戶:

DROP USER "wahid"; 

DROP USER "wahid" CASCADE; 
+1

的引用之間的差[引用和非引用的標識符(http://docs.oracle.com/ cd/B28359%5F01/server.111/b28286/sql%5Felements008.htm#i27570)可能會有所幫助。這也可以解釋爲什麼OP無法插入。 –

+0

添加雙引號工作!但爲什麼??我錯過了什麼? –

+0

如果沒有雙引號,Oracle的引擎會將用戶名視爲WAHID(大寫)。 – itoctopus