ID: 33564
User updated by: daniel at bitarts dot com
Reported By: daniel at bitarts dot com
-Status: Feedback
+Status: Open
Bug Type: OCI8 related
Operating System: solaris
PHP Version: 5.0.4
New Comment:
Same things happens there too, when I add lots of characters. Seems to
be a bug in oracle?
Previous Comments:
------------------------------------------------------------------------
[2005-07-04 22:24:47] [EMAIL PROTECTED]
And what if you try to do the same with SQLPlus?
Do the same query work for you?
------------------------------------------------------------------------
[2005-07-04 16:20:41] daniel at bitarts dot com
I am using Oracle 9i
------------------------------------------------------------------------
[2005-07-04 16:18:57] daniel at bitarts dot com
Description:
------------
Trying to insert data into an NCLOB field. I can do this by using a
TRANSLATE in my sql, and binding variable with the OCIBindByName
functions. However, when I pass a certain amount of characters, the
update fails with this (incorrect) error:
Warning: ociexecute() [function.ociexecute]: OCIStmtExecute: ORA-12703:
this character set conversion is not supported
That amount of characters seems to be 2000. In the code below, if you
change this line
$data = str_pad($data, 2001, "a");
to
$data = str_pad($data, 2000, "a");
It works fine. It's only when you try to insert more than 2000
characters you get this odd behaviour.
Thank you.
Daniel
Reproduce code:
---------------
$data = str_pad($data, 2001, "a");
$lob = OCINewDescriptor($conn, OCI_D_LOB);
$stmt = OCIParse($conn,"UPDATE TEST
SET NCLOB_TEST = TRANSLATE(:NCLOB_TEST USING
NCHAR_CS)
WHERE ID='1'");
OCIBindByName($stmt, ':NCLOB_TEST', &$lob, -1, OCI_B_CLOB);
$lob->WriteTemporary($data);
OCIExecute($stmt, OCI_DEFAULT);
$lob->close();
$lob->free();
OCICommit($conn);
Expected result:
----------------
The NCLOB data field fills with 2001 "a" characters
Actual result:
--------------
error message:
Warning: ociexecute() [function.ociexecute]: OCIStmtExecute: ORA-12703:
this character set conversion is not supported
Nothing added to database.
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=33564&edit=1