PHP如何连接MsSQL数据库?
本机192.168.0.8,Linux,PHP4
另外一台机192.168.0.16,Windows2k,SQLServer2k
现在想在PHP里面连接SQLserver,该怎么连接呢?
问题点数:20、回复次数:14Top
1 楼wanbb(wanbb)回复于 2006-03-06 11:15:05 得分 2
呵呵,看我以前的帖子吧Top
2 楼harrylong7441(harry)回复于 2006-03-06 12:11:44 得分 2
$connect = mmsql_connect("192.168.0.16", "root", "password");
mssql_select_db("库名",$connect);Top
3 楼aniude(重返荣耀)回复于 2006-03-06 12:49:07 得分 1
跟PHP差不多,my=>ms呵呵Top
4 楼bigluckyfox(幸运狐狸)回复于 2006-03-06 15:18:44 得分 1
先装MSSQL扩展,函数和连接方法和MYSQL基本一致,只是把函数中的mysql改成mssql就可以用Top
5 楼arcow(冲星)回复于 2006-03-06 16:45:57 得分 1
用pear:DBTop
6 楼hbcb(青蛙王子)回复于 2006-03-06 16:51:49 得分 0
各位,不行啊
测试时显示Fatal error: Call to undefined function: mssql_connect() in /var/www/html/mssql.php on line 31
PHP手册上好象说这个mssql_connect() 只有在windows环境下才可以使用
请问bigluckyfox(幸运狐狸),如何安装MSSQL扩展呢?我的Linux 是RH9.0, 安装时完全安装Top
7 楼lead001(勇往直前lead001@msn.com-http://forward8.cn/)回复于 2006-03-06 17:22:00 得分 2
odbcTop
8 楼hbcb(青蛙王子)回复于 2006-03-07 12:27:32 得分 0
我下了个freetds,安装后,用其自身的tsql命令操作另一台Windows上的SQLServer数据库,可以在命令方式下进行查询
但是在PHP里面没法用,下了PHP的代码,不知道用些什么样的参数来重新安装PHP,原来的PHP都是rpm格式的,好象有5、6个相关的rpm包Top
9 楼kiraymd(紫胤)回复于 2006-03-07 15:24:19 得分 1
应该和 MySQL 差不多吧?Top
10 楼zeroleonhart(Strong Point:Algorithm)回复于 2006-03-08 14:45:19 得分 1
ODBCTop
11 楼hbcb(青蛙王子)回复于 2006-03-08 16:50:05 得分 0
PHP如何通过ODBC来操作异地WINDOWS上的MSSQL?
麻烦举个例子,还不知道怎么用Top
12 楼xuzuning(唠叨)回复于 2006-03-08 17:00:42 得分 8
Requirements for Unix/Linux platforms.
To use the MSSQL extension on Unix/Linux, you first need to build and install the FreeTDS library. Source code and installation instructions are available at the FreeTDS home page: http://www.freetds.org/
To get these functions to work, you have to compile PHP with --with-mssql[=DIR], where DIR is the FreeTDS install prefix. And FreeTDS should be compiled using --enable-msdblib.
先安装FreeTDS
后编译php
看来你的次序反了Top
13 楼zeroleonhart(Strong Point:Algorithm)回复于 2006-03-08 19:30:35 得分 1
ADODB吧?Top
14 楼hbcb(青蛙王子)回复于 2006-03-08 21:02:35 得分 0
非常感谢各位,基本上用ODBC实现了
到http://www.freetds.org/software.html下载两个安装包
freetds-0.62.1-1.i586.rpm
freetds-unixodbc-0.62.1-1.i586.rpm
然后
#rpm -ivh freetds-0.62.1-1.i586.rpm
#rpm -ivh freetds-unixodbc-0.62.1-1.i586.rpm
很顺利的就安装上了这两个软件,比用源码安装容易多了
然后修改配置文件
(1)
#vi /etc/freetds.conf
去掉其中这几行的注释符,使得成为下面的样子
[MyServer2k]
host = 192.168.0.1
port = 1433
tds version = 8.0
(2)
#vi /etc/odbc.ini
添加下面的内容
[MY_SMARTMAIL] #也可以是其他
Driver = /usr/lib/libtdsodbc.so
Description = ODBC Server
Trace = No
Server = 192.168.0.249
Database = MyDatabase #改成实际存在的数据库
Port = 1433
TDS_Version = 8.0
[Default]
Driver = /usr/lib/libtdsodbc.so
(3)
#vi /etc/odbcinst.ini
加入下面的内容
[FreeTDS]
Driver = /usr/lib/libtdsodbc.so
然后测试
<?
$handle=odbc_connect("MY_SMARTMAIL", "sa", "");
if($handle){
$resultset=odbc_exec ($handle, "SELECT * FROM t_Item");
odbc_result_all($resultset, "border=1");
odbc_close($handle);
}
?>
显示了表的数据
但是美中不足的是只能显示英文,中文资料全部显示问号,不支持中文,在我们的应用中,是没有实用价值的
要怎样才能支持中文呢?我的PHP用UTF-8编码,一般的SQLServer2k用的是什么编码呢?
Top




