【问题标题】:Specify application name when connecting to MSSQL from PHP从 PHP 连接到 MSSQL 时指定应用程序名称
【发布时间】:2010-11-02 14:57:10
【问题描述】:

从 PHP 连接到 Microsoft Sql Server 时如何指定应用程序名称?

在 .Net 应用程序中,连接字符串可以指定“应用程序名称=XXXX”,但我在 PHP 中看不到这样做的方法。

我们将 FreeTDS 与 mssql_connect 结合使用。

我有不同的来源写入数据库,我想区分这些来源。

非常感谢任何想法。

【问题讨论】:

  • 如果您阐明您使用什么库从 PHP 连接到 SQL Server 可能会有所帮助。

标签: php sql-server connection-string


【解决方案1】:

如前所述,在不确切知道您使用的是什么库的情况下,这有点难以回答。 然而:

通过 ADODB 连接,您应该可以使用以下方式实现:

$db = new COM("ADODB.Connection");
$dsn = "Provider=SQLOLEDB;User ID=sa;Initial Catalog=catalog;Data Source=(local);Application Name=XXXX";

或者,如果您使用的是 PECL PDO_DBLIB >= 0.9.0,则表明 appname 可在 DSN 字符串中进行配置。

$dsn = "mssql:host=localhost;dbname=testdb;appname=XXXX";

http://www.php.net/manual/en/ref.pdo-dblib.connection.php

希望有帮助

【讨论】:

  • freetds 声称可以使用 PDO dsn:$dsn = "dblib:host=localhost;dbname=testdb;appname=XXXX";
【解决方案2】:

我们遇到了同样的问题,发现 php 将应用程序名称硬编码为 PHP 5

我们提供了一个补丁来添加所需的功能:

Bug id: 60124

【讨论】:

    猜你喜欢
    • 2020-05-11
    • 1970-01-01
    • 2013-09-30
    • 2011-05-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-28
    • 1970-01-01
    相关资源
    最近更新 更多