完善昨天寫的資料庫結構同步方案
在昨天的方案中,並沒有實現對由系統自動生成約束名的約束的修改和刪除的同步。
考慮到這種情況的同步較為複雜,決定透過before觸發器防止SYS_XXXX之類物件的建立
觸發器程式碼如下:
在昨天的方案中,並沒有實現對由系統自動生成約束名的約束的修改和刪除的同步。
考慮到這種情況的同步較為複雜,決定透過before觸發器防止SYS_XXXX之類物件的建立
觸發器程式碼如下:
--建立使用者DDL BEFORE觸發器,防止使用者建立物件名稱為SYS_XXXX之類的物件
--因為一般情況下SYS_XXXX的物件是由系統自動生成的物件,如沒有命名的主鍵索引等,這些會引起資料庫結構同步的不一致性
Create Or Replace Trigger tri_ddl_before Before ddl
ON suk.Schema
DECLARE
sql_text ora_name_list_t;
state_sql Varchar2(4000);
BEGIN
FOR i IN 1..ora_sql_txt(sql_text) LOOP
state_sql := state_sql||sql_text(i);
END LOOP;
dbms_output.put_line(state_sql);
dbms_output.put_line(instr(upper(state_sql),'SYS_'));
if ora_sysevent = 'CREATE' And instr(upper(state_sql),'SYS_')>0 then
raise_application_error(-20001, 'can not create/alter object use name like ''SYS_XXXXXX''');
End If;
EXCEPTION
WHEN NO_DATA_FOUND THEN
Null;
END tr_ddl_before;
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/231499/viewspace-63698/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 使用者級資料庫結構同步方案(測試版)資料庫
- 資料庫同步方案資料庫
- 同步寫兩個資料庫資料庫
- 高併發架構系列:資料庫主從同步的3種方案架構資料庫主從同步
- database資料庫的資料結構Database資料庫資料結構
- DBus資料庫表結構變更處理方案資料庫
- IMDB的資料庫結構資料庫
- 做資料庫分離讀寫時,sqlServer資料庫資料同步的問題:資料庫SQLServer
- mysql資料庫-資料結構MySql資料庫資料結構
- Oracle 資料庫 結構Oracle資料庫
- 資料庫結構的優化資料庫優化
- 使用scrapy框架把資料非同步寫入資料庫框架非同步資料庫
- 資料庫索引背後的資料結構資料庫索引資料結構
- Cassandra 分散式資料庫詳解,第 2 部分:資料結構與資料讀寫分散式資料庫資料結構
- 【SqlServer】 理解資料庫中的資料頁結構SQLServer資料庫
- 同步寫兩個資料庫--多執行緒資料庫執行緒
- Activiti資料庫表結構資料庫
- Dedecms 資料庫 結構分析資料庫
- QC資料庫表結構資料庫
- 資料庫結構操作 (轉)資料庫
- 資料庫同步資料庫
- Discuz!NT資料庫讀寫分離方案資料庫
- 貓學Grails之完善編寫的第一個程式和資料庫設定AI資料庫
- Linux 資料同步方案Linux
- 資料庫索引中包含的資料結構有哪些資料庫索引資料結構
- PostgreSQL 資料庫學習 - 1.資料庫體系結構之儲存結構SQL資料庫
- Oracle - 資料庫的記憶體結構Oracle資料庫記憶體
- dump Oracle資料庫的內部結構Oracle資料庫
- 資料庫資料變成樹型結構資料庫
- 讀寫分離的的資料同步?
- Oracle資料庫體系結構Oracle資料庫
- 簡述oracle資料庫結構Oracle資料庫
- 管理資料庫儲存結構資料庫
- 資料庫和快取雙寫一致性方案總結分析資料庫快取
- (7)資料庫讀寫分離,主從同步實現方法(資料庫設定)資料庫主從同步
- 關於異地資料同步的方案
- 詳解資料庫儲存的資料結構LSM Tree資料庫資料結構
- 層次結構資料的資料庫儲存和使用資料庫