私はoracleのためにdbiでperlを使う方法を学んでいます。私は単に出力をテストしようとしていますが、この単純な選択から結果をプリントアウトすることはできません。perlのdbiコードから出力を得るのを助ける
誰かがこれを理解するのを助けたり、私にこれを書く良い方法を示すことができたら、私は感謝します。ありがとう。
use strict;
use File::Basename;
use DBI;
use Time::localtime;
use POSIX qw/uname/;
use vars qw/$dbh $scr $computer_name/;
$scr = basename($0, '');
$computer_name = (uname())[1];
$dbh = DBI->connect('dbi:Oracle:testdb', 'test', 'test',
{RaiseError => 0, PrintError => 0, AutoCommit => 0}) ||
die "$scr: connect error on $computer_name [$DBI::errstr]";
my $out = get_val();
print "The date is $out\n";
$dbh->disconnect;
sub get_val
{
my $sth = $dbh->prepare(q{
SELECT sysdate
FROM dual}) ||
die "$scr: prepare error on $computer_name [$DBI::errstr]";
$sth->execute;
my $row = $sth->fetchrow_hashref;
$sth->finish;
return $row->{VALUE};
}
ありがとう、その偶数の大文字と小文字を区別します。それは大文字でなければならなかった。私は 'SYSDATE'を入れなければなりませんでした。 – jdamae