ALTER SEQUENCE
注意事项
- 只有序列的所有者或者被授予了序列ALTER权限的用户才能执行ALTER SEQUENCE命令,系统管理员默认拥有该权限。但要修改序列的所有者,当前用户必须是该序列的所有者或者系统管理员,且该用户是新所有者角色的成员。
- 当前版本仅支持修改拥有者、归属列和最大值。若要修改其他参数,可以删除重建,并用Setval函数恢复当前值。
- ALTER SEQUENCE MAXVALUE不支持在事务、函数和存储过程中使用。
- 修改序列的最大值后,会清空该序列在所有会话的cache。
- ALTER SEQUENCE会阻塞nextval、setval、currval和lastval的调用。
修改序列的拥有者
参数说明
name
将要修改的序列名称。
-
当序列不存在时使用该选项不会出现错误消息,仅有一个通知。
CACHE
为了快速访问,而在内存中预先存储序列号的个数。如果没有指定,将保持旧的缓冲值。
OWNED BY
如果序列已经和表有关联后,使用这个选项后新的关联关系会覆盖旧的关联。
关联的表和序列的所有者必须是同一个用户,并且在同一个模式中。
使用OWNED BY NONE将删除任何已经存在的关联。