使用PDO和新用户将PHP连接到Postgresql

时间:2016-07-22 12:17:42

标签: php postgresql pdo

我想使用PDO对象连接到PostgreSQL数据库,这就是我所做的:

Postgres

CREATE USER testdb_login WITH PASSWORD 'abcd';
GRANT ALL PRIVILEGES ON DATABASE testdb TO testdb_login;

PHP

$conn = new PDO("pgsql:host=localhost;dbname=testdb", "testdb_login", "abcd");

上面的代码给了我一个致命的错误:

Call to a member function fetch() on boolean...

但是如果我使用默认用户名

尝试相同的代码
 $conn = new PDO("pgsql:host=localhost;dbname=testdb", "postgres", "password");

我可以成功连接并检索数据。

我在哪里犯了错误?

1 个答案:

答案 0 :(得分:0)

试试这个:

GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA testdb TO testdb_login;

如果testdb也是userinfo表所在的模式名称。