2009年10月5日月曜日

[MySQL] いろいろな実行手法

ストアドプロシージャを使用することで、SQLをファイル読み込み、実行できます(MySQL5.0~)

#/bin/sh
mysql -u username -p -D データベース < filename.sql(sql記述のみのファイル)



参考URL:
http://www.atmarkit.co.jp/flinux/special/mysql5/mysql5d.html

ヒアドキュメントを使用する方法です。
#!/bin/sh

mysql -u username --password='password' falcon << EOF use falcon; select c_date_ss from falcon.eagle_log; EOF 結果を格納する RESULT=`mysql -u username --password='password' falcon << EOF use falcon; select c_date_ss from falcon.eagle_log; EOF`


Perlのドライバを使った方が扱いやすいかも。ということで書いてみました。

#!/usr/bin/perl
use strict;
use warnings;
use DBI;

my $conn = DBI->connect(
"dbi:mysql:dbname:localhost", "username", "password") or die "Cannot connect\n";

my $cursor = $conn->prepare(
"SELECT column1, coulumn2 FROM table_name WHERE column1=''") or die $conn->errstr;

$cursor->execute or die $conn->errstr;

while (my ($name, $region) = $cursor->fetchrow_array()){
print "$name\t$region\n";
}

$conn->disconnect;

以上です。

0 件のコメント:

コメントを投稿