OracleÌṩÁË·ÖÇø¼¼Êõ(»ã×ÜÌû)
OracleÌṩÁË·ÖÇø¼¼ÊõÒÔÖ§³ÖVLDB(Very Large DataBase)¡£·ÖÇø±íͨ¹ý¶Ô·ÖÇøÁеÄÅжϣ¬°Ñ·ÖÇøÁв»Í¬µÄ¼Ç¼£¬·Åµ½²»Í¬µÄ·ÖÇøÖС£·ÖÇøÍêÈ«¶ÔÓ¦ÓÃ͸Ã÷¡£
OracleµÄ·ÖÇø±í¿ÉÒÔ°üÀ¨¶à¸ö·ÖÇø£¬Ã¿¸ö·ÖÇø¶¼ÊÇÒ»¸ö¶ÀÁ¢µÄ¶Î£¨SEGMENT£©£¬¿ÉÒÔ´æ·Åµ½²»Í¬µÄ±í¿Õ¼äÖС£²éѯʱ¿ÉÒÔͨ¹ý²éѯ±íÀ´·ÃÎʸ÷¸ö·ÖÇøÖеÄÊý¾Ý£¬Ò²¿ÉÒÔͨ¹ýÔÚ²éѯʱֱ½ÓÖ¸¶¨·ÖÇøµÄ·½·¨À´½øÐвéѯ¡£
·ÖÇøÌṩÒÔÏÂÓŵ㣺
ÓÉÓÚ½«Êý¾Ý·ÖÉ¢µ½¸÷¸ö·ÖÇøÖУ¬¼õÉÙÁËÊý¾ÝË𻵵ĿÉÄÜÐÔ£»
¿ÉÒÔ¶Ôµ¥¶ÀµÄ·ÖÇø½øÐб¸·ÝºÍ»Ö¸´£»
¿ÉÒÔ½«·ÖÇøÓ³Éäµ½²»Í¬µÄÎïÀí´ÅÅÌÉÏ£¬À´·ÖÉ¢IO£»
Ìá¸ß¿É¹ÜÀíÐÔ¡¢¿ÉÓÃÐÔºÍÐÔÄÜ¡£
OracleÌṩÁËÒÔϼ¸ÖÖ·ÖÇøÀàÐÍ£º
·¶Î§·ÖÇø£¨range£©£»
¹þÏ£·ÖÇø£¨hash£©£»
Áбí·ÖÇø£¨list£©£»
·¶Î§£¹þÏ£¸´ºÏ·ÖÇø£¨range-hash£©£»
·¶Î§£ÁÐ±í¸´ºÏ·ÖÇø£¨range-list£©¡£
OracleµÄÆÕͨ±íûÓа취ͨ¹ýÐÞ¸ÄÊôÐԵķ½Ê½Ö±½Óת»¯Îª·ÖÇø±í£¬±ØÐëͨ¹ýÖØ½¨µÄ·½Ê½½øÐÐת±ä£¬ÏÂÃæ½éÉÜÈýÖÖЧÂʱȽϸߵķ½·¨£¬²¢ËµÃ÷ËüÃǸ÷×ÔµÄÌØµã¡£
·½·¨Ò»£ºÀûÓÃÔ±íÖØ½¨·ÖÇø±í¡£
²½Ö裺
SQL> CREATE TABLE T (ID NUMBER PRIMARY KEY, TIME DATE);
±íÒÑ´´½¨¡£
SQL> INSERT INTO T SELECT ROWNUM, CREATED from DBA_OBJECTS;
ÒÑ´´½¨6264ÐС£
SQL> COMMIT;
Ìá½»Íê³É¡£
SQL> CREATE TABLE T_NEW (ID, TIME) PARTITION BY RANGE (TIME)
2 (PARTITION P1 VALUES LESS THAN (TO_DATE('2004-7-1', 'YYYY-MM-DD')),
3 PARTITION P2 VALUES LESS THAN (TO_DATE('2005-1-1', 'YYYY-MM-DD')),
4 PARTITION P3 VALUES LESS THAN (TO_DATE('2005-7-1', 'YYYY-MM-DD')),
5 PARTITION P4 VALUES LESS THAN (MAXVALUE))
6 AS SELECT ID, TIME from T;
±íÒÑ´´½¨¡£
SQL> RENAME T TO T_OLD;
±íÒÑÖØÃüÃû¡£
SQL> RENAME T_NEW TO T;
±íÒÑÖØÃüÃû¡£
SQL> SELECT COUNT(*) from T;
COUNT(*)
----------
6264
SQL> SELECT COUNT(*) from T PARTITION (P1);
COUNT(*)
----------
0
SQL> S
Ïà¹ØÎĵµ£º
Ó¦¸¶Ä£¿éµÄ¶àÊýÒµÎñ»ùÓڲɹººÍ¿â´æµÄ²Ù×÷£¬Òò´ËÓ¦¸¶Ä£¿éµÄÔ½áÓ¦¸ÃÔڲɹºÄ£¿éºÍ¿â´æÄ£¿éÔ½áºó²ÅÄÜ¹Ø±Õ»á¼ÆÆÚ¡£
Ô½ᲽÖè
ÔÚÿ¸ö»á¼ÆÆÚÄ©£¬Ó¦¸¶Ä£¿éµÄÔ½áÓ¦×ñÑÒÔÏÂÁ÷³Ì£º
1.¼ì²éÒµÎñÊÇ·ñÈ«²¿Â¼Èë;
2.¼ì²éÊÇ·ñÓÐδÑéÖ¤¡¢Ôݹҷ¢Æ±;
3.¸üе½ÆÚµÄÔ¶ÆÚ¸¶¿î״̬;
4.¼ì²éÓ¦¸¶ÒµÎñÊÇ·ñÉú³É·Ö¼;
5.Ó¦¸¶ÒµÎñ´«Ë͵½×ÜÕÊ;
6 ......
¡¡¡¡
¡¡¡¡±¾Êé×÷Ϊһ±¾´´×÷Ö®³õ¾Í¶¨Î»ÓÚ¼¼ÊõÓ¦ÓõÄʵ¼ù²Î¿¼Ê飬ËäȻǰǰºóºó´®ÁªÁËOracleÊý¾Ý¿âÖÐÊ®Óà¸ö³£ÓÃÌØÐÔ»ò¹¤¾ß£¬µ«ÔÚÕ½ڵÄÉè¼ÆÉÏÍêÈ«×ñÑÕâÒ»ÀíÄî¡£ÔÚÉæ¼°ÌØÐÔ»ò¹¤¾ßÓ¦ÓõÄÿһ¸öÕ½ڣ¬¾ùÓÐÏà¹ØÊµÀýÑÝʾÈçºÎÓ¦Óã¬ËùÓÐʾÀýµÄ×îÖÕÄ¿µÄ£¬¾ÍÊÇÏ£ÍûÔĶÁ±¾ÊéµÄÅóÓÑ£¬Äܹ»½«Ë«ÊÖ½â·Å³öÀ´£¬×ÔÐÅÁé»îµØÊ¹ÓÃÊéÖнéÉܵĸ÷Ï ......
1¡¢Windows 2000+ORACLE 8.1.7
2¡¢ORACLE°²×°Â·¾¶Îª£ºC:\\ORACLE
ʵÏÖ·½·¨£º
1¡¢ ¿ªÊ¼££¾ÉèÖ㣾¿ØÖÆÃæ°å££¾¹ÜÀí¹¤¾ß££¾·þÎñ
Í£Ö¹ËùÓÐOracle·þÎñ¡£
2¡¢ ¿ªÊ¼££¾³ÌÐò££¾Oracle - OraHome81££ ......
OracleÊý¾Ý¿â×Ô¶¯Ôö³¤ÁеÄʵÏÖ¹ý³Ì:
¡ô1.´´½¨ÐòÁÐ
-- Create sequence
create sequence INNERID
minvalue 1
maxvalue 99999999999999
start with 1
increment by 1
cache 20
order;
¡ô2.--INNERID.currval Ö¸µ±Ç°ÐòÁÐ
--INNERID.nextval Ö¸Ï ......