不同字符集資料庫之間的資料同步問題-補
--======問題的提出========--
/**
XXX專案組,要求我們想個辦法,
解決XXX資料庫(英文字符集)抽取XXX(中文字符集)資料庫的問題,
*/
-- Multitier Materialized Views
CREATE MATERIALIZED VIEW hr.employees REFRESH FAST FOR UPDATE AS
SELECT * FROM e
WHERE EXISTS
(SELECT * FROM d
WHERE e.department_id = d.department_id
AND EXISTS
(SELECT * FROM l
WHERE l.country_id = 'UK'
AND d.location_id = l.location_id));
/**
-- ============= 實驗流程==============--
1 從中文-車購稅模擬庫上,匯出一個表做測試,GD_CLDA ,保留100條記錄
2 將這個表匯入到筆記本的中文-testdb資料庫中,做為Master Table
3 在testdb資料庫中建level1 MV,只做PK型,不加函式
4 在orcl英文庫中建level2 MV
重複3、4步,加上函式。
在做3步時,遇到LARGE POOL分配錯誤的問題。
*/
--==== 在testdb資料庫上的操作 中文字符集 ===--
-- 匯入測試用主表
SQL> @D:zl_12366CheGouShuiDZSYDAgd_clda.sql
-- 在主表上建快照日誌
SQL> create materialized view log on gd_clda;
Materialized view log created
-- 在主表上建一個全部欄位無函式的MV
SQL> create materialized view v_gd_clda
2 refresh fast
3 as select * from gd_clda;
Materialized view created
-- 在主表上建一個帶函式的MV
SQL> create materialized view v_gd_clda2
2 refresh fast
3 as select da_bs,utl_raw.cast_to_raw(nsr_mc) as nsr_mc from gd_clda;
Materialized view created
-- 在MV上增加MV LOG
SQL> create materialized view log on v_gd_clda;
Materialized view log created
SQL> create materialized view log on v_gd_clda2;
Materialized view log created
-- 到英文庫上建MV,然後回來插入一條測試記錄
-- 增量重新整理帶函式的MV
SQL> exec dbms_mview.refresh('v_gd_clda2','f');
PL/SQL procedure successfully completed
-- 確定重新整理成功
SQL> select count(1) from v_gd_clda2;
COUNT(1)
----------
101
SQL>
--========在ORCL資料庫上的操作 英文字符集=========--
-- 建一個資料庫鏈路
SQL> create database link testdb
2 connect to scott identified by tiger using 'testdb';
Database link created
-- 驗證鏈路
SQL> select count(1) from ;
COUNT(1)
----------
28
-- 建立增量更新MV
SQL> create materialized view gd_clda1
2 refresh fast
3 as select * from ;
Materialized view created
SQL> create materialized view gd_clda2
2 refresh fast
3 as select da_bs,utl_raw.cast_to_varchar2(nsr_mc) as nsr_mc from ;
Materialized view created
-- 驗證MV的建立
SQL> select nsr_mc from gd_clda2;
-- 在中文庫有新記錄時,增量重新整理本地快照
SQL> exec dbms_mview.refresh('gd_clda2','f');
PL/SQL procedure successfully completed
-- 驗證記錄數的增長
SQL> select count(1) from gd_clda2;
COUNT(1)
-------------------
101
-- 查詢剛才插入的記錄
SQL> select nsr_mc from gd_clda2 where nsr_mc='王旺';
NSR_MC
--------------------------------------------------------------------------------
王旺
--===============END ==================--
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/271063/viewspace-1007045/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 不同字符集資料庫之間的資料同步問題:資料庫
- 不同Oracle資料庫之間的資料同步Oracle資料庫
- 使用物化檢視實現在不同字符集的資料庫之間的資料同步資料庫
- 不同資料庫間傳遞資料的問題資料庫
- 同步整合不同系統、不同資料庫中資料的問題資料庫
- 在不同字符集的資料庫之間匯入資料的方法(轉)資料庫
- 關於java處理不同資料庫字符集的資料同步Java資料庫
- 資料庫同步問題資料庫
- Oracle817 版本 不同字符集之間的資料庫匯入 (轉)Oracle資料庫
- Oracle資料庫字符集問題Oracle資料庫
- 資料庫同步更新問題?資料庫
- Oracle資料庫字符集問題解析Oracle資料庫
- 在兩個資料庫之間進行資料同步資料庫
- 多級複製的資料不同步問題
- 做資料庫分離讀寫時,sqlServer資料庫資料同步的問題:資料庫SQLServer
- 解決兩相同資料庫資料同步的問題 (轉)資料庫
- 教你如何運用python實現不同資料庫間資料同步功能Python資料庫
- Oracle資料庫字符集問題解析(轉)Oracle資料庫
- Oracle資料不同步的問題分析和解決思路Oracle
- (轉載)Oracle資料庫字符集問題解析Oracle資料庫
- 資料不能同步的問題?
- Mysql多臺資料庫同步問題(轉)MySql資料庫
- mysql 5 資料庫匯出與字符集的問題。MySql資料庫
- [轉載]Oracle資料庫字符集問題解析3Oracle資料庫
- [轉載]Oracle資料庫字符集問題解析2Oracle資料庫
- [轉載]Oracle資料庫字符集問題解析1Oracle資料庫
- Oracle資料庫字符集問題解決方案大全Oracle資料庫
- Solr資料不同步Solr
- 多個JVM之間,資料共享的問題?JVM
- 如實實現不同資料庫之間的 (模型) Eloquent: 關聯資料庫模型
- 不同版本間的資料庫匯入匯出資料庫
- 使用impdp命令在不同例項間透過dblink同步資料庫資料庫
- 不同順序InBoundHandler之間的資料傳遞
- 異構資料庫之間資料作業資料庫
- 資料庫同步資料庫
- 配置postgres9.3間的fdw——實現不同postgres資料庫間的互訪問資料庫
- mysql 資料不同字符集遷移步驟MySql
- 修改資料庫字符集資料庫