Подключение к MySQL с помощью pdo_odbc - PullRequest
0 голосов
/ 16 марта 2019

Я могу подключиться к базе данных MySQL с помощью ODBC / SSL ( см. Мой пост ) с помощью этого сценария:

ini_set ('error_reporting', E_ALL);
ini_set ('display_errors', '1');
error_reporting (E_ALL|E_STRICT);

$user = "odbcmmm";
$pass = "999999999";

$connection = "Driver={mysql537};Server=99.99.199.199;Database=db_name;UID=odbc_db_name;PWD=password;sslca=/etc/mysql/ssl/c1.pem;sslkey=/etc/mysql/ssl/ck.pem;sslcapath=/etc/mysql/ssl/;sslcert=/etc/mysql/ssl/cc.pem";

$con = odbc_connect($connection, $user, $pass);

$sql="SELECT Id from stk_item"; 
$rs=odbc_exec($con,$sql);

if (!$rs)   {
exit("Error in SQL");
}

Однако, когда я пытаюсь создать объект PDO, используя сценарийниже я получаю сообщение об ошибке:

SQLSTATE [IM002] SQLDriverConnect: 0 [unixODBC] [Driver Manager] Имя источника данных не найдено, и драйвер по умолчанию не указан **

<?php
ini_set ('error_reporting', E_ALL);
ini_set ('display_errors', '1');
$pass = "pass";

try {

$connection = new PDO("odbc:mysql537;Server=99.99.199.199;Database=db1;UID=user1;PWD=pwd1;sslca=/etc/mysql/ssl/c1.pem;sslkey=/etc/mysql/ssl/ck.pem;sslcapath=/etc/mysql/ssl/;sslcert=/etc/mysql/ssl/cc.pem");

error_reporting (E_ALL|E_STRICT);


} catch (PDOException $exception) {
  echo $exception->getMessage();
  exit;

}

Когда я изменяю код, как показано ниже, ошибка:

неверное имя источника данных

<?php

ini_set ('error_reporting', E_ALL);
ini_set ('display_errors', '1');
error_reporting (E_ALL|E_STRICT);

$user = "user";
$pass = "pass";

try {

$connection = new PDO("Driver={mysql537};Server=99.99.199.199;Database=db1;UID=user1;PWD=pwd1;sslca=/etc/mysql/ssl/c1.pem;sslkey=/etc/mysql/ssl/ck.pem;sslcapath=/etc/mysql/ssl/;sslcert=/etc/mysql/ssl/cc.pem");

} catch (PDOException $exception) {
  echo $exception->getMessage();
  exit;

} ​​

Я знаю, что драйверы PDO ODBC устанавливаются через phpinfo, поэтому я должен где-то испортить синтаксис соединения PDO ODBC .Любая помощь, чтобы определить мою ошибку, высоко ценится.Благодарю.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...