ããæ¹æ¡1ï¼ å©ç¨Flashback Query éªåç¹æ§ï¼è¯¥æ¹æ¡å¹¶ä¸è¦æ±æ°æ®åºå·²å¯ç¨flashback databaseï¼å¯ä¸åæå ³é®çè¦æ±æ¯create or replaceæ¶éå½SQLå é¤source$æ°æ®åå ¸åºç¡è¡¨ç¸å ³çundo dataï¼ä¸è¦å 为æ¶é´è¿ä¹ è被éç¨ï¼
ããå¦ææ æ³æ¾åºåå¤çscnä½ä¸ºflashback queryéªååç¹ï¼é£ä¹å¯ä»¥å°è¯ä½¿ç¨as of timestampå¤æ¬¡æå®ä¸åçæ¶é´ç¹ï¼ä¸è¬åªè¦PL/SQL对象被è¦ççæ¶é´ä¸è¦å¤ªä¹ ä¸å®ä¾å¯¹undoç并åäºå¡éæ±è¾ä½æ¶ï¼é½å¯ä»¥éè¿ä»¥ä¸æ¹æ³æ¾å被replace/drop è¦çæå é¤çPL/SQL对象ã
ããæ¹æ¡2 å©ç¨logmineræ¾åºreplace/drop PL/SQL对象çéå½SQL主è¦æ¯DELETEè¯å¥ï¼å©ç¨logminerçUNDO SQLæ¥æ¾åPL/SQL对象çå®ä¹ã
ãã该æ¹æ¡çåææ¯å¯ç¨äºå½æ¡£ä¸ç¸å ³çarchivelogæªè¢«å é¤ï¼æ°æ®åºæ好æ¯å¯ç¨äºæå°è¿½å æ¥å¿ minimal supplemental loggingï¼å¦åå¯è½åºç°ææåºçUnsupported SQLREDOçæ åµï¼
ããcreate or replaceæ¿æ¢ ä¸ä¸ª procedureåå¨è¿ç¨çéå½SQLå æ¬ä»¥ä¸è¿äºï¼ 主è¦æ¯å é¤åprocedureå¨æ°æ®åå ¸ä¸çè®°å½å¹¶æå ¥æ°çè®°å½ï¼ source$åå ¸åºè¡¨æ¯æ¾ååå¨è¿ç¨çéç¹ï¼
ããå¯ä»¥å©ç¨ logminerè·å¾çUNDO SQLæ¿æ¢å ¶ä¸ç表åsource$为临æ¶è¡¨ï¼å°DELETEçæ°æ®æå ¥å°è¿å¼ 临æ¶è¡¨ä¸ï¼ä¹åæ¥è¯¢SOURCEå段就å¯ä»¥è·å¾è¢«è¦çåçPL/SQL对象çDDLå®ä¹ã