与PHP的unixodb连接失败

时间:2012-06-29 12:08:20

标签: php unixodbc isql

我已经使用unixODBC安装了freetds,当我测试与isql的连接时它运行得很好但是当我尝试与php建立连接时,我得到了S1000错误。

我的配置详情是 我的freetds.conf中有一个DSN

[MYDSN]
host = 192.168.30.233
port = 1433
tds version = 8.0
client charset = UTF-8

我的odbc.ini文件有

[MYDSN]
Driver = FreeTDS
Descrioption = conn unixodbc with FreeTDS
tds version = 8.0
Server = 192.168.30.233
Port = 1433
Database = mydb
client charset = UTF-8

我的odbcinst文件有

[FreeTDS]
Description = MSSQL Driver
Driver = /usr/lib64/libtdsodbc.so
UsageCount = 1

我使用this tutorial进行安装,并使用odbcinst安装了驱动程序。

为了与php连接我使用DSN连接,我尝试使用odbc_connect和mssql_connect。

odbc_connect("MYDSN",$this->user,$this->password)

mssql_pconnect( "MYDSN",$this->user,$this->password)

我还尝试使用以下代码的PDO

new \PDO ("dblib:host=MYDSN;dbname=mydb;",$this->user,$this->password);

使用isql一切正常。

我正在使用Microsoft SQL Server 2008。

有谁知道可能导致此问题的原因。提前致谢

1 个答案:

答案 0 :(得分:1)

这通常意味着你缺少php odbc所以安装它

sudo apt-get install php5-odbc