修改表名索引約束觸發器等物件不會失效
修改表名後,索引、約束、觸發器、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;
修改表名前,索引指令碼如下
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部落格 ” ,連結:http://blog.itpub.net/30126024/viewspace-2135323/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle中檢視無效的物件、約束、觸發器和索引(Helloblock寫作)Oracle物件觸發器索引BloC
- PostgreSQLrotatetable自動清理排程-約束,觸發器SQL觸發器
- oracle 表遷移方法 (二) 約束不失效Oracle
- SQL Server約束和DML觸發器的比較SQLServer觸發器
- Oracle - 約束、索引等相關常用操作語句Oracle索引
- Oracle分割槽表全域性索引新增分割槽時不會失效Oracle索引
- 查詢oracle表的資訊(表,欄位,約束,索引)Oracle索引
- 修改表結構後一定會另依賴物件失效嗎?物件
- 如何在ORACLE中修改表的約束條件啊Oracle
- MySQL修改表結構到底會不會鎖表?MySql
- PLSQL方式更新LOB不會被觸發器捕獲SQL觸發器
- 修改oracle的約束欄位Oracle
- 如何在MySQL後設資料庫裡檢視索引,約束,觸發器,儲存過程和事件的相關資訊MySql資料庫索引觸發器儲存過程事件
- vue陣列物件修改觸發檢視更新Vue陣列物件
- MySQL·捉蟲動態·唯一鍵約束失效MySql
- oracle 觸發器-表同步Oracle觸發器
- Oracle主鍵約束、唯一鍵約束、唯一索引的區別(轉)Oracle索引
- MySQL中的 UNIQUE約束和UNIQUE索引MySql索引
- 建約束(Constraint)時隱式建立索引(Index)及先建立索引後建立約束的區別AI索引Index
- 【SQL】15 SQL 約束(Constraints)、NOT NULL 約束、UNIQUE 約束、PRIMARY KEY 約束、FOREIGN KEY 約束、CHECK 約束、DEFAULT約束SQLAINull
- MySQL索引失效行鎖變表鎖MySql索引
- 資料庫開發---常用物件-觸發器資料庫物件觸發器
- 用函式索引構造特殊的約束函式索引
- Oracle如何管理帶約束的B樹索引Oracle索引
- 分割槽表 全域性索引與本地索引失效測試索引
- Mysql 會導致索引失效的情況MySql索引
- SQL Server 觸發器的修改與刪除SQLServer觸發器
- impdp做資料匯入時約束和觸發器引起資料匯入後應用故障觸發器
- sql server 修改表名SQLServer
- ActiveReport報表,FetchData等事件沒有觸發事件
- Oracle檢視錶、儲存過程、觸發器、函式等物件定義語句Oracle儲存過程觸發器函式物件
- 查詢(看)表的主鍵、外來鍵、唯一性約束和索引索引
- 解決資料庫的索引亂碼問題,先刪除外來鍵約束,再刪除主鍵約束及其索引資料庫索引
- 物件導向 約束、自定義異常、加密物件加密
- 關於SQLServer2005的學習筆記——約束、Check、觸發器的執行順序SQLServer筆記觸發器
- oracle 建立表,序列,索引,檢視,觸發器,函式,儲存過程,定時器,包體Oracle索引觸發器函式儲存過程定時器
- 資料庫物件、表空間、表、檢視、索引、同義詞序列等的字典資料庫物件索引
- 通過oracle觸發器記錄修改某表的使用者和ip地址Oracle觸發器