云数据库 GAUSSDB-Schema:搜索路径

时间:2024-11-02 18:48:14

搜索路径

搜索路径定义在search_path参数中,参数取值形式为采用逗号分隔的Schema名称列表。如果创建对象时未指定目标Schema,则将该对象会被添加到搜索路径中列出的第一个Schema中。当不同Schema中存在同名的对象时,查询对象未指定Schema的情况下,将从搜索路径中包含该对象的第一个Schema中返回对象。

  • 要查看当前搜索路径,请使用SHOW
    1
    2
    3
    4
    5
    openGauss=# SHOW SEARCH_PATH;
     search_path
    ----------------
     "$user",public
    (1 row)
    

    search_path参数的默认值为:"$user",public。$user表示与当前会话用户名同名的Schema名,如果这样的模式不存在,$user将被忽略。所以默认情况下,用户连接数据库后,如果数据库下存在同名Schema,则对象会添加到同名Schema下,否则对象被添加到Public Schema下。

  • 要更改当前会话的默认Schema,请使用SET命令。
    执行如下命令将搜索路径设置为myschema、public,首先搜索myschema。
    1
    2
    openGauss=# SET SEARCH_PATH TO myschema, public;
    SET
    
support.huaweicloud.com/distributed-devg-v2-gaussdb/gaussdb_v5r2c10_0159.html