ORACLEÎﻯÊÓͼ Query RewriteµÄÒ»°ãÀí½âÖ®Îå
¶ÔÓÚÒ»¸ö¸ø¶¨µÄSQL, ºÍÏÖÓеÄMVIEW, Õâ¸öSQL¿ÉÄܱ»Rewrite, Ò²¿ÉÄܲ»Äܱ»Rewrite, ÈçºÎÕÒ³öÕâÆäÖеÄÔÒòÄØ, ¿¿¾Ñé¿ÉÒÔ½â¾öһЩÎÊÌâ, ²»¹ýËù»¨µÄʱ¼ä¾ÍÒª³¤Ò»µãÁË. ÆäʵÔÚOracleÖÐÌṩÁËÒ»¸öº¯Êý¿ÉÒÔÓÃÓÚ½âÊÍΪʲôij¸öSQL²»Äܱ»ÖØÐ´, Õâ¸ö¹ý³ÌλÓÚdbms_mviewÕâ¸ö°üÖÐ, ¹ý³ÌÃûΪexplain_rewrite, ÓÐÁËÕâ¸ö¹¤¾ß, ¿ÉÒÔ¿ìËÙµØÕÒ³öΪʲô²»Äܱ»ÖØÐ´, ҪʹÓÃÕâ¸ö¹ý³Ì, ÄãÐèÒªÊÂÏÈ´´½¨Ò»¸ö±íREWRITE_TABLE, ¿ÉÒÔͨ¹ý@?/rdbms/admin/utlxrw.sqlÀ´´´½¨.
CREATE TABLE REWRITE_TABLE
(
statement_id VARCHAR2(30), -- id for the query
mv_owner VARCHAR2(30), -- owner of the MV
mv_name VARCHAR2(30), -- name of the MV
sequence INTEGER, -- sequence no of the error msg
query VARCHAR2(2000),-- user query
message VARCHAR2(512), -- EXPLAIN_REWRITE error msg
pass VARCHAR2(3), -- rewrite pass no
flags INTEGER, -- associated flags
reserved1 INTEGER, -- currently not used
reserved2 VARCHAR2(10) -- currently not used
)
ÓÐÁËÕâ¸
Ïà¹ØÎĵµ£º
Ò»¡¢³£ÓÃÓï·¨ --1. ɾ³ý±íʱ¼¶ÁªÉ¾³ýÔ¼Êø
drop table ±íÃû cascade constraint
--2. µ±¸¸±íÖеÄÄÚÈݱ»É¾³ýºó£¬×Ó±íÖеÄÄÚÈÝÒ²±»É¾³ý
on delete casecade
--3. ÏÔʾ±íµÄ½á¹¹
desc ±íÃû
--4. ´´½¨ÐµÄÓû§
create user [username] identified by [password]
--5. ¸øÓû§·ÖÅäȨÏÞ
grant ȨÏÞ1¡¢È¨ÏÞ2...to Óû§ ......
¡¡
¡¡
DML Data manipulation language
SELECT
SELECT [DISTINCT] *|ÁÐxx [AS] "±ðÃûxx"[,ÁÐxx "±ðÃûxx"...]
×Ö·û´®Á¬½Ó·û ||, ×Ö·û»òÈÕÆÚÀàÐ͵Ä×Ö·û´®Óõ¥ÒýºÅ’’, ÁбðÃûÓÃË«ÒýºÅ“”¡£Èç¹û±ðÃûÖÐÓпոñ¡¢ÌØÊâ×Ö·û»òÕßÒªÇóÇø·Ö´óСд£¬±ØÐëÓÃË«ÒýºÅ¡£Ä¬ÈÏÇé¿öÏÂÁбêÌâΪ´óд£¬ ......
µ±LGWR´¦ÓÚ¿ÕÏÐ״̬ʱ£¬ËüÒÀÀµÓÚrdbms rpc messageµÈ´ýʼþ£¬´¦ÓÚÐÝÃß״̬£¬Ö±µ½ÈýÃëʱ¼äµ½£¬Èç¹ûÕâ¸öʱºòLGWR·¢ÏÖÓÐRedoÐÅÏ¢ÐèҪд³öµÄ»°£¬ÄÇôLGWR½«Ö´ÐÐдµÄ²Ù×÷£¬log file parallel writeµÈ´ýʼþ½«»á³öÏÖ¡£
¡¡¡¡×ܽáÒ»ÏÂRedoдµÄ´¥·¢Ìõ¼þ£º
¡¡¡¡1£¬Ã¿ÈýÃëÖÓ³¬Ê±(timeout)£º
µ±LGWR´¦ÓÚ¿ÕÏÐ״̬ʱ£¬ËüÒÀÀµÓÚrdbms r ......
oracleµÄÕýÔò±í´ïʽ(regular expression)¼òµ¥½éÉÜ
Ŀǰ£¬ÕýÔò±í´ïʽÒѾÔںܶàÈí¼þÖеõ½¹ã·ºµÄÓ¦Ó㬰üÀ¨*nix£¨Linux, UnixµÈ£©£¬HPµÈ²Ù×÷ϵͳ£¬PHP£¬C#£¬JavaµÈ¿ª·¢»·¾³¡£
Oracle 10gÕýÔò±í´ïʽÌá¸ßÁËSQLÁé»îÐÔ¡£ÓÐЧµÄ½â¾öÁËÊý¾ÝÓÐЧÐÔ£¬ ÖØ¸´´ÊµÄ±æÈÏ, Î޹صĿհ׼ì²â£¬»òÕß·Ö½â¶à¸öÕýÔò×é³É
µÄ×Ö·û´®µÈÎÊÌâ¡£
Orac ......