【发布时间】:2015-06-18 20:35:46
【问题描述】:
我正在尝试使用带有 odbc 的 PDO 连接到 MSSQL 数据库。我知道有一个包 SqlSrv(但由于某种原因,包 (.dll) 无法正确加载)。所以我发现一些文档认为 PDO 也可以。在我的PHP.ini 中,我启用了扩展程序php_pdo_odbc.dll,它可以正常加载。
我的连接字符串如下所示:
$conn = new PDO(
'odbc:
Driver=SQL Server;
Server=MyServer\MyInstance;
Database=MyDatabaseName;
Trusted Connection=Yes;',
'MyWindowsUserName',
'MyWindowsPassword'
);
我尝试了各种属性(例如,通过将域添加到用户名,使用身份验证选项用户 ID、UID、密码、PWD 和受信任的连接进行切换)但我不断收到消息
SQLSTATE[28000] SQLDriverConnect: 18456 [Microsoft][ODBC SQL Server 驱动程序][SQL Server]用户“MyWindowsUserName”登录失败。
关于如何使用我的 Windows 帐户连接到数据库有什么建议吗? (这是我连接数据库的唯一方法)
【问题讨论】:
-
我想弄清楚为什么 SqlSrv 不起作用。这是“官方”方式,因此更容易长期管理。
标签: php sql-server pdo windows-authentication dsn