Я пытаюсь подключиться к базе данных postgresql с помощью PDO, это мой php-код:
$db = new PDO('pgsql:dbname=mydb; host=localhost; username=myuser; password=mypass'); $res = $db->query( "SELECT * FROM sometable" )->fetchAll(PDO::FETCH_ASSOC);
Возвращает: Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[08006] [7] invalid connection option "username" in ...
Когда я пытаюсь подключиться с помощью pg_connect()
и использовать те же параметры, соединение работает.
Почему я не могу подключиться к postgresql с помощью PDO?
Взгляните на документ PHP на PostgreSQL PDO . Параметр для имени пользователя просто называется user
а не username
:
$db = new PDO('pgsql:dbname=mydb;host=localhost;user=myuser;password=mypass');