ITPub博客

首页 > 数据库 > 数据库开发技术 > 修改表列名后不需要手动修改建立在该列上的索引

修改表列名后不需要手动修改建立在该列上的索引

原创 数据库开发技术 作者:cjf107 时间:2007-05-16 09:35:09 0 删除 编辑
看到:
http://www.itpub.net/showthread.php?s=&postid=7513011#post7513011
上的问题:
请问修改表列名后需要手动修改建立在该列上的索引吗?
在用下面语句创建表以及索引以后,如果因为需要修改表的列名ASSESS_ID 为 ASSESSID,请问还需要手动修改索引ASSESSMENT_PK吗?
多谢!
建表语句:
CREATE TABLE "ASSESSMENT01"
( "ASSESS_ID" NUMBER(16,0) NOT NULL ENABLE,
"ASSESSNAME" VARCHAR2(20),
"EVENTID" Char(16),
"SEGMENTID" NUMBER(16,0),
CONSTRAINT "ASSESSMENT01_PK" PRIMARY KEY ("ASSESS_ID") ENABLE
)[@more@]

以下为我的测试过程:
SQL> desc tb
名称 是否为空? 类型
----------------------------------------- -------- ----------------------------

A NUMBER
B VARCHAR2(10)
C NUMBER(4)

SQL> create index i_tb_c on tb(c);

索引已创建。

SQL> alter table tb rename column c to cc;

表已更改。

SQL>
SQL> select status from user_indexes where table_name='TB';

STATUS
----------------
VALID

SQL>
SQL> select column_name from user_ind_columns where table_name='TB';

COLUMN_NAME
-------------------------------------------------------------------------------

CC

SQL>

结论:不需要手工修改该列上的索引的.
该列上的索引对应的列名已经自动变为新的列名了.

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/63266/viewspace-915184/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
下一篇: 没有了~
请登录后发表评论 登录
全部评论
  • 博文量
    1
  • 访问量
    56408