【问题标题】:Performance: PHP and MS SQL Server: SQLCMD using Exec or Driver性能:PHP 和 MS SQL Server:使用 Exec 或 Driver 的 SQLCMD
【发布时间】:2009-10-05 23:07:46
【问题描述】:

我目前正在使用 SQLCMD 对我的 SQL Server 进行查询,我从 PHP 的 exec() 函数中运行它。我希望澄清这不如 SQL Server for PHP 的驱动程序高效:http://www.microsoft.com/sqlserver/2005/en/us/PHP-Driver.aspx。不知道是不是和http://us3.php.net/manual/en/book.mssql.php一样?

我发现每次我运行一个 exec 命令时,它的响应速度都很慢,我希望在我转向这个新驱动程序并实施它之前得到确认。使用此驱动程序而不是使用 exec 函数启动 SQLCMD 有性能差异吗?

我知道这有点笨拙,但我非常感谢您对这个决定的帮助。

谢谢大家

【问题讨论】:

    标签: php sql-server performance exec sqlcmd


    【解决方案1】:

    Ugg,是的,摆脱你的 exec 并使用 php 客户端库。您也不必从命令行解析结果集。

    【讨论】:

      【解决方案2】:

      使用 exec 或其他Program execution Functions 之一启动另一个命令需要时间;使用一些 PHP 函数/类可能总是更快——也更容易:

      • 无需启动其他命令
      • 传参没问题
      • 不解析输出:您将获得原生 PHP 数据作为输出
      • 较少出现“找不到命令”或 UNIX/Linux 与 Windows 之间的差异等问题
      • safe_mode 之类的没问题

      我肯定会使用 PHP 扩展提供的一些函数,而不是使用 exec。


      作为旁注,在这种特定情况下:

      • 用于 PHP 的 SQL Server 驱动程序目前仅在 Windows 平台上可用——Linux 不存在 :-(
      • 它不能用作 PDO 驱动程序:您必须使用特定的 sqlsrv_* 函数

      【讨论】:

        猜你喜欢
        • 2021-12-10
        • 1970-01-01
        • 2013-01-30
        • 2023-03-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-11-04
        相关资源
        最近更新 更多