GBASE 8C——SQL参考6 sql语法(4)

本文详细介绍了GBASE 8C中的ALTER TYPE语句,用于修改类型参数,包括添加、删除和更改属性,以及重命名和迁移类型。同时,还涵盖了ALTER USER、ALTER VIEW等数据库管理命令,涉及用户属性修改、视图属性调整和统计信息收集等方面。
摘要由CSDN通过智能技术生成
  1. ALTER TYPE

功能描述

修改类型的参数。

语法格式

ALTER TYPE name action [, ... ]

ALTER TYPE name OWNER TO { new_owner | CURRENT_USER | SESSION_USER }

ALTER TYPE name RENAME ATTRIBUTE attribute_name TO new_attribute_name [ CASCADE | RESTRICT ]

ALTER TYPE name RENAME TO new_name

ALTER TYPE name SET SCHEMA new_schema

ALTER TYPE name ADD VALUE [ IF NOT EXISTS ] new_enum_value [ { BEFORE | AFTER } neighbor_enum_value ]

ALTER TYPE name RENAME VALUE existing_enum_value TO new_enum_value

这里action 是以下之一:

    ADD ATTRIBUTE attribute_name data_type [ COLLATE collation ] [ CASCADE | RESTRICT ]

    DROP ATTRIBUTE [ IF EXISTS ] attribute_name [ CASCADE | RESTRICT ]

    ALTER ATTRIBUTE attribute_name [ SET DATA ] TYPE data_type [ COLLATE collation ] [ CASCADE | RESTRICT ]

参数说明

  1. name:需要修改的现有的类型的名字,可以被模式修饰;
  2. new_name:该类型的新名称;
  3. new_owner:新所有者的用户名;
  4. new_schema:该类型的新模式;
  5. attribute_name:拟增加、更改或删除的属性的名称;
  6. new_attribute_name:拟改名的属性的新名称;
  7. data_type:拟新增属性的数据类型,或是拟更改的属性的新类型名;
  8. new_enum_value:枚举类型新增加的标签值,需要被引号引用;
  9. neighbor_enum_value:一个已有枚举标签值,新值应该被增加在紧接着该枚举值之前或者之后的位置上;
  10. existing_enum_value:现有的要重命名的枚举值,需要被引号引用;
  11. CASCADE:自动级联更新需更新类型以及相关联的记录和继承它们的子表;
  12. RESTRICT:如果需联动更新类型是已更新类型的关联记录,则拒绝更新,这是默认选项;

注意事项

使用ALTER TYPE必须是该类型的所有者。

范例

ALTER TYPE compfoo RENAME TO g_compfoo;

ALTER TYPE

语法兼容

ALTER TYPE新增和删除是SQL属于SQL标准,其他参数是PostgreSQL 扩展。

相关语法

CREATE TYPE, DROP TYPE

  1. ALTER USER

功能描述

修改数据库用户的属性。

语法格式

ALTER USER role_specification [ WITH ] option [ ... ]

其中 option 可以是:

      SUPERUSER | NOSUPERUSER

    | CREATEDB | NOCREATEDB

    | CREATEROLE | NOCREATEROLE

    | INHERIT | NOINHERIT

    | LOGIN | NOLOGIN

    | REPLICATION | NOREPLICATION

    | BYPASSRLS | NOBYPASSRLS

    | CONNECTION LIMIT connlimit

    | [ ENCRYPTED ] PASSWORD 'password'

    | VALID UNTIL 'timestamp'

ALTER USER name RENAME TO new_name

ALTER USER { role_specification | ALL } [ IN DATABASE database_name ] SET configuration_parameter { TO | = } { value | DEFAULT }

ALTER USER { role_specification | ALL } [ IN DATABASE database_name ] SET configuration_parameter FROM CURRENT

ALTER USER { role_specification | ALL } [ IN DATABASE database_name ] RESET configuration_parameter

ALTER USER { role_specification | ALL } [ IN DATABASE database_name ] RESET ALL

其中 role_specification 可以是:

    role_name

  | CURRENT_USER

  | SESSION_USER

注意事项

ALTER USER现在是 ALTER ROLE的一个别名。详见ALTER ROLE

语法兼容

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值