「unixODBC+FreeTDS+DBD::ODBCでSQL Serverに接続する」Part2

※前回の続きです。

設定ファイルをいじる

4.odbc.iniの編集

# vim /usr/local/etc/odbc.ini
--
[ODBC Data Sources]
<span style="color:#FF0000;">freetds = FreeTDS ODBC Driver

[freetds]
Driver = /usr/local/lib/libtdsodbc.so
Description = Microsoft SQL Server
Servername = mssql
Database = dbname

5.freetds.confの編集

# vim /usr/local/etc/freetds.conf
 --
[mssql]
        host = 192.168.XXX.XXX
        port = 1433
        tds version = 8.0
        charset = sjis
        client charset = UTF-8
       language = english

補足
host←SQL ServerをインストールしたホストのIPアドレスにすること
client charset←データに日本語を使わないなら「UTF-8」にしても良い
language←japaneseにするとエラーメッセージなどが日本語で表示されるが、
        環境によって文字化けする場合もあるのでenglishがお勧め。


【重要】
odbc.iniのServernameとfreetds.confのセクションをあわせます。


■接続テスト

# tsql -H 192.168.xxxx.xxx -p 1433 -U admin -P hogehoge
locale is "ja_JP.UTF-8"
locale charset is "UTF-8"
1> use test_db
2> go
1> select count(*) from hogehoge
2>go
1>exit

o(・∇・o)(o・∇・)o ヤッタ!つながった!!

これでDBIとfreetdsを使った接続は成功です!!