oracleº¯ÊýË÷ÒýС½á
º¯ÊýË÷ÒýµÄ¸ÅÄ
»ùÓÚº¯ÊýµÄË÷ÒýÒ²ÊÇ8iÒÔÀ´µÄвúÎËüÓÐË÷Òý¼ÆËãÁеÄÄÜÁ¦£¬ËüÒ×ÓÚʹÓò¢ÇÒÌṩ¼ÆËãºÃµÄÖµ£¬ÔÚ²»ÐÞ¸ÄÓ¦ÓóÌÐòµÄÂß¼ÉÏÌá¸ßÁ˲éѯÐÔÄÜ¡£Ê¹ÓûùÓÚº¯ÊýµÄË÷ÒýÓм¸¸öÏȾöÌõ¼þ£º
(1)
±ØÐëÓµÓÐQUERY REWRITE£¨±¾Ä£Ê½Ï£©»òGLOBAL QUERY REWRITE£¨ÆäËûģʽÏ£©È¨ÏÞ¡£
(2)
±ØÐëʹÓûùÓڳɱ¾µÄÓÅ»¯Æ÷£¬»ùÓÚ¹æÔòµÄÓÅ»¯Æ÷½«±»ºöÂÔ¡£
(3)
±ØÐëÉèÖÃÒÔÏÂÁ½¸öϵͳ²ÎÊý£º
QUERY_REWRITE_ENABLED=TRUE
QUERY_REWRITE_INTEGRITY=TRUSTED
¿ÉÒÔͨ¹ýalter system set,alter session setÔÚϵͳ¼¶»òÏ̼߳¶ÉèÖã¬Ò²¿ÉÒÔͨ¹ýÔÚinit.oraÌí¼ÓʵÏÖ¡£
ÕâÀï¾ÙÒ»¸ö»ùÓÚº¯ÊýµÄË÷ÒýµÄÀý×Ó£º
º¯ÊýË÷Òý½¨Á¢¼°Êý¾Ý×¼±¸£º
SQL> create index test.ind_fun on test.testindex(upper(a));
Ë÷ÒýÒÑ´´½¨¡£
SQL> insert into testindex values('a',2);
ÒÑ´´½¨ 1 ÐС£
SQL> commit;
Ìá½»Íê³É¡£
Ç¿ÖÆÊ¹ÓûùÓÚ¹æÔòµÄÓÅ»¯Æ÷£¬ËùÒÔ²»»áʹÓú¯ÊýË÷Òý£º
SQL> select /*+ RULE*/* from test.testindex where upper(a)='A';
A¡¡¡¡ B
-- ----------
a¡¡¡¡ 2
Execution Plan
----------------------------------------------------------
0¡¡¡¡SELECT STATEMENT Optimizer=HINT: RULE
1 0 TABLE ACCESS (FULL) OF 'TESTINDEX'
(ÓÅ»¯Æ÷Ñ¡ÔñÁËÈ«±íɨÃè)
--------------------------------------------------------------------
ʹÓú¯ÊýË÷Òý£º
SQL> select * from test.testindex where upper(a)='A';
A¡¡¡¡ B
-- ----------
a¡¡¡¡ 2
Execution Plan
----------------------------------------------------------
0¡¡¡¡SELECT STATEMENT Optimizer=CHOOSE (Cost=2 Card=1 Bytes=5)
1 0 TABLE ACCESS (BY INDEX ROWID) OF 'TESTINDEX' (Cost=2 Card=1 Bytes=5)
2 1 INDEX (RANGE SCAN) OF 'IND_FUN' (NON-UNIQUE) (Cost=1 Card=1)
(ʹÓÃÁËind_funË÷Òý)
´Ë´¦ÓÐÒ»ÖÖ·½°¸£¬²»Ê¹Óú¯ÊýË÷Òý£¬Í¨¹ýsqlÉϵļ¼ÇÉÀ´Ê¹ÓÃÔÓÐÁÐÉϵÄË÷Òý¡£²»¹ýÎÒ¾õµÃ»¹²»È罨Á¢º¯ÊýË÷ÒýÀ´µÄ·½±ã¡£
Ïà¹ØÎĵµ£º
oracle±í¿Õ¼ä²Ù×÷Ïê½â
1
2
3×÷Õߣº À´Ô´£º ¸üÐÂÈÕÆÚ£º2006-01-04
5
6
7½¨Á¢±í¿Õ¼ä
8
9CREATE TABLESPACE data01
10DATAFILE '/ora ......
oracle merge into Ó÷¨Ïê½â
2009-07-31 10:14
Oracle9iÒýÈëÁËMERGEÃüÁî,ÄãÄܹ»ÔÚÒ»¸öSQLÓï¾äÖжÔÒ»¸ö±íͬʱִÐÐinsertsºÍupdates²Ù×÷. MERGEÃüÁî´ÓÒ»¸ö»ò¶à¸öÊý¾ÝÔ´ÖÐÑ¡ÔñÐÐÀ´updating»òinsertingµ½Ò»¸ö»ò¶à¸ö±í.
Oracle 10gÖÐMERGEÓÐÈçÏÂһЩ¸Ä½ø£º
1¡¢UPDATE»òINSERT×Ó¾äÊÇ¿ÉÑ¡µÄ
2¡¢UPDATEºÍINSERT×Ó¾ä¿ÉÒÔ¼ÓWHERE ......
Oracleµ÷ÓÅ×ÛÊö
ÔÚ¹ýÈ¥µÄÊ®ÄêÖУ¬ Oracle ÒѾ³ÉΪÊÀ½çÉÏ×îרҵµÄÊý¾Ý¿âÖ®Ò»¡£¶ÔÓÚ IT ר¼ÒÀ´Ëµ£¬¾ÍÊÇҪȷ±£ÀûÓà Oracle µÄÇ¿´óÌØÐÔÀ´Ìá¸ßËûÃǹ«Ë¾µÄÉú²úÁ¦¡£×îÓÐЧµÄ·½·¨Ö®Ò»ÊÇͨ¹ý Oracle µ÷ÓÅ¡£ËüÓдóÁ¿µÄµ÷Õû²ÎÊýºÍ¼¼ÊõÀ´¸Ä½øÄãµÄ Oracle Êý¾Ý¿âµÄÐÔÄÜ¡£
Oracle µ÷ÓÅÊÇÒ»¸ö¸´ÔÓµÄÖ÷Ìâ¡£¹ØÓÚµ÷ÓÅ¿ ......
1.»ñÈ¡µÇ½Óû§µÄÖ÷»úÃû
select sys_context('userenv','host') from dual;
2.»ñÈ¡µÇ½Óû§µÄIPµØÖ·
select sys_context('userenv','ip_address') from dual; ......
Oracle»¥»»×ܽá
1. ¶àÐл»³ÉÒ»ÐÐ
col1 col2 col1 col2
a 1
a 2 ת»»ºó ......