- 追加された行はこの色です。
- 削除された行はこの色です。
[[Perl]]
#DB
$DBname = "***";
$TableName = "***";
$DBID = "***";
$DBPW = "***";
sub DB{
my $query = shift @_;
my $updateCheck = shift @_;#「1」であれば、update
my $line;
my @L;
#print "query $query\n";
#DBI モジュールの読み込み
use DBI;
# データソースの指定
$dsn = "DBI:mysql:$DBname:www:3306";
# データソース
$dsn = "DBI:mysql:$DBname";
# ユーザ名
$user = $DBID;
# パスワード
$password = $DBPW;
# データベースへ接続
$dbh = DBI->connect($dsn, $user, $password,
{ RaiseError => 1, AutoCommit => 0 });
# prepareが成功した場合、ステートメントハンドルが返されます
my $sth = $dbh->prepare(
#"SELECT * FROM テーブル名"
"$query"
);
# SQL文の実行
$sth->execute;
# データの取得と出力
if($updateCheck == 0){#Updateの場合出力しない
while(@row = $sth->fetchrow_array) {
undef $line;
for($i=0;$i<@row;$i++){
$line .= "$row[$i]\t";
}
push(@L,$line)
}
}
#反映されるための処理
my $success = 1;
my $result = ($success ? $dbh->commit : $dbh->rollback);
unless ($result) {
die "Can not finish transaction: " . $dbh->errstr;
}
$sth->finish;
$dbh->disconnect;
return @L;
}