2010-02-27 616 views
1

在運行DBMS命令ORA-00900:無效的SQL語句錯誤

execute dbms_utility.analyze_schema('MCC','ESTIMATE',30); 

ORA-00900: invalid SQL statement錯誤。

誰能告訴我可能是什麼原因?

+3

你的代碼沒有問題。你在哪裏打電話?在SQL * Plus? – 2010-02-27 09:22:16

+0

@Sandy:我必須同意@Dougman。你已經提出了18個問題,並沒有接受你收到的任何答案。這對我們中的一些人很重要,因爲它可以提高回答者的聲譽得分。要接受答案,請點擊答案左側的複選標記 - 它會更改顏色以顯示您接受的答案。謝謝。 – 2010-02-28 14:07:27

回答

4

execute句話只對SQL*Plus實用。

撥叫大多數應用程序/語言,你必須嘗試一些下面的PLSQL聲明,這取決於你正在玩其中:

選項1。沒有/

begin 
    dbms_utility.analyze_schema('MCC','ESTIMATE',30); 
end; 

選項2。 With /

begin 
    dbms_utility.analyze_schema('MCC','ESTIMATE',30); 
end; 
/
-1

在Oracle 10g中,人們面臨着ORA-0900無效的SQL語句。解決方法是嘗試通過將存儲過程放置在BEGINEND關鍵字之間來執行存儲過程。

begin 
    stored_procedure_name(parameter); 
end; 
+0

如何使用groovy自動化代碼執行它? – 2017-04-27 15:08:32

0

您需要在SQL Developer中執行過程之前設置服務器輸出。請嘗試下面的代碼:

SET SERVEROUTPUT ON; 
execute dbms_utility.analyze_schema('MCC','ESTIMATE',30); 

如果你仍然得到同樣的錯誤,那麼請打開您的SQL * PLUS,並檢查是否安裝在它PLSQL。