From: [EMAIL PROTECTED] Operating system: Linux Slackware 7.1+ PHP version: 4.0.4pl1 PHP Bug Type: ODBC related Bug description: ODBC_result() fails on DB2 LONG VARCHAR columns Running on IBM DB2 UDB version 7.1 for Linux, PHP compiled with --with-ibm-db2 configure option. Given the following table definition: CREATE TABLE foo (bar1 INTEGER, bar2 LONG VARCHAR) Connecting to the database: $conn=odbc_connect("TESTDB", "username", "password"); Inserting data: $rc=odbc_exec($conn, "INSERT INTO foo VALUES (1, 'This is some really long data..')"); And then running the following script: for($i=1;$i<3;$i++) { $rc=odbc_fetch_row($q, 0); $result=odbc_result($q, $i); echo "Data:".$result; } The first iteration returns the data from bar1 correctly. The second iteration will give the following error on the line containing the ODBC_result() call: Warning: SQL error: [IBM][CLI Driver] CLI0115E Invalid cursor state. SQLSTATE=24000, SQL state 24000 in SQLGetData in /home/ltning/webmail2/functions/test.php on line 10 I have found that I do NOT get this error if I do not use the ODBC_fetch_row() function prior to the second iteration (moving that line out of the loop). My theory is that the DB2 engine handles ODBC_fetch_row() & ODBC_result() calls differently when LONG VARCHAR fields are involved than otherwise, and PHP does not know how to handle this. I need to use the ODBC_fetch_row() on every iteration because I'm creating custom database functions, and there should be nothing directly "wrong" with that. I.e. this _should_ work.. If I can provide any other information, please tell me.. ;) Best regards, Eirik Overby -- Edit Bug report at: http://bugs.php.net/?id=10469&edit=1 -- PHP Development Mailing List <http://www.php.net/> To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]