мы пытаемся создать соединение с нашей базой данных SQL через ODBC в PHP.
Это наш текущий скрипт:
$cnx = new PDO("odbc:Driver={EFR};Server=localhost;Port:7004;Database=EFR;Uid=LcLfVJFLTKTCEHRO;Pwd=*********;");
Драйвер работает в Qlikview, который также подключается к этой базе данных.
Драйвер фактически найден PHP, но мы считаем, что он просто не может войти в систему.
PHP возвращает следующую ошибку:
Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[IM001] SQLDriverConnect: 0 No transaction control system' in C:\Program Files (x86)\EasyPHP-12.1\www\index.php:2 Stack trace: #0 C:\Program Files (x86)\EasyPHP-12.1\www\index.php(2): PDO->__construct('odbc:Driver={EF...') #1 {main} thrown in C:\Program Files (x86)\EasyPHP-12.1\www\index.php on line 2
Мы надеемся, что кто-то поможет нам справиться с этой проблемой.
если у вас уже установлен ODBC и у вас есть сохраненный пароль, вы можете просто подключиться к
$conn = new PDO("odbc:DSN_NAME")
где DSN_NAME является фактическим именем вашего источника данных ODBC, будь то MySQL, SQL Server или DB2.
Вы можете проверить свое соединение следующим образом:
try{ $conn = new PDO ("odbc:DSN_NAME"); die(json_encode(array('outcome' => true))); } catch(PDOException $ex){ die(json_encode(array('outcome' => false, 'message' => 'Unable to connect'))); }
попробуйте добавить DSN в систему вместо пользователя