如何使用 PetaPoco 从 Oracle 调用存储过程
本文关键字:调用 存储过程 Oracle 何使用 PetaPoco | 更新日期: 2023-09-27 18:30:40
我在 Oracle 中有存储过程
CREATE OR REPLACE PROCEDURE proc1 (p_param1 INTEGER, p_param2 CHAR, p_param3 INTEGER)
AS
BEGIN
...
END;
我在Oracle SQL Developer中使用以下语句调用它:
EXECUTE proc1(2013, 1, 3);
我尝试从Visual Studio用C#调用它,但它不起作用
_db.Execute("EXEC proc1 (2013, 1, 3)");
如何在 C# 中正确调用它?
谢谢。
EXEC
是SQL*Plus的命令。尝试在没有EXEC
或匿名 PL/SQL 块的情况下使用命令:
_db.Execute("proc1 (2013, 1, 3)");
或
_db.Execute("begin proc1 (2013, 1, 3); end;");
此外,在这种情况下,1
可以自动转换为 CHAR,在其他情况下,您需要使用引号''
:
_db.Execute("begin proc1 (2013, 'abc', 3); end;");