Home  >  Article  >  Backend Development  >  sqlserver-2012 - CentOS中利用PHP的PDO访问SqlServer失败

sqlserver-2012 - CentOS中利用PHP的PDO访问SqlServer失败

WBOY
WBOYOriginal
2016-06-06 20:29:131556browse

因为公司需要,所以需要在linux环境中访问sqlserver 2012,我本地进行调试系统是centos
已经搭建好了PHP环境,安装了PDO扩展、ODBC扩展
也安装了unixODBC、freetds
现在的问题是,我通过mssqlconnect和odbcconnect两种方式都可以正常访问到sqlserver 2012, 并且能够取出相应的数据
可是当我想要利用PDO下的ODBC读取的时候出现了问题,始终无法成功。
错误信息如下:

<code>Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[08S01] SQLDriverConnect: 20009 [unixODBC][FreeTDS][SQL Server]Unable to connect: Adaptive Server is unavailable or does not exist'</code>

找了度娘和谷哥问了好久了,一直没法解决这个问题,请问有谁知道原因吗?

回复内容:

因为公司需要,所以需要在linux环境中访问sqlserver 2012,我本地进行调试系统是centos
已经搭建好了PHP环境,安装了PDO扩展、ODBC扩展
也安装了unixODBC、freetds
现在的问题是,我通过mssqlconnect和odbcconnect两种方式都可以正常访问到sqlserver 2012, 并且能够取出相应的数据
可是当我想要利用PDO下的ODBC读取的时候出现了问题,始终无法成功。
错误信息如下:

<code>Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[08S01] SQLDriverConnect: 20009 [unixODBC][FreeTDS][SQL Server]Unable to connect: Adaptive Server is unavailable or does not exist'</code>

找了度娘和谷哥问了好久了,一直没法解决这个问题,请问有谁知道原因吗?

你确定下你的PHP安装目录ext扩展目录是否有sql server的.dll文件,在windows上是.dll后缀的

LZ解决了吗? 欢迎分享解决方案!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn