Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Oracle PL/SQL:如何执行一个执行DML并具有返回值的SP?_Oracle_Syntax_Plsql - Fatal编程技术网

Oracle PL/SQL:如何执行一个执行DML并具有返回值的SP?

Oracle PL/SQL:如何执行一个执行DML并具有返回值的SP?,oracle,syntax,plsql,Oracle,Syntax,Plsql,我有一个具有以下标题的存储过程: FUNCTION SaveShipment (p_user_id IN INTEGER, p_transaction_id IN INTEGER, p_vehicle_code IN VARCHAR2 DEFAULT NULL, p_seals IN VARCHAR2 DEFAULT NULL) RETURN INTEGER; 我在蟾蜍的编辑那里运行它时遇到了麻烦。我无法将其作为select from dual语句的一部分运行,因为它预执行DML,但如果我尝试

我有一个具有以下标题的存储过程:

FUNCTION SaveShipment (p_user_id IN INTEGER, p_transaction_id IN INTEGER, p_vehicle_code IN VARCHAR2 DEFAULT NULL, p_seals IN VARCHAR2 DEFAULT NULL) RETURN INTEGER;
我在蟾蜍的编辑那里运行它时遇到了麻烦。我无法将其作为select from dual语句的一部分运行,因为它预执行DML,但如果我尝试在某个论坛上看到的建议的以下语法:

var c integer;
exec :c := orm_helper.orm_helper.SAVESHIPMENT (9999, 31896, NULL, '');
print c;
我得到:

ORA-01008: not all variables bound
Details:
BEGIN :c := orm_helper.orm_helper.saveshipment (9999, 31896, null, ''); END;
Error at line 2
ORA-01008: not all variables bound

手动运行此sp的正确语法是什么?

是否从另一个sp调用存储过程

我认为语法是(如果我没记错的话):


希望这对您有所帮助。

您可能可以从DUAL中选择orm_helper.orm_helper.saveshipping(99991896,NULL“”)

declare
     c integer;
begin

c:=storedProc(...parameters...);