php – 警告:dbx:模块’mssql’未加载

前端之家收集整理的这篇文章主要介绍了php – 警告:dbx:模块’mssql’未加载前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试使用带有DBX的 PHP连接到MS sql Server.使用PHPinf(),我可以注意到dbx已启用:
dbx

dbx support enabled
dbx version 1.0.0
supported databases MysqL ODBC Postgresql Microsoft sql Server FrontBase Oracle 8 (oci8) Sybase-CT.

但是当我尝试连接时,出现此错误

Warning: dbx: module 'mssql' not loaded.

这是代码

dbx_connect("mssql","host","database","user","password");

有什么想法解决这个问题?

我的建议是不使用DBX.它是一个死模块,不应该被现代代码使用.

DBX是removed from standard PHP in version 5.1.如果你安装了它,这意味着有人不顾一切地将它安装为PECL模块,或者你使用的是非常旧的PHP版本.

requirements page,它指出:

To be able to use a database with the dbx-module,the module must be either linked or loaded into PHP

DBX支持与MS sql Server通信的唯一模块是旧版mssql_ family.该扩展名为no longer available in Windows PHP versions 5.3 or later.

如果您使用的是Linux,并且正在使用操作系统提供的PHP版本,那么您可以安装它.寻找PHP-mssqlPHP53-mssql.当您搜索“FreeTDS”的包描述时,它也可能会显示.如果没有可用的包裹,您可能会陷入痛苦的世界. Getting mssql_ compiled and installed is quite a bear.

但是,有更好的选择.

DBX的目标是提供一组统一的函数,让您与众多现有的PHP数据库适配器通信.该角色现在由PDO填充.如果您在Windows上,则应使用PDO_SQLSRV.如果您不在Windows上,则可以使用PDO_DBLIB(使用与mssql_系列相同的后端)或PDO_ODBC.如果您使用的话从来没有使用过PDO,有一些很好的tutorials.那个是针对MysqL用户,但它仍然适用于其他数据库.

如果你编写的代码只是打算在MS sql Server上运行,并且你在Windows上运行PHP,那么你也可以考虑使用sqlsrv_ family of functions编写代码.

原文链接:https://www.f2er.com/php/444954.html

猜你在找的PHP相关文章