備忘録

気づいたことを書き留める

PEAR DB SQL Server接続

2005-09-23 01:06:48 | Weblog
覚書の理由:デフォルトの設定でSQLServerの255バイトを超えるvarchar型のデータをDB(mssql://…)で取得すると255バイトでデータが切れてしまう。その対処方法を忘れないために。

OS FedoraCore4
PHP 5.0.4
FreeTDS 0.63

1.FreeTDSをコンパイル
./configure --prefix=/usr/local/freetds --enable-msdblib --with-libiconv-prefix=/usr/local/libiconv --with-tdsver=8.0

2.PHPをコンパイル
configureオプションに--with-mssql=/usr/local/freetdsを追加

3.freetds.confを編集
[global]オプションで
  tds version = 8.0 (7.0でもOK)
  charset = sjis
  client charset = UTF-8
  language = japanese
を指定。

取得したデータをmb_convert_encoding($data,'UTF-8','SJIS')する必要なし。