服务器 频道

PostgreSQL手册之客户端缺省连接

IT168 服务器学院
      search_path (string)

   这个变量声明模式的搜索顺序,在一个被引用对象(表,数据类型,函数等)只是一个简单名字, 没有附加模式部分时需要这样的搜索。 如果在另外一个模式里有一个相同的对象名,那么使用在这个搜索路径中找到的第一个。 一个没有在搜索路径中任何一个模式里出现的对象只能通过其所在模式的全称(打点的)名字来声明。

    search_path 的值必需是一个逗号分隔的模式名的列表。 如果列表项之一是特殊值 $user, 那么该模式和 SESSION_USER 所代换的名字一样 — 如果存在这个模式的话。 (如果没有,那么忽略 $user。)

    系统表模式,pg_catalog,总是被搜索,不管我们有没有在路径里提到它。 如果我们在路径中提到它,那么将按照指定的顺序搜索。 如果 pg_catalog 没有在路径中,那么它将在任何路径项之前得到搜索。 我们还要注意的是,临时表模式,pg_temp_nnn,也隐含在任何这些项之前得到搜索。

    如果创建对象时没有声明特定的目标模式,那么它将被放到搜索路径中的第一个模式。如果搜索路径是空的,那么会报告一个错误。

    这个参数的缺省值是 ''$user, public'' (如果没有叫 public 的模式,那么第二部分将被忽略)。 这样就支持共享使用一个数据库(这个时候没有用户拥有私有模式, 并且所有人都共享使用 public),私有的每用户的模式, 以及这些的组合。其它效果可以通过(全局或者每用户地)修改搜索路径设置获取。

    搜索路径当前的有效值可以用 SQL 函数 current_schemas() 检查。 它和检查 search_path 的值并不太一样, 因为 current_schemas() 显示的是在 search_path 里出现的请求如何被分析。

有关模式处理的更多信息.

    default_tablespace (string)

    这个变量声明当 CREATE 命令没有明确声明表空间时, 所创建之对象(表和索引等)的缺省表空间。

    数值要么是一个表空间的名字,要么是一个空串,表明使用当前数据库的缺省表空间。 如果这个数值和任意现存表空间的名字不匹配,那么 PostgreSQL 将自动使用当前数据库的缺省表空间。

   
    check_function_bodies (boolean)

    这个参数通常是真。如果设置为假,那么就关闭在 CREATE FUNCTION 时候的函数体字串的合法性检查。 关闭合法性检查有时候会有用,比如可以避免在从转储中恢复函数定义的时候类似前向引用的问题。

    default_transaction_isolation (string)

    每个 SQL 事务都有一个隔离级别,可以是"读未提交", "读已提交","可重复读"或者是"可串性化"。 这个参数控制每个新的事务的隔离级别。缺省是读已提交。

    default_transaction_read_only (boolean)

    只读的 SQL 事务不能修改非临时表。这个参数控制每个新事务的只读状态。 缺省是假(读/写).
 

    statement_timeout (integer)

    退出任何使用了超过此参数指定时间(毫秒)的语句。 零值(缺省)关闭这个计时器。

0
相关文章