首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >oracle修改表名称索引丢失,修改表名索引约束触发器等对象不会失效[通俗易懂]

oracle修改表名称索引丢失,修改表名索引约束触发器等对象不会失效[通俗易懂]

作者头像
全栈程序员站长
发布2022-08-29 10:49:36
发布2022-08-29 10:49:36
1.6K0
举报

大家好,又见面了,我是你们的朋友全栈君。

修改表名后,索引、约束、触发器、comment、授权不会失效,这些对象的创建脚本中的表名会正常自动更改

修改表名前,索引脚本如下

CREATE INDEX CUX.CUX_MSC_RMP_SDCI_DTLS_N2170307 ON CUX.CUX_MSC_RMP_SDCI_DTLS(LINE_ID)

修改表名后,索引脚本如下

CREATE INDEX CUX.CUX_MSC_RMP_SDCI_DTLS_N2170307 ON CUX.CUX_MSC_RMP_SDCI_DTLS20170307(LINE_ID)

修改表名前,约束脚本如下

ALTER TABLE CUX.CUX_MSC_RMP_SDCI_DTLS ADD (

CONSTRAINT CUX_MSC_RMP_SDCI_DTLS_PK170307

PRIMARY KEY

(DETAIL_ID)

USING INDEX CUX.CUX_MSC_RMP_SDCI_DTLS_PK170307

ENABLE VALIDATE);

select CONSTRAINT_NAME from dba_constraints where table_name=upper(‘cux_msc_rmp_sdci_dtls’)

SYS_C00938162170307

SYS_C00938161170307

SYS_C00938167170307

SYS_C00938166170307

SYS_C00938165170307

SYS_C00938164170307

SYS_C00938163170307

CUX_MSC_RMP_SDCI_DTLS_PK170307

修改表名后,约束脚本如下

ALTER TABLE CUX.CUX_MSC_RMP_SDCI_DTLS20170307 ADD (

CONSTRAINT CUX_MSC_RMP_SDCI_DTLS_PK170307

PRIMARY KEY

(DETAIL_ID)

USING INDEX CUX.CUX_MSC_RMP_SDCI_DTLS_PK170307

ENABLE VALIDATE);

select CONSTRAINT_NAME from dba_constraints where table_name=upper(‘cux_msc_rmp_sdci_dtls20170307’)

SYS_C00938162170307

SYS_C00938161170307

SYS_C00938167170307

SYS_C00938166170307

SYS_C00938165170307

SYS_C00938164170307

SYS_C00938163170307

CUX_MSC_RMP_SDCI_DTLS_PK170307

修改表名前,授权脚本如下

GRANT SELECT ON CUX.CUX_MSC_RMP_SDCI_DTLS TO ALLQUERY;

修改表名后,授权脚本如下

GRANT SELECT ON CUX.CUX_MSC_RMP_SDCI_DTLS20170307 TO ALLQUERY;

修改表名前,comment脚本如下

COMMENT ON COLUMN CUX.CUX_MSC_RMP_SDCI_DTLS.ORGANIZATION_ID IS ‘组织ID’;

修改表名后,comment脚本如下

COMMENT ON COLUMN CUX.CUX_MSC_RMP_SDCI_DTLS20170307.ORGANIZATION_ID IS ‘组织ID’;

修改表名前,触发器脚本如下

CREATE OR REPLACE TRIGGER “TR_TEST1” after insert

ON “TEST3”

FOR EACH ROW

declare vv number:=2;

BEGIN

INSERT INTO test2(hid ) VALUES( :new.hid );

END;

修改表名后,触发器脚本如下

CREATE OR REPLACE TRIGGER “TR_TEST1” after insert

ON “TEST3_20170308”

FOR EACH ROW

declare vv number:=2;

BEGIN

INSERT INTO test2(hid ) VALUES( :new.hid );

END;

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/145828.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年5月1,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档