使用PHP PDO设置PostgreSQL架构的最佳替代方案

时间:2014-02-11 22:05:28

标签: php sql postgresql pdo

我正在使用PHP PDO访问具有各种模式的PostgreSQL数据库,所以首先我创建一个连接,然后设置正确的模式,如下所示:

$Conn = new PDO('pgsql:host=localhost;port=5432;dbname=db', 'user', 'pass');

$result = $Conn->exec('SET search_path TO accountschema');

if ( ! $result) {
    die('Failed to set schema: ' . $Conn->errorMsg());
}

这是一个好习惯吗?有更好的方法吗?

1 个答案:

答案 0 :(得分:13)

为了指定默认架构,您应该设置search_path

$Conn->exec('SET search_path TO accountschema');

您还可以为每个数据库用户设置默认的search_path,在这种情况下,上述语句将变为多余。

ALTER USER user SET search_path TO accountschema;