Использование odbc PDO для подключения к экземпляру сервера MSSQL с проверкой подлинности Windows

Я пытаюсь подключиться к базе данных MSSQL, используя PDO с odbc. Я знаю, что есть пакет 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'
);

Я пробовал различные свойства (например, добавляя домен к имени пользователя, переключаясь с параметрами аутентификации User Id, UID, Password, PWD и Trusted Connection), но я продолжаю получать сообщение

SQLSTATE [28000] SQLDriverConnect: 18456 [Microsoft] [ODBC SQL Server
Драйвер] [SQL Server] Ошибка входа для пользователя «MyWindowsUserName».

Любые предложения о том, как подключиться к базе данных с моей учетной записью Windows? (это единственный способ для меня подключиться к базе данных)

1

Решение

Попробуйте удалить имя пользователя & пароль

$conn = new PDO(
'odbc:
Driver=SQL Server;
Server=MyServer\MyInstance;
Database=MyDatabaseName;
Trusted Connection=Yes;'
);
0

Другие решения

Я прошел проверку подлинности Windows с помощью следующего заявления PHP:
Это мой код:

$ Conn = new PDO ("odbc: Driver = {SQL Server}; Server=JAMILI-PC\SQLEXPRESS; null; null");
  • Я использую Windows 2008.
  • Я надеюсь, что это решит вашу проблему.
-1

По вопросам рекламы [email protected]