ALTER TYPE
Name
ALTER TYPE
-- 改变一个类型的定义
Synopsis
ALTER TYPE name OWNER TO new_owner
ALTER TYPE name SET SCHEMA new_schema
描述
ALTER TYPE 改变一个现存类型的定义。
目前能用的唯一的功能就是修改一个类型的所有者和模式。
要使用 ALTER TYPE,你必须拥有该类型,
要修改一个类型的模式,你必须在新的模式上有 CREATE 权限。
要修改所有者,你必须是新的所有角色的直接或者间接的成员,并且该角色在该类型的模式上必须有
CREATE 权限。(这个限制保证了修改所有者不会比删除、重建该类型做更多的事情。
不过,超级用户可以随意修改任意类型的所有权。)
参数
- name
一个需要修改的现有的类型的名字(可以有模式修饰)。
- new_owner
新所有者的用户名。
- new_schema
该类型的新模式。
例子
要改变一个用户定义类型 email 的所有者为 joe:
ALTER TYPE email OWNER TO joe;
把用户定义类型 email 的模式改变为 customers:
ALTER TYPE email SET SCHEMA customers;
兼容性
在 SQL 标准里没有 ALTER TYPE 语句。