【问题标题】:PHP PDO MSSQL in Xampp?Xampp中的PHP PDO MSSQL?
【发布时间】:2014-02-03 23:36:40
【问题描述】:

好的,这是我的情况:

我已经在我的服务器上安装了 Xampp (v1.8.2) 来发布我正在为我网络中的某些人制作的网络程序 (php, html)。 我第一次必须连接到 MSSQL 2008 服务器而不是 MYSQL (phpmyadmin)。 在过去的几年里,我一直使用 MySQL api 和一点 MySQLi。 我通过互联网阅读了我必须使用 PDO 才能成功连接到 MS 数据库。

我可以看到 PDO 没有安装/激活。 当我查看 PHP.ini 文件时,我唯一看到的是:

extension=php_mssql.dll

但没有

extension=php_pdo_mssql.dll

我已经阅读了分配(即我必须安装 soms dll 文件,我必须手动安装 apache、PHP、PDO)

成功连接到我的 mssql 数据库的好方法是什么?

谢谢

【问题讨论】:

标签: php pdo


【解决方案1】:

虽然使用 PDO 是个好主意并且可以节省您的时间,但您可以使用 Mssql extension。 如果你真的想使用 PDO_MSSQL,你应该在 PHP.ini 中允许它(你发布的第二个字符串是这样做的正确方法),但你的 PHP 扩展目录中也应该有 php_pdo_mssql.dll。你可以找到那个文件here

【讨论】:

  • 感谢您为我指明了正确的方向。我使用 PHP 5.4 并根据以下内容:“MSSQL 扩展在具有 PHP 5.3 或更高版本的 Windows 上不再可用。SQLSRV,Microsoft 提供了 MS SQL 的替代驱动程序”mssql 不再是一个选项。
  • 您是否有理由建议使用 Mssql 而不是 PDO?
  • 在我的回答中,我没有建议通过 PDO_MSSQL 进行 Mssql 扩展。简单地说,它们是替代品,因此,如果后者不可用,我建议使用另一个。在 OP 问题中,我们可以清楚地看到 Mssql 扩展已启用,因此可用。这就是为什么我建议使用Mssql。有时 PDO 驱动程序也不支持特殊功能。但是,如果我要在普通扩展和 PDO 之间进行选择,我更喜欢 PDO。
【解决方案2】:

有两个 MSSQL 扩展:SQLSRV http://php.net/manual/en/book.sqlsrv.php(如果您的服务器/计算机是 Windows 机器)和 MSSQL http://php.net/manual/en/book.mssql.php(如果您的服务器/计算机是 Linux 或 OSX 机器)

如果您使用的是 Windows:请使用 SQLSRV PHP 扩展 http://www.microsoft.com/en-us/download/details.aspx?id=20098

如果您使用 Linux/Debian,请按照本文中的说明进行操作。如果你使用 OSX,试试这篇文章http://blog.andyhunt.info/2013/11/29/php-mssql-pdo_dblib-freetds-support-on-mac-osx-10-9-mavericks/

我正在编写一个基本的 MSSQL 数据库对象,它与两个扩展兼容:https://github.com/janjuna/mssql-db

【讨论】:

  • 您是否有理由建议使用 MSSQL 而不是 PDO?我一直在阅读的所有内容都说用 PDO 替换 mysql_* 函数。 MSSQL 现在是否优于 PDO?
  • mysql; mssql;和 PDO 基本上是三个不同的东西,我建议你先了解它们之间的区别,然后再决定使用哪个。
猜你喜欢
  • 2015-07-07
  • 2016-12-18
  • 2012-03-31
  • 1970-01-01
  • 2016-10-19
  • 1970-01-01
  • 2014-04-10
  • 2013-12-13
  • 2013-07-06
相关资源
最近更新 更多