PHP通过PDO从Linux连接到MS SQLServer 2008

时间:2010-11-02 02:19:15

标签: php sql-server-2008 pdo

我需要在Ubuntu上从PHP连接到MS SQLServer 2008服务,我想使用PDO这样做。我相信我已经安装了所有必备库,我确实能够在命令行上使用tsql并在代码中使用mssql_connect()进行连接。我无法弄清楚正确的DSN是什么,或者是否有任何其他PDO特定的配置步骤我不知道。

我正在使用以下DSN(其中$db*变量填充了适当的值):

odbc:Driver=FreeTDS;SERVER=$dbServer;DATABASE=$dbSchema;UID=$dbUser;PWD=$dbPasswd"

我的错误信息是:

PHP Fatal error:  Uncaught exception 'PDOException' with message 'SQLSTATE[IM002] SQLDriverConnect: 0 [unixODBC][Driver Manager]Data source name not found, and no default driver specified' in /home/timothy/test.php:4
Stack trace:
#0 /home/timothy/test.php(4): PDO->__construct('odbc:Driver=Fre...')
#1 {main}
  thrown in /home/timothy/test.php on line 4

我看了哪些其他配置步骤?

提前致谢。

1 个答案:

答案 0 :(得分:1)

如果可以使用tsql和mssql扩展连接,则不需要任何其他配置。你可能只是没有正确的dsn。 This documentation应该有所帮助。试试new PDO("dblib:host=xx.xx.xx.xx;dbname=mydatabase", "username", "password");