我正在使用oracle 10g express版本。它有一個很好的用戶界面開發人員。但是我正在執行存儲過程時遇到一些問題。如何執行oracle存儲過程?
步驟:
create or replace procedure temp_proc is
begin
DBMS_OUTPUT.PUT_LINE('Test');
end
它創建成功。但是,當我執行:
execute temp_proc;
它顯示ORA-00900:無效的SQL語句
所以在這裏幫助需要
我正在使用oracle 10g express版本。它有一個很好的用戶界面開發人員。但是我正在執行存儲過程時遇到一些問題。如何執行oracle存儲過程?
步驟:
create or replace procedure temp_proc is
begin
DBMS_OUTPUT.PUT_LINE('Test');
end
它創建成功。但是,當我執行:
execute temp_proc;
它顯示ORA-00900:無效的SQL語句
所以在這裏幫助需要
Execute
是在SQL * Plus語法..嘗試包裝你的電話在開始..這樣結束:
begin
temp_proc;
end;
(儘管傑弗裏說,這並不在APEX工作..但你想讓它在SQLDeveloper中運行..試試'運行'菜單)
這完全適用於APEX。我剛剛檢查過。 – InamTaj 2014-05-21 17:22:24
Oracle 10g Express Edition內置了Oracle Application Express(Apex)。您正在SQL命令窗口中運行該窗口,該窗口不支持SQL * Plus語法。
這並不重要,因爲(因爲您已經發現)BEGIN ... END語法在Apex中有效。
'是'和'as'都是有效的語法。默認情況下,輸出爲已禁用。嘗試的過程,也使輸出...
create or replace procedure temp_proc is
begin
DBMS_OUTPUT.ENABLE(1000000);
DBMS_OUTPUT.PUT_LINE('Test');
end;
......並把它在PLSQL塊...
begin
temp_proc;
end;
...如SQL是非過程。
begin
temp_proc;
end;
我想提醒你,「temp_proc」必須是同義詞...
這是有效的SQLPlus - 怎麼是你想運行呢? – 2009-12-06 05:26:14
首先我選擇「Go To Database Home Page」,然後選擇Home> SQL> SQL Commands。然後創建過程,然後執行。 – FlintOff 2009-12-06 05:30:27
你使用什麼軟件? – 2009-12-06 05:33:20