exit_on_error
一个 GUC 参数,用于确定会话在发生错误时是否应终止
exit_on_error 是一个 配置参数,用于确定会话在发生错误时是否应终止。
exit_on_error 在 PostgreSQL 7.4 中添加。
默认值
exit_on_error 的默认值为:off。
用法
默认情况下,只有 FATAL 级别的错误才会终止会话。但是,如果将 exit_on_error 设置为 on,则任何错误都会导致会话终止。
然而,在某些情况下,例如从脚本加载 SQL 时,可能希望确保在发生错误时处理过程停止,以防止加载可能错误的数据。
按 PostgreSQL 版本详细信息
exit_on_error (PostgreSQL 19)
| 设置 |
off |
| 单位 |
|
| 类别 |
错误处理 |
| 简短描述 |
发生任何错误时终止会话。 |
| 扩展描述 |
|
| 上下文 |
user |
| 变量类型 |
bool |
| 来源 |
默认 |
| 最小值 |
|
| 最大值 |
|
| 枚举值 |
|
| 启动值 |
off |
| 重置值 |
off |
| 源文件 |
|
| 源行 |
|
| 需要重启 |
false |
文档:exit_on_error
exit_on_error (PostgreSQL 18)
| 设置 |
off |
| 单位 |
|
| 类别 |
错误处理 |
| 简短描述 |
发生任何错误时终止会话。 |
| 扩展描述 |
|
| 上下文 |
user |
| 变量类型 |
bool |
| 来源 |
默认 |
| 最小值 |
|
| 最大值 |
|
| 枚举值 |
|
| 启动值 |
off |
| 重置值 |
off |
| 源文件 |
|
| 源行 |
|
| 需要重启 |
false |
文档:exit_on_error
exit_on_error (PostgreSQL 17)
| 设置 |
off |
| 单位 |
|
| 类别 |
错误处理 |
| 简短描述 |
发生任何错误时终止会话。 |
| 扩展描述 |
|
| 上下文 |
user |
| 变量类型 |
bool |
| 来源 |
默认 |
| 最小值 |
|
| 最大值 |
|
| 枚举值 |
|
| 启动值 |
off |
| 重置值 |
off |
| 源文件 |
|
| 源行 |
|
| 需要重启 |
false |
文档:exit_on_error
exit_on_error (PostgreSQL 16)
| 设置 |
off |
| 单位 |
|
| 类别 |
错误处理 |
| 简短描述 |
发生任何错误时终止会话。 |
| 扩展描述 |
|
| 上下文 |
user |
| 变量类型 |
bool |
| 来源 |
默认 |
| 最小值 |
|
| 最大值 |
|
| 枚举值 |
|
| 启动值 |
off |
| 重置值 |
off |
| 源文件 |
|
| 源行 |
|
| 需要重启 |
false |
文档:exit_on_error
exit_on_error (PostgreSQL 15)
| 设置 |
off |
| 单位 |
|
| 类别 |
错误处理 |
| 简短描述 |
发生任何错误时终止会话。 |
| 扩展描述 |
|
| 上下文 |
user |
| 变量类型 |
bool |
| 来源 |
默认 |
| 最小值 |
|
| 最大值 |
|
| 枚举值 |
|
| 启动值 |
off |
| 重置值 |
off |
| 源文件 |
|
| 源行 |
|
| 需要重启 |
false |
文档:exit_on_error
exit_on_error (PostgreSQL 14)
| 设置 |
off |
| 单位 |
|
| 类别 |
错误处理 |
| 简短描述 |
发生任何错误时终止会话。 |
| 扩展描述 |
|
| 上下文 |
user |
| 变量类型 |
bool |
| 来源 |
默认 |
| 最小值 |
|
| 最大值 |
|
| 枚举值 |
|
| 启动值 |
off |
| 重置值 |
off |
| 源文件 |
|
| 源行 |
|
| 需要重启 |
false |
文档:exit_on_error
exit_on_error (PostgreSQL 13)
| 设置 |
off |
| 单位 |
|
| 类别 |
错误处理 |
| 简短描述 |
发生任何错误时终止会话。 |
| 扩展描述 |
|
| 上下文 |
user |
| 变量类型 |
bool |
| 来源 |
默认 |
| 最小值 |
|
| 最大值 |
|
| 枚举值 |
|
| 启动值 |
off |
| 重置值 |
off |
| 源文件 |
|
| 源行 |
|
| 需要重启 |
false |
文档:exit_on_error
exit_on_error (PostgreSQL 12)
| 设置 |
off |
| 单位 |
|
| 类别 |
错误处理 |
| 简短描述 |
发生任何错误时终止会话。 |
| 扩展描述 |
|
| 上下文 |
user |
| 变量类型 |
bool |
| 来源 |
默认 |
| 最小值 |
|
| 最大值 |
|
| 枚举值 |
|
| 启动值 |
off |
| 重置值 |
off |
| 源文件 |
|
| 源行 |
|
| 需要重启 |
false |
文档:exit_on_error
exit_on_error (PostgreSQL 11)
| 设置 |
off |
| 单位 |
|
| 类别 |
错误处理 |
| 简短描述 |
发生任何错误时终止会话。 |
| 扩展描述 |
|
| 上下文 |
user |
| 变量类型 |
bool |
| 来源 |
默认 |
| 最小值 |
|
| 最大值 |
|
| 枚举值 |
|
| 启动值 |
off |
| 重置值 |
off |
| 源文件 |
|
| 源行 |
|
| 需要重启 |
false |
文档:exit_on_error
exit_on_error (PostgreSQL 10)
| 设置 |
off |
| 单位 |
|
| 类别 |
错误处理 |
| 简短描述 |
发生任何错误时终止会话。 |
| 扩展描述 |
|
| 上下文 |
user |
| 变量类型 |
bool |
| 来源 |
默认 |
| 最小值 |
|
| 最大值 |
|
| 枚举值 |
|
| 启动值 |
off |
| 重置值 |
off |
| 源文件 |
|
| 源行 |
|
| 需要重启 |
false |
文档:exit_on_error
exit_on_error (PostgreSQL 9.6)
| 设置 |
off |
| 单位 |
|
| 类别 |
错误处理 |
| 简短描述 |
发生任何错误时终止会话。 |
| 扩展描述 |
|
| 上下文 |
user |
| 变量类型 |
bool |
| 来源 |
默认 |
| 最小值 |
|
| 最大值 |
|
| 枚举值 |
|
| 启动值 |
off |
| 重置值 |
off |
| 源文件 |
|
| 源行 |
|
| 需要重启 |
false |
文档:exit_on_error
exit_on_error (PostgreSQL 9.5)
| 设置 |
off |
| 单位 |
|
| 类别 |
错误处理 |
| 简短描述 |
发生任何错误时终止会话。 |
| 扩展描述 |
|
| 上下文 |
user |
| 变量类型 |
bool |
| 来源 |
默认 |
| 最小值 |
|
| 最大值 |
|
| 枚举值 |
|
| 启动值 |
off |
| 重置值 |
off |
| 源文件 |
|
| 源行 |
|
| 需要重启 |
false |
文档:exit_on_error
exit_on_error (PostgreSQL 9.4)
| 设置 |
off |
| 单位 |
|
| 类别 |
错误处理 |
| 简短描述 |
发生任何错误时终止会话。 |
| 扩展描述 |
|
| 上下文 |
user |
| 变量类型 |
bool |
| 来源 |
默认 |
| 最小值 |
|
| 最大值 |
|
| 枚举值 |
|
| 启动值 |
off |
| 重置值 |
off |
| 源文件 |
|
| 源行 |
|
文档:exit_on_error
exit_on_error (PostgreSQL 9.3)
| 设置 |
off |
| 单位 |
|
| 类别 |
错误处理 |
| 简短描述 |
发生任何错误时终止会话。 |
| 扩展描述 |
|
| 上下文 |
user |
| 变量类型 |
bool |
| 来源 |
默认 |
| 最小值 |
|
| 最大值 |
|
| 枚举值 |
|
| 启动值 |
off |
| 重置值 |
off |
| 源文件 |
|
| 源行 |
|
文档:exit_on_error
exit_on_error (PostgreSQL 9.2)
| 设置 |
off |
| 单位 |
|
| 类别 |
错误处理 |
| 简短描述 |
发生任何错误时终止会话。 |
| 扩展描述 |
|
| 上下文 |
user |
| 变量类型 |
bool |
| 来源 |
默认 |
| 最小值 |
|
| 最大值 |
|
| 枚举值 |
|
| 启动值 |
off |
| 重置值 |
off |
| 源文件 |
|
| 源行 |
|
文档:exit_on_error
exit_on_error (PostgreSQL 9.1)
| 设置 |
off |
| 单位 |
|
| 类别 |
错误处理 |
| 简短描述 |
发生任何错误时终止会话。 |
| 扩展描述 |
|
| 上下文 |
user |
| 变量类型 |
bool |
| 来源 |
默认 |
| 最小值 |
|
| 最大值 |
|
| 枚举值 |
|
| 启动值 |
off |
| 重置值 |
off |
| 源文件 |
|
| 源行 |
|
文档:exit_on_error
变更历史
示例
在 psql 会话中使用 exit_on_error 的演示
postgres=# SELECT 1 FROM foo;
ERROR: relation "foo" does not exist
LINE 1: SELECT 1 FROM foo;
^
postgres=# SET exit_on_error TO on;
SET
postgres=# SELECT 1 FROM foo;
FATAL: relation "foo" does not exist
LINE 1: SELECT 1 FROM foo;
^
server closed the connection unexpectedly
This probably means the server terminated abnormally
before or while processing the request.
The connection to the server was lost. Attempting reset: Succeeded.