> 백엔드 개발 > PHP 튜토리얼 > php调用oracle存过过程出错

php调用oracle存过过程出错

WBOY
풀어 주다: 2016-06-23 14:18:29
원래의
1003명이 탐색했습니다.

php oracle 存储

oracel存储过程:
create or replace package AA_TEST is  -- Author  : ADMINISTRATOR  -- Created : 2012-5-21 12:30:24  -- Purpose :   -- Public type declarations  type myCursor is ref cursor;  procedure getSysdate(in_byzd1 in string,                       in_byzd2 in string,                       in_byzd3 in string,                       out_flag out string,                       out_msg  out string,                       o_cursor out myCursor);end AA_TEST;/create or replace package body AA_TEST is  procedure getSysdate(in_byzd1 in 	,                       in_byzd2 in string,                       in_byzd3 in string,                       out_flag out string,                       out_msg  out string,                       o_cursor out myCursor) is  begin    out_flag := '1';    out_msg :='执行成功!';    open o_cursor for      select sysdate,in_byzd1,in_byzd2,in_byzd3 from dual;  end;end AA_TEST;/
로그인 후 복사

php代码
$sql_sp = "begin HTS.AA_TEST.getSysdate(:in_byzd1,:in_byzd2,:in_byzd3,:out_flag,:out_msg,:o_cursor); end;"; $stmt = oci_parse($conn, $sql_sp);oci_bind_by_name($stmt,':in_byzd1',$in_byzd1);oci_bind_by_name($stmt,':in_byzd2',$in_byzd2);oci_bind_by_name($stmt,':in_byzd3',$in_byzd3);oci_bind_by_name($stmt,':out_flag',$out_flag);oci_bind_by_name($stmt,':out_msg',$out_msg);oci_bind_by_name($stmt,':o_cursor',$o_cursor);oci_execute($stmt);$result=oci_fetch_assoc($stmt);print_r($result);
로그인 후 복사

出现错误
Warning: oci_execute(): ORA-06550: 第 1 行, 第 7 列: PLS-00306: 调用 'GETSYSDATE' 时参数个数或类型错误 ORA-06550: 第 1 行, 第 7 列: PL/SQL: Statement ignored in C:\xampp\htdocs\ceshi\index.php on line 15
로그인 후 복사

刚接触php链接oracle这块!求大神快乐指教

回复讨论(解决方案)

你好,请问你解决了吗

我也出现了一样问题,可以说出来你是怎么解决的吗?非常感谢!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿