|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2006-04-12 19:25 UTC] tony2001@php.net
[2006-04-13 12:01 UTC] a dot vigetti at provincia dot grosseto dot it
[2006-04-13 12:04 UTC] tony2001@php.net
[2006-04-13 12:52 UTC] a dot vigetti at provincia dot grosseto dot it
[2006-04-13 12:57 UTC] tony2001@php.net
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Sat Oct 25 23:00:01 2025 UTC |
Description: ------------ Oracle library version 10G R2. I need to insert into an oracle table with a long raw, i can't change the column type because another application use the same table and i can change the application. I experinced the same problem with other version of php/oci libs/Oracle database. Reproduce code: --------------- This is a small code example that fails: <?php /* create table longRawTable( id number(10), fileimage long raw); */ $db=ocilogon("user","password", "database"); $qs = "insert into longRawTable (id, fileimage)" . " values (:id, :fileimage)"; $stmt = OCIParse($db, $qs); $i=1; $fileimage = file_get_contents( "a_file" ); OCIBindByName ( $stmt, ":id", $i, -1); OCIBindByName ( $stmt, ":fileimage", $fileimage, -1); ociexecute($stmt, $OCI_DEFAULT); ocicommit($db); ?> When i try this script i obtain the following error: Warning: ociexecute(): ORA-01461: can bind a LONG value only for insert into a LONG column in ..../LongRow.php on line 13 Using a column of type LONG and storing data with the bin2hex function all is OK. Its a php or OCI problem? I try a similar script in perl using DBD::Oracle on the same machine linked with the same OCI libs without problems. thanks Aldo Vigetti