「RubyでOracleにアクセスするための方法」

 自分用覚え書き。
 RubyOracleにアクセスするための方法。
 試したのはWindows環境のみで、それ以外の環境では試していません。ただ、ruby-oci8のページを見ると、Oracleクライアントがインストールされており、Rubyが使用できれば行けそうな感じはします。

必要なライブラリ

ruby-oci8のインストール

 以下のコマンドを実行して、ruby-oci8をインストールする。

 ruby ruby-oci8-1.0.0-rc1-mswin32.rb

rubyサンプルプログラム

 Oracleに接続して、EMPテーブルからレコードを取得する。取得したレコードはカンマ区切りで表示する。

require 'dbi'

dbh = DBI.connect('DBI:OCI8:ORCL', 'scott', 'tiger')
sth = dbh.execute('select * from emp')
while row = sth.fetch do
  puts row.join(',')
end
sth.finish
dbh.disconnect

個人的な感想

 例外処理を書いていないとはいえ、たった8行でCSV形式のデータが取得できるなんて凄すぎる。
 ただ、Oracleクライアントに依存しているのが非常に残念だったりします。Javaのthinドライバのように、Oracleクライアントに依存しないでDBに接続できると最高なんだけど。