PHP@Linux vs MS-SQL Server database (using FreeTDS)

FROM: http://jamyy.dyndns.org/blog/2005/01/66.html

FreeTDS 提供一套函���, ��绦徐� Unix �c Linux �h境的程式可以透�^它存取 Microsoft SQL Server �c Sybase database.
以下是� Linux 上的 PHP 可以透�^ FreeTDS 存取 MSSQL Server 的操作步�E:
�h境: Fedora Core 1 完全安�b (已�b有 Apache HTTP Server + PHP + MySQL 的�h境)
Step 1. 安�b FreeTDS
FreeTDS 官方�W站: http://www.freetds.org/ �x�裣螺d FreeTDS source distribution
��g���: --prefix=/usr/local/freetds --enable-msdblib
安�b後, 修改 /etc/ld.so.conf, 加入 /usr/local/freetds/lib; 完成後再�绦� ldconfig
Step 2. 修改 /usr/local/freetds/etc/freetds.conf
[sql2k]
host = your.mssql.server.ip
port = 1433
client charset = cp950
tds version = 8.0
a. 中括弧 [ ] �鹊淖执�可自行定�x, 往後�B��r��用到.
b. tds version: 4.2 (�m用 MS SQL Server 6.x); 7.0 (�m用 7.x); 8.0 (�m用 2000)
Step 3. �y� FreeTDS 是否可�B� MS SQL Server
#cd /usr/local/freetds/bin
#./tsql -S sql2k -U sa
1> use mydatabase
2> select * from mytable
3> go
成功的����@示 mytable �Y料
�x�_ tsql:
1> quit
Step 4. 重新��g PHP Source
PHP 官方�W站: http://www.php.net/
��g前, 先用 php 程式�绦� echo phpinfo(); �@示原本安�b�r所有的���, 以取用需要的 configure ���
最後再加上 --with-mssql=/usr/local/freetds
�绦泄�例:
./configure '--prefix=/usr/local/php_4.3.10' '--localstatedir=/var'
'--disable-debug' '--enable-pic' '--disable-rpath'
'--enable-inline-optimization' '--with-bz2' '--with-db4=/usr' '--with-curl'
'--with-exec-dir=/usr/bin' '--with-freetype-dir=/usr' '--with-png-dir=/usr'
'--with-gd' '--enable-gd-native-ttf' '--without-gdbm' '--with-gettext' '--with-ncurses'
'--with-gmp' '--with-iconv' '--with-jpeg-dir=/usr' '--with-openssl' '--with-png'
'--with-pspell' '--with-regex=system' '--with-xml' '--with-expat-dir=/usr'
'--with-dom' '--with-dom-xslt=/usr' '--with-dom-exslt=/usr' '--with-xmlrpc=shared'
'--with-pcre-regex=/usr' '--with-zlib' '--with-layout=GNU' '--enable-bcmath'
'--enable-exif' '--enable-ftp' '--enable-magic-quotes' '--enable-safe-mode'
'--enable-sockets' '--enable-sysvsem' '--enable-sysvshm' '--enable-track-vars'
'--enable-trans-sid' '--enable-yp' '--enable-wddx' '--with-pear=/usr/share/pear'
'--with-imap=shared' '--with-imap-ssl' '--with-kerberos' '--with-ldap=shared'
'--with-mysql' '--with-pgsql=shared' '--with-snmp' '--with-snmp=shared'
'--enable-ucd-snmp-hack' '--with-unixODBC' '--enable-memory-limit' '--enable-bcmath'
'--enable-shmop' '--enable-calendar' '--enable-dbx' '--enable-dio' '--enable-mcal'
'--enable-mbstring' '--enable-mbstr-enc-trans' '--enable-mbregex'
'--with-apxs2=/usr/sbin/apxs' '--with-mssql=/usr/local/freetds'
��g、安�b完成後, cp php.ini-dist / prefix/lib/php.ini
Step 5. ��� Apache HTTP Server �M行�y�
Sample Code:
<?php
mssql_connect(' sql2k','sa','');
mssql_select_db(' mydatabase');
$rs = mssql_query('select * from mytable');
list($column01) = mssql_fetch_row($rs);
echo $column01;
?>
成功的�, ���@示 mytable 第一�P�Y料的第一���谖�热�
mssql functions ��⒁�:  http://tw2.php.net/manual/tw/ref.mssql.php

你可能感兴趣的:(PHP,MSSQL,httpd)