【问题标题】:How to connect to PostgreSQL databases from php? [closed]如何从 php 连接到 PostgreSQL 数据库? [关闭]
【发布时间】:2021-11-21 08:37:09
【问题描述】:

我正在尝试连接到 pgadmin 数据库。 我已经替换了下面的 NAME、IPADDRESS、USERNAME 和 PASSWORD。

$dsn = 'mysql:dbname=NAME;host=IPADDRESS';
        $user = 'USERNAME';
        $password = 'PASSWORD';

        try {
            $dbh = new PDO($dsn, $user, $password);
            $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        } catch (PDOException $e) {
            echo 'Connection failed: ' . $e->getMessage();
        }

但是超时

致命错误:未捕获的 PDOException: SQLSTATE[HY000] [2002] 操作 超时

这意味着什么?这是从 php 连接到 postgreSQL 数据库的正确方法吗?

【问题讨论】:

  • 第一:mysql != postgres。使用正确的驱动程序。
  • 谢谢,将驱动程序 sql 更改为 pgsql 对我有用: $oPdo = new \PDO("pgsql:host={$sDbHost};port=5432;dbname={$dbname}", $用户,$pass);
  • 以上,将第一行代码改为:$dsn = 'pgsql:dbname=NAME;host=IPADDRESS';

标签: php postgresql pgadmin


【解决方案1】:

请尝试在连接字符串中添加pgsql:,如下例所示

$dbh = new PDO('pgsql:host=IPADDRESS;dbname=NAME', 'USERNAME', 'PASSWORD');

您也可以从以下网址获取参考

https://www.a2hosting.in/kb/developer-corner/postgresql/connect-to-postgresql-using-php

【讨论】:

    猜你喜欢
    • 2020-12-26
    • 2017-10-31
    • 2018-05-04
    • 2021-09-30
    • 2015-01-26
    • 1970-01-01
    • 1970-01-01
    • 2020-05-04
    相关资源
    最近更新 更多