Akoya has asked for the wisdom of the Perl Monks concerning the following question:
Why does the following query return the correct value in SQL*Plus (Oracle command-line SQL interface), but returns nothing using the DBI?
SELECT server_id FROM wms_rf_server WHERE server_name = 'splwebdev.unix.us.tld.com'
The Perl code I am using to execute this SQL is:
use strict; use warnings; use DBI qw(:sql_types); my $dbh = DBI->connect('dbi:Oracle:db','user','pass', { AutoCommit => 0, RaiseError => 1, PrintError => 1 } ) or die "Unable to connect!: $!\n"; my $sql = qq{ SELECT server_id FROM wms_rf_server WHERE server_name = 'splwebdev.unix.us.tld.com' }; my $server_id; my $sth = $dbh->prepare($sql); $sth->execute(); my $rv = $sth->bind_columns(\$server_id); print "Returned server_id = [$server_id]\n" if $server_id; $sth->finish(); $dbh->disconnect();
No exceptions are raised, and the program ends normally, without displaying anything. I am new to DBI, so I know that I must be overlooking something simple. Please let me know if you see anything obvious, or give me suggestions for troubleshooting this.
Thanks,
Akoya
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Why does the same SQL return different results in the DBI and in SQL*Plus?
by jettero (Monsignor) on Jul 06, 2007 at 19:44 UTC | |
by Akoya (Scribe) on Jul 06, 2007 at 20:04 UTC | |
|
Re: Why does the same SQL return different results in the DBI and in SQL*Plus?
by jZed (Prior) on Jul 06, 2007 at 20:36 UTC |