다음은 내 절차숫자 또는 값 오류 : 문자열 버퍼가 너무 작은 - PHP + 오라클
NOBL_TEC_TEST_PROC(v1 number,v2 out number)
내 모델 기능
public function testProc()
{
$result = '';
$db = "orcl";
$conn = oci_connect("***", "****", $db);
$sql = 'begin NOBL_TEC_TEST_PROC(222, :seqno); end;';
$stmt = oci_parse($conn,$sql);
oci_bind_by_name($stmt, ':seqno', $result);
oci_execute($stmt);
return $result;
}
나는 그것이 잘 작동 < 10 IN 값을 줄 경우 ,하지만 IN 값이 10 이상이면 다음과 같은 오류가 발생합니다.
<b>Warning</b>: oci_execute(): ORA-06502: PL/SQL: numeric or value error: character string buffer too small ORA-06512: at line 1 in....
어떻게 해결할 수 있습니까? 어떤 도움이 필요합니까? 감사
프로 시저를 변경해야합니다. 프로 시저의 로컬 변수 (또는 프로 시저 호출 등)에 매개 변수 중 하나를 지정하고 있습니다. 로컬 변수는 전달중인 데이터를 받아 들일 올바른 데이터 유형을 가지고 있지 않으므로 변경해야합니다. – Ben
절차를 어떻게 변경해야합니까? 그래서 PHP를 잘 모르겠다 .. – vamsi
당신이 절차를 게시하면 누군가가 도움을 줄 수있을 것이다 ... 변화를 일으킬 수도 있지만 영향을받는 사람에게 물어 보는 것이 가장 좋다. – Ben