有誰知道存在一種方式,或者甚至有可能從另一個方法調用存儲過程?如果是這樣,你會怎麼做?在Oracle中與另一個存儲過程調用存儲過程
這裏是我的測試代碼:
SET SERVEROUTPUT ON;
DROP PROCEDURE test_sp_1;
DROP PROCEDURE test_sp;
CREATE PROCEDURE test_sp
AS
BEGIN
DBMS_OUTPUT.PUT_LINE('Test works');
END;
/
CREATE PROCEDURE test_sp_1
AS
BEGIN
DBMS_OUTPUT.PUT_LINE('Testing');
test_sp;
END;
/
CALL test_sp_1;
感謝您的CALL sp_1; 我收到以下錯誤。 錯誤的命令開始行21: CALL test_sp_1 錯誤報告: SQL錯誤:ORA-06576:不是有效的函數或過程名 06576. 00000 - 「不是有效的函數或過程名」 *原因:可能找不到函數(如果存在INTO子句)或 過程(如果語句沒有INTO子句)調用 。 *操作:更改語句以調用函數或過程 – electricsheep 2010-08-05 13:55:38
@Michael Lockwood - 您可以在原始問題中發佈代碼嗎?另外,如果您使用SQL * PLus等工具調用函數,則需要將返回值分配給變量。 – dcp 2010-08-05 13:57:51
@ML:當CALL不起作用時(爲不是有效的PL/SQL語句),爲什麼還要嘗試使用CALL並且dcp向您展示瞭如何正確執行它? – 2010-08-05 14:04:07