【问题标题】:sqlsrv_connect ConnectionInfo does not accept ConnectRetryCount optionsqlsrv_connect ConnectionInfo 不接受 ConnectRetryCount 选项
【发布时间】:2019-03-16 16:46:35
【问题描述】:

阅读:https://docs.microsoft.com/en-us/sql/connect/php/connection-options?view=sql-server-2017 您可以使用 ConnectRetryCount 传递一个选项

这是我的有效连接信息数组

 $connectionInfo = array( 
        "Database"=>$databaseName,
        "UID"=>$dbuser,
        "PWD"=>$dbpw,
        "CharacterSet" => "UTF-8",
        "APP"=>"BI",
        );

当我添加这个

"ConnectRetryCount"=>1

$connectionInfo = array( 
    "Database"=>$databaseName,
    "UID"=>$dbuser,
    "PWD"=>$dbpw,
    "CharacterSet" => "UTF-8",
    "APP"=>"BI",
    "ConnectRetryCount"=>1
    );

根本没用

给我这个错误: 向 sqlsrv_connect 传递了无效选项。

在单词选项后显示一个空方格

给我这个错误:无效的选项 EmptySquareHere 已传递给 sqlsrv_connect。

【问题讨论】:

  • 我什至不会拼写 php 但既然默认是 1 为什么你需要将它包含在连接信息中?
  • 您的 PHP 和 sqlsrv 扩展版本是什么?谢谢。
  • PHP 版本 7.0.25 和 sqlsrv 版本 4.0.8629.2
  • 我想将它设置得更高,但即使设置为 1 也会出错

标签: php sql-server


【解决方案1】:

说明:

一个可能的原因是 PHP 驱动程序的版本。基于release notesIdle Connection Resiliency功能(带有配置选项ConnectRetryCountConnectRetryInterval)在4.3版本中添加。

注意事项:

我做了两个测试用例:

  • 带有适用于 SQL Server 2.0 的 PHP 驱动程序的 PHP 5.2.10
  • PHP 7.1.12 和用于 SQL Server 4.3 的 PHP 驱动程序

使用 PHP 5 和 SQL Server 2.0 的 PHP 驱动程序 sqlsrv_connect() 失败,并显示错误消息“无效选项 ConnectRetryCount 已传递给 sqlsrv_connect。”。 使用 PHP 7 和 PHP Driver for SQL Server 4.3 sqlsrv_connect() 可以正常工作。

【讨论】:

    猜你喜欢
    • 2018-05-02
    • 2010-10-11
    • 2023-03-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多