Try using :val instead of ? Oracle does not understand that notation.
HTH Hannes E R wrote: > Perhaps I should have divulged more of what I am already trying. > > I am getting this error: > > ORA-01036: illegal variable name/number (DBD ERROR: OCIBindByName) > [for Statement "EXPLAIN PLAN SET STATEMENT_ID = '21623' FOR SELECT * > FROM TRANSACTION_HISTORY WHERE ACCOUNT_ID = ?" with ParamValues: > :p1='v8799'] > > when I run this code: > > my $prefix = "EXPLAIN PLAN SET STATEMENT_ID = '$$' FOR "; > my $sql = "SELECT * FROM TRANSACTION_HISTORY WHERE ACCOUNT_ID = ?"; > my @params = qw(v8799); > ... > my $esth = $dbh->prepare("$prefix$sql"); > unless ($esth) { > die "prepare of EXPLAIN failed"; > } > > unless ($esth->execute(@params)) { > die "execute of EXPLAIN failed"; > } > > On Mon, Apr 20, 2009 at 2:42 PM, Nelson, Erick [HDS] > <erick.nel...@hdsupply.com> wrote: >> Instead of a ? as a place holder, try using numeric place holders (eg. >> :1, :2...etc) >> Example: >> Select * from sfile where id = :1 >> >> -----Original Message----- >> From: E R [mailto:pc88m...@gmail.com] >> Sent: Monday, April 20, 2009 12:25 PM >> To: dbi-users@perl.org >> Subject: an explain plan for Oracle queries with placeholders >> >> I'd like to perform an EXPLAIN PLAN on a query that has question mark >> placeholders. >> >> I've seen perl scripts which perform EXPLAIN PLAN commands, but the >> queries they operate on don't have placeholders. >> >> Any pointers on how I would go about doing this? >> >> Thanks, >> ER >> -- -- Johannes Gritsch _____________________________________________________________ GNC Akademie GmbH Nussdorfer Laende 23 1190 Wien Austria - Europe email johannes.grit...@gnc.at web http://www.gnc.at # Phone 0-810-820-462 zum Ortstarif innerhalb Österreichs # Phone +43-1-3709787 from all countries # Fax 0-810-820-GNC-99 zum Ortstarif innerhalb Österreichs # Fax +43-1-3709787-99 from all countries _____________________________________________________________ company details http://www.gnc.at/gnc3 registered office Austria, 1190 Vienna, Nussdorfer Laende 23 registration number 222339w vat registration number ATU56000204 court of commercial registration Handelsgericht Wien legal form Gesellschaft mit beschraenkter Haftung (Ltd)