oracle ·ÖÇø±íµÄ½¨Á¢·½·¨
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> SELECT COUNT(*) from T PARTITION (P2);
COUNT(*)
----------
6246
SQL> SELECT COUNT(*) from T PARTITIO
Ïà¹ØÎĵµ£º
TO_DATE¸ñʽ(ÒÔʱ¼ä:2007-11-02 13:45:25ΪÀý)
Year:
yy two digits Á½Î»Äê ......
OracleµÄÊÓͼ²»Ö§³Ö²ÎÊý
ÕâÀïÓÐÒ»¸öÁíÀàµÄ·½·¨£¬²»ÊǺܺ㬵«ÊÇ»¹ÊÇÒ»ÖÖ½â¾ö·½°¸
ͨ¹ýpackageʵÏÖ
create or replace package pkg_pv is
¡¡¡¡procedure set_pv(pv varchar2);
¡¡¡¡function get_pv return varchar2;
¡¡¡¡end;
¡¡¡¡create or replace package body pkg_pv is
¡¡¡¡v varchar2(20);
¡¡¡¡procedure set ......
1.ÓÃOracleÓû§µÇ½Linux·þÎñÆ÷;
2.ÔÚÖÕ¶Ë´°¿ÚÊäÈë sqlplus /nolog
[oracle@hylinux ~]$ sqlplus /nolog
SQL*Plus: Release 10.2.0.1.0 - Production on ÐÇÆÚ¶þ 7ÔÂ 29 14:26:16 2008
Copyright (c) 1982, 2005, Oracle. All rights reserved.
& ......
¶ÔÓÚinstrº¯Êý£¬ÎÒÃǾ³£ÕâÑùʹÓ㺴ÓÒ»¸ö×Ö·û´®ÖвéÕÒÖ¸¶¨×Ó´®µÄλÖá£Àý
È磺
SQL> select
instr('yuechaotianyuechao','ao') position from dual;
POSITION
----------
6
´Ó×Ö·û´®'yuechaotianyuechao'µÄµÚÒ»¸öλÖÿªÊ¼£¬Ïòºó² ......