RENAME INDEX 语句

使用 RENAME INDEX 语句来更改现有的索引的名称。此语句为对 SQL 的 ANSI/ISO 标准的扩展。

语法

元素 描述 限制 语法
new_index 您在此为该索引声明的新名称 名称对于该数据库必须为唯一的(或如果 old_index 在临时表上,则是对于该会话) 标识符
old_index new_index 替代的索引名称 必须存在,但不可为下列中的任何之一: -- 在系统目录表上的索引 -- 系统生成的约束索引 -- “虚拟索引接口”(VII) 标识符
owner 索引的所有者 必须为 old_index 的所有者 所有者名称

用法

如果您是该索引的所有者或有对该数据库的 DBA 权限,则可重命名索引。

当您重命名索引时,数据库服务器更改 sysindexessysconstraintssysobjstatesysfragments 系统目录表中的索引名称。(但对于临时表上的索引,不更新系统目录表。)

不可重命名系统目录表上的索引。如果您想更改实施约束的系统生成的索引的名称,请使用 ALTER TABLE ... DROP CONSTRAINT 语句来删除该约束,然后再使用 ALTER TABLE ... ADD CONSTRAINT 语句来定义新的约束,新约束与您删除了的约束有相同的定义,但对于您声明的新名称。

在缺省情况下,重新优化使用该重命名了的索引的 SPL 例程,当重命名该索引之后下一次执行它们时。然而,当启用自动的重编译时,如果该重命名了的索引与直接地引用了的表相关联,则在下一次使用该重命名了的索引时,自动地重编译 SPL 例程。然而,如果仅间接地引用该表,执行可失败,并报错 -710。要获取更多关于在更改被引用的表的模式之后,启用或禁用自动的重编译的信息,请参阅 IFX_AUTO_REPREPARE 环境选项。要获取更多关于 AUTO_REPREPARE 配置参数的信息,请参阅您的 GBase 8s 管理员参考手册