Redrock Postgres 文档
主页 切换暗/亮/自动模式 切换暗/亮/自动模式 切换暗/亮/自动模式 返回首页

CREATE UNDO

CREATE UNDO — 定义一个新回滚段

语法

CREATE UNDO [ IF NOT EXISTS ] name
    [ WITH ( storage_parameter = value [, ... ] ) ]
    [ TABLESPACE tablespace_name ]

描述

CREATE UNDO在当前数据库中构建一个回滚段。该回滚段名必须与当前数据库中任何现有回滚段的名称不同。回滚段主要被用来存放表和索引中修改过的老版本数据。

要创建一个回滚段,你必须是一个超级用户或者当前数据库拥有者。

参数

  • IF NOT EXISTS

    如果一个同名关系已经存在则不要抛出错误。这种情况下会发出一个提示。注意这并不保证现有的回滚段与将要创建的回滚段有任何相似。

  • name

    要创建的回滚段名称。这里不能包括模式名,因为回滚段总是被创建在系统模式pg_catalog中。

  • storage_parameter

    回滚段相关的存储参数的名称。详见 回滚段存储参数

  • tablespace_name

    在其中创建回滚段的表空间。如果没有指定,将会使用 default_tablespace

回滚段存储参数

可选的WITH子句为回滚段指定存储参数

  • minpages

    回滚段中的最小页面数。默认是128

  • maxpages

    回滚段中的最大页面数。默认不限制。该参数更多只是一种提示,实际上,Redrock Postgres 采用的是一种完全自动化的机制,称为自动回滚段管理模式,用于管理回滚段占用的存储空间。

示例

创建一个回滚段:

CREATE UNDO undo_13;

创建一个回滚段并且把回滚段放在表空间undospace中:

CREATE UNDO undo_14 TABLESPACE undospace;

兼容性

CREATE UNDO是一种 Redrock Postgres 的语言扩展。在 SQL 标准中没有对于回滚段的规定。