perlで操作の基本

このページの最終変更日:1999年 1月14日
まだ、勉強不足なのでちょっと怪しいかも知れません。でも、動作はしています。安定しているかは不明です。

Mysql,DBD/DBIがなにものであるかは不明だが、後者が推奨されているようです。

Mysqlサンプルソース

#!/usr/bin/perl
#
# サンプルプログラム
#
#	エラーチェックが正しくない可能性があります
#
# データベース test に対して、
#	SELECT * FROM AAA
# を実行する
#

use Mysql;

$dbh = Mysql->Connect("localhost") || die "Can't connect: $Mysql::db_errstr\n";
$dbh->SelectDB("test") || die "Can't use database $test_db: $Mysql::db_errstr\n";

$sth=$dbh->Query("select * from aaa") || die $Mysql::db_errstr;

$rows=$sth->numrows;
$col =$sth->numfields;  

for ($i=0 ; $i < $rows ; $i++){
	@row = $sth->FetchRow();
	print "> ";
	for($j=0 ; $j < $col ; $j++){
		if($j!=0){
			print ",";
		}
		print "\"",$row[$j],"\"";
	}
	print "\n";
}

# $sth,$dbhの後始末は良く分からない

DBD/DBIサンプルソース

#!/usr/bin/perl
#
# サンプルプログラム
#
#	エラーチェックが正しくない可能性があります
#
# データベース test に対して、
#	SELECT * FROM AAA
# を実行する
#

use DBI;

$dbh = DBI->connect("DBI:mysql:test:localhost","","") || die $DBI::errstr;

$sth=$dbh->prepare("select * from aaa") || die $DBI::errstr;
$sth->execute or die $DBI::errstr;

while (@row = $sth->fetchrow_array){
	$col=$#row+1;
	print "> ";
	for($j=0 ; $j < $col ; $j++){
		if($j!=0){
			print ",";
		}
		print "\"",$row[$j],"\"";
	}
	print "\n";
}

$sth->finish;
$dbh->disconnect;

ホームページに戻る 前のページに戻る
苦情・質問・感想は 小林正幸(kobamasadummy@mub.biglobe.ne.jp) まで
(メールアドレス中のdummyは削除してください。ウイルスメール対策です)