SlideShare a Scribd company logo
1 of 21
Download to read offline
Oracle9i ʵÌ廯Óͼ
  Oracle °×ƤÊé
2001 Äê           5 ÔÂ
Oracle9i ʵÌ廯Óͼ




ִиŠ                                                                                                                                                      Ҫ ............................................................................................................. 3
¼ò½é                                                                                                                                                    ...................................................................................................................... 3
ΪºÊ¹                                                                                                                                                         ÓøŠ                                                             Òª¹Ü                                                                                                    Àí .......................................................................................... 4
¸ÅÒª¹Ü                                                                                                                                                             Àí×é                                                              ¼þ .................................................................................................... 4
         ģʽÐè                                                                                                                                                                                                                             Çó ......................................................................................5
ά¶È                                                                                                                                                    ...................................................................................................................... 5
                ¶¨Òåά                                                                                                                                                                                                                        ¶ÈµÄ                                                                                             Ïà¹Ø                                                                                       Ìáʾ                                                                    ..................................................................6
ʵÌ廯                                                                                                                                                                  ÊÓͼ                                                                                                                                                  ........................................................................................................ 7
                       ´½¨Êµ                                                                                                                                                                                                                       Ì廯                                                                                             ÊÓͼ                                                                                                                           ..........................................................................8
                             ʹÓÃ×Ô                                                                                                                                                                                                                     ¼ºÔ¤                                                                                             ÏȽ¨                                                                                  Á¢µÄ                                        ʵÌå                          »¯ÊÓͼ                      ..............................................9
                                    ʵÌ廯                                                                                                                                                                                                                   ÊÓͼ                                                                                             µÄË÷                                                                                  ÒýÑ¡                                        Ôñ ..............................................................9
                                           ʵÌ廯                                                                                                                                                                                                                 ÊÓͼ                                                                                             ¿ÉÒÔ                                                                                  Íê³É                                     ÄЩ                           ¹¤×÷£¿               ..............................................9
                                                  ʵÌ廯                                                                                                                                                                                                               ÊÓͼ                                                                                             ʧР                                                                                                       ........................................................................10
                                                         °²È«º¬                                                                                                                                                                                                             Òå ....................................................................................10
¼ÓÔØºÍ                                                                                                                                                                       ˢР                                                     ʵÌå                                                                                               »¯ÊÓ                                                                                          ͼ ...............................................................................11
                                                                ÍêÈ«Ë¢                                                                                                                                                                                                        Р.................................................................................... 11
                                                                       ¿ìËÙ¢                                                                                                                                                                                                    Р....................................................................................12
                                                                             Ë¢ÐÂºÍ                                                                                                                                                                                               Ô¼Êø                                                                                      Ìõ¼þ                                                                                                   ........................................................................12
                                                                                    Êý¾Ý¿É                                                                                                                                                                                             ÓÃÐÔ                                                                                                                                   ................................................................................13
                                                                                           ·ÖÇøά                                                                                                                                                                                           »¤²Ù                                                                                 ×÷ºÍ                                                                         ʵÌå                                    »¯ÊÓ                             ͼ ....................................................13
²éѯÖØ                                                                                                                                                                            д ...........................................................................................................13
                                                                                                  ÆôÓà                                                                                 /½ÃÓû                                                                                                                                       ¯Ñé²                                                                                            ´ÐØÖ                                                 ...................................................................14
                                                                                                       ²éѯÖØ                                                                                                                                                                                    дµÄ                                                                                 ÀàÐÍ                                                                                         ........................................................................14
                                                                                                                                                                                       ÍêÈ«Æ¥                                                                                                                                                                                                               Åä ............................................................................14
                                                                                                                                                                                              ¸ÅÒªÁ                                                                                                                                                                                                           ½Ó·µ                                                          »Ø ....................................................................15
                                                                                                                                                                                                    ¸ÅÒª»ã                                                                                                                                                                                                         ×Ü»ò                                                       ¾ÛºÏ                           ËùÓÐ                        ........................................................15
                                                                                                                                                                                                           Êý¾Ý×Ó                                                                                                                                                                                                       ¼¯ ............................................................................15
                                                                                                              ²éѯÖØ                                                                                                                                                                                  дÍê                                                                                 ÕûÐÔ                                                                    ·½Ê                                            ................................................................16
                                                                                                                     ½á¹ûÊÇ                                                                                                                                                                                ·ñÕý                                                                                 È· ............................................................................17
                                                                                                                            ½âÊÍÖØ                                                                                                                                                                              д ....................................................................................17
¸ÅÒª¹Ë                                                                                                                                                                              ÎÊ ...........................................................................................................18
                                                                                                                                   Ìṩ¸º                                                                                                                                                                         ÔØ ....................................................................................18
                                                                                                                                          ÍƼöʵ                                                                                                                                                                    Ì廯                                                                          ÊÓͼ                                                                             ........................................................................19
                                                                                                                                                                                                                  ʵÏÖÍÆ                                                                                                                                                                                                  ¼ö ............................................................................19
                                                                                                                                                                                                                         ¹ýÂ˸º                                                                                                                                                                                             ÔØ ............................................................................20
                                                                                                                                                 ¹À¼Æʵ                                                                                                                                                                  Ì廯                                                                          ÊÓͼ                                                            µÄ´ó                                С ............................................................20
½áÂÛ                                                                                                                                                    ....................................................................................................................20




                                                                                                                                                                                                                                                                                                                                                                                                Oracle9i ʵÌ廯ÊÓͼ                                                                                                                             µÚ                    2 Ò³
Oracle9i ʵÌ廯Óͼ




                                                                                                                                      Ö´Ð ¸ÅÒª

ñ½ ìÌ Äµ ýÊ ¬£â¿Ý¾                                                                                                                                                                                                                                         ÛÂÞÎ                        ݾýÊÇ                                    Ö² â¿ ¢¡ ýÊ ÐÖݾ                                                         ¹»ÄÐ              ÇÊ    OLTP ϵͳ                                              £¬ ¶¼
  °üº¬´óÁ¿µÄÐÅÏ¢ÈýËÃÇ¥·ÖÍÀí½â¡£»¶øçÎÒԼʱ
                                          µÄ·½Ê²éÕҺͱí¾âЩÅϢǻ¸öÖØ´óÎÌ£¬ÓÈÆäèªËÑ
                                                                                   Ë÷ÅÓ´óÊýÁ¿ÐÏ¢µÄ±ºò¡£
                 ʵÌ廯ÓͼÄܹ°ïÖú½â¾öոΣ¬ÒòªËüá©Á¿ìÙ·Ã
                                                                                                                                      ºÍ±¨¸æÊý¾ÝµÄ·½¡£


                                                                                                                                      ¼ò½é

ʵÌ廯Óͼ×ÏÈÔÚ                                                                                                                                                                                                                                                         Oracle8i ÖÐÒýÈ룬ÊdzÆΪ¡°¸Å¹ÜÀí±µÄ×é¼þ
                                                                                                                                      µÄÒ»²¿·Ö¡£ÉÜú¹«Ë¾Ñ-ÔÚÊÓÃÌå¯Í¼¬ªÀü
                                                                                                                                      ÆäËûÃ×Ö£¬ÀýÈç¸ÅÒª»ò¾ÛºÏ±í¡ÔÚÕâïÎÇÌ´½¨Í¹Ü
                                                                                                                                      ʵÌ廯                                                              ÊÓͼ                         £¬ »¹ ÌÖÂÛ                        ²éѯ                          ÖØд¹¦                          ÄÜÈç                                 ºÎ͸                  Ã÷µØ              ÖØд                     SQL ¯Ñé²                                   ¬£ Ó´
                                                                                                                                      ¶øʹÓõÌ廯ͼÀ´Ëõ²éÑÏ즱䡣Õ⽫ý¾Ý¿§êÈ
                                                                                                                                      ÎÞÐèÖªµÀ´æÔÚÄ©ÊÌ廯Óͼ¡£
                 ʵÌ廯Óͼ¦¿´×÷ÇÒÖØâÄ£¬ËüÎïÀíÉÏæÔÚý¾Ý
                                                          ¿² ¬£ ÔÒÉ¿                                                                                                                                              ¨Àü°                      Ó½ªÁ                  ͺ                           /»ò¾Û                     ºÏ¡£        Ëü ÄÜ                                ¹» ÔÚ                  Ö´ Ð             Ö® Ç°          Ô¤ ÏȼÆËã                           ¿ªÏú                               ´ó
                                                           µÄÁª½ÓºÍ¾ÛϲÙ×÷£¬Òò´ËüæÔÚõ¶ÌéѯÖÐʱ¼ä¡
½ñÌ죬                                                                                                                                                                                             ʹÓà                         ×ÔÉí                ¸ÅÒª                        µÄ¹«                            ˾»¨·Ñ                               ÁË´ó                          Á¿µÄ                    ʱ¼ä            ÓÃÚ       ÊÖ¹¤´              ½¨¸Å                              Òª¡¢
                                                                                               ʶ±ð½«´¨ÄЩ¸ÅÒª¡¢ÔøË÷ýºÍü£¬¼°éÓû§¹
                                                                                               ÓÃÄЩ¸ÅÒª¡£
ÏÖÔÚ                                                                                                                                                                                          DBA ½«öÐëÔÚ¿ªÊ¼±´¨µÌ廯ÓÍ£¬¶øÎÞÂÛý¾Ýº
                                                                                               ·¢Éú±ä»¯£¬Ëü¶¼½«×ԸС´Íâ¹ÓÒöŪÎÊéþ
                                                                                               Ïò                                                                                 DBA ÍƼö´½¨¡¢É¾³ýº±£ÁôÄЩʵÌ廯Ó
                                                                                               Êý¾Ý²Ö¿â»òÓ罫ÉÒÔÌåáµ¹¯Í¼Ä×î´óº¦
                                                                                               Ö®Ò»                                                                                     £¬ DBA ÎÞ Ðë ÔÙ ¸æ Ëß Ëû ÃÇ´æÔÚ                                                                                                                                             ÄЩ                   ʵÌå                »¯ÊÓ      ͼ ¡£ ËûÃÇ¿É                           ÒÔ¶                                 Êý
                                                                                               ¾Ý¿âÖÐ                                                                                           µÄ±í      »òÊÓ    ͼ±à  д×Ô      ¼ºµÄ²é                                                                                                                    ѯ¡£                   È» ºó                      Oracle ·þ ÎñÆ÷µÄ                                              ²éѯ                             ÖØ
                                                          д»úÖÆ                                                                                                                           ½«×Ô      ¶¯ÖØ      д      SQL ²éѯÒÔ                                                                                                             ʹÓà                                   ʵÌå                »¯ÊÓ      ͼ¡£    Õâ Ñù¾Í´ó                                        ´óËõ                             ¶Ì
                                                          Á˲éѯÏìӦʱ¼ä£¬Öնû§ÎÞÐë¡°½â¸ÅÒª




                                                                                                                                                                                                                                                                                                                                                                                                                  Oracle9i ʵÌ廯ÊÓͼ                                              µÚ            3 Ò³
µ±ÏòÊý¾Ý²Ö¿âÕ¶ËÓû§ÎÆðûǣʹÐñ¬ó·È¼
                                             »áش𣺿ìËÙ׼ȷµÄÐÅÏ¢¡«ÊÇÕâÒ²¸øý¾ÝÖÉèÆß³öÁó
                                             ÄÑÌ⣺ΪÁ˻شð¡°ÔÚ                                                                                                                                             y µØãÎÒÃÇÂô³ö¶àÉÙ¼þ                                                                                                                                   x ²úÆ·¡±£¬ÍÊÏ
                                             Íû±ÜÃâ¶ÁÈ¡íÖеĿһ£¬Ø뽨¢ÌõÊý¾ÝìËÙ·ÓÉ
                                             ½â¾ö´ËÎÊÌ×î³£¼ûµÄ°ì·¨Ö®Ò»ÍǸŪ±í¬                                                                                                                                                                                                                                                                                                    Oracle ½«Æä³Îª
                                             ʵÌ廯Óͼ¡£ÕâÒ¹¤×÷°üÀ¨ÏȪí½äиºÉ¬ó´æÄ
                                             ·Ç³£Ð¡                                            µÄÊ                                                          Ì廯               ÊÓͼ                      £¬ ʵ Ì廯ÊÓ                                             ͼÖÐ                            ¿ÉÒÔ                       °üº¬                          ËùÐè                                    ÐÅÏ¢µÄ            Áª½Ó           ºÍ          /
                                             »ò¾ÛºÏ¡£ÀýÈç¬ÎªÁËØ´ðÇ°ÃæµÄÊÌâå¯ÓͼÖп²úÆ·¶Ô
¦Ó ÚÓ ¬£Ð »Ò                                                                                                                                            ÷Ã¸Ö   ö¸¿Ã  ĵòÓøÇ                                                               úÏ £¡¿ÁÛÊ                                               Ë´òÒ                       û¹çÈ                        «¹Ò¼»                                              ¾Ë ÚÔ 5 صö¸
                    µãÏúÊÛ                                                                                                                           2000 ¼þ ²ú Æ· £¬ Ôò ½«Òª¶Á                                                                            È¡µÄ                            ×î´ó                        ÐÊý                        ʼÖÕ                                        Ϊ              10000£¬¶ø  ÎÞ
 ÂÛÒѾ-ʳö¶àÉÙÌÆ·¡£
ºÜÃ÷ÏÔ£¬ÊµÌ廯Óͼ±ØÐëÖ¤¾«È·¸õÒâζ×ÅÕ˧
ÔÚÐèÒª¶ÁÈ¡µÄÊýºÜÉÙ£¬ò´Ë¿¼ÖÕìؽÓá¹û¾Ýâ
ÈÝÁ¿ÒѾ-Ôö³¤µ½Õ×ÖÚ£¬ò´ËʹÓÃâùÄ·¨Àõ¶Ì²é¯Ïì¦
ʱ¼ä¾ÍÏԵýÀ´ÖØÒª¡£ñÌìÐí¶àÕã¨ÁË׺ĸŬ
Òò´ËʹÓà                                                                                                                                                Oracle8 ¸ÅÒª¹ÜÀíËù´øµÄ¶îÍâºÃ¦ÊÇ£
                                                                                           •         Oracle ÖÐµÄ                                                                                  ²éѯ                             ÖØд             »úÖÆ                          ÊÇ͸Ã÷                        µÄ²¢                       ²ÉÓà                                        ʵÌå                   »¯ÊÓ          ͼ £¨          ¼´
                                                                                                     ʹËü½öÄܲ¿·ÖÂú×ãéѯµÐèÒª£©¡
                                                                                           •


                                                                                           •
                                                                                                     ÊÓͼ¡£
                                                                                           •                                       DBA ²»ÔÙÐèÒª¨Ê±¼äéÕÓ¦´½Ä©µÌå¯Í¡£Ï³
                                                                                                                                   ½«»ùÓÚ                               ¹ýÈ¥               ¶ÔÊý                             ¾Ý¿â             »òÊý                        ¾Ý²Ö¿â                          µÄ²é                       ѯ£¬                                          Ïò                        DBA ÌṩÓÐ
                                                                                                                                   ¹ØÐèҪĩ¸ÅµÏ¢¡£


                                             ¸ÅÒª¹ÜÀí×é¼þ

                                             ×é³É¸ÅÒª¹ÜÀíµÄÓÐÎåö¼þ£º
                                             •
                                             •
                                             •
                                             •
                                             •
                                             ²¢»ÐèҪʹÓÃËù×é¼þ£¬µ«Ñ¡ÄÔ½¶àñÅƾÍ
                                             ¶à¡£ÏÖÔÚÎÒÃǽ«ê¸ÌÕâЩ×é¼þ




                                                                                                                                                                                                                                                                                                                                    Oracle9i ʵÌ廯ÊÓͼ                                                                       µÚ         4 Ò³
ÓÃÚʵÌ廯ͼģ½ÀàÐòÉèƲ´ÏÞÖ¡ÒËÔý¾Ý
¿â»·¾³ÖУ¬ÄʽÉÒÔÇÑ©»¨Ê½µÄÉè¼Æ£¬«ÕⲢDZØÐë¡
¶ÔÓÚÊìϤ²úÆ·µÍ³ÖÐý¾Ý¿âÉè¼õÄÕßÀ´Ë£¬Ò»¸ö
²Ö¿âбØëʹÓûͬµÄæÔòº¼õ¡£ÀýÈçúÆ·¾Ý¨³Ç
·¶»¯µÄ£¬Òò´ËÔÚÕâÖÇé¿öÏÂʱ¼äÎí¾½¨×îºÃ²ÉÓÈý¸
±í£º                                                                                                                                        ÈÕ¡¢ÔÂÄê                                               ¡£Áª½ÓÌõ¼þ¦¸ÃÂú×㺫¿ö                                                                                                                              ÈÕÆÚ                    ÐÁ¬½ÓµÒ»¸ö
£¨½öÒ»¸©                                                                                                                                                                      ÔÂ·Ý                 У¬Ã¿¸ö                                                                                     ÔÂ·Ý           ÐÁ¬½ÓµÒ»¸ö£¨©                                                                              Äê·Ý         С£
                                             Êý¾Ý²Ö¿âµÏͨ³£½«¼ÂÒ»¸öêÈ·Ç¹æ¶¯Ä                                                                                                                                                                                                                                                                                           ʱ¼ä                ά±í£ÆäÖÐ
ÈÕÆÚ¡¢Ô·ÝÄê                                                                                                                                                                                                               À¸¶¼´¦ÓÚͬһö±íÖС£²¹ýÎÞÂÛÉèÆÊõÄ
Êǹ淶»¯±í£¬¼¿ÉÒÔÓõÌåÍ¡


ά¶È

ÔÚ´½¨                                                                                                                                                    Ò»¸ö          ʵÌå                 »¯ÊÓ                                                                       ͼ֮             Ç°£¬                 µÚ Ò» ²½ Ó¦ ¸Ã ÊÇ »Ø ¹Ë                                  Ä£ ʽ £¬ Ö¸ Ã÷ά                                      ¶È¡£
ά¶È¨                                                                                                                                                    ÒåÁË          ÁÐÖ®                 ¼äµÄ                                                                       ²ã´Î             »¯ £¨                  ¸ ¼¶ /×Ó ¼¶ £© ¹Øϵ£¬                                    Ëù ÓеÄÁ       ÎÞÐë                                          À´
×Ôͬһ¸ö±í¡£ÎÃÇ¿ÁƼ¶¨åÊý¾ÝµÄÈòªÕ⽫ÓÐÖúÚ²é
ѯÖØдºÍ¸ÅÒª¹ËÎÊ×ö³ü¼¾²ß¡£
Êý¾Ý¿âÉè¼ÆÕßËùÃæÁÙµÄíÒ»¸öÎÌÇ£¬·±²éѯ½«áÖÓ°
ËùÓеÄά¶ÈÁ£ø½ö²¿¼ëÏà¹ØÇÒ»Àýçéѯ
ÐÇÆÚ¶þø²»Ê¾ßÌåÈÕ¡£Òò´Ëµ±¨Áά֮ºó¹ØëÃèö
¶ÈÁкͱíÖÆäËü®¼µÄ¹ØÏ¡£
ͼ                                                                                                                                       1 ¾ÊÔÏ                 ü°ËÁ                 ½Á¬º                                                                       ã²ö¸             ĵδ                    ±Ê £¡¬Îä¼            »ÒÓ´         ¸Öö               ÚÆÕȨ¶                                    ª¿ ¼Ê ¬£ ÐÓ »Ò
¸ö²ã´ÎæËßÒÃÇÈÕÆÚɼ°ÄЩþÖÜ¡¢Ô»ò꣬¶øÁí
¶¨ÒåÁËÈÕ¡¢Ô¼¾ºÍÄê֮䵹ØÏ£
µ±¶¨ÒåÁË»¸ö²ã´ÎÖ®ºó£¬¿ÉÔàÐÀÃèÊýÈç
Èç¹û                                                                                                                                                   City ÔÚÿ¸ö                                                                                             State Ö®ÄÚÊÇΨһµ£¬«Ô                                                                                     States Ö®¼ä²»Î¨
                                                                               Ò»£¬ÄÇô¾ÍÐèªÖ¸¶¨öµØÀí²ãÎÆäʽÈç                                                                                                                                                                                                                                                        £¨ Country, State,
<State, City£©¬´Ó¶øÂú×ã                                                                                                                                                                                                                                                                               City ¼¶µ½               State ¼¶Ö®äÑϸñµÄ                                                                 1:n ²ã
                                                                                                                 ´Î¹Øϵ¡£
                                                                                                                 ¿ÉÒÔʹÓÃÁ½Ö·¨À´Î¬¶È£º
                                                                                                                 •                          SQL CREATE DIMENSION Óï¾ä£¬Èçͼ                                                                                                                                                                           2 Ëùʾ
•                                                                                                                                           Oracle ÆóÒµ¹ÜÀí÷ÖÐÄά¶ÈÏò¼




                                                                                                                                                                                                                                                                                                                                                  Oracle9i ʵÌ廯ÊÓͼ                                            µÚ                5 Ò³
1 ½éÉÜʱ¼äά
                                                                                                                                                                                                                                 °´Õͼ                                                      1 ö³-»                                                        ¬£È¶ Î                        ÔÒÉ¿
                                                                                                                                                                                                                                 °ïÖú                                                      DBA Íê³É¶¨Òå¹ý
                                                                                                                                                                                                                                 ³Ì¡£Ã¿¸öԲȦ´ú±íά¶ÖÐ
                                                                                                                                                                                                                                 µÄÒ»¸ö                                                                ¼¶±ð                         ¹ý                                    LEVEL
                                                                                                                                                                                                          ×Ó¾äÀ´ÉùÃ÷¡£Î¬    ²ã´Îͨ                                                                                                                                                                ¹ý
                                                                                                                                                                                                          HERARCHY ×Ó¾äÀ´Éù
                                                                                                                                                                                                          Ã÷¡£¸ÅÒª¹ÜÀí²Í¬Ñùµ
                                                                                                                                                                                                          ÓÚ                                                                  DBA ¶¨ÒåÔ¼ÊøÌõþ£¬
                                                                                                                                                                                                          ±£Ö¤²ã´Î¼¶ðÐÿһ
                                                                                                                                                                                                          µÄÁзǿա£
                                                                                                                                                                                                          ÔÚͼ                                                                             2 ¬£ÐÖ                                        ÇÃÒÎ                              ÔÒÉ¿  ½µ´¿
                                                                                                                                                                                                          ´½¨¸Ãά¶ÈµÄ                                                                                                                                                     SQL Óï
                                                                                                                                                                                                          ¾ä¡£¼¶±ðÃû³ÆÔÓ¦Úάí
                                                                                                                                                                                                          ÖеÄÁ¡£È»ºóʹÓÃÕ⩼¶
                                                                                                                                                                                                          ±ðÃû³ÆÀ´èÊö¿Ò»²ãΡ£
                                                                                                                                                                                                          ×îºó                                                                   £¬ ʹ Óà                                                       ATTRIBUTE
                                                                                                                                                   ×Ó¾äÀ´¶¨ÒåßÐÖ±½¹Øϵ
                               µÄÏî¿                                                       ¡£Òò             ´ËÊô            ÐÔ   calendar_month_name ¶¼ëÓ                                                                                                                                         ð±                        month ÐÓ £¡µÏع
                               ʹÓà                                                      JOIN KEY ×Ó¾äÀ´ÉùÃ÷ά¶ÈÖÐµÄ                                                                          1:n Áª½Ó¹Øϵ¡£ÔÚʱí
                               ºÍά±íÖ®¼ä£Ê¹ÓõÐÄ                                                                                                                                      FOREIGN KEY ºÍ                                                                                                                                          NOT NULL
                               Ô¼ÊøÌõþÀ´±í¾ÕâÖÁª½Ó¹Øϵ¡£


¶¨Òåά ȵÄÏà¹ØÌáʾ
Ϊ°ïÖú´½¨¬¶È£ÇëÕÏÂÃæµÄ¼ò¥²èº
1. Ö¸Ã÷Ä£                                                                                            ʽÖÐ            µÄËù               ÓÐά           ¶ÈºÍ                  ά±í¡£               Èç¹û                                                   ά¶È                       ÊÇ¹æ                                    ·¶»¯                    ¼´ Ëü ´æ       µÄ£¬
                                                             ´¢ÔÚ¶à                                  ¸ö±í            ÖУ¬        ÄÇô           Çë¼ì                ²éά±í                        Ö®¼ä                                                   µÄÁª                       ½Ó£¬                             È·±£                        ÿ¸ö×Ó  ¼¶ Ð
                                                             Áª½Óµ                                   Ò»¸ö           £¨ ½ö               Ò» ¸ö          £© ¸ ¼¶Ð                              ¡£ ¶Ô ÓÚ·Ç                                                                ¹æ·¶                                   »¯Î¬                      ¶È £¬ Çë ¼ì ²é ×Ó
                                                             ¼¶ÁÐÊÇ                                  ·ñΨ             һȷ                ¶¨¸            ¼¶£¨   »òÊôÐÔ                            £©ÁÐ                                                          ¡£Èç                       ¹û²»                                    ×ñÊØ      ÕâЩ¹æ        Ôò £¬
                                                             ¿ÉÄÜ»áÔÚ²éѯʱµÃ½´íÎó¹û¡£
2. Ö¸Ã÷¿                                                                                           һά          ¶ÈÖÐ                   µÄ²ã           ´Î¡£      ÀýÈ磬                           day ÊÇ month µÄ ×Ó ¼¶ £¨ÎÒ                                                                                                                                                               ÃÇ¿É
                                                             ÒÔ½«                                 day ¼¶±ð¾ÛºÏµ½                                              month£©£¬                           quarter ÊÇ year µÄ×Ó¼¶¡£
3. Ö¸Ã÷²ã´Îпһ¼¶±ðµÄÊôÔÀ¹ØÏ¡£ýÈç¬
                                                             calendar_month_name ÊÇ                                                                                                   month µÄÊôÐÔ¡£
4. Ö¸Ã÷Êý¾Ý²¿âÐöµ±í½Î¬¶È®¼äÄÁªÓ£ìé
   Ó½ ¬£ ·È £± ¿Ã ö¸ ÂÊ µÊ Ð ½µÓ ªÁ                                                                                                            »Ò ö¸ ö½¨£             ©£ö¸»Ò                              ȶ¬Î              £¡Ð    ëÐر                                                                                                                                                  ÷ÃùÉ
                                    ¸ÃÌõ¼þ                                                    £¬ ¶ø ÇÒ»¹       ¿ÉÒÔ     Ñ¡Ôñ      ÊÇ·ñ¿                 ÖÆ´                иà             Ìõ¼þ                     £¬ Æä ·½¨ÊÇ                                                                                                                                                             Ïò ÊÂ
                                           ʵ¹Ø¼üÁÐÌíÓ                                                        FOREIGN KEY ºÍ NOT NULL Ô¼ÊøÌõþ£¬
    Ïò¸¼¶Áª½ÓüÌí                                                                                                        PRIMARY KEY Ô¼ÊøÌõþ¡£¿ÉÒͨ¹ý
                 NOVALIDATE Ñ¡ Ïî À´ Æô ÓÃÕâЩ                                                                                                                   Ô¼Êø               Ìõ¼þ£¬           ´Ó¶ø              ÎÞÐë               »¨·Ñʱ                                                                                                                                                       ¼ä
                                                       À´ÑéÖ¤                                   ±íÖÐ     µÄÿ       һР     ÊÇ·ñ       Âú×ãÕâ              ЩԼ               ÊøÌõ             ¼þ¡£           ¶ÔÓÚ             Ëù ÓÐδµÃ                                                                                                                                                              µ½
                                                              ÑéÖ¤µÄÔ¼ÊøÌõþ£¬»¹ÐèҪ                                                                 RELY ×Ó¾äÀ´Ê¹ÆÄÜ»ÃÚ²é
                                                                                     ѯÖØд¡£


                                                                                                                                                                                                                                                                                   Oracle9i ʵÌ廯ÊÓͼ                                                                             µÚ             6 Ò³
2 ´ ½¨Ê±¼äάµÄ                                   SQL Óï¾ä
CREATE DIMENSION times_dim
LEVEL day IS TIMES.TIME_ID
LEVEL month IS TIMES.CALENDAR_MONTH_DESC
LEVEL quarter IS TIMES.CALENDAR_QUARTER_DESC
LEVEL year IS TIMES.CALENDAR_YEAR
LEVEL fis_week IS TIMES.WEEK_ENDING_DAY
LEVEL fis_month IS TIMES.FISCAL_MONTH_DESC
LEVEL fis_quarter IS TIMES.FISCAL_QUARTER_DESC
LEVEL fis_year IS TIMES.FISCAL_YEAR
HIERARCHY cal_rollup
( day CHILD OF
month CHILD OF
quarter CHILD OF
year )
HIERARCHY fis_rollup
( day CHILD OF
fis_week CHILD OF
fis_month CHILD OF
fis_quarter CHILD OF
fis_year )
ATTRIBUTE day DETERMINES
(day_number_in_week, day_name, day_number_in_month,
calendar_week_number)
ATTRIBUTE month DETERMINES
                                      Oracle9i ʵÌ廯ÊÓͼ                           µÚ   8Ò³
(calendar_month_desc, calendar_month_number,
calendar_month_name, days_in_cal_month,
end_of_cal_month)
ATTRIBUTE quarter DETERMINES
(calendar_quarter_desc,calendar_quarter_number,
days_in_cal_quarter, end_of_cal_quarter)
ATTRIBUTE year DETERMINES
(calendar_year, days_in_cal_year, end_of_cal_year)
ATTRIBUTE fis_week DETERMINES
(week_ending_day, fiscal_week_number) ;



ʵÌ廯 Óͼ

Ò»µ©¶¨ÒåÁËάȣ¾Í¿ÉÔ´½ÊµÌ»¯Ó¼¡ÏÖÚÃÇ«×ÅØéÜ
ʲôǵÌ廯Óͼ£¬ÔÚºóæÎÒ½«¿¨é¹¦ÄÜÈçÆö
ЩʵÌ廯Óͼ¡£
ʵÌ廯Óͼ                                                      ¶¨Òå¿É°üÀ¾ÛºÏ£¬ýÈç                           SUM MIN¡¢ MAX¡¢ AVG¡¢
COUNT(*)¡¢ COUNT(x)¡¢                                                                                COUNT(DISTINCT)¡¢ VARIANCE »ò
STDDEV, »¹¿ÉÒÔ°üÀ¨¸öò¶àÁª½ÓµÆðıíºÍ
GROUP BY¡£¿ÉÒÔ½øÐË÷ýºÍ·ÖǬ»¹Ó¦Ãù±¾µÄ                                                                                                      DLL ²Ù
×÷£¬ÀýÈç CREATE¡¢ ALTER ºÍ                                                                                 DROP¡£




                                                                                                                    Oracle9i ʵÌ廯ÊÓͼ      µÚ   7 Ò³
•
                                                    •                                                                                                                                                                           SQL ÃÓ¦          òÐ̳                       ¸ÍÇÊ                        ĵ÷à                ¬£ Ë´òÒ    DBA
                                                                                                                 ¿ÉÒÔÚÈκʱò´½¨»¾³ýµÌå¯Óͼ¶ø²°Ïì                                                                                                                                                                               SQL Ó¦Ã
                                                                                                                 ³ÌÐò¡£
•


Ðí¶àÕ¾µã¼ÒÑ-ÓÁËÊýݲֿ⣬¢ÔÚÆä¨å׺ĸŪ¡ò
´Ë¿ÉÒÔͨ¹ý²éѯÖØÐÀ×¢áÏӸŪ£¬¶ø»ÊÇÆÈçÁã¼
ÖØÐÂÉú³¸ÅÒª¡£


                                                    ´ ½¨ÊµÌ廯 Óͼ
                                                    ʹÓà                                        CREATE MATERIALIZED VIEW Óï¾ä                                                                                                                                         ´½¨                        ʵÌå             »¯ÊÓͼ                  ¡£ ͼ 3
                                                    ½éÉÜÁË                                       ÈçºÎ      ´½¨ Ò»¸ö   ÃûΪ         costs_mv µÄÊ                                                                                                         Ì廯                        ÊÓͼ                       £¬ ͨ         ¹ý          time ºÍ
                                                                                           prod_nam À´¼ÆËã          costs µÄ×ܺ͡£
                                           µ±¶¨Òå                                                                                                  ÁËÒ»          ¸öʵ                 Ì廯        ÊÓͼ      Ö®ºó      £¬ ëÐر ØÊñ×  ©Ð»Ò æ¹¥µò¼         £¡òÔ     SELECT
                                                                                           ÁбØë°üº¬ËùÓ                                                                                      GROUP BY ÁУ¬¶ø                       GROUP BY ÁбØëΪ¼òµ¥
ÐÁ £¡ ªÒèÐ                                                                                                                                                Ϻ۾          í±Äµ                 ½Êï´      ÔÒÉ¿      ÇÊ ÎÈ Îº ĵ SQL Öµ±í           ´ï ʽ £¬ ²» °üº¬    ×Ó²é
  ѯ»òÍø×´¾ÛºÏ¹¦ÄÜ¡£
                                                    WHERE ×Ó¾ä                                                                                                                 ½öÔÊ             Ðí°ü       º¬ »ùÁÐÉÏ                µÄÚ   ²¿Í¬                 µÈÁª                        ½ÓÎ                       ´Ê¡£         ʵÌå          »¯ÊÓ
                                                    ͼ¿ÉÒÔÓµÐ׺Ĵ梹·¶£¬ÕâÑù¾Ö¸¨ËüÚö±í
                                                    ¼äÖÐÒÔ°ÆÇøÓòµÄ´ó¡£ú»¹¿É½«·×¾üÀ¨¬±ã
                                                    ʵÌ廯ÓͼÄÚÈÝ´æ¢Ô¶à¸ö±í¿ÕäÖС£
                                                    ±íºÍÊÓ¼¶¿ÉÒÔÃÚµÌ廯ĨÖС£ò´Ë¬²ÎÇ°æÀý
                                                    ×Ó£¬³É±¾¿ÒÔ÷Ϊ»¸öí¶ø²úÆ·Êͼ¡Èç¹û
                                                    ÔÚʹÓà                                                                                                SYSDATE ºÍ                                   USER ÕâÑùµÄ¹¦ÜʱûÓи¾Ý§ä¯
                                                    Êý¾Ý£¬ÄÇôͿÉÒÔ¹ÓÈκ¼¡
                                                    ͼ                                                    3 ´ ½¨ÊµÌ廯 ÓͼµÄ                                                                                      SQL Óï¾ä
                                                    CREATE MATERIALIZED VIEW costs_mv
                                                    PCTFREE 0
                                                    STORAGE (initial 8k next 8k pctincrease 0)
                                                    BUILD IMMEDIATE
                                                    REFRESH FAST ON DEMAND
                                                    ENABLE QUERY REWRITE
                                                    AS
                                                    SELECT time_id, prod_name,
                                                    SUM( unit_cost) AS sum_units,
                                                    COUNT(unit_cost) AS count_units,
                                                    COUNT(*) AS cnt
                                                    FROM costs c, products p
                                                    WHERE c.prod_id = p.prod_id
                                                    GROUP BY time_id, prod_name;




                                                                                                                                                                                                                                                                                   Oracle9i ʵÌ廯ÊÓͼ                                     µÚ          8 Ò³
ÒѾ-ÓµÐÊýݲֿâÄÕãÉÜß±¸ÁËŪºÍ¹³ÌÀ´Î¬»¤
                                          ͼ¡£Òò´Ë¬ûÃÇÏÀÓ²éѯÖØй¦Äܶø»Â½¨¸Åª
                                          ¿ÉÒÔʹÓÃCREATE MATERIALIZED VIEW Óï¾äÒÔ¼°                                                                                                                                                                ON
                                          PREBUILT TABLE ×Ӿ佫ÒÑ-´æÔÚµÄ±í¢²áΪÊÌ廯ͼ¡£
                                          ʵÌ廯ÓͼÄÃû³Æ±ØÐëíÏଣ¹á©èö´
                                          ½¨¸Ã±í                                                                            µÄ²é          ѯµÄ                                   SELECT ×Ó¾ä      ¡£ ¿É ÄÜÎÞ       ·¨Ê¼   ÖÕ±£        Ö¤ ²éѯµÄ      ¾«¶È                  Óë
±íµÄ¾«¶ÈÆ¥Å䡣ΪÁË¿·þ´ÊÌâ¬Ó¦¸ÃÔÚ¹æÖаüº                                                                                                                                                                                                           WITH
REDUCED PRECISION ×Ӿ䡣


                                          ʵÌ廯 ÓͼµÄË÷ÒýÑ¡Ôñ
                                          ¸ù¾ÝʵÌ廯ÓͼÖÐÄý¿ºÇ·ñ½øÔöÁˢ£¬ÉÜèÒª´
                                          ½¨ÊµÌ廯ÓͼÄË÷Òý¡£ò´¬¦¸Ã¿ÂÇ×ÏÈöα¾Ø
                                          Ë÷Òý£¬ÆäÖаüºùÓʵÌ廯ͼ¹Øסû¿ÉÔ
                                          »¯ÊÓͼ¹Øü×ÖÁÐÉϵĥÎË÷Òý¡£
                                          µ±´½¨Ë÷ÒýÊ£¬²»ªÍü¼Ç¿Âøö¶Ôæ¢ÕäÄó°
                                          Ë¢ÐÂʱ¼äµÄÓ°Ïì¡£


                                          ʵÌ廯 Óͼ¿ÉÒÔ ê³ Ä Ð©¹¤×÷£¿
                                          ÔÚ´½¨                                                                             ʵÌå          »¯ÊÓ                   ͼ֮                Ç°»ò   ¸Õ´     ½¨Ê±       £¬ DBA ¿ÉÄÜ            »á ¶ÔʵÌå       »¯ÊÓ                      ͼ
 ²úÉÕâÑùµÄÒÎÊ£ºËü¾¿¹Ü×öôÔìÙ¢ÐÂðÈçû»
Ð ¬£ ²ÊªÎ                                                                                                                          ØÄ´Ã          ¿£ DBMS_MVIEW.EXPLAIN_MVIEW ¹ý³Ì¿É                                                                          ÒÔÌá                    ¹©
                                     ¸ÃÐÅÏ¢¡£
                                                                                   ¿¼ÂÇÎÒÃÔÚÍ                                                     3 Öд½¨µÄÊÌ廯Óͼ£¬Èç¹ûÎÒÃǶɾ³ý
   COUNT£¨ *£©£¬È»ºóµ÷ÓÃͼ                       4 ÖнéÉܵĹý³Ì
 DBMS_MVIEW.EXPLAIN_MVIEW¡£Ëü½«¸æßÎÒÃǬ·Öøıäú
 ×Ù (PCT£© ¿ÉÓã¬ÒòΪ³±¾íÑ-»·ÖÇøËùÐÀà͵IJé¯Ø´
¼¶ ÇÊ É¿ ÜÄ Äµ £¡ »È µÊÚÓÉ ¬£ø¶               åÌ ¯» ÓÊ ¼Í ÐÖ »Ã ÐÓ                                                                                                                                                               COUNT£¨ *£© Ë´òÒ¬£
   DML Ö®ºó¿ìËÙ¢ÐÂÒѾ-²»ÉÄÜÁ¡£
                                                                                                ͼ   4 ½âÊÍ µÌ廯 ÓͼʾÀý
                                          TRUNCATE TABLE mv_capabilities_table;
                                          EXEC DBMS_MVIEW.EXPLAIN_MVIEW (‘ SELECT time_id,
                                                    prod_name,SUM( unit_cost) AS sum_units,
                                                    COUNT(unit_cost) AS count_units, COUNT(*)
                                                    AS cnt FROM costs c, products p
                                                    WHERE c.prod_id = p.prod_id
                                                    GROUP BY time_id, prod_name’);


                                          SELECT capability_name, possible, related_text, msgtxt
                                          FROM mv_capabilities_table;
                                          PCT_TABLE:Y COSTS:
                                          PCT_TABLE:N
                                          PRODUCTS:      relation is not a partitioned table
                                          REFRESH_COMPLETE:Y




                                                                                                                                                                                                                          Oracle9i ʵÌ廯ÊÓͼ                       µÚ   9 Ò³
REFRESH_FAST:Y
                                            REFRESH_FAST_AFTER_ANY_DML:N
                                            see the reason why REFRESH_FAST_AFTER_ONETAB_DML is
                                            disabled
                                            REFRESH_FAST_AFTER_INSERT:Y
                                            REFRESH_FAST_AFTER_ONETAB_DML:N
                                            COUNT(*) is not present in the select list
                                            REFRESH_FAST_PCT:Y
                                            REWRITE:Y
                                            REWRITE_FULL_TEXT_MATCH:Y
                                            REWRITE_GENERAL:Y
                                            REWRITE_PARTIAL_TEXT_MATCH:Y
                                            REWRITE_PCT:Y



                                            ʵÌ廯 ÓͼʧÐ
                                            ʵÌ廯Óͼܽ³ÖÐøà¿Ø£¬È·±Æä°üºÄý¾ÝÇ×
                                            Ì廯ÊÓͼ§ÐµÄ¿Ç±£Ö¤²á·ØÒѾ-ýÝ¡
                                            ÊÓͼËù»ÚµÄ¶ÔÏó¸±ä£¬ü½«êÇΪ§Ð¡
                                            ¿ÉÒÔͨ                                   ¹ý²é   ѯ±í   USER_MVIEWS À´ÅÐ                             ¶¨Êµ              Ì廯            ÊÓͼ           µÄ״̬                               ¡£ Èç¹û
¶ÔʵÌ廯ÓͼÄ×´¬Ð²ÃÒÉΣ¿·¢³ö                                                                                                                                                     ALTER
MATERIALIZED VIEW COMPILE ÃüÁî                                                                                                                         À´È·                ±£ÁË        ½â Æä×îР                         ״̬                     ¡£


°²È«º¬Òå
Êý¾Ý¿âÖеij©ÐÅÏ¢¿ÉÄÜèÒªÞÖÆ·ÃÎÊ£¬²éѯشԱ»Ó
ÖÓØ»°²È«úÆ¡£¶ø¬ÉÚËùеķϼÊÇÔ                                                                                                                                                                              Oracle9i ·þ
ÎñÆ÷ÖнøµÄ£¬ËùÒÔ¿ÉÏòÊý¾ÝºÍÌ廯Ӽṩ¸üÇ´ó±
»¤¡£ ΪÁË                                                                                                                                                          ±ÜÃâ      ¶Ôʵ      Ì廯    ÊÓͼ   »òÏêÇé      ±íµÄ   δÊÚ È¨·Ã ÎÊ £¬ ÃÓ¹Ê CREATE
MATERIALIZED VIEW ʱ½«ÐèÒª                                                                                                                                                                                             CREATE MATERIALIZED
VIEW ȨÏÞ¡¢¶ÔêÇé±íµÄ                                                                                                                                                                                         SELECT WITH GRANT ȨÏÞ¡¢ÒÔ¼°¶
    ʵÌ廯                                                                                                                                                    ÊÓͼ      ÈÝÆ÷      ¶ÔÏó      µÄ      SELECT WITH GRANT ºÍ              INSERT ȨÏÞ ¡£
           ´ËÍ⣬Èç¹ûÓû§ÔÚijÎÇëóÖж±í½ø·ÊÕ©ÒѾ-¨
                                                  ÒåÁË»¸öò¶àʵ̯Óͼ£¬ÄÇô§½«±ÔÐí·Î
                                                                                   ͼ£¬¶ø²»¿ÂǸ³ÓèʵÌå¯ÈÝÆ÷±íĨÏÞ¡Òò´ËÎÛéÑÔ×
                                                                                                                             ºÎ´¦£¬Ö»ÓÐͨ¹ýÁË°²È«¼ìéÅÄÜ·Ãʾݡ




                                                                                                                                                                         Oracle9i ʵÌ廯ÊÓͼ                                     µÚ             10 Ò³
ÔÚÀúÊ·ÉÏ£¬¸ÅÒª±í¹ÓÃý³ÌÖеĻöÎâ¾ÍÇõ¼Øº
                                           Ëæºó¸üС£Õâ©ÎÊÌâÏÖÔڵýÁ˾ö£¬Òòª¸Å¹ÜÀíá©ÁËһϵ
                                           ÁлúÖÆʵÏÂÄ¿£º
                                           •
                                           •                                                                                                                                       /ºÏ²¢·Éú±ä»¯µÄÚÈÝ
                                           •
                                           Òò´Ë£¬                                                       DBA ±ØÐ뿼ÂÇèÒª¶àÉÙÊäÀ´½¨ºÍά»¤Ã¸öµÌå¯Ó
                                           ͼ£¬²¢ÔÚ»¨·ÑʱäÓë¹Ã¸µÌå¯ËùñÄÐÜÉÆÖ®½ø
                                           Ðƽºâ¡£
                                           Oracle 9i ÌṩÁËÏÂÃæµÄ¢Ð·½¨£º
                                           •
                                           •
                                           •
                                           ÕâЩ²Ù×÷¿ÉÒÔ
                                           •
                                                                                                •                                                                                        (DBMS_MVIEW.REFRESH)
                                                                                                •
                                                                                                                                 (DBMS_MVIEW.REFRESH_DEPENDENT)
                                                                                                •
                                                                                                                                 (DBMS_MVIEW.REFRESH_ALL_MVIEWS)
•
°´ÐèË¢Âͨ¹ýµ÷ÓÃÉÏæùÁijÌÖ®Ò»ÀÊ£¬¶ø±å¯
ͼ·¢Éú¸Ä±äʳÓè                                                                                                                                           DBA ÍêÈ«µÄ¿ØÖƨÏÞ¡£
Èç¹ûÑ¡ÔñÁËÌá½»¢Ð£¬ÖҪʵå¯Óͼܴý¾Ý±äÄ°Ïì
Ëü¶¼½«×Ô¯¸ÐÂÒ·´Ó³ÃÊý¾Ý¡£È»ø¬ÇëÕâ÷Ϊù
±í·¢Éú¸üĵÊÂÎñÖÐÌá½»´¦ÀÒ²¿¶ø¡£òˬ
ÐÂËù»¨·Ñʱ¼äáÉÔ΢³¤Ò©£¬òªè¶-íºÍÓåÖ°ü
¸Ã±íµÄÊÌ廯Óͼ¬×÷³öü¡£


                                           ÍêÈ«Ë¢ÐÂ
                                           µ±ÊÌå                                                 »¯ÊÓ                                 Í¼ê         È«Ë¢      ÐÂʱ           £¬ Ê×                       ÏÈ ½Ø   ¶Ï ¸Ã   ÊÓ Í¼   £¬ È» ºó ¼ÓÔØËù       ÓÐÊý         ¾Ý¡£
                                           ¼øÓÚʵÌ廯ÍÄ´óС£¬Õâ¿ÉÜáÇÒ¸öº±¹ý³êÈ«Ë¢
                                           ÐÂÔÚÏÁÇé¿öÊÒ»îºÜõļõ£
                                           •
                                                                                             50% ÒÔÉÏ¡£




                                                                                                                                                                                                                               Oracle9i ʵÌ廯ÊÓͼ          µÚ   11 Ò³
•
•


¿ìËÙ ¢ÐÂ
ÓÐÒ»©ÊµÌ廯Óͼ¿ÉÄÜá·Ç³£´ó¬²¾ßÐÖÀýêÈ«Ë¢Â
ËùÐèµÄʱ¼ä¡£Ò»ÖÌæ´ú·½¨Çø¿ì٢¬ö«í¯
µÄ²¿·ÖӦýÊÌ廯ͼС£ÔØý¾ÝâÈκ±íÂ
½«±»Ê¶ð£¬Èºó²Î¿¼¸ÃíµÄÌå¯ÓÍÀûÐÂý¾Ýø×Ô
¶¯¸üС£
ΪÁ˽øпì٢²×÷£¬±Øë«Êý¾ÝÖµÄ仯¼ÇÏÀ´Ó
·½¨¿ÉÒÔʵÏÖÕâ»Ä¡£Èç¹ûø¾-Óà                                                                                                               SQL*Loader Ö±½Ó·¾¶«
Êý¾Ý²åÈëµ½¿âÖУ¬ÄÇôˢ»úÆ«¼ìÕÒ¹³Ì¸÷
Òª¼ÓÔصÄÐÂÊý¾Ý¡£È»¶ø¬´óà±ä¯Çͨ¹                                                                                                                                            SQL ÃüÁî
INSERT¡¢                                                       UPDATE ºÍ                     DELETE À´½øС£ÔÚÕâÖÇé¿öϬʵÌå
»¯ÊÓͼËùÚµÄÿ¸ö±í¶ÐèÒª·Ý                                                                                                        MATERIALIZED VIEW
LOG¡£
  ÿ¸ö±í½ÐèÒª»·ÝÈÕÖ¾£¬ÊµÌå¯ÓͼÔÚ¶ø²
ÓÊ ¼Í ÐÖ £¡ òÒ çÈË´                                                        ýÊû¹    ÐÖâ¿Ý¾               ö½ ÐÓ          6 í±ö¸     úÉ¢·            ä±ËÁ             ¬£¯»        «½òÔ          ªÒèÐö½
                                    6 ·ÝʵÌ廯ÓͼÈÕÖ¾¡£«¿ÉÒÔÃκýÁÄÀ´¹â
                                    ЩÈÕÖ¾¡£
Çë×¢Ò⣬²·ËùÓеÄÊÌ廯ͼ¶¿ÉÔ½øìÙ¨¹ý
µ÷Óà                                       DBMS_MVIEW.EXPLAIN_MVIEW ¹ý³ÌÀ´È·ÏÆäÊÇñ¿ÉÒÔ
¿ìË٢С£¸Ã¹ý³Ì»½¨Òé誶Ôʵå¯ÓͼøÄ©²×÷¬´
ʹÆä¿ÉÒÔìË٢С£


ˢкÍÔ¼ÊøÌõ þ
Ç°ÃæÔø¾-Éù÷¹ý£¬ÀíÏëé¿ö¼ÊÌõþ¨ÓÈÆäÍâ²Øü×Ö
ÊøÌõ¼þ£©Ó¦¸ÃÔÚʵ±íÖж¨Ò壬´øÈ·Ä»¿Éë
       Ò»¸öά¶ÈÏàÆ¥Åä¡£µ±Ìá½´ÊÔ¼øõþЩ                                                                                                                           DBA »òÐíáÓÊÖ
ʾÒ⣬                                      Ðû³Æ                     ÓÉÚ    ¿ÉÄÜ      µÄÐÔ     ÄÜ¿ªÏú              £¬ ¸Ã Êý¾Ý            ¿âÖÐ            ½«²»     ÔÙÓм               ÊøÌõ                  ¼þ ¡£
È»¶ø£¬                                             DBA ¿ÉÒÔÈ·ÐÅ£¬Í¨¹ýÊÓÃ
ALTER TABLE <table name> ENABLE NOVALIDATE
CONSTRAINT <name> ×Ӿ䣬
¿ÉÒÔÁ¢¼´ÆôÓÃÊøÌõþ¶ÎÞÐèì²éý¾Ý¡£Èç¹û                                                                                                                                         SQL*Loader
Ö±½Ó·¾¶«ÊýݼÔصíУ¬ÄÇôÈÏé¿öËùøÌõ
¼þ¶½«±»ûÓá£ÔØʵíÖ®ºó¬·¢³öÆôï¾ä                                                                                                                                          NOVALIDATE
»áÁ¢¼´ÆôÓÃÔÊøÌõþ¶ÎÞÐëì²éý¾Ý¡£ÒòËüÚرä
ûÓÐÈκ°Ï죬ÆôÔ¼ÊøÌõþ²èÒª¨·Ñ±ä¡¶ÉÚ
¼ÓÔصÄÊý¾ÝûнøÑéÖ¤£¬Òò´ËÈ·±ù²á°Ïì
ÈκÍêÕûÐÔ¼ÊøÌõþ¾ÓªÖØÒ¡£




                                                                                                                                                Oracle9i ʵÌ廯ÊÓͼ                                   µÚ   12 Ò³
Êý¾ÝËäÈ»ÒÑ-¢Ð£¬µ«Ìå¯ÓͼԿÉò¹¨
                                            ÃüÁîALTER SYSTEM SET QUERY_REWRITE_ENABLED =
                                            FALSE ½ûÓà ²éѯ ÖØд £¬ Ö± ÖÁËùÓРʵÌå »¯ÊÓ Í¼¶ ÒѾ- ˢР¡£ Áí Ò»·½
                                            Ã棬¶ÔÓÚÄÇЩ²»èҪʵÌå¯Í¼·´³×îÂØý¾Ý§¿É
                                            Ôڻ᰼¶ÆôÓòéѯÖØд¡£


                                            ·ÖÇøά»¤²Ù×÷ºÍʵÌ廯 Óͼ
                                            Oracle9i Ìṩ                                                                                                                         ÁËÒ»              ¸ö³Æ              Ϊ ·ÖÇø±ä         »¯¸ú                ×Ù                 £¨ PCT£©                         é×ĵ              ¬£þ¼          é×ø                 þ¼
                                            ¿ÉÒÔ͸Ã÷µØ¼ì²â½·ÖÇø¢ú±ä»¯£¬ÈºóÅж¨Ù×Êñ¹Ìå
                                                                                      »¯ÊÓͼÖеÄý¾Ý²Ò¡£ÀÈ笺Ϣ·ÇøòÌí½«á°ì
                                                                                                                           µ½ÊÌ廯Óͼ£¬Ö´ÐÕâÑùĹý³²á±êÇΪ§
                                                                                                                                                            Ч¡£
                                                                                                                       ·ÖÇø±ä»¯¸ú×Ù¹¿ÉÒÔÓÃÚ÷²°ÏìÁËÄЩʵÌåͼ
                                                                                                                       С£ÀýÈ笹ûÒ»¸öÏêÇé±í·Öø½Ø¶òɾ³                                                                                                                                                          PCT ½«Ö¸Ã÷ʵÌå
                                                                                                                       »¯ÊÓͼÖÐÜ°ÏìµÄ²¢½«Æäɾ³ý¡£
                                                                                                                       DBMS_MVIEW.EXPLAIN_MVIEW ¹ý³Ì½«¨ÒéĻʵå¯Óͼ
                                                                                                                       ÊÇ·ñ¿ÉÒÔ¹ÓÃ PCT¡£


                                            ²éѯÖØд

                                            ÔÚ¸ÅÒª¹ÜÀíµÄÖî¶àÓãУ¬ÕËû§æý³ÆÞ÷®ÊÇ
                                            ²éѯÖØд¹¦ÄÜ¡£ÕâÊÇÒ»ÏîÓżõ¬×ª¸ù¾Ý±íºÍ
                                            À´±àеÄÓû§²éѯ£¬¶øÊÌåͼ־ðÈ¡ýÝá¸ßËÙ
                                            ¶È¡£ÓÉÚ                                                                                                                     Oracle9i ·þÎñÆ÷¿ÉÒÔ׶¯ÖØдȺÏ浀                                                                                                                         SQL ӦóÌ
                                                                                    ÐòÒÔʹÓõÌ廯ͼ£¬´Ëü¶ÚÖէǸ÷ÄÎÞè                                                                                                                                                                                                                                              SQL
                                                                                    ӦóÌÐòµÄ¸ÉÔ¤»áʾ¡£ËäȱÎÖùÒý¶¼Ç                                                                                                                                                                                                                                               SQL
SELECT ×Ӿ䣬µ«²éѯÖØдÈÔ½ÒÀÚ°üº                                                                                                                                                                                                                                                                   SELECT ×Ó¾äµÄ
INSERT ºÍ                                                                                                                                                                       CREATE TABLE Óï¾ä¡£
²éѯÖØд¿ÉÒÔÓÃÚ¸÷¡£Çëע⬶ÎÈÏóùµÄ¹
ϵÎÞÐèÇ¿ÖÆ´£¬«¼ÙÉËüÃÊÕæÄ¡Èç¹ûù÷ØÓë±íý¾Ý
ÖдæÔÚµÄʼ¹Øϲ»Æ¥Å䣬ÇñéѯÓÎÌâ
ÉùÃ÷À´ÖØвéѯʱ£¬ºÜ¿Ä»áúíÎó½¹û¡ýͨ
¹ý¶¨ÒåØϵºÍÊÓÃÔ¼øÌõþ±ã³È·£¾ÝÄÕЬËùÉú
µÄ±¨¸æ½«ÊÇ¿ÉÐÅ£¬ÆäÖ°üºÕýÈ·á¹û¡ÏÁËͳêÔ
ºó£¬                                                                                                                                                          ¿É ÒÔ   ½ö Ͷ              Èë ×î             С µÄ Ŭ Á¦ºÍ¿ª                     Ïú¾Í              »ñµÃ            ¿ìËÙ               ¡¢ ×¼ È·µÄ²é                         ѯ½á                      ¹û ¡£
²éѯµÄ׳ɻÔÙÐèÒªÓëÊÌåͼ¶¨¾«È·Æ¥Å䣬òÎÕâÇó
DBA Ê ÏÈ                                                                                                                                                                Öª µÀ              Ó¦ ¸Ã             Õë ¶Ô          Êý ¾ÝÖ´Ð                 ÄЩ               ²éѯ            ¡£µ±            È»Õâ            ÊDz»¿É                         Äܵ                £¬
ÓÈÆä¶ÔÊý¾Ý²Ö¿â¸üÇç´Ë£¬ÒòΪڹ«µÄ÷ºÃ¦®
Ò»¾ÍÊÇÁ¢¼´ÖеIJéѯ¡£òˬ¹ÓÃÌå½ö¿Éú×ã
²éѯµÄÒ»¿·Ö£¬Øд¹ÊÇá¢Éú¡




                                                                                                                                                                                                                                                                                               Oracle9i ʵÌ廯ÊÓͼ                                           µÚ   13 Ò³
/½ûÓòéѯÖØд
                                       µ±ÉèÖÃÁËÏÂвÎÊý£¬éѯش½«·¢úº
ALTER SESSION SET QUERY_REWRITE_ENABLED = TRUE

»ò
ALTER SYSTEM SET QUERY_REWRITE_ENABLED = TRUE

»òµ±¶¨ÒåʵÌ廯ÊÓͼʱ£¬Í¨¹ý°üÀ¨×Ó¾ä QUERY
                                 ENABLE
REWRITE ÒÔʹÆä·ûºÏ²éѯÖØдÌõ¼þ¡£
ÓÐʱ¿ÉÄÜèÒª½ûòéѯÖØ´£¬ÕâÔͨ¹ý«ÏæµÎ¸
FALSE À´ÊµÏÖ£¬Ò²¿ÉÔÚ»¸ö¾ßÌå¯Óͼ¹Ã                                                                                                                                                                        DISABLE
QUERY REWRITE ×Ó¾äÀ´ÊµÏÖ¡£


²éѯÖØдµÄÀà Í
Oracle9i ÖÐ¿É                                                                                             ÒÔÓÐ   ¸÷Ö     ²é ѯÖØд      ÀàÐÍ          £¬ ÏÂÃæ      µÄÀý           ×Ó½é          ÉÜÁËʹ            ÓÃͼ                5
ÖеÄÊÌ廯Óͼ¿ÉÒÔÏ©¹¦Ü¡£
                                                                      ͼ   5 ʵÌ廯 Óͼ à ڲéѯÖØдʾÀý
CREATE MATERIALIZED VIEW all_cust_sales_mv
BUILD IMMEDIATE
REFRESH COMPLETE
ENABLE QUERY REWRITE
AS
SELECT   c.cust_id,
         p.prod_id,
         sum(s.amount_sold) AS dollars,
         sum(s.quantity_sold) as quantity
FROM sales s , customers c, products p
WHERE c.cust_id = s.cust_id
AND s.prod_id = p.prod_id
GROUP BY c.cust_id, p.prod_id;


ÍêÈ«Æ¥Åä

  µ±ÊÌ廯Óͼ¶¨Òë²éÑêÈ«Æ¥Å䣬½á·¢Éú×îòÄ
¯Ñ ØÖ ²Ò£¡´Ð                                                            ÇÊ; ¬£µË                                      FROM ×Ó¾ä               ÖÐµÄ        ±í ¡¢   WHERE ×Ó¾äÖÐ                            µÄÁª                  ½Ó
                                       ºÍ                          GROUP BY ×Ó¾äÖеĹؼüÔÚ²éѯºÍÊÌå»®êÈ«Æ¥
                                          Åä¡£ÀýÈ笸ø³öÏÂÃæµÄ²éѯº
SELECT  c.cust_id,
        sum(s.quantity_sold) as quantity
FROM sales s , customers c, products p
WHERE c.cust_id = s.cust_id
AND s.prod_id = p.prod_id
GROUP BY c.cust_id, p.prod_id;

Oracle9i ÖØд˲éѯÒÔʹÓà                                                                                                             all_cust_sales_mv




                                                                                                                                                                          Oracle9i ʵÌ廯ÊÓͼ                            µÚ   14 Ò³
ÓÐʱºò²éѯ¿ÉÄÜ»áμ³ÒÁ£¬¸Ã´æ¢ÔÚŪíÖµ«Ç
¿ÉÒÔͨ                                     ¹ý½«   ʵÌå   »¯ÊÓ    ͼÁª           ½Ó·µ»Ø                      µ½ºÏ                   浀                  ά±í                   À´ÖØ     лñµÃ         ¡£ Àý      Èç £¬
ÔÚÇ°Ãæ                                     µÄÀý   ×ÓÖÐ   £¬¼Ù    É豨           ¸æ²»ÊÇ                      ¸ù¾Ý                   Óû§                        ID£¬¶ø                 ÊÇ Ê¹Óà             »§Ãû       ¡£
SELECT  c.cust_last_name,
        sum(s.quantity_sold) as quantity
FROM sales s , customers c, products p
WHERE c.cust_id = s.cust_id
AND s.prod_id = p.prod_id
GROUP BY c.cust_last_name, p.prod_id;

                       ´Ë´Î²éѯ²Î¿¼    c.cust_last_name ÁУ¬¸Ã²»ÔÚʵÌå¯Óͼ
                       all_cust_sales_mv ÖУ¬µ«        c.cust_last_name ÔÚ¹¦ÄÜÉÏÈ¡¾öÓ
c.cust_id£¬ Õâ ÊÇÓÉ                       ËüÃÇ  Ö®¼ä   µÄ²ã´Î                   ¹Øϵ      ¾ö¶¨ µÄ¡£      Õâ Òâ ζ×ű¾ ´Î²é ѯ
¿ÉÒÔͨ                        ¹ý  all_cust_sales_mv À´ÖØ                   д£¬      ÒòΪ           all_cust_sales_mv ªÁ»±
       ½Ó·µ»Ø¿Í§±íÒÔñà                               c.cust_last_name ÁС£


¸ÅÒª»ã×Ü ò¾ÛºÏËùÓÐ

µ±²éѯÔÚijһã´ÎÖÐÇëó¾ÛºÏ£¨Èç                                                                                              SUM £¨ÏúÊÛ©¬¸Ã¾ºµÄ
¼¶±ðȾۺÏÔÚʵÌ廯ÓÍÖдæ¢Ä¸üߣ¬¿ÉÒ¨¹ýÃ
Ì廯ÊÓ                                     ͼ £¬ ÒÔ ¼°   ½« ¸Ã   ¾Û ºÏ »ã×ܵ½                        ËùÐè                   ¼¶±ð                 ´Ó¶ø                   ¶Ô¸Ã           ²éѯ½ø    ÐÖØ              д ¡£
ÀýÈ磬ÎÒÃǵÄÊÌ廯Óͼ                                                                       all_cust_sales_mv ÊÇÔÚ¿Í»§¼¶±ðÉÏ×éÖ¯
Êý¾ÝµÄ£¬«ÎÒÃÇ¿ÉܸüÏÍûÔÚ״̼¶±ð½öÓ»§À¨æ¡
ÎÒÃÇѾ-´½¨ÁË¿Í»§¬£üèÊöºøÓòÖ®¼äµÄ¹ØÏ¡
ÏÂÃæµÄ²éѯ¿ÉÒÔʹÓÎÇÌå»Í¼                                                                                                                         all_cust_sales_mv À´²úÉ
±¨¸æ£¬½«Ä³Ò»¿Í§µËùÓÐÊý¾Ý¶¼ÛºÏÆðÀ´²¢ã×ÜÌ¡
SELECT  c.cust_state_province,
        sum(s.quantity_sold) as quantity
FROM sales s , customers c, products p
WHERE c.cust_id = s.cust_id
AND s.prod_id = p.prod_id
GROUP BY c.cust_state_province;


Êý¾Ý×Ó¼¯

Æù½ñΪֹ£¬ÒÃÇѾ-¿´µÄËÓÐÊÌ廯ͼ°üºÁÈ«²ýÝ
µ«ÕâÈÔ                                     »áµ¼   ÖÂÒ»   ¸ö·Ç    ³£ÅÓ           ´óµÄÊ                       Ì廯                   ÊÓͼ                 ¡£ Oracle9i ÔÊÐí¶¨   Òå» ¸ö
ʵÌ廯
     ÊÓͼ  £¬ Ëü½ö °üº¬      ͼ                                                          6 ÖÐËù                    ʾµÄ                   ²¿·Ö            Êý¾Ý £¬ ¼´ Dublin, Galway,
Hamburg ºÍ Istanbul µÄÊý¾Ý¡£




                                                                                                                                                                 Oracle9i ʵÌ廯ÊÓͼ                       µÚ    15 Ò³
6 °üº¬Êý¾Ý×Ó¼¯µÄÊ Ìå» Óͼ
CREATE MATERIALIZED VIEW some_cust_sales_mv
BUILD IMMEDIATE
REFRESH COMPLETE
ENABLE QUERY REWRITE
AS
SELECT   c.cust_id,
         p.prod_id,
         sum(s.amount_sold) AS dollars,
         sum(s.quantity_sold) as quantity
FROM sales s , customers c, products p
WHERE c.cust_id = s.cust_id
AND s.prod_id = p.prod_id
AND c.cust_state_province IN
         ('Dublin','Galway','Hamburg','Istanbul')
GROUP BY c.cust_id, p.prod_id;

ÏÖÔÚ¸ÃʵÌ廯ÊÓͼ¿ÉÒÔÓÃÓÚÂú×ã°üº¬·¶Î§µÄ²éѯ£¬
ÀýÈçÏÂÃæËùʾµÄ                                                                                                                   IN ºÍ                                      BETWEEN ×Ӿ䡣
SELECT   c.cust_state_province,
         sum(s.quantity_sold) as quantity
FROM sales s , customers c, products p
WHERE c.cust_id = s.cust_id
AND s.prod_id = p.prod_id
AND c.cust_state_province IN ('Dublin','Galway')
GROUP BY c.cust_state_province;



²éѯÖØдÍêÕû Ô·½Ê
¸ÅÒª¹ÜÀí½«¾¡Á¦Ê¶±ð²»ÖµÄÌå¯Óͼ¢´òÉÏàêÇ£¬
ΪÁË¿·þÕâЩÎÊÌ⣬¿ÉÒÔͨ¹ý²
          QUERY_REWRITE_INTEGRITY À´Ñ¡ÔñÈýÖÍêÕû춱ð£
•                                                                                         STALE_TOLERATED
•                                                                                         TRUSTED
•                                                                                         ENFORCED (default)
ÔÚ                                                                               STALE_TOLERATED ·½ÊÖÐ                        ½«Ê¼                                                                    ÖÕʹ                     ÓÃÒ»                   ¸öʵ              Ì廯ÊÓ       ͼ£¬           ¼´
ʹËüÒÑ                                                                              ¾-ʧ      Ч ¡£ ÔÚ TRUSTED ½· ¬£ÐÖ½Ê                                                                                           ¯»ÅÓ                        òÐ̳ ÅÐàÏ    µÊ åÌ ¯» ÓÊ ¼Í
ÖеÄÊý                                                                                   ¾ÝÊÇ   ×îР µÄ £¬ ÔÚ Î¬ ¶ÈÖÐÉù Ã÷µÄ                                                                  ¹Øϵ                       ºÍ                    RELY Ô¼ÊøÌõ       ¼þÊÇ  Õý
                                           È·µÄ¡£ÔÚÕâÒ»½ÊÖЬÓů³Ìò¹«Ã¤Ï¨Á¢åͼ
                                           »òùÓÚ                                                             ÊÓͼ   µÄÊ   Ì廯                                       ÊÓͼ   £¬ ²¢ ʹÓà   뫅                 ÐºÍ                      ÒѾ-                   µÃ µ½Ö´Ð              µÄ¹Ø ϵ ¡£
                                           ÔÚÕâÖ·½ÊУ¬ÓÅ»¯³Ìò¹¡°ÈαÒѾ-ÉùÃ÷µ«´                                                                                                                                                                                                   ENABLED
                                           VALIDATED µÄÖ÷                                                                          /Ψһ¹Ø¼ü×ÖÔÊøÌõþºÍýά¶È¸Ã÷µÄ¾Ý
                                           ¹Øϵ¡£




                                                                                                                                                                                                                                             Oracle9i ʵÌ廯ÊÓͼ                            µÚ   16 Ò³
ENFORCED ·½ÊÇĬÈÏ£ÔÚÕâÖÐÓÅ»¯³Ìò«¹
ÓÃÈ·ÖªÆä°üº¬×îÐÂÊý¾ÝµÄÌ廯ͼ£ÒÔ¹ùÚ
ENABLED VALIDATED Ö÷                                                                                                                /Ψһ                 /Íⲿ¹Ø¼ü×ÖÔÊøÌõþµÄÏ¡£
Òò´ËÄú½«·¢ÏÖ£¬Èç¹û»Ð©Ô¼ÊøÌõþÉΧÇÃÓ¸¨µ
²éѯÖØд½«»á·¢Éú¡£µÈç¹ûÊÓÃÄÇÔ¼øÏ                                                                                                                                                                                                                                                                             TRUSTED
»ò                                       STALE_TOLERATED ģʽ¬ÕâЩ²éѯÖØ´Ôò»á·¢Éú¡


½á¹ûÊÇ·ñÕýÈ
µ±                                       SQL ²éѯ                                     ʹÓà          ʵÌå          »¯ ÊÓͼ¶ø                       ·ÇÕæ                                           浀                         Êý¾Ý                           Դʱ£¬                                  ÓÐʱºò              »á³ö                               ÏÖ
·µ»Ø½á¹û²Í¬ÄÇé¿ö¡£
1.                                       ʵÌ廯                                ÊÓͼ          ¿ÉÄÜ          ÓëÏê           ϸÊý           ¾Ý²»Í¬                                 ²½¡£ ·¢Éú ÕâÖ Çé¿ö µÄ Ô-Òòͨ                                                                                                                                          ³£
                                         ÊÇˢйý³ÌÒÆð£¬Í±Ñ¡ÔñÁ                                                                                                                STALE_TOLERATED ÍêÕûÐÔ
                                         ·½Ê¡£
2.                                       Áª½ÓÐ                                 ¿ÉÄÜ          Ó°Ïì          ²Î¿¼           µÄÍê           ÕûÐÔ¡£                                           ÔÚÕâ                         ÖÇé                           ¿öÏ                               £¬ Ò» Щ ×Ó¶ËµÄ                                     Ð
                                         ûÓÐÕý                                È·»ã          ×ܵ½          ¸¶Ë            µÄÐ            ¡£ Ϊ           ÁË ±Ü                                         Ãâ ·¢                        Éú Õâ                                   Ö Çé             ¿ö £¬ ÇëʹÓà                                   ϵ
                                         ͳǿÖÆ                                Ö´Ð           µÄÍê          ÕûÐÔ           £¬ Õâ Ñù¿ªÏú                                             ÊÇ΢                         ²»×ã                           µÀÄ                                    £¬ ¶ø »ñÀûÈ´                                  ºÜ ÏÔ
                                         Öø¡£
µ±ÊÌ廯Óͼ°üº¬Á˲ÔÙÎÚÏêÇéý¾ÝÖÐÄÅ¢£¿ÉÒ´
½¨Ò»¸ö                                                                   rolling materialized view¡£ÀýÈç¬ÊµÌ廯Óͼ¿ÉÄÜ°üº                                                                                                                                                                                                18
¸öÔ嵀                                                            Êý¾Ý       £¬ µ« ÏêÇé ±íÖÐ ½ö°üº¬                       ×î½ü                                                                         6 ÂÔö¸                           £¡Äµ                                   Ë´òÒ                          ¬£ çÈ û¹ é² ¯Ñ
½«ÔÚ»ù±íÖжø²ÊǵÌå¯Óͼ£¬ÄôϾá¹û¡


½âÊÍÖØд
µ±Ê¹ÓòéѯÖØд£¬Î×îÆ·ÄÌâÇ¡°Ë»áÂð¿
»ò¡°ÎªÊ²Ã´ËéѯÖØУ¿±                 Oracle9i ͨ¹ý
DBMS_MVIEW.EXPLAIN_REWRITE ¹ý³Ì¸øöÁËÕâÒ»ÎʵĽ
¾ö°ì·¨ £¬ ͼ 7 ÖÐ ÏÔ Ê¾ ÁË Ò» ¸öʹÓà    ·¶Àý ¡£ Òò ´Ë£¬                                                                                                                                                                                                              ¿ÉÒÔ                  ÔÚ²éѯ                 ÔËÐ                            Ö®
Ç°Á˽â¸ÃÐÅÏ¢¡£
²éѯÎı¾×÷ªÒ»¸ö³¤Ö·û´®«µÝ£¬Ã¹ýÌæ¢ÆäÔÚí
REWRITE_TABLE ÖÐ ÕÒ                                                                                                     µ½ µÄ½á¹û                        £¬ ±Ø Ðë²é                                       ѯ¸Ã ±í²Å Äܲ鿴      ¹ý³Ì                                                                                                                  µÄ
½á¹û¡£ÔÚÏÂÃæµÄÀý×ÓÖЬÎÒÇ«¿´                                                                                                                                                                            some_cust_sales_mv ÓÃÚ´Ë
´Î²éѯ¡£




                                                                                                                                                                                                                                      Oracle9i ʵÌ廯ÊÓͼ                                                                      µÚ    17 Ò³
O9i Mv[1]
O9i Mv[1]
O9i Mv[1]
O9i Mv[1]

More Related Content

What's hot

Robert Sokolowski εισαγωγή στη φαινομενολογία
Robert Sokolowski   εισαγωγή στη φαινομενολογίαRobert Sokolowski   εισαγωγή στη φαινομενολογία
Robert Sokolowski εισαγωγή στη φαινομενολογίαLoanna Empiridou
 
Canon Eos 3000 N Rus
Canon Eos 3000 N RusCanon Eos 3000 N Rus
Canon Eos 3000 N Rusguest315b36d
 
Malyj pryzhok v anglijskij za 115 minut
Malyj pryzhok v anglijskij za 115 minutMalyj pryzhok v anglijskij za 115 minut
Malyj pryzhok v anglijskij za 115 minutElena Guro
 
Фізика 7 клас, Бойко, Венгер, Мельничук, 2015
Фізика 7 клас, Бойко, Венгер, Мельничук, 2015Фізика 7 клас, Бойко, Венгер, Мельничук, 2015
Фізика 7 клас, Бойко, Венгер, Мельничук, 2015podedvorniy
 
7 физ бойко_венгер_2014_укр
7 физ бойко_венгер_2014_укр7 физ бойко_венгер_2014_укр
7 физ бойко_венгер_2014_укрAira_Roo
 
гиа 2013. математика. сб. заданий кочагин в.в, кочагина м.н 2012 -336с
гиа 2013. математика. сб. заданий кочагин в.в, кочагина м.н 2012 -336сгиа 2013. математика. сб. заданий кочагин в.в, кочагина м.н 2012 -336с
гиа 2013. математика. сб. заданий кочагин в.в, кочагина м.н 2012 -336сyadan1959
 
Реформа публічної адміністрації в Україні: Проекти концепції та законів
Реформа публічної адміністрації в Україні: Проекти концепції та законівРеформа публічної адміністрації в Україні: Проекти концепції та законів
Реформа публічної адміністрації в Україні: Проекти концепції та законівCentre of Policy and Legal Reform
 
картки укр. мова 2 клас
картки укр. мова  2 класкартки укр. мова  2 клас
картки укр. мова 2 класOlesea_Moldovan
 
Правова допомога: Зарубіжний досвід та пропозиції для України
Правова допомога: Зарубіжний досвід та пропозиції для УкраїниПравова допомога: Зарубіжний досвід та пропозиції для України
Правова допомога: Зарубіжний досвід та пропозиції для УкраїниCentre of Policy and Legal Reform
 
4ο σεμινάριο λοιμώξεων
4ο σεμινάριο λοιμώξεων4ο σεμινάριο λοιμώξεων
4ο σεμινάριο λοιμώξεωνPoillie Vassisoali
 
http://vnx.su/ skoda a5 octavia amundsen navigation system Руководство по экс...
http://vnx.su/ skoda a5 octavia amundsen navigation system Руководство по экс...http://vnx.su/ skoda a5 octavia amundsen navigation system Руководство по экс...
http://vnx.su/ skoda a5 octavia amundsen navigation system Руководство по экс...skodaruk
 
Guru bhaktiyoghindi
Guru bhaktiyoghindiGuru bhaktiyoghindi
Guru bhaktiyoghindigurusewa
 
Журнал "Культурологічні джерела". №№3-4. 2013 рік.
Журнал "Культурологічні джерела". №№3-4. 2013 рік. Журнал "Культурологічні джерела". №№3-4. 2013 рік.
Журнал "Культурологічні джерела". №№3-4. 2013 рік. oomckuzh
 

What's hot (17)

Robert Sokolowski εισαγωγή στη φαινομενολογία
Robert Sokolowski   εισαγωγή στη φαινομενολογίαRobert Sokolowski   εισαγωγή στη φαινομενολογία
Robert Sokolowski εισαγωγή στη φαινομενολογία
 
Etika Islame
Etika IslameEtika Islame
Etika Islame
 
Canon Eos 3000 N Rus
Canon Eos 3000 N RusCanon Eos 3000 N Rus
Canon Eos 3000 N Rus
 
Malyj pryzhok v anglijskij za 115 minut
Malyj pryzhok v anglijskij za 115 minutMalyj pryzhok v anglijskij za 115 minut
Malyj pryzhok v anglijskij za 115 minut
 
Фізика 7 клас, Бойко, Венгер, Мельничук, 2015
Фізика 7 клас, Бойко, Венгер, Мельничук, 2015Фізика 7 клас, Бойко, Венгер, Мельничук, 2015
Фізика 7 клас, Бойко, Венгер, Мельничук, 2015
 
Fizika 7 boyko
Fizika 7 boykoFizika 7 boyko
Fizika 7 boyko
 
7 физ бойко_венгер_2014_укр
7 физ бойко_венгер_2014_укр7 физ бойко_венгер_2014_укр
7 физ бойко_венгер_2014_укр
 
гиа 2013. математика. сб. заданий кочагин в.в, кочагина м.н 2012 -336с
гиа 2013. математика. сб. заданий кочагин в.в, кочагина м.н 2012 -336сгиа 2013. математика. сб. заданий кочагин в.в, кочагина м.н 2012 -336с
гиа 2013. математика. сб. заданий кочагин в.в, кочагина м.н 2012 -336с
 
Реформа публічної адміністрації в Україні: Проекти концепції та законів
Реформа публічної адміністрації в Україні: Проекти концепції та законівРеформа публічної адміністрації в Україні: Проекти концепції та законів
Реформа публічної адміністрації в Україні: Проекти концепції та законів
 
Shuumj & udirdamj
Shuumj & udirdamjShuumj & udirdamj
Shuumj & udirdamj
 
картки укр. мова 2 клас
картки укр. мова  2 класкартки укр. мова  2 клас
картки укр. мова 2 клас
 
Правова допомога: Зарубіжний досвід та пропозиції для України
Правова допомога: Зарубіжний досвід та пропозиції для УкраїниПравова допомога: Зарубіжний досвід та пропозиції для України
Правова допомога: Зарубіжний досвід та пропозиції для України
 
4ο σεμινάριο λοιμώξεων
4ο σεμινάριο λοιμώξεων4ο σεμινάριο λοιμώξεων
4ο σεμινάριο λοιμώξεων
 
http://vnx.su/ skoda a5 octavia amundsen navigation system Руководство по экс...
http://vnx.su/ skoda a5 octavia amundsen navigation system Руководство по экс...http://vnx.su/ skoda a5 octavia amundsen navigation system Руководство по экс...
http://vnx.su/ skoda a5 octavia amundsen navigation system Руководство по экс...
 
Guru bhaktiyoghindi
Guru bhaktiyoghindiGuru bhaktiyoghindi
Guru bhaktiyoghindi
 
1gdz
1gdz1gdz
1gdz
 
Журнал "Культурологічні джерела". №№3-4. 2013 рік.
Журнал "Культурологічні джерела". №№3-4. 2013 рік. Журнал "Культурологічні джерела". №№3-4. 2013 рік.
Журнал "Культурологічні джерела". №№3-4. 2013 рік.
 

O9i Mv[1]

  • 1. Oracle9i ʵÌ廯Óͼ Oracle °×ƤÊé 2001 Äê 5 ÔÂ
  • 2. Oracle9i ʵÌ廯Óͼ ִиŠҪ ............................................................................................................. 3 ¼ò½é ...................................................................................................................... 3 ΪºÊ¹ ÓøŠҪ¹Ü Àí .......................................................................................... 4 ¸ÅÒª¹Ü Àí×é ¼þ .................................................................................................... 4 ģʽÐè Çó ......................................................................................5 ά¶È ...................................................................................................................... 5 ¶¨Òåά ¶ÈµÄ Ïà¹Ø Ìáʾ ..................................................................6 ʵÌ廯 ÊÓͼ ........................................................................................................ 7 ´½¨Êµ Ì廯 ÊÓͼ ..........................................................................8 ʹÓÃ×Ô ¼ºÔ¤ ÏȽ¨ Á¢µÄ ʵÌå »¯ÊÓͼ ..............................................9 ʵÌ廯 ÊÓͼ µÄË÷ ÒýÑ¡ Ôñ ..............................................................9 ʵÌ廯 ÊÓͼ ¿ÉÒÔ Íê³É ÄЩ ¹¤×÷£¿ ..............................................9 ʵÌ廯 ÊÓͼ ʧР........................................................................10 °²È«º¬ Òå ....................................................................................10 ¼ÓÔØºÍ Ë¢Ð ʵÌå »¯ÊÓ Í¼ ...............................................................................11 ÍêÈ«Ë¢ Р.................................................................................... 11 ¿ìËÙ¢ Р....................................................................................12 Ë¢ÐÂºÍ Ô¼Êø Ìõ¼þ ........................................................................12 Êý¾Ý¿É ÓÃÐÔ ................................................................................13 ·ÖÇøά »¤²Ù ×÷ºÍ ʵÌå »¯ÊÓ Í¼ ....................................................13 ²éѯÖØ Ð´ ...........................................................................................................13 ÆôÓà /½ÃÓû ¯Ñé² ´ÐØÖ ...................................................................14 ²éѯÖØ Ð´µÄ ÀàÐÍ ........................................................................14 ÍêÈ«Æ¥ Åä ............................................................................14 ¸ÅÒªÁ ½Ó·µ »Ø ....................................................................15 ¸ÅÒª»ã ×Ü»ò ¾ÛºÏ ËùÓÐ ........................................................15 Êý¾Ý×Ó ¼¯ ............................................................................15 ²éѯÖØ Ð´Íê ÕûÐÔ ·½Ê ................................................................16 ½á¹ûÊÇ ·ñÕý È· ............................................................................17 ½âÊÍÖØ Ð´ ....................................................................................17 ¸ÅÒª¹Ë ÎÊ ...........................................................................................................18 Ìṩ¸º ÔØ ....................................................................................18 ÍƼöʵ Ì廯 ÊÓͼ ........................................................................19 ʵÏÖÍÆ ¼ö ............................................................................19 ¹ýÂ˸º ÔØ ............................................................................20 ¹À¼Æʵ Ì廯 ÊÓͼ µÄ´ó С ............................................................20 ½áÂÛ ....................................................................................................................20 Oracle9i ʵÌ廯ÊÓͼ µÚ 2 Ò³
  • 3. Oracle9i ʵÌ廯Óͼ Ö´Ð ¸ÅÒª ñ½ ìÌ Äµ ýÊ ¬£â¿Ý¾ ÛÂÞΠݾýÊÇ Ö² â¿ ¢¡ ýÊ ÐÖݾ ¹»ÄÐ ÇÊ OLTP ϵͳ £¬ ¶¼ °üº¬´óÁ¿µÄÐÅÏ¢ÈýËÃÇ¥·ÖÍÀí½â¡£»¶øçÎÒԼʱ µÄ·½Ê²éÕҺͱí¾âЩÅϢǻ¸öÖØ´óÎÌ£¬ÓÈÆäèªËÑ Ë÷ÅÓ´óÊýÁ¿ÐÏ¢µÄ±ºò¡£ ʵÌ廯ÓͼÄܹ°ïÖú½â¾öոΣ¬ÒòªËüá©Á¿ìÙ·Ã ºÍ±¨¸æÊý¾ÝµÄ·½¡£ ¼ò½é ʵÌ廯Óͼ×ÏÈÔÚ Oracle8i ÖÐÒýÈ룬ÊdzÆΪ¡°¸Å¹ÜÀí±µÄ×é¼þ µÄÒ»²¿·Ö¡£ÉÜú¹«Ë¾Ñ-ÔÚÊÓÃÌå¯Í¼¬ªÀü ÆäËûÃ×Ö£¬ÀýÈç¸ÅÒª»ò¾ÛºÏ±í¡ÔÚÕâïÎÇÌ´½¨Í¹Ü ʵÌ廯 ÊÓͼ £¬ »¹ ÌÖÂÛ ²éѯ ÖØд¹¦ ÄÜÈç ºÎ͸ Ã÷µØ ÖØд SQL ¯Ñé² ¬£ Ó´ ¶øʹÓõÌ廯ͼÀ´Ëõ²éÑÏ즱䡣Õ⽫ý¾Ý¿§êÈ ÎÞÐèÖªµÀ´æÔÚÄ©ÊÌ廯Óͼ¡£ ʵÌ廯Óͼ¦¿´×÷ÇÒÖØâÄ£¬ËüÎïÀíÉÏæÔÚý¾Ý ¿² ¬£ ÔÒÉ¿ ¨Àü° Ó½ªÁ ͺ /»ò¾Û ºÏ¡£ Ëü ÄÜ ¹» ÔÚ Ö´ Ð Ö® Ç° Ô¤ ÏȼÆËã ¿ªÏú ´ó µÄÁª½ÓºÍ¾ÛϲÙ×÷£¬Òò´ËüæÔÚõ¶ÌéѯÖÐʱ¼ä¡ ½ñÌ죬 ʹÓà ×ÔÉí ¸ÅÒª µÄ¹« ˾»¨·Ñ ÁË´ó Á¿µÄ ʱ¼ä ÓÃÚ ÊÖ¹¤´ ½¨¸Å Òª¡¢ ʶ±ð½«´¨ÄЩ¸ÅÒª¡¢ÔøË÷ýºÍü£¬¼°éÓû§¹ ÓÃÄЩ¸ÅÒª¡£ ÏÖÔÚ DBA ½«öÐëÔÚ¿ªÊ¼±´¨µÌ廯ÓÍ£¬¶øÎÞÂÛý¾Ýº ·¢Éú±ä»¯£¬Ëü¶¼½«×ԸС´Íâ¹ÓÒöŪÎÊéþ Ïò DBA ÍƼö´½¨¡¢É¾³ýº±£ÁôÄЩʵÌå»¯Ó Êý¾Ý²Ö¿â»òÓ罫ÉÒÔÌåáµ¹¯Í¼Ä×î´óº¦ Ö®Ò» £¬ DBA ÎÞ Ðë ÔÙ ¸æ Ëß Ëû ÃÇ´æÔÚ ÄЩ ʵÌå »¯ÊÓ Í¼ ¡£ ËûÃÇ¿É ÒÔ¶ Êý ¾Ý¿âÖÐ µÄ±í »òÊÓ Í¼±à д×Ô ¼ºµÄ²é ѯ¡£ È» ºó Oracle ·þ ÎñÆ÷µÄ ²éѯ ÖØ Ð´»úÖÆ ½«×Ô ¶¯ÖØ Ð´ SQL ²éѯÒÔ Ê¹Óà ʵÌå »¯ÊÓ Í¼¡£ Õâ Ñù¾Í´ó ´óËõ ¶Ì Á˲éѯÏìӦʱ¼ä£¬Öնû§ÎÞÐë¡°½â¸ÅÒª Oracle9i ʵÌ廯ÊÓͼ µÚ 3 Ò³
  • 4. µ±ÏòÊý¾Ý²Ö¿âÕ¶ËÓû§ÎÆðûǣʹÐñ¬ó·È¼ »áش𣺿ìËÙ׼ȷµÄÐÅÏ¢¡«ÊÇÕâÒ²¸øý¾ÝÖÉèÆß³öÁó ÄÑÌ⣺ΪÁ˻شð¡°ÔÚ y µØãÎÒÃÇÂô³ö¶àÉÙ¼þ x ²úÆ·¡±£¬ÍÊÏ Íû±ÜÃâ¶ÁÈ¡íÖеĿһ£¬Ø뽨¢ÌõÊý¾ÝìËÙ·ÓÉ ½â¾ö´ËÎÊÌ×î³£¼ûµÄ°ì·¨Ö®Ò»ÍǸŪ±í¬ Oracle ½«Æä³Îª ʵÌ廯Óͼ¡£ÕâÒ¹¤×÷°üÀ¨ÏȪí½äиºÉ¬ó´æÄ ·Ç³£Ð¡ µÄÊ Ì廯 ÊÓͼ £¬ ʵ Ì廯ÊÓ Í¼ÖÐ ¿ÉÒÔ °üº¬ ËùÐè ÐÅÏ¢µÄ Áª½Ó ºÍ / »ò¾ÛºÏ¡£ÀýÈç¬ÎªÁËØ´ðÇ°ÃæµÄÊÌâå¯ÓͼÖп²úÆ·¶Ô ¦Ó ÚÓ ¬£Ð »Ò ÷Ã¸Ö ö¸¿Ã ĵòÓøÇ úÏ £¡¿ÁÛÊ Ë´òÒ û¹çÈ «¹Ò¼» ¾Ë ÚÔ 5 صö¸ µãÏúÊÛ 2000 ¼þ ²ú Æ· £¬ Ôò ½«Òª¶Á È¡µÄ ×î´ó ÐÊý ʼÖÕ Îª 10000£¬¶ø ÎÞ ÂÛÒѾ-ʳö¶àÉÙÌÆ·¡£ ºÜÃ÷ÏÔ£¬ÊµÌ廯Óͼ±ØÐëÖ¤¾«È·¸õÒâζ×ÅÕ˧ ÔÚÐèÒª¶ÁÈ¡µÄÊýºÜÉÙ£¬ò´Ë¿¼ÖÕìؽÓá¹û¾Ýâ ÈÝÁ¿ÒѾ-Ôö³¤µ½Õ×ÖÚ£¬ò´ËʹÓÃâùÄ·¨Àõ¶Ì²é¯Ïì¦ Ê±¼ä¾ÍÏԵýÀ´ÖØÒª¡£ñÌìÐí¶àÕã¨ÁË׺ĸŬ Òò´ËʹÓà Oracle8 ¸ÅÒª¹ÜÀíËù´øµÄ¶îÍâºÃ¦ÊÇ£ • Oracle ÖÐµÄ ²éѯ ÖØд »úÖÆ ÊÇ͸Ã÷ µÄ²¢ ²ÉÓà ʵÌå »¯ÊÓ Í¼ £¨ ¼´ ʹËü½öÄܲ¿·ÖÂú×ãéѯµÐèÒª£©¡ • • ÊÓͼ¡£ • DBA ²»ÔÙÐèÒª¨Ê±¼äéÕÓ¦´½Ä©µÌå¯Í¡£Ï³ ½«»ùÓÚ ¹ýÈ¥ ¶ÔÊý ¾Ý¿â »òÊý ¾Ý²Ö¿â µÄ²é ѯ£¬ Ïò DBA ÌṩÓÐ ¹ØÐèҪĩ¸ÅµÏ¢¡£ ¸ÅÒª¹ÜÀí×é¼þ ×é³É¸ÅÒª¹ÜÀíµÄÓÐÎåö¼þ£º • • • • • ²¢»ÐèҪʹÓÃËù×é¼þ£¬µ«Ñ¡ÄÔ½¶àñÅÆ¾Í ¶à¡£ÏÖÔÚÎÒÃǽ«ê¸ÌÕâЩ×é¼þ Oracle9i ʵÌ廯ÊÓͼ µÚ 4 Ò³
  • 5. ÓÃÚʵÌ廯ͼģ½ÀàÐòÉèƲ´ÏÞÖ¡ÒËÔý¾Ý ¿â»·¾³ÖУ¬ÄʽÉÒÔÇÑ©»¨Ê½µÄÉè¼Æ£¬«ÕⲢDZØÐë¡ ¶ÔÓÚÊìϤ²úÆ·µÍ³ÖÐý¾Ý¿âÉè¼õÄÕßÀ´Ë£¬Ò»¸ö ²Ö¿âбØëʹÓûͬµÄæÔòº¼õ¡£ÀýÈçúÆ·¾Ý¨³Ç ·¶»¯µÄ£¬Òò´ËÔÚÕâÖÇé¿öÏÂʱ¼äÎí¾½¨×îºÃ²ÉÓÈý¸ ±í£º ÈÕ¡¢ÔÂÄê ¡£Áª½ÓÌõ¼þ¦¸ÃÂú×㺫¿ö ÈÕÆÚ ÐÁ¬½ÓµÒ»¸ö £¨½öÒ»¸© ÔÂ·Ý Ð£¬Ã¿¸ö ÔÂ·Ý ÐÁ¬½ÓµÒ»¸ö£¨© Äê·Ý С£ Êý¾Ý²Ö¿âµÏͨ³£½«¼ÂÒ»¸öêÈ·Ç¹æ¶¯Ä Ê±¼ä ά±í£ÆäÖÐ ÈÕÆÚ¡¢Ô·ÝÄê À¸¶¼´¦ÓÚͬһö±íÖС£²¹ýÎÞÂÛÉèÆÊÃµÄ Êǹ淶»¯±í£¬¼¿ÉÒÔÓõÌåÍ¡ ά¶È ÔÚ´½¨ Ò»¸ö ʵÌå »¯ÊÓ Í¼Ö® Ç°£¬ µÚ Ò» ²½ Ó¦ ¸Ã ÊÇ »Ø ¹Ë Ä£ ʽ £¬ Ö¸ Ã÷ά ¶È¡£ ά¶È¨ ÒåÁË ÁÐÖ® ¼äµÄ ²ã´Î »¯ £¨ ¸ ¼¶ /×Ó ¼¶ £© ¹Øϵ£¬ Ëù ÓеÄÁ ÎÞÐë À´ ×Ôͬһ¸ö±í¡£ÎÃÇ¿ÁƼ¶¨åÊý¾ÝµÄÈòªÕ⽫ÓÐÖúÚ²é ѯÖØдºÍ¸ÅÒª¹ËÎÊ×ö³ü¼¾²ß¡£ Êý¾Ý¿âÉè¼ÆÕßËùÃæÁÙµÄíÒ»¸öÎÌÇ£¬·±²éѯ½«áÖÓ° ËùÓеÄά¶ÈÁ£ø½ö²¿¼ëÏà¹ØÇÒ»Àýçéѯ ÐÇÆÚ¶þø²»Ê¾ßÌåÈÕ¡£Òò´Ëµ±¨Áά֮ºó¹ØëÃèö ¶ÈÁкͱíÖÆäËü®¼µÄ¹ØÏ¡£ ͼ 1 ¾ÊÔÏ ü°ËÁ ½Á¬º ã²ö¸ ĵδ ±Ê £¡¬Îä¼ »ÒÓ´ ¸Öö ÚÆÕȨ¶ ª¿ ¼Ê ¬£ ÐÓ »Ò ¸ö²ã´ÎæËßÒÃÇÈÕÆÚɼ°ÄЩþÖÜ¡¢Ô»ò꣬¶øÁí ¶¨ÒåÁËÈÕ¡¢Ô¼¾ºÍÄê֮䵹ØÏ£ µ±¶¨ÒåÁË»¸ö²ã´ÎÖ®ºó£¬¿ÉÔàÐÀÃèÊýÈç Èç¹û City ÔÚÿ¸ö State Ö®ÄÚÊÇΨһµ£¬«Ô States Ö®¼ä²»Î¨ Ò»£¬ÄÇô¾ÍÐèªÖ¸¶¨öµØÀí²ãÎÆäʽÈç £¨ Country, State, <State, City£©¬´Ó¶øÂú×ã City ¼¶µ½ State ¼¶Ö®äÑϸñµÄ 1:n ²ã ´Î¹Øϵ¡£ ¿ÉÒÔʹÓÃÁ½Ö·¨À´Î¬¶È£º • SQL CREATE DIMENSION Óï¾ä£¬Èçͼ 2 Ëùʾ • Oracle ÆóÒµ¹ÜÀí÷ÖÐÄά¶ÈÏò¼ Oracle9i ʵÌ廯ÊÓͼ µÚ 5 Ò³
  • 6. 1 ½éÉÜʱ¼äά °´Õͼ 1 ö³-» ¬£È¶ Î ÔÒÉ¿ °ïÖú DBA Íê³É¶¨Òå¹ý ³Ì¡£Ã¿¸öԲȦ´ú±íά¶ÖÐ µÄÒ»¸ö ¼¶±ð ¹ý LEVEL ×Ó¾äÀ´ÉùÃ÷¡£Î¬ ²ã´Îͨ ¹ý HERARCHY ×Ó¾äÀ´Éù Ã÷¡£¸ÅÒª¹ÜÀí²Í¬Ñùµ ÓÚ DBA ¶¨ÒåÔ¼ÊøÌõþ£¬ ±£Ö¤²ã´Î¼¶ðÐÿһ µÄÁзǿա£ ÔÚͼ 2 ¬£ÐÖ ÇÃÒÎ ÔÒÉ¿ ½µ´¿ ´½¨¸Ãά¶ÈµÄ SQL Óï ¾ä¡£¼¶±ðÃû³ÆÔÓ¦Úάí ÖеÄÁ¡£È»ºóʹÓÃÕ⩼¶ ±ðÃû³ÆÀ´èÊö¿Ò»²ãΡ£ ×îºó £¬ ʹ Óà ATTRIBUTE ×Ó¾äÀ´¶¨ÒåßÐÖ±½¹Øϵ µÄÏî¿ ¡£Òò ´ËÊô ÐÔ calendar_month_name ¶¼ëÓ ð± month ÐÓ £¡µÏع ʹÓà JOIN KEY ×Ó¾äÀ´ÉùÃ÷ά¶ÈÖÐµÄ 1:n Áª½Ó¹Øϵ¡£ÔÚÊÂ±í ºÍά±íÖ®¼ä£Ê¹ÓõÐÄ FOREIGN KEY ºÍ NOT NULL Ô¼ÊøÌõþÀ´±í¾ÕâÖÁª½Ó¹Øϵ¡£ ¶¨Òåά ȵÄÏà¹ØÌáʾ Ϊ°ïÖú´½¨¬¶È£ÇëÕÏÂÃæµÄ¼ò¥²èº 1. Ö¸Ã÷Ä£ ʽÖÐ µÄËù ÓÐά ¶ÈºÍ ά±í¡£ Èç¹û ά¶È ÊÇ¹æ ·¶»¯ ¼´ Ëü ´æ µÄ£¬ ´¢ÔÚ¶à ¸ö±í ÖУ¬ ÄÇô Çë¼ì ²éά±í Ö®¼ä µÄÁª ½Ó£¬ È·±£ ÿ¸ö×Ó ¼¶ Ð Áª½Óµ Ò»¸ö £¨ ½ö Ò» ¸ö £© ¸ ¼¶Ð ¡£ ¶Ô ÓÚ·Ç ¹æ·¶ »¯Î¬ ¶È £¬ Çë ¼ì ²é ×Ó ¼¶ÁÐÊÇ ·ñΨ һȷ ¶¨¸ ¼¶£¨ »òÊôÐÔ £©ÁÐ ¡£Èç ¹û²» ×ñÊØ ÕâЩ¹æ Ôò £¬ ¿ÉÄÜ»áÔÚ²éѯʱµÃ½´íÎó¹û¡£ 2. Ö¸Ã÷¿ һά ¶ÈÖÐ µÄ²ã ´Î¡£ ÀýÈ磬 day ÊÇ month µÄ ×Ó ¼¶ £¨ÎÒ ÃÇ¿É ÒÔ½« day ¼¶±ð¾ÛºÏµ½ month£©£¬ quarter ÊÇ year µÄ×Ó¼¶¡£ 3. Ö¸Ã÷²ã´Îпһ¼¶±ðµÄÊôÔÀ¹ØÏ¡£ýÈç¬ calendar_month_name ÊÇ month µÄÊôÐÔ¡£ 4. Ö¸Ã÷Êý¾Ý²¿âÐöµ±í½Î¬¶È®¼äÄÁªÓ£ìé Ó½ ¬£ ·È £± ¿Ã ö¸ ÂÊ µÊ Ð ½µÓ ªÁ »Ò ö¸ ö½¨£ ©£ö¸»Ò ȶ¬Î £¡Ð ëÐر ÷ÃùÉ ¸ÃÌõ¼þ £¬ ¶ø ÇÒ»¹ ¿ÉÒÔ Ñ¡Ôñ ÊÇ·ñ¿ ÖÆ´ иà Ìõ¼þ £¬ Æä ·½¨ÊÇ Ïò Ê ʵ¹Ø¼üÁÐÌíÓ FOREIGN KEY ºÍ NOT NULL Ô¼ÊøÌõþ£¬ Ïò¸¼¶Áª½ÓüÌí PRIMARY KEY Ô¼ÊøÌõþ¡£¿ÉÒͨ¹ý NOVALIDATE Ñ¡ Ïî À´ Æô ÓÃÕâЩ Ô¼Êø Ìõ¼þ£¬ ´Ó¶ø ÎÞÐë »¨·Ñʱ ¼ä À´ÑéÖ¤ ±íÖÐ µÄÿ һРÊÇ·ñ Âú×ãÕâ ЩԼ ÊøÌõ ¼þ¡£ ¶ÔÓÚ Ëù ÓÐδµÃ µ½ ÑéÖ¤µÄÔ¼ÊøÌõþ£¬»¹ÐèҪ RELY ×Ó¾äÀ´Ê¹ÆÄÜ»ÃÚ²é ѯÖØд¡£ Oracle9i ʵÌ廯ÊÓͼ µÚ 6 Ò³
  • 7. 2 ´ ½¨Ê±¼äάµÄ SQL Óï¾ä CREATE DIMENSION times_dim LEVEL day IS TIMES.TIME_ID LEVEL month IS TIMES.CALENDAR_MONTH_DESC LEVEL quarter IS TIMES.CALENDAR_QUARTER_DESC LEVEL year IS TIMES.CALENDAR_YEAR LEVEL fis_week IS TIMES.WEEK_ENDING_DAY LEVEL fis_month IS TIMES.FISCAL_MONTH_DESC LEVEL fis_quarter IS TIMES.FISCAL_QUARTER_DESC LEVEL fis_year IS TIMES.FISCAL_YEAR HIERARCHY cal_rollup ( day CHILD OF month CHILD OF quarter CHILD OF year ) HIERARCHY fis_rollup ( day CHILD OF fis_week CHILD OF fis_month CHILD OF fis_quarter CHILD OF fis_year ) ATTRIBUTE day DETERMINES (day_number_in_week, day_name, day_number_in_month, calendar_week_number) ATTRIBUTE month DETERMINES Oracle9i ʵÌ廯ÊÓͼ µÚ 8Ò³ (calendar_month_desc, calendar_month_number, calendar_month_name, days_in_cal_month, end_of_cal_month) ATTRIBUTE quarter DETERMINES (calendar_quarter_desc,calendar_quarter_number, days_in_cal_quarter, end_of_cal_quarter) ATTRIBUTE year DETERMINES (calendar_year, days_in_cal_year, end_of_cal_year) ATTRIBUTE fis_week DETERMINES (week_ending_day, fiscal_week_number) ; ʵÌ廯 Óͼ Ò»µ©¶¨ÒåÁËάȣ¾Í¿ÉÔ´½ÊµÌ»¯Ó¼¡ÏÖÚÃÇ«×ÅØéÜ Ê²Ã´ÇµÌ廯Óͼ£¬ÔÚºóæÎÒ½«¿¨é¹¦ÄÜÈçÆö ЩʵÌ廯Óͼ¡£ ʵÌ廯Óͼ ¶¨Òå¿É°üÀ¾ÛºÏ£¬ýÈç SUM MIN¡¢ MAX¡¢ AVG¡¢ COUNT(*)¡¢ COUNT(x)¡¢ COUNT(DISTINCT)¡¢ VARIANCE »ò STDDEV, »¹¿ÉÒÔ°üÀ¨¸öò¶àÁª½ÓµÆðıíºÍ GROUP BY¡£¿ÉÒÔ½øÐË÷ýºÍ·ÖǬ»¹Ó¦Ãù±¾µÄ DLL ²Ù ×÷£¬ÀýÈç CREATE¡¢ ALTER ºÍ DROP¡£ Oracle9i ʵÌ廯ÊÓͼ µÚ 7 Ò³
  • 8. • SQL ÃÓ¦ òÐ̳ ¸ÍÇÊ Äµ÷à ¬£ Ë´òÒ DBA ¿ÉÒÔÚÈκʱò´½¨»¾³ýµÌå¯Óͼ¶ø²°Ïì SQL Ӧà ³ÌÐò¡£ • Ðí¶àÕ¾µã¼ÒÑ-ÓÁËÊýݲֿ⣬¢ÔÚÆä¨å׺ĸŪ¡ò ´Ë¿ÉÒÔͨ¹ý²éѯÖØÐÀ×¢áÏӸŪ£¬¶ø»ÊÇÆÈçÁã¼ ÖØÐÂÉú³¸ÅÒª¡£ ´ ½¨ÊµÌ廯 Óͼ ʹÓà CREATE MATERIALIZED VIEW Óï¾ä ´½¨ ʵÌå »¯ÊÓͼ ¡£ ͼ 3 ½éÉÜÁË ÈçºÎ ´½¨ Ò»¸ö ÃûΪ costs_mv µÄÊ Ì廯 ÊÓͼ £¬ ͨ ¹ý time ºÍ prod_nam À´¼ÆËã costs µÄ×ܺ͡£ µ±¶¨Òå ÁËÒ» ¸öʵ Ì廯 ÊÓͼ Ö®ºó £¬ ëÐر ØÊñ× ©Ð»Ò æ¹¥µò¼ £¡òÔ SELECT ÁбØë°üº¬ËùÓ GROUP BY ÁУ¬¶ø GROUP BY ÁбØëΪ¼òµ¥ ÐÁ £¡ ªÒèРϺ۾ í±Äµ ½Êï´ ÔÒÉ¿ ÇÊ ÎÈ Îº ĵ SQL Öµ±í ´ï ʽ £¬ ²» °üº¬ ×Ó²é ѯ»òÍø×´¾ÛºÏ¹¦ÄÜ¡£ WHERE ×Ó¾ä ½öÔÊ Ðí°ü º¬ »ùÁÐÉÏ µÄÚ ²¿Í¬ µÈÁª ½ÓÎ ´Ê¡£ ʵÌå »¯ÊÓ Í¼¿ÉÒÔÓµÐ׺Ĵ梹·¶£¬ÕâÑù¾Ö¸¨ËüÚö±í ¼äÖÐÒÔ°ÆÇøÓòµÄ´ó¡£ú»¹¿É½«·×¾üÀ¨¬±ã ʵÌ廯ÓͼÄÚÈÝ´æ¢Ô¶à¸ö±í¿ÕäÖС£ ±íºÍÊÓ¼¶¿ÉÒÔÃÚµÌ廯ĨÖС£ò´Ë¬²ÎÇ°æÀý ×Ó£¬³É±¾¿ÒÔ÷Ϊ»¸öí¶ø²úÆ·Êͼ¡Èç¹û ÔÚʹÓà SYSDATE ºÍ USER ÕâÑùµÄ¹¦ÜʱûÓи¾Ý§ä¯ Êý¾Ý£¬ÄÇôͿÉÒÔ¹ÓÈκ¼¡ ͼ 3 ´ ½¨ÊµÌ廯 ÓͼµÄ SQL Óï¾ä CREATE MATERIALIZED VIEW costs_mv PCTFREE 0 STORAGE (initial 8k next 8k pctincrease 0) BUILD IMMEDIATE REFRESH FAST ON DEMAND ENABLE QUERY REWRITE AS SELECT time_id, prod_name, SUM( unit_cost) AS sum_units, COUNT(unit_cost) AS count_units, COUNT(*) AS cnt FROM costs c, products p WHERE c.prod_id = p.prod_id GROUP BY time_id, prod_name; Oracle9i ʵÌ廯ÊÓͼ µÚ 8 Ò³
  • 9. ÒѾ-ÓµÐÊýݲֿâÄÕãÉÜß±¸ÁËŪºÍ¹³ÌÀ´Î¬»¤ ͼ¡£Òò´Ë¬ûÃÇÏÀÓ²éѯÖØй¦Äܶø»Â½¨¸Åª ¿ÉÒÔʹÓÃCREATE MATERIALIZED VIEW Óï¾äÒÔ¼° ON PREBUILT TABLE ×Ӿ佫ÒÑ-´æÔÚµÄ±í¢²áΪÊÌ廯ͼ¡£ ʵÌ廯ÓͼÄÃû³Æ±ØÐëíÏଣ¹á©èö´ ½¨¸Ã±í µÄ²é ѯµÄ SELECT ×Ó¾ä ¡£ ¿É ÄÜÎÞ ·¨Ê¼ ÖÕ±£ Ö¤ ²éѯµÄ ¾«¶È Óë ±íµÄ¾«¶ÈÆ¥Å䡣ΪÁË¿·þ´ÊÌâ¬Ó¦¸ÃÔÚ¹æÖаüº WITH REDUCED PRECISION ×Ӿ䡣 ʵÌ廯 ÓͼµÄË÷ÒýÑ¡Ôñ ¸ù¾ÝʵÌ廯ÓͼÖÐÄý¿ºÇ·ñ½øÔöÁˢ£¬ÉÜèÒª´ ½¨ÊµÌ廯ÓͼÄË÷Òý¡£ò´¬¦¸Ã¿ÂÇ×ÏÈöα¾Ø Ë÷Òý£¬ÆäÖаüºùÓʵÌ廯ͼ¹Øסû¿ÉÔ »¯ÊÓͼ¹Øü×ÖÁÐÉϵĥÎË÷Òý¡£ µ±´½¨Ë÷ÒýÊ£¬²»ªÍü¼Ç¿Âøö¶Ôæ¢ÕäÄó° Ë¢ÐÂʱ¼äµÄÓ°Ïì¡£ ʵÌ廯 Óͼ¿ÉÒÔ ê³ Ä Ð©¹¤×÷£¿ ÔÚ´½¨ ʵÌå »¯ÊÓ Í¼Ö® Ç°»ò ¸Õ´ ½¨Ê± £¬ DBA ¿ÉÄÜ »á ¶ÔʵÌå »¯ÊÓ Í¼ ²úÉÕâÑùµÄÒÎÊ£ºËü¾¿¹Ü×öôÔìÙ¢ÐÂðÈçû» Ð ¬£ ²ÊªÎ ØÄ´Ã ¿£ DBMS_MVIEW.EXPLAIN_MVIEW ¹ý³Ì¿É ÒÔÌá ¹© ¸ÃÐÅÏ¢¡£ ¿¼ÂÇÎÒÃÔÚÍ 3 Öд½¨µÄÊÌ廯Óͼ£¬Èç¹ûÎÒÃǶɾ³ý COUNT£¨ *£©£¬È»ºóµ÷ÓÃͼ 4 ÖнéÉܵĹý³Ì DBMS_MVIEW.EXPLAIN_MVIEW¡£Ëü½«¸æßÎÒÃǬ·Öøıäú ×Ù (PCT£© ¿ÉÓã¬ÒòΪ³±¾íÑ-»·ÖÇøËùÐÀà͵IJé¯Ø´ ¼¶ ÇÊ É¿ ÜÄ Äµ £¡ »È µÊÚÓÉ ¬£ø¶ åÌ ¯» ÓÊ ¼Í ÐÖ »Ã ÐÓ COUNT£¨ *£© Ë´òÒ¬£ DML Ö®ºó¿ìËÙ¢ÐÂÒѾ-²»ÉÄÜÁ¡£ ͼ 4 ½âÊÍ µÌ廯 ÓͼʾÀý TRUNCATE TABLE mv_capabilities_table; EXEC DBMS_MVIEW.EXPLAIN_MVIEW (‘ SELECT time_id, prod_name,SUM( unit_cost) AS sum_units, COUNT(unit_cost) AS count_units, COUNT(*) AS cnt FROM costs c, products p WHERE c.prod_id = p.prod_id GROUP BY time_id, prod_name’); SELECT capability_name, possible, related_text, msgtxt FROM mv_capabilities_table; PCT_TABLE:Y COSTS: PCT_TABLE:N PRODUCTS: relation is not a partitioned table REFRESH_COMPLETE:Y Oracle9i ʵÌ廯ÊÓͼ µÚ 9 Ò³
  • 10. REFRESH_FAST:Y REFRESH_FAST_AFTER_ANY_DML:N see the reason why REFRESH_FAST_AFTER_ONETAB_DML is disabled REFRESH_FAST_AFTER_INSERT:Y REFRESH_FAST_AFTER_ONETAB_DML:N COUNT(*) is not present in the select list REFRESH_FAST_PCT:Y REWRITE:Y REWRITE_FULL_TEXT_MATCH:Y REWRITE_GENERAL:Y REWRITE_PARTIAL_TEXT_MATCH:Y REWRITE_PCT:Y ʵÌ廯 ÓͼʧРʵÌ廯Óͼܽ³ÖÐøà¿Ø£¬È·±Æä°üºÄý¾ÝÇ× Ì廯ÊÓͼ§ÐµÄ¿Ç±£Ö¤²á·ØÒѾ-ýÝ¡ ÊÓͼËù»ÚµÄ¶ÔÏó¸±ä£¬ü½«êÇΪ§Ð¡ ¿ÉÒÔͨ ¹ý²é ѯ±í USER_MVIEWS À´ÅÐ ¶¨Êµ Ì廯 ÊÓͼ µÄ״̬ ¡£ Èç¹û ¶ÔʵÌ廯ÓͼÄ×´¬Ð²ÃÒÉΣ¿·¢³ö ALTER MATERIALIZED VIEW COMPILE ÃüÁî À´È· ±£ÁË ½â Æä×îР״̬ ¡£ °²È«º¬Òå Êý¾Ý¿âÖеij©ÐÅÏ¢¿ÉÄÜèÒªÞÖÆ·ÃÎÊ£¬²éѯشԱ»Ó ÖÓØ»°²È«úÆ¡£¶ø¬ÉÚËùеķϼÊÇÔ Oracle9i ·þ ÎñÆ÷ÖнøµÄ£¬ËùÒÔ¿ÉÏòÊý¾ÝºÍÌ廯Ӽṩ¸üÇ´ó± »¤¡£ ΪÁË ±ÜÃâ ¶Ôʵ Ì廯 ÊÓͼ »òÏêÇé ±íµÄ δÊÚ È¨·Ã ÎÊ £¬ ÃÓ¹Ê CREATE MATERIALIZED VIEW ʱ½«ÐèÒª CREATE MATERIALIZED VIEW ȨÏÞ¡¢¶ÔêÇé±íµÄ SELECT WITH GRANT ȨÏÞ¡¢ÒÔ¼°¶ ʵÌ廯 ÊÓͼ ÈÝÆ÷ ¶ÔÏó µÄ SELECT WITH GRANT ºÍ INSERT ȨÏÞ ¡£ ´ËÍ⣬Èç¹ûÓû§ÔÚijÎÇëóÖж±í½ø·ÊÕ©ÒѾ-¨ ÒåÁË»¸öò¶àʵ̯Óͼ£¬ÄÇô§½«±ÔÐí·Î ͼ£¬¶ø²»¿ÂǸ³ÓèʵÌå¯ÈÝÆ÷±íĨÏÞ¡Òò´ËÎÛéÑÔ× ºÎ´¦£¬Ö»ÓÐͨ¹ýÁË°²È«¼ìéÅÄÜ·Ãʾݡ Oracle9i ʵÌ廯ÊÓͼ µÚ 10 Ò³
  • 11. ÔÚÀúÊ·ÉÏ£¬¸ÅÒª±í¹ÓÃý³ÌÖеĻöÎâ¾ÍÇõ¼Øº Ëæºó¸üС£Õâ©ÎÊÌâÏÖÔڵýÁ˾ö£¬Òòª¸Å¹ÜÀíá©ÁËһϵ ÁлúÖÆʵÏÂÄ¿£º • • /ºÏ²¢·Éú±ä»¯µÄÚÈÝ • Òò´Ë£¬ DBA ±ØÐ뿼ÂÇèÒª¶àÉÙÊäÀ´½¨ºÍά»¤Ã¸öµÌå¯Ó ͼ£¬²¢ÔÚ»¨·ÑʱäÓë¹Ã¸µÌå¯ËùñÄÐÜÉÆÖ®½ø Ðƽºâ¡£ Oracle 9i ÌṩÁËÏÂÃæµÄ¢Ð·½¨£º • • • ÕâЩ²Ù×÷¿ÉÒÔ • • (DBMS_MVIEW.REFRESH) • (DBMS_MVIEW.REFRESH_DEPENDENT) • (DBMS_MVIEW.REFRESH_ALL_MVIEWS) • °´ÐèË¢Âͨ¹ýµ÷ÓÃÉÏæùÁijÌÖ®Ò»ÀÊ£¬¶ø±å¯ ͼ·¢Éú¸Ä±äʳÓè DBA ÍêÈ«µÄ¿ØÖƨÏÞ¡£ Èç¹ûÑ¡ÔñÁËÌá½»¢Ð£¬ÖҪʵå¯Óͼܴý¾Ý±äÄ°Ïì Ëü¶¼½«×Ô¯¸ÐÂÒ·´Ó³ÃÊý¾Ý¡£È»ø¬ÇëÕâ÷Ϊù ±í·¢Éú¸üĵÊÂÎñÖÐÌá½»´¦ÀÒ²¿¶ø¡£òˬ ÐÂËù»¨·Ñʱ¼äáÉÔ΢³¤Ò©£¬òªè¶-íºÍÓåÖ°ü ¸Ã±íµÄÊÌ廯Óͼ¬×÷³öü¡£ ÍêȫˢРµ±ÊÌå »¯ÊÓ Í¼ê È«Ë¢ ÐÂʱ £¬ Ê× ÏÈ ½Ø ¶Ï ¸Ã ÊÓ Í¼ £¬ È» ºó ¼ÓÔØËù ÓÐÊý ¾Ý¡£ ¼øÓÚʵÌ廯ÍÄ´óС£¬Õâ¿ÉÜáÇÒ¸öº±¹ý³êÈ«Ë¢ ÐÂÔÚÏÁÇé¿öÊÒ»îºÜõļõ£ • 50% ÒÔÉÏ¡£ Oracle9i ʵÌ廯ÊÓͼ µÚ 11 Ò³
  • 12. • • ¿ìËÙ ¢Ð ÓÐÒ»©ÊµÌ廯Óͼ¿ÉÄÜá·Ç³£´ó¬²¾ßÐÖÀýêȫˢ ËùÐèµÄʱ¼ä¡£Ò»ÖÌæ´ú·½¨Çø¿ì٢¬ö«í¯ µÄ²¿·ÖӦýÊÌ廯ͼС£ÔØý¾ÝâÈκ±í ½«±»Ê¶ð£¬Èºó²Î¿¼¸ÃíµÄÌå¯ÓÍÀûÐÂý¾Ýø×Ô ¶¯¸üС£ ΪÁ˽øпì٢²×÷£¬±Øë«Êý¾ÝÖµÄ仯¼ÇÏÀ´Ó ·½¨¿ÉÒÔʵÏÖÕâ»Ä¡£Èç¹ûø¾-Óà SQL*Loader Ö±½Ó·¾¶« Êý¾Ý²åÈëµ½¿âÖУ¬ÄÇôˢ»úÆ«¼ìÕÒ¹³Ì¸÷ Òª¼ÓÔصÄÐÂÊý¾Ý¡£È»¶ø¬´óà±ä¯Çͨ¹ SQL ÃüÁî INSERT¡¢ UPDATE ºÍ DELETE À´½øС£ÔÚÕâÖÇé¿öϬʵÌå »¯ÊÓͼËùÚµÄÿ¸ö±í¶ÐèÒª·Ý MATERIALIZED VIEW LOG¡£ ÿ¸ö±í½ÐèÒª»·ÝÈÕÖ¾£¬ÊµÌå¯ÓͼÔÚ¶ø² ÓÊ ¼Í ÐÖ £¡ òÒ çÈË´ ýÊû¹ ÐÖâ¿Ý¾ ö½ ÐÓ 6 í±ö¸ úÉ¢· ä±ËÁ ¬£¯» «½òÔ ªÒèÐö½ 6 ·ÝʵÌ廯ÓͼÈÕÖ¾¡£«¿ÉÒÔÃκýÁÄÀ´¹â ЩÈÕÖ¾¡£ Çë×¢Ò⣬²·ËùÓеÄÊÌ廯ͼ¶¿ÉÔ½øìÙ¨¹ý µ÷Óà DBMS_MVIEW.EXPLAIN_MVIEW ¹ý³ÌÀ´È·ÏÆäÊÇñ¿ÉÒÔ ¿ìË٢С£¸Ã¹ý³Ì»½¨Òé誶Ôʵå¯ÓͼøÄ©²×÷¬´ ʹÆä¿ÉÒÔìË٢С£ ˢкÍÔ¼ÊøÌõ þ Ç°ÃæÔø¾-Éù÷¹ý£¬ÀíÏëé¿ö¼ÊÌõþ¨ÓÈÆäÍâ²Øü×Ö ÊøÌõ¼þ£©Ó¦¸ÃÔÚʵ±íÖж¨Ò壬´øÈ·Ä»¿Éë Ò»¸öά¶ÈÏàÆ¥Åä¡£µ±Ìá½´ÊÔ¼øõþЩ DBA »òÐíáÓÊÖ Ê¾Ò⣬ Ðû³Æ ÓÉÚ ¿ÉÄÜ µÄÐÔ ÄÜ¿ªÏú £¬ ¸Ã Êý¾Ý ¿âÖÐ ½«²» ÔÙÓм ÊøÌõ ¼þ ¡£ È»¶ø£¬ DBA ¿ÉÒÔÈ·ÐÅ£¬Í¨¹ýÊÓà ALTER TABLE <table name> ENABLE NOVALIDATE CONSTRAINT <name> ×Ӿ䣬 ¿ÉÒÔÁ¢¼´ÆôÓÃÊøÌõþ¶ÎÞÐèì²éý¾Ý¡£Èç¹û SQL*Loader Ö±½Ó·¾¶«ÊýݼÔصíУ¬ÄÇôÈÏé¿öËùøÌõ ¼þ¶½«±»ûÓá£ÔØʵíÖ®ºó¬·¢³öÆôï¾ä NOVALIDATE »áÁ¢¼´ÆôÓÃÔÊøÌõþ¶ÎÞÐëì²éý¾Ý¡£ÒòËüÚرä ûÓÐÈκ°Ï죬ÆôÔ¼ÊøÌõþ²èÒª¨·Ñ±ä¡¶ÉÚ ¼ÓÔصÄÊý¾ÝûнøÑéÖ¤£¬Òò´ËÈ·±ù²á°Ïì ÈκÍêÕûÐÔ¼ÊøÌõþ¾ÓªÖØÒ¡£ Oracle9i ʵÌ廯ÊÓͼ µÚ 12 Ò³
  • 13. Êý¾ÝËäÈ»ÒÑ-¢Ð£¬µ«Ìå¯ÓͼԿÉò¹¨ ÃüÁîALTER SYSTEM SET QUERY_REWRITE_ENABLED = FALSE ½ûÓà ²éѯ ÖØд £¬ Ö± ÖÁËùÓРʵÌå »¯ÊÓ Í¼¶ ÒѾ- ˢР¡£ Áí Ò»·½ Ã棬¶ÔÓÚÄÇЩ²»èҪʵÌå¯Í¼·´³×îÂØý¾Ý§¿É Ôڻ᰼¶ÆôÓòéѯÖØд¡£ ·ÖÇøά»¤²Ù×÷ºÍʵÌ廯 Óͼ Oracle9i Ìṩ ÁËÒ» ¸ö³Æ Ϊ ·ÖÇø±ä »¯¸ú ×Ù £¨ PCT£© é×ĵ ¬£þ¼ é×ø þ¼ ¿ÉÒÔ͸Ã÷µØ¼ì²â½·ÖÇø¢ú±ä»¯£¬ÈºóÅж¨Ù×Êñ¹Ìå »¯ÊÓͼÖеÄý¾Ý²Ò¡£ÀÈ笺Ϣ·ÇøòÌí½«á°ì µ½ÊÌ廯Óͼ£¬Ö´ÐÕâÑùĹý³²á±êÇΪ§ Ч¡£ ·ÖÇø±ä»¯¸ú×Ù¹¿ÉÒÔÓÃÚ÷²°ÏìÁËÄЩʵÌåͼ С£ÀýÈ笹ûÒ»¸öÏêÇé±í·Öø½Ø¶òɾ³ PCT ½«Ö¸Ã÷ʵÌå »¯ÊÓͼÖÐÜ°ÏìµÄ²¢½«Æäɾ³ý¡£ DBMS_MVIEW.EXPLAIN_MVIEW ¹ý³Ì½«¨ÒéĻʵå¯Óͼ ÊÇ·ñ¿ÉÒÔ¹Óà PCT¡£ ²éѯÖØд ÔÚ¸ÅÒª¹ÜÀíµÄÖî¶àÓãУ¬ÕËû§æý³ÆÞ÷®ÊÇ ²éѯÖØд¹¦ÄÜ¡£ÕâÊÇÒ»ÏîÓżõ¬×ª¸ù¾Ý±íºÍ À´±àеÄÓû§²éѯ£¬¶øÊÌåͼ־ðÈ¡ýÝá¸ßËÙ ¶È¡£ÓÉÚ Oracle9i ·þÎñÆ÷¿ÉÒÔ׶¯ÖØдȺÏ浀 SQL Ó¦Ã³Ì ÐòÒÔʹÓõÌ廯ͼ£¬´Ëü¶ÚÖէǸ÷ÄÎÞè SQL ӦóÌÐòµÄ¸ÉÔ¤»áʾ¡£ËäȱÎÖùÒý¶¼Ç SQL SELECT ×Ӿ䣬µ«²éѯÖØдÈÔ½ÒÀÚ°üº SELECT ×Ó¾äµÄ INSERT ºÍ CREATE TABLE Óï¾ä¡£ ²éѯÖØд¿ÉÒÔÓÃÚ¸÷¡£Çëע⬶ÎÈÏóùµÄ¹ ϵÎÞÐèÇ¿ÖÆ´£¬«¼ÙÉËüÃÊÕæÄ¡Èç¹ûù÷ØÓë±íý¾Ý ÖдæÔÚµÄʼ¹Øϲ»Æ¥Å䣬ÇñéѯÓÎÌâ ÉùÃ÷À´ÖØвéѯʱ£¬ºÜ¿Ä»áúíÎó½¹û¡ýͨ ¹ý¶¨ÒåØϵºÍÊÓÃÔ¼øÌõþ±ã³È·£¾ÝÄÕЬËùÉú µÄ±¨¸æ½«ÊÇ¿ÉÐÅ£¬ÆäÖ°üºÕýÈ·á¹û¡ÏÁËͳêÔ ºó£¬ ¿É ÒÔ ½ö Ͷ Èë ×î С µÄ Ŭ Á¦ºÍ¿ª Ïú¾Í »ñµÃ ¿ìËÙ ¡¢ ×¼ È·µÄ²é ѯ½á ¹û ¡£ ²éѯµÄ׳ɻÔÙÐèÒªÓëÊÌåͼ¶¨¾«È·Æ¥Å䣬òÎÕâÇó DBA Ê ÏÈ Öª µÀ Ó¦ ¸Ã Õë ¶Ô Êý ¾ÝÖ´Ð ÄЩ ²éѯ ¡£µ± È»Õâ ÊDz»¿É Äܵ £¬ ÓÈÆä¶ÔÊý¾Ý²Ö¿â¸üÇç´Ë£¬ÒòΪڹ«µÄ÷ºÃ¦® Ò»¾ÍÊÇÁ¢¼´ÖеIJéѯ¡£òˬ¹ÓÃÌå½ö¿Éú×ã ²éѯµÄÒ»¿·Ö£¬Øд¹ÊÇá¢Éú¡ Oracle9i ʵÌ廯ÊÓͼ µÚ 13 Ò³
  • 14. /½ûÓòéѯÖØд µ±ÉèÖÃÁËÏÂвÎÊý£¬éѯش½«·¢úº ALTER SESSION SET QUERY_REWRITE_ENABLED = TRUE »ò ALTER SYSTEM SET QUERY_REWRITE_ENABLED = TRUE »òµ±¶¨ÒåʵÌ廯ÊÓͼʱ£¬Í¨¹ý°üÀ¨×Ó¾ä QUERY ENABLE REWRITE ÒÔʹÆä·ûºÏ²éѯÖØдÌõ¼þ¡£ ÓÐʱ¿ÉÄÜèÒª½ûòéѯÖØ´£¬ÕâÔͨ¹ý«ÏæµÎ¸ FALSE À´ÊµÏÖ£¬Ò²¿ÉÔÚ»¸ö¾ßÌå¯Óͼ¹Ã DISABLE QUERY REWRITE ×Ó¾äÀ´ÊµÏÖ¡£ ²éѯÖØдµÄÀà Í Oracle9i ÖÐ¿É ÒÔÓÐ ¸÷Ö ²é ѯÖØд ÀàÐÍ £¬ ÏÂÃæ µÄÀý ×Ó½é ÉÜÁËʹ ÓÃͼ 5 ÖеÄÊÌ廯Óͼ¿ÉÒÔÏ©¹¦Ü¡£ ͼ 5 ʵÌ廯 Óͼ à ڲéѯÖØдʾÀý CREATE MATERIALIZED VIEW all_cust_sales_mv BUILD IMMEDIATE REFRESH COMPLETE ENABLE QUERY REWRITE AS SELECT c.cust_id, p.prod_id, sum(s.amount_sold) AS dollars, sum(s.quantity_sold) as quantity FROM sales s , customers c, products p WHERE c.cust_id = s.cust_id AND s.prod_id = p.prod_id GROUP BY c.cust_id, p.prod_id; ÍêÈ«Æ¥Åä µ±ÊÌ廯Óͼ¶¨Òë²éÑêÈ«Æ¥Å䣬½á·¢Éú×îòÄ ¯Ñ ØÖ ²Ò£¡´Ð ÇÊ; ¬£µË FROM ×Ó¾ä ÖÐµÄ ±í ¡¢ WHERE ×Ó¾äÖÐ µÄÁª ½Ó ºÍ GROUP BY ×Ó¾äÖеĹؼüÔÚ²éѯºÍÊÌå»®êÈ«Æ¥ Åä¡£ÀýÈ笸ø³öÏÂÃæµÄ²éѯº SELECT c.cust_id, sum(s.quantity_sold) as quantity FROM sales s , customers c, products p WHERE c.cust_id = s.cust_id AND s.prod_id = p.prod_id GROUP BY c.cust_id, p.prod_id; Oracle9i ÖØд˲éѯÒÔʹÓà all_cust_sales_mv Oracle9i ʵÌ廯ÊÓͼ µÚ 14 Ò³
  • 15. ÓÐʱºò²éѯ¿ÉÄÜ»áμ³ÒÁ£¬¸Ã´æ¢ÔÚŪíÖµ«Ç ¿ÉÒÔͨ ¹ý½« ʵÌå »¯ÊÓ Í¼Áª ½Ó·µ»Ø µ½ºÏ ÊµÄ Î¬±í À´ÖØ Ð»ñµÃ ¡£ Àý Èç £¬ ÔÚÇ°Ãæ µÄÀý ×ÓÖÐ £¬¼Ù É豨 ¸æ²»ÊÇ ¸ù¾Ý Óû§ ID£¬¶ø ÊÇ Ê¹Óà »§Ãû ¡£ SELECT c.cust_last_name, sum(s.quantity_sold) as quantity FROM sales s , customers c, products p WHERE c.cust_id = s.cust_id AND s.prod_id = p.prod_id GROUP BY c.cust_last_name, p.prod_id; ´Ë´Î²éѯ²Î¿¼ c.cust_last_name ÁУ¬¸Ã²»ÔÚʵÌå¯Óͼ all_cust_sales_mv ÖУ¬µ« c.cust_last_name ÔÚ¹¦ÄÜÉÏÈ¡¾öÓ c.cust_id£¬ Õâ ÊÇÓÉ ËüÃÇ Ö®¼ä µÄ²ã´Î ¹Øϵ ¾ö¶¨ µÄ¡£ Õâ Òâ ζ×ű¾ ´Î²é ѯ ¿ÉÒÔͨ ¹ý all_cust_sales_mv À´ÖØ Ð´£¬ ÒòΪ all_cust_sales_mv ªÁ»± ½Ó·µ»Ø¿Í§±íÒÔñà c.cust_last_name ÁС£ ¸ÅÒª»ã×Ü ò¾ÛºÏËùÓÐ µ±²éѯÔÚijһã´ÎÖÐÇëó¾ÛºÏ£¨Èç SUM £¨ÏúÊÛ©¬¸Ã¾ºµÄ ¼¶±ðȾۺÏÔÚʵÌ廯ÓÍÖдæ¢Ä¸üߣ¬¿ÉÒ¨¹ýà Ì廯ÊÓ Í¼ £¬ ÒÔ ¼° ½« ¸Ã ¾Û ºÏ »ã×ܵ½ ËùÐè ¼¶±ð ´Ó¶ø ¶Ô¸Ã ²éѯ½ø ÐÖØ Ð´ ¡£ ÀýÈ磬ÎÒÃǵÄÊÌ廯Óͼ all_cust_sales_mv ÊÇÔÚ¿Í»§¼¶±ðÉÏ×éÖ¯ Êý¾ÝµÄ£¬«ÎÒÃÇ¿ÉܸüÏÍûÔÚ״̼¶±ð½öÓ»§À¨æ¡ ÎÒÃÇѾ-´½¨ÁË¿Í»§¬£üèÊöºøÓòÖ®¼äµÄ¹ØÏ¡ ÏÂÃæµÄ²éѯ¿ÉÒÔʹÓÎÇÌå»Í¼ all_cust_sales_mv À´²úÉ ±¨¸æ£¬½«Ä³Ò»¿Í§µËùÓÐÊý¾Ý¶¼ÛºÏÆðÀ´²¢ã×ÜÌ¡ SELECT c.cust_state_province, sum(s.quantity_sold) as quantity FROM sales s , customers c, products p WHERE c.cust_id = s.cust_id AND s.prod_id = p.prod_id GROUP BY c.cust_state_province; Êý¾Ý×Ó¼¯ Æù½ñΪֹ£¬ÒÃÇѾ-¿´µÄËÓÐÊÌ廯ͼ°üºÁÈ«²ýÝ µ«ÕâÈÔ »áµ¼ ÖÂÒ» ¸ö·Ç ³£ÅÓ ´óµÄÊ Ì廯 ÊÓͼ ¡£ Oracle9i ÔÊÐí¶¨ Òå» ¸ö ʵÌ廯 ÊÓͼ £¬ Ëü½ö °üº¬ ͼ 6 ÖÐËù ʾµÄ ²¿·Ö Êý¾Ý £¬ ¼´ Dublin, Galway, Hamburg ºÍ Istanbul µÄÊý¾Ý¡£ Oracle9i ʵÌ廯ÊÓͼ µÚ 15 Ò³
  • 16. 6 °üº¬Êý¾Ý×Ó¼¯µÄÊ Ìå» Óͼ CREATE MATERIALIZED VIEW some_cust_sales_mv BUILD IMMEDIATE REFRESH COMPLETE ENABLE QUERY REWRITE AS SELECT c.cust_id, p.prod_id, sum(s.amount_sold) AS dollars, sum(s.quantity_sold) as quantity FROM sales s , customers c, products p WHERE c.cust_id = s.cust_id AND s.prod_id = p.prod_id AND c.cust_state_province IN ('Dublin','Galway','Hamburg','Istanbul') GROUP BY c.cust_id, p.prod_id; ÏÖÔÚ¸ÃʵÌ廯ÊÓͼ¿ÉÒÔÓÃÓÚÂú×ã°üº¬·¶Î§µÄ²éѯ£¬ ÀýÈçÏÂÃæËùʾµÄ IN ºÍ BETWEEN ×Ӿ䡣 SELECT c.cust_state_province, sum(s.quantity_sold) as quantity FROM sales s , customers c, products p WHERE c.cust_id = s.cust_id AND s.prod_id = p.prod_id AND c.cust_state_province IN ('Dublin','Galway') GROUP BY c.cust_state_province; ²éѯÖØдÍêÕû Ô·½Ê ¸ÅÒª¹ÜÀí½«¾¡Á¦Ê¶±ð²»ÖµÄÌå¯Óͼ¢´òÉÏàêÇ£¬ ΪÁË¿·þÕâЩÎÊÌ⣬¿ÉÒÔͨ¹ý² QUERY_REWRITE_INTEGRITY À´Ñ¡ÔñÈýÖÍêÕûм¶±ð£ • STALE_TOLERATED • TRUSTED • ENFORCED (default) ÔÚ STALE_TOLERATED ·½ÊÖÐ ½«Ê¼ ÖÕʹ ÓÃÒ» ¸öʵ Ì廯ÊÓ Í¼£¬ ¼´ ʹËüÒÑ ¾-ʧ Ч ¡£ ÔÚ TRUSTED ½· ¬£ÐÖ½Ê ¯»ÅÓ òÐ̳ ÅÐàÏ µÊ åÌ ¯» ÓÊ ¼Í ÖеÄÊý ¾ÝÊÇ ×îРµÄ £¬ ÔÚ Î¬ ¶ÈÖÐÉù Ã÷µÄ ¹Øϵ ºÍ RELY Ô¼ÊøÌõ ¼þÊÇ Õý È·µÄ¡£ÔÚÕâÒ»½ÊÖЬÓů³Ìò¹«Ã¤Ï¨Á¢åͼ »òùÓÚ ÊÓͼ µÄÊ Ì廯 ÊÓͼ £¬ ²¢ ʹÓÃ Î´Ö ÐºÍ ÒѾ- µÃ µ½Ö´Ð µÄ¹Ø ϵ ¡£ ÔÚÕâÖ·½ÊУ¬ÓÅ»¯³Ìò¹¡°ÈαÒѾ-ÉùÃ÷µ«´ ENABLED VALIDATED µÄÖ÷ /Ψһ¹Ø¼ü×ÖÔÊøÌõþºÍýά¶È¸Ã÷µÄ¾Ý ¹Øϵ¡£ Oracle9i ʵÌ廯ÊÓͼ µÚ 16 Ò³
  • 17. ENFORCED ·½ÊÇĬÈÏ£ÔÚÕâÖÐÓÅ»¯³Ìò«¹ ÓÃÈ·ÖªÆä°üº¬×îÐÂÊý¾ÝµÄÌ廯ͼ£ÒÔ¹ùÚ ENABLED VALIDATED Ö÷ /Ψһ /Íⲿ¹Ø¼ü×ÖÔÊøÌõþµÄÏ¡£ Òò´ËÄú½«·¢ÏÖ£¬Èç¹û»Ð©Ô¼ÊøÌõþÉΧÇÃÓ¸¨µ ²éѯÖØд½«»á·¢Éú¡£µÈç¹ûÊÓÃÄÇÔ¼øÏ TRUSTED »ò STALE_TOLERATED ģʽ¬ÕâЩ²éѯÖØ´Ôò»á·¢Éú¡ ½á¹ûÊÇ·ñÕýÈ µ± SQL ²éѯ ʹÓà ʵÌå »¯ ÊÓͼ¶ø ·ÇÕæ 浀 Êý¾Ý Դʱ£¬ ÓÐʱºò »á³ö ÏÖ ·µ»Ø½á¹û²Í¬ÄÇé¿ö¡£ 1. ʵÌ廯 ÊÓͼ ¿ÉÄÜ ÓëÏê ϸÊý ¾Ý²»Í¬ ²½¡£ ·¢Éú ÕâÖ Çé¿ö µÄ Ô-Òòͨ ³£ ÊÇˢйý³ÌÒÆð£¬Í±Ñ¡ÔñÁ STALE_TOLERATED ÍêÕûÐÔ ·½Ê¡£ 2. Áª½ÓÐ ¿ÉÄÜ Ó°Ïì ²Î¿¼ µÄÍê ÕûÐÔ¡£ ÔÚÕâ ÖÇé ¿öÏ £¬ Ò» Щ ×Ó¶ËµÄ Ð Ã»ÓÐÕý È·»ã ×ܵ½ ¸¶Ë µÄÐ ¡£ Ϊ ÁË ±Ü Ãâ ·¢ Éú Õâ Ö Çé ¿ö £¬ ÇëʹÓà ϵ ͳǿÖÆ Ö´Ð µÄÍê ÕûÐÔ £¬ Õâ Ñù¿ªÏú ÊÇ΢ ²»×ã µÀÄ £¬ ¶ø »ñÀûÈ´ ºÜ ÏÔ Öø¡£ µ±ÊÌ廯Óͼ°üº¬Á˲ÔÙÎÚÏêÇéý¾ÝÖÐÄÅ¢£¿ÉÒ´ ½¨Ò»¸ö rolling materialized view¡£ÀýÈç¬ÊµÌ廯Óͼ¿ÉÄÜ°üº 18 ¸öÔ嵀 Êý¾Ý £¬ µ« ÏêÇé ±íÖÐ ½ö°üº¬ ×î½ü 6 ÂÔö¸ £¡Äµ Ë´òÒ ¬£ çÈ û¹ é² ¯Ñ ½«ÔÚ»ù±íÖжø²ÊǵÌå¯Óͼ£¬ÄôϾá¹û¡ ½âÊÍÖØд µ±Ê¹ÓòéѯÖØд£¬Î×îÆ·ÄÌâÇ¡°Ë»áÂð¿ »ò¡°ÎªÊ²Ã´ËéѯÖØУ¿± Oracle9i ͨ¹ý DBMS_MVIEW.EXPLAIN_REWRITE ¹ý³Ì¸øöÁËÕâÒ»ÎʵĽ ¾ö°ì·¨ £¬ ͼ 7 ÖÐ ÏÔ Ê¾ ÁË Ò» ¸öʹÓà ·¶Àý ¡£ Òò ´Ë£¬ ¿ÉÒÔ ÔÚ²éѯ ÔËÐ Ö® Ç°Á˽â¸ÃÐÅÏ¢¡£ ²éѯÎı¾×÷ªÒ»¸ö³¤Ö·û´®«µÝ£¬Ã¹ýÌæ¢ÆäÔÚí REWRITE_TABLE ÖÐ ÕÒ µ½ µÄ½á¹û £¬ ±Ø Ðë²é ѯ¸Ã ±í²Å Äܲ鿴 ¹ý³Ì µÄ ½á¹û¡£ÔÚÏÂÃæµÄÀý×ÓÖЬÎÒÇ«¿´ some_cust_sales_mv ÓÃÚ´Ë ´Î²éѯ¡£ Oracle9i ʵÌ廯ÊÓͼ µÚ 17 Ò³