note 115784 added to function.oci-bind-by-name
| From: | xorinox at gmx dot ch | Date: | Tue, 23 Sep 2014 02:54:52 +0000 |
| Subject: | note 115784 added to function.oci-bind-by-name | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-200504@lists.php.net to get a copy of this message | ||
Working with Oracle and raw types in and out worked like the following for me.
<?php
/*oracle procedure
procedure open_session(
i_instance_id in raw,
o_session_id out raw,
o_errcode out number,
o_errmsg out varchar2
);
*/
//open database
$conn = DBOpen( DB_DEV_USER );
//get session id
$sql = "begin p_loader.open_session( hextoraw( :instance_id ), :session_id, :errcode, :errmsg
); end;";
$stmt = oci_parse( $conn, $sql );
$instanceId = DB_INSTANCE_ID;
oci_bind_by_name( $stmt, ":instance_id", $instanceId, 1, SQLT_CHR );
oci_bind_by_name( $stmt, ":session_id", $sessionId, 16, SQLT_BIN );
oci_bind_by_name( $stmt, ":errcode", $errcode, 12, SQLT_INT );
oci_bind_by_name( $stmt, ":errmsg", $errmsg, 4000, SQLT_CHR );
oci_execute( $stmt );
$sessionId = bin2hex( $sessionId ); //now this is a hex string
//close database
DBClose( $conn );
?>
----
Server IP: 72.52.91.14
Probable Submitter: 50.176.189.192
----
Manual Page -- http://php.net/manual/en/function.oci-bind-by-name.php
Edit -- https://master.php.net/note/edit/115784
Del: integrated -- https://master.php.net/note/delete/115784/integrated
Del: useless -- https://master.php.net/note/delete/115784/useless
Del: bad code -- https://master.php.net/note/delete/115784/bad+code
Del: spam -- https://master.php.net/note/delete/115784/spam
Del: non-english -- https://master.php.net/note/delete/115784/non-english
Del: in docs -- https://master.php.net/note/delete/115784/in+docs
Del: other reasons-- https://master.php.net/note/delete/115784
Reject -- https://master.php.net/note/reject/115784
Search -- https://master.php.net/manage/user-notes.php