Wordpress,PHP,アフィリエイトとかの個人メモを記録していくよ
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
#!/sur/bin/perl
use strict;
use warnings;
use DBI;
use Func;
my $ret;
my $sql;
eval{
$ret = conDB(dsn, user, pass);
・・・中略
$sql = "select * from xx where xx";
$ret = exec_sql($sql);
・・・中略
$ret = disconDB;
};
if( $@ ){
#エラー処理
}
exit;
戻り値チェックとか細かいのははしょっているけど、データベースハンドルとして使っている$dbhをpackage側でour宣言しないと、main.plでconnectした後のexec_sqlにデータベースハンドルが引き継がれないのでエラーになっちゃうと言うお話。package Func;
use strict;
use warnings;
use Exporter;
our @ISA = qw( Exporter );
our @EXPORT = qw( conDB exec_sql disconDB );
our $dbh;
sub conDB{
my $dsn = $_[0];
my $user = $_[1];
my $pass = $_[2];
$dbh = DBI->connect($dsn, $user, $pass
{RaiseError => 1 ,PrintError => 1 , AutoCommit => 0}) or die "DB connect Error :$!";
}
sub exec_sql{
my $sql = $_[0];
my $ret;
my $sth;
$ret = $sth->fetchall_arrayref;
return $ret;
}
sub disconDB{
$dbh->disconnect;
}
ブログ内検索
最新記事
カテゴリー
最新コメント
広告
プロフィール
なんとなくはじめてみたよ
カウンター