ID:               40186
 Updated by:       [email protected]
 Reported By:      tony at marston-home dot demon dot co dot uk
-Status:           Assigned
+Status:           Bogus
 Bug Type:         OCI8 related
 Operating System: Windows XP
 PHP Version:      5.2CVS-2008-11-11
-Assigned To:      tony2001
+Assigned To:      sixd
 New Comment:

Thank you for taking the time to write to us, but this is not
a bug. Please double-check the documentation available at
http://www.php.net/manual/ and the instructions on how to report
a bug at http://bugs.php.net/how-to-report.php

I see this bug has a long history and is still of interest. The current
behavior is a limitation with the implementation of the open source OCI8
extension and is expected behavior. With respect, I am marking the bug
as such. 

I will be tracking the base issue for future consideration in OCI8 or
PDO_OCI.
 
I recognize the usefulness of such functionality. Unfortunately there
are no short term plans known to me to update this area of code. All
patches to add such functionality are welcome




Previous Comments:
------------------------------------------------------------------------

[2008-11-10 14:08:36] tony at marston-home dot demon dot co dot uk

I have tried loading that snapshot, but I am still getting the same
error. The call to oci_fetch_array() fails with "ORA-00932: inconsistent
datatypes: expected CHAR got ARRAY"

------------------------------------------------------------------------

[2008-11-10 11:25:52] [email protected]

Please try using this CVS snapshot:

  http://snaps.php.net/php5.2-latest.tar.gz
 
For Windows:

  http://windows.php.net/snapshots/



------------------------------------------------------------------------

[2007-01-31 10:37:03] tony at marston-home dot demon dot co dot uk

When I try the following:

$stmt  = ociParse($dbconn, "SELECT favourite_food FROM x_person");
oci_bind_array_by_name($stmt, 'favourite_food', $foods, 10, -1,
SQLT_NUM);
oci_execute($stmt);
while(oci_fetch($stmt)) {
   print_r($foods);
}

it fails with ORA-01036: illegal variable name/number.

When I try the following:

$stmt  = ociParse($dbconn, "SELECT :favourite_food FROM x_person");
oci_bind_array_by_name($stmt, ':favourite_food', $foods, 10, -1,
SQLT_NUM);
oci_execute($stmt);
while(oci_fetch($stmt)) {
   print_r($foods);
}

it fails with ORA-01484: arrays can only be bound to PL/SQL statements.

------------------------------------------------------------------------

[2007-01-30 19:38:25] [email protected]

You can and I've already pointed you out how to do it, but you don't
want even to try.

------------------------------------------------------------------------

[2007-01-30 19:21:43] tony at marston-home dot demon dot co dot uk

MySQL's SET datatype and PostgreSQL's ARRAY datatype are identical in
functionality to Oracle's VARRAY datatype in that they can hold arrays
of values instead of single values.

It is not unreasonable of me to expect to be able to write to a
SET/ARRAY/VARRAY column and read that data back again. I can do this
with the TOAD admin tool and Oracle SQL Developer, so why can't I do it
with the OCI8 extension?

------------------------------------------------------------------------

The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
    http://bugs.php.net/40186

-- 
Edit this bug report at http://bugs.php.net/?id=40186&edit=1

Reply via email to