Php 使用PDO的odbc通过Windows身份验证连接到MSSQL服务器实例
我正在尝试使用PDO和odbc连接到MSSQL数据库。我知道有一个包SqlSrv,但由于某些原因,该包.dll无法正确加载。所以我找到了一些文件证明PDO也可以。在我的PHP.ini中,我启用了扩展PHP_pdo_odbc.dll,它可以正常加载 我的连接字符串如下所示:Php 使用PDO的odbc通过Windows身份验证连接到MSSQL服务器实例,php,sql-server,pdo,windows-authentication,dsn,Php,Sql Server,Pdo,Windows Authentication,Dsn,我正在尝试使用PDO和odbc连接到MSSQL数据库。我知道有一个包SqlSrv,但由于某些原因,该包.dll无法正确加载。所以我找到了一些文件证明PDO也可以。在我的PHP.ini中,我启用了扩展PHP_pdo_odbc.dll,它可以正常加载 我的连接字符串如下所示: $conn = new PDO( 'odbc: Driver=SQL Server; Server=MyServer\MyInstance; Database=MyDat
$conn = new PDO(
'odbc:
Driver=SQL Server;
Server=MyServer\MyInstance;
Database=MyDatabaseName;
Trusted Connection=Yes;',
'MyWindowsUserName',
'MyWindowsPassword'
);
我尝试了各种属性,例如,将域前置到用户名,使用身份验证选项User Id、UID、密码、PWD和Trusted Connection进行切换,但我一直收到消息
SQLSTATE[28000]SQLDriverConnect:18456[Microsoft][ODBC SQL Server
用户“MyWindowsUserName”的驱动程序][SQL Server]登录失败
关于如何使用我的Windows帐户连接到数据库,有什么建议吗?这是我连接数据库的唯一方法尝试删除用户名和密码
$conn = new PDO(
'odbc:
Driver=SQL Server;
Server=MyServer\MyInstance;
Database=MyDatabaseName;
Trusted Connection=Yes;'
);
我已通过Windows使用以下PHP语句进行身份验证: 这是我的代码:
$ Conn = new PDO ("odbc: Driver = {SQL Server}; Server=JAMILI-PC\SQLEXPRESS; null; null");
我正在使用Windows 2008。
我希望它能解决你的问题。
我会试图找出SqlSrv不工作的原因。这是官方的方式,因此更容易长期管理。不幸的是,这不起作用,我已经尝试过了。当我不提供任何凭据时,它会尝试以服务器名称连接。