使用PHP执行Oracle存储过程

时间:2014-10-23 14:06:23

标签: php oracle stored-procedures oci

下面的代码片段是使用php执行的存储过程(在oracle中)。我得到了

SP执行失败

总是。你们能找出问题所在吗?我是用PHP创建oracle的新手。

<?php
echo "<pre>TESTING ORACLE CONNECTION";
$conn = oci_connect("user", "pass", "(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=some ip)(PORT=port))(CONNECT_DATA=(SERVICE_NAME=some name)(INSTANCE_NAME=some name)))");
if (!$conn) {
   $m = oci_error();
   echo "<br/><br/>".$m['message'], "\n";
   exit;
}
else {
    echo "<br/><br/>Connected to Oracle!";
    echo "<br/><br/>TESTING STORED PROCEDURE:a_proc";
    $sql = 'BEGIN a_proc(:in_param1,:out_param2); END;';
    $stmt_id = oci_parse($conn, $sql);
    $value1=1235;
    oci_bind_by_name($stmt_id, ':param1', $value1);
    oci_bind_by_name($stmt_id, ':out_param2', $out_message);
    $res=oci_execute($stmt_id);
    if(!$res){
        echo "<br/><br/>Failed SP execution".oci_error();    
    }
    print_r($out_message);
}
oci_close($conn);
?>

0 个答案:

没有答案