# ********************************************************** # オブジェクト使用宣言 # ********************************************************** use DBI; # ********************************************************** # 接続 # ********************************************************** $dsn = "DBI:mysql:lightbox:localhost"; $ret = eval{ $dbh = DBI->connect($dsn, 'root', '') }; if ( !$ret ) { print "接続エラーが発生しました"; exit(); } # ********************************************************** # レコードセット取得 # ********************************************************** $Query = "select * from `社員マスタ`"; $sth = $dbh->prepare( $Query ); $ret = eval{ $sth->execute }; if ( !$ret ) { print $dbh->{'mysql_error'}; $sth->finish; $dbh->disconnect; exit(); } # ********************************************************** # 出力ファイルオープン # ********************************************************** open( CSV_FILE,">./社員マスタ.csv" ); # ********************************************************** # タイトル出力 # ********************************************************** $Buffer = ""; $num = $sth->{'NUM_OF_FIELDS'}; $names = $sth->{'NAME'}; for ($i = 0; $i < $num; $i++) { if ( $Buffer ne "" ) { $Buffer .= ","; } $Buffer .= $$names[$i]; } print CSV_FILE "$Buffer\n"; # ********************************************************** # データ出力 # ********************************************************** while ($row = $sth->fetchrow_arrayref) { $Buffer = ""; for ($i = 0; $i < $num; $i++) { if ( $Buffer ne "" ) { $Buffer .= ","; } $Buffer .= $row->[$i]; } print CSV_FILE "$Buffer\n"; } # ********************************************************** # ファイルクローズ # ********************************************************** close( CSV_FILE ); # ********************************************************** # 接続解除 # ********************************************************** $dbh->disconnect;
# ********************************************************** # オブジェクト使用宣言 # ********************************************************** use DBI; # ********************************************************** # 接続 # ********************************************************** $dsn = "DBI:mysql:lightbox:localhost"; $ret = eval{ $dbh = DBI->connect($dsn, 'root', '') }; if ( !$ret ) { print "接続エラーが発生しました"; exit(); } # ********************************************************** # レコードセット取得 # ********************************************************** $Query = "select * from `社員マスタ`"; $sth = $dbh->prepare( $Query ); $ret = eval{ $sth->execute }; if ( !$ret ) { print $dbh->{'mysql_error'}; $sth->finish; $dbh->disconnect; exit(); } # ********************************************************** # 出力ファイルオープン # ********************************************************** open( CSV_FILE,">./社員マスタ.csv" ); # ********************************************************** # タイトル出力 # ********************************************************** $Buffer = ""; $num = $sth->{'NUM_OF_FIELDS'}; $names = $sth->{'NAME'}; for ($i = 0; $i < $num; $i++) { if ( $Buffer ne "" ) { $Buffer .= ","; } $Buffer .= $$names[$i]; } print CSV_FILE "$Buffer\n"; # ********************************************************** # データ出力 # ********************************************************** while ($row = $sth->fetchrow_hashref()) { $Buffer = ""; for ($i = 0; $i < $num; $i++) { if ( $Buffer ne "" ) { $Buffer .= ","; } $Buffer .= $row->{$$names[$i]}; } print CSV_FILE "$Buffer\n"; } # ********************************************************** # ファイルクローズ # ********************************************************** close( CSV_FILE ); # ********************************************************** # 接続解除 # ********************************************************** $dbh->disconnect;