PerlでOracleデータベースに接続の方法

PerlでOracleデータベースに接続するには、DBI(DataBase Interface)モジュールを使用できる。以下にシンプルなサンプルコードを示す。

use DBI;

my $database = "dbi:Oracle:host=hostname;sid=sid";
my $username = "username";
my $password = "password";

# 连接数据库
my $dbh = DBI->connect($database, $username, $password) or die $DBI::errstr;

# 执行SQL语句
my $sql = "SELECT * FROM table_name";
my $sth = $dbh->prepare($sql);
$sth->execute() or die $DBI::errstr;

# 获取结果
while (my @row = $sth->fetchrow_array()) {
    print join(", ", @row), "\n";
}

# 断开数据库连接
$sth->finish();
$dbh->disconnect();

上記のコードでは、$database変数はホスト名がhostname、SID(サービスID)がsidのOracleデータベースへの接続文字列です。$usernameと$password変数はそれぞれのデータベースのユーザー名とパスワードです。この値を実際のデータベース接続情報に変更してください。

DBI->connect()関数を使用してデータベースに接続します。接続が成功した場合、データベースハンドル$dbhが返されます。接続に失敗した場合は、エラーを表示してプログラムを終了します。

次に、SQL文の実行準備を$dbh->prepare()関数で行い、$sth->execute()関数でSQL文を実行します。実行が成功すればステートメントハンドル$sthが返され、そうでなければエラーにしてプログラムを終了させます。

クエリ結果の各行を $sth->fetchrow_array() 関数で取得し、ループで画面に出力します。

最後に`$sth->finish()`関数でステートメントハンドルを解放し、`$dbh->disconnect()`関数でデータベース接続を切断する

DBIモジュールを使用するにはDBIモジュールと適切なデータベースドライバをインストールしておく必要があることに注意してください。たとえば、DBIモジュールはCPANからインストールできます。コマンドを実行します:

perl -MCPAN -e 'install DBI'
bannerAds