#22086 [Opn->Bgs]: OCIBindByName causes problem if more than one Oracle statements are executed.
| From: | maxim@php.net | Date: | Thu, 06 Feb 2003 13:44:13 +0000 |
| Subject: | #22086 [Opn->Bgs]: OCIBindByName causes problem if more than one Oracle statements are executed. | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-32285@lists.php.net to get a copy of this message | ||
ID: 22086
Updated by: maxim@php.net
Reported By: gnitesh@yahoo.com
-Status: Open
+Status: Bogus
Bug Type: OCI8 related
Operating System: Red Hat Linux 7.3
PHP Version: 5CVS-2003-02-06 (dev)
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
You forgot to add the semicolon `;' at the end of the second statement.
Moreover - I doubt you can run this very thing he way you intended. Try
the PL/SQL in SQL *PLUS before trying to run it from PHP.
Conclusion - it is Oracle's error message due your bad PLSQL design.
Closed as Bogus
Previous Comments:
------------------------------------------------------------------------
[2003-02-06 02:15:39] gnitesh@yahoo.com
I have a script that combines various statements before it calls the
OCIParse or OCIExecute.
For instance
Begin
Insert into TABLEA(COLA, COLB, COLC) Values('VAL1', 'VAL2', 'VAL3');
Update TABLEB Set COLB = 'SOMEVAL' Where ROWID = :RID1
End;
when I call an OCIBindByName for :RID1 as
OCIBindByName($oci_stmt,":RID".$i,&$this->arr_rowid[$i],-1,OCI_B_ROWID);
where I've defined each subscript of arr_rowid using OCINewDescriptor
using the following
$this->arr_rowid[$i] =
OCINewDescriptor($this->obj_conn,OCI_D_ROWID);
OCIExecute gives me an error saying
Warning: OCIStmtExecute: ORA-06550: line 1, column 221: PL/SQL:
ORA-00933: SQL command not properly ended ORA-06550: line 1, column 93:
PL/SQL: SQL Statement ignored ORA-06550: line 1, column 224: PLS-00103:
Encountered the symbol "end-of-file" when expecting one of the
following: begin case declare end exception exit for goto if loop mod
null pragma raise return select update while with
/var/www/html/crp/includes/dbconn.inc on line 333
I'm still investigating into the issue. Instincts tell me that the
problem is due to multiple statements in 1 query so am all up on
changing the entire class for all such occurances. However, the attempt
to save database time by executing multiple queries together seems like
is not destined to work. If it doesn't work, I'll get back in here with
more info.
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=22086&edit=1