DebianのPHP4でMicrosoftSQLServerと接続してるメモ
apt-get install apache2 php4 libapache2-mod-php4 php4-sybase
php4-sybase がはいってればOK
/etc/freetds/freetds.conf
[サーバ名] host = サーバのIPアドレス port = 1433 tds version = 7.0 (SQLServer6.5なら、4.2) charset = sjis client charset = eucjp language = japanese
$con = mssql_connect("サーバ名", "ログインID", "パスワード");
mssql_select_db("DB名", $con);
$sql = "SELECT * FROM test";
$rs = mssql_query($sql, $con);
$tmp = mssql_result ($rs, 0, 0);
print "Test : {$tmp}";
mssql_close($con);
SQLサーバ側のテーブルの定義でnvarcharの列がある場合、もってくるとなぜか半分のバイトになってちょんぎれたので、varcharとかにCASTで変換する必要がありました。
$sql = “select NAME,cast(NAME as varchar(50)) from test”;
前に全部ソースから入れてみてうまく行かなかったんですが、Debianのパッケージで全部すませたらあっさり繋がりました。