WEB开发网      濠电娀娼ч崐濠氬疾椤愶附鍋熸い鏍ㄧ〒闂勫嫰鏌﹀Ο渚Ц闁诲氦顕ч湁婵犲﹤楠告禍鍓х磼鏉堛劌绗氶柟宄版嚇閹晠宕归銈嗘濠电偞鍨堕幐鎾磻閹捐秮褰掓偐閻戞﹩妫勯梺鎼炲妼鐎涒晝绮嬪澶樻晝闁挎繂鏌婇敃鍌涚厵閻庢稒锚閻忥絾绻濇繝鍐ㄧ伌闁诡垰鍟村畷鐔碱敂閸♀晙绱樺┑鐐差嚟婵儳螞閸曨剚鍙忛柍鍝勬噹缁€澶嬬箾閹存繄锛嶆鐐灲閹綊宕惰濡插鏌涢妸銉ヮ劉缂佸倸绉归弫鎾绘晸閿燂拷 ---闂備焦瀵уú鈺呭箯閿燂拷
开发学院数据库Oracle Oracle 11g闪回数据归档新功能解析 阅读

Oracle 11g闪回数据归档新功能解析

 2008-12-15 13:01:44 来源:WEB开发网 闂備線娼уΛ鎾箯閿燂拷闂備礁鎲¢崹鐢垫崲閹扮増鍎嶆い鎺戝€甸崑鎾斥槈濞嗗秳娌紓鍌氱▌閹凤拷濠电姭鎷冮崨顓濈捕闂侀潧娲ゅú銊╁焵椤掍胶鈯曢柕鍥╁仧缁辩偤鏁撻敓锟�闂備線娼уΛ鎾箯閿燂拷  闂備胶枪缁绘鈻嶉弴銏犳瀬闁绘劕鐏氱€氼剟姊洪崹顕呭剰闁逞屽墮缁夊綊寮婚妸褉鍋撻棃娑欏暈闁伙綀浜埀顒傛暬閸嬪﹪宕伴弽褏鏆﹂柨鐕傛嫹
核心提示:简介 Oracle数据库10g提供了五个新的闪回功能:闪回版本查询,闪回事务查询,Oracle 11g闪回数据归档新功能解析,闪回删除,闪回表和闪回数据库,会发生什么?虽然同时对EMPLOYEES和EMPLOYEES_HISTORY表做了一致的修改,但忘记修改触发器了,Oracle数据库11gR1提供了一个有趣的新的闪

简介

Oracle数据库10g提供了五个新的闪回功能:闪回版本查询,闪回事务查询,闪回删除,闪回表和闪回数据库。Oracle数据库11gR1提供了一个有趣的新的闪回功能:闪回数据存档,它允许一个Oracle数据库管理员维护一个记录,对指定时间范围内对所有表的的改变情况进行记录。

许多年前-事实上,在上个世纪-我是一名美国大西部饮料生产厂家人力资源系统的承包商。有一天,人力资源总监问我:“如何为我们的雇员数据配置一个delta表,使我们能够跟踪所有对雇员数据的更改情况?”出现在我脑袋中的答案就像最近的美国总统大选期间CNN用来显示和分析投票结果的“神奇地图”一样:

我想创建一个名为EMPLOYEES_HISTORY的表,除了增加了一个相应的时间戳记的日期和时间的变化外,它与Employees表的列完全一样。

我希望把这个新表放在一个单独的表空间。

我想套用外键参照完整性约束EMPLOYEES_HISTORY表,以确保两个表之间的数据一致。

最后,我想创建一个AFTER …… FOR EACH ROW触发器,无论何时在Employees表上发生INSERT,UPDATE或DELETE事务时,都将在EMPLOYEES_HISTORY表中插入delta记录。

然后一些潜在的问题开始萦绕着我,这样做了会发生什么,我不停地问我自己,如果某人:

禁用了EMPLOYEES_HISTORY表上的触发器,并且忘记重新开启了,会发生什么事情?

需要向EMPLOYEES表中增加新列,或修改数据类型,但忘记同步修改EMPLOYEES_HISTORY表上对应的列了,会发生什么?

虽然同时对EMPLOYEES和EMPLOYEES_HISTORY表做了一致的修改,但忘记修改触发器了,会发生什么?

如果需要删除EMPLOYEES表的列或将其标记为UNUSED时,会发生什么?

1 2 3 4 5 6  下一页

Tags:Oracle 数据 归档

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接