Microsoft PHP SQL驱动程序与PHP SQL驱动程序

时间:2010-09-03 17:35:57

标签: php sql-server

所以在我的测试机上,我用Apache安装了PHP,并且我有PHP SQL驱动程序(不是Microsoft SQL驱动程序)。所以,我使用mssql_connect()和这样的命令来处理数据库。

当我转移到另一台服务器时,它有Microsoft PHP SQL Driver。现在,每当我执行mssql_connect()和其他mssql_php命令时,它都会崩溃并向我显示错误的PHP_via_FastCGI错误。

请问您如何解决这个问题?我是否需要将代码更改为其他内容?如果是这种情况,我有数百个文件,我是否需要在每个文件中进行更改?

感谢。

2 个答案:

答案 0 :(得分:1)

这两个驱动程序没有任何共同点(除了允许与SQL Server交互)。它们具有不同的功能名称和功能。您的程序需要PHP SQL驱动程序,除非您完全重写它,否则不会与Microsoft运行。

(无论如何,Microsoft库非常好。)

答案 1 :(得分:1)

您需要将应用程序中的所有数据库调用映射(更改)到Microsoft驱动程序的等效函数或创建抽象层。您可以使用抽象层构建自己的数据库函数,如:myConnect(...) myEXEC(...)

并且在其中你有像

这样的代码
if ($givenDriver=='M') { 
    code using microsoft DB function 
} elseif ($givenDriver=='P') { 
    code using the PHP DB function 
} else { 
    error unknown connection type
}

然后代码中的每个地方都会从实际的PHP驱动程序命令转换为抽象层命令。然后,代码可以通过更改$givenDriver的值来轻松切换使用一个驱动程序。

相关问题