SET 是一个用于更改运行时 系统参数 的实用命令。
SET 添加于 PostgreSQL 6.1。
用法
在其基本形式中,SET 用于在会话或会话内事务的上下文中,使用以下语法修改运行时 系统参数。
SETparameter[ TO | = ]value
请注意,函数 set_config() 提供了与 SET 等效的功能。
SET 还提供了针对部分参数的特定语法调用,部分是为了 SQL 兼容性;这些是:
SET NAMESSET SCHEMASET SEEDSET TIME ZONE
其他 SET 命令变体
还有许多不相关的 SET ... 命令;这些将在单独的条目中讨论。
变更历史
进行中
- PostgreSQL 15
- PostgreSQL 9.4
- 当
SET LOCAL ...在事务块外部执行时,会发出WARNING(而不是ERROR) (commit a6542a4b)。
- 当
- PostgreSQL 7.3
- 添加了
SET [ SESSION | LOCAL ]语法 (commit f0811a74)。
- 添加了
- PostgreSQL 6.4
- 添加了
SET NAMES语法 (commit bf00bbb0)。
- 添加了
- PostgreSQL 6.1
- 添加 (initial commit a51df14a)。
示例
SET 的基本用法示例
postgres=# SET application_name TO 'foo'; SET postgres=# SHOW application_name; application_name ------------------ foo (1 row)
可以使用 = 字符代替 TO。
postgres=# SET application_name = 'bar'; SET postgres=# SHOW application_name; application_name ------------------ bar (1 row)
使用 DEFAULT 将参数重置为其原始值。
postgres=# SET application_name TO DEFAULT; -- equivalent to "RESET application_name" SET postgres=# SHOW application_name; application_name ------------------ psql (1 row)
参考资料
- PostgreSQL 文档: SET
