2011-12-14 147 views
1

我正在使用Mac OS X,我试图从CakePHP2.0应用程序连接到SqlServer,但它说“Cake不能连接到数据库”。Mac OS X + cakephp + SqlServer

当我查看Cakephp数据源类时,在Sqlserver.php中,它使用PDO :: getAvailableDrivers()检查可用的驱动程序,但没有返回sqlsrv驱动程序。

是否有人试图提前使用cakephp2.0在Mac OS X

由于连接到SQL Server使用SQLSRV(提供访问Microsoft SQL Server数据库服务器。开发,由微软支持)。任何帮助将不胜感激。

回答

2

只是为了澄清,微软的sqlsrv Database Extension只适用于Windows

同样,数据源使用仅适用于Windows的PDO_SQLSRV PDO driver

的PDO_SQLSRV扩展只在Windows上运行PHP兼容。对于Linux,请参阅ODBC和»Microsoft's SQL Server ODBC Driver for Linux

有替代品上面,但我相信你可能会想编译FreeTDS起床和运行(潜在以下this guide):

PDO_DBLIB是实现PHP数据对象的驱动程序( PDO)接口,以便通过FreeTDS库从PHP访问Microsoft SQL Server和Sybase数据库。

  • 安装的Xcode(带有报头和编译工具,如gccmake等)
  • 安装的软件包管理器(homebrew,芬克的MacPorts)
  • (可选)安装的unixODBC
  • 安装FreeTDS(配置为使用您内置的iODBC或UnixODBC)
  • 配置ODBC设置。

但首先我会关注this ticket,因为它似乎提供了一些有关CakePHP的建议,以及可能需要哪些数据源更改。