RubyからSQL Serverへ接続する(CentOS)

前回のつづき。

unixODBC, FreeTDSの設定が完了後、rubyからSQL Serverへ接続してみます。
Rubyのバージョンは1.9.3で確認しています。

RubyODBC関連のモジュールをインストール

ruby-odbcとdbd-odbcをインストールします。

ruby-odbc
gem install ruby-odbc -- --with-odbc-dir=/usr/local/unixODBC-2.3.1
dbd-odbc
gem install dbd-odbc -- --with-odbc-dir=/usr/local/unixODBC-2.3.1

接続確認

unixODBCとFreeTDSの接続が終わっていれば、あとは接続確認するだけで完了です。
スクリプトは以下の感じで<>部分を適切に自分の環境に合わせてください。

require 'dbi'

dbh = DBI.connect('dbi:ODBC:<freetds.confのラベル>', '<接続ユーザ名>', '<パスワード>')
select = dbh.prepare('SELECT * FROM <table名>')
select.execute
while rec = select.fetch do
    puts rec.to_s
end
dbh.disconnect

特にエラーもなく、データが表示できていれば成功です。
unixODBC, FreeTDSの設定は少し面倒ですが、できればRuby側ではドライバをインストールするだけなので楽ですね。