修改表名后,索引、约束、触发器、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;
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/30126024/viewspace-2135323/
,如需转载,请注明出处,否则将追究法律责任。