0
我有Laravel和Yajra包Oracle数据库,我怎么能叫从Laravel 5.4如何在Laravel上调用oracle程序?
一个Oracle过程。这是我的Oracle过程:
create or replace procedure PRW_GENERA_FACTURA(
pnro in number,
pmsj out VARCHAR2
) is
BEGIN
pmsj := 'El nro. es '||pnro;
end PRW_GENERA_FACTURA;
而且我想这对我的控制器:
$val1 = 20;
$result = DB::connection('ora_db')->select('exec
PRW_GENERA_FACTURA(?)',array($val1));
return $result;
它给了我这个错误:
Error Code : 900 Error Message : ORA-00900: invalid SQL statement Position : 0 Statement : exec PRW_GENERA_FACTURA(:p0) Bindings : [20] (SQL: exec PRW_GENERA_FACTURA(20))
给我一个错误:错误代码:900 错误消息:ORA-00900:无效SQL语句 位置:0 声明:EXEC PRW_GENERA_FACTURA(:VAL1) 绑定:[20] (SQL:EXEC PRW_GENERA_FACTURA(:VAL1)) – Leoh
可以尝试'DB ::原始( “EXEC PRW_GENERA_FACTURA(”。 $ val1。 “))''以确保它与该语句无关。你能在Oracle CLI(sqlplus)中尝试使用相同的语句吗? – Webdesigner
给了我同样的错误,但我在我的控制器上使用raw php修复了它。感谢您的帮助 – Leoh