¹éµµÈÕÖ¾¼Ç¼×ÅÊý¾Ý¿âµÄ²Ù×÷¼Ç¼£¬ÊÇ×öÊý¾Ý»Ö¸´µÄÒÀ¾Ý£¬Èç¹ûÊý¾Ý¿â¿ªÆôÁ˹鵵ģʽ£¬ÄÇô¾Í»á²úÉú´óÁ¿µÄ¹éµµÈÕÖ¾£¬µ±È»Èç¹ûÓÐRMAN±¸·ÝµÄ»°£¬¿ÉÒÔÔÚ±¸·ÝÖ®ºóɾ³ýÒѾ±¸·Ý¹ýµÄÈÕÖ¾£¬Èç¹ûÊÇûÓвÉÓÃrman±¸·ÝµÄ»°£¬¾ÍÐèÒª×Ô¼ºÀ´É¾³ýÕâд¹éµµÈÕÖ¾¡£ ÏÂÃæµÄ¼¸¸ö½Å±¾¾Í¼õÇáÁËDBAµÄ¹¤×÷Á¿¡£
Linux ƽ̨:
0 2 * * * /home/oracle/scripts/del_archive.sh > /home/oracle/scripts/del_archive.log
[oracle@hfcc-svr-newccsdb1 ~]$ more /home/oracle/scripts/del_archive.sh
#!/usr/bin/ksh
# create by tianlesoftware
export ORACLE_HOME=/dba/oracle/product/10.2.0/db_1
export ORACLE_SID=orcl
export SHELL_DIR=/home/oracle/scripts
del_seq=`ls /u01/newccs_archive/|head -1|cut -f2 -d_`
echo $del_seq
$ORACLE_HOME/bin/sqlplus -s "sys/PWD@SID as sysdba" <<eof >/home/oracle/scripts/max
_sn.log
set head off;
set feedback;
select max(sequence#) from v\$log_history;
exit;
eof
max_sn=`cat /home/oracle/scripts/max_sn.log|awk '{print $1}'|grep ^[0-9]`
max_sn=`expr $max_sn - 5`
echo $max_sn
while [ $del_ ......
select * from user_recyclebin where original_name like 'FINANCE_%' order by droptime desc;
FLASHBACK TABLE FINANCE_CASE_FEE_ITEM TO BEFORE DROP
¼´ËùÓÐdropµÄ±í¶¼ÔÚ user_recyclebin Õâ¸öoracle»ØÊÕÕ¾ÀïÃæµÄ£¬ÔÙͨ¹ýflashbackÃüÁԼ´¿É¡£
¿´ÁËÍøÉÏ»¹¿ÉÒÔͨ¹ýµ÷Õûoracleʱ¼ä £¬»Øµ½É¾³ýµÄijһ״̬µÄ¡£
¹Ø¼ü´Ê“ÉÁ»Ø” ......
1¡¢ÊýÖµÐͳ£Óú¯Êý
¡¡
¡¡º¯Êý¡¡¡¡·µ»ØÖµ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÑùÀý¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÏÔʾ
ceil(n) ´óÓÚ»òµÈÓÚÊýÖµnµÄ×îСÕûÊý¡¡¡¡select ceil(10.6) from dual; 11
floor(n) СÓÚµÈÓÚÊýÖµnµÄ×î´óÕûÊý¡¡ select ceil(10.6) from dual; 10
mod(m,n) m³ýÒÔnµÄÓàÊý,Èôn=0,Ôò·µ»Øm select mod(7,5) from dual; 2
power(m,n) mµÄn´Î·½¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ select power(3,2) from dual; 9
round(n,m) ½«nËÄÉáÎåÈë,±£ÁôСÊýµãºómλ¡¡¡¡select round(1234.5678,2) from dual; 1234.57
sign(n) Èôn=0,Ôò·µ»Ø0,·ñÔò,n>0,Ôò·µ»Ø1,n<0,Ôò·µ»Ø-1 select sign(12) from dual; 1
sqrt(n) nµÄƽ·½¸ù¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡select sqrt(25) from dual ; 5
2¡¢³£ÓÃ×Ö·ûº¯Êý
initcap(char) °Ñÿ¸ö×Ö·û´®µÄµÚÒ»¸ö×Ö·û»»³É´óд¡¡¡¡select initicap('mr.ecop') from dual; Mr.Ecop
lower(char) Õû¸ö×Ö·û´®»»³ÉСд¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡select lower('MR.ecop') from dual; mr.ecop
replace(char,str1,str2) ×Ö·û´®ÖÐËùÓÐstr1»»³Éstr2 select replace('Scott','s','Boy') from dual; Boycott
substr(char,m,n) È¡³ö´Óm×Ö·û¿ªÊ¼µÄn¸ö×Ö·ûµÄ×Ó´®¡¡¡¡select substr('ABCDEF',2,2) fro ......
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×Ó¾ä
3¡¢ONÌõ¼þÖÐʹÓó£Á¿¹ýÂËν´ÊÀ´insertËùÓеÄÐе½Ä¿±ê±íÖÐ,²»ÐèÒªÁ¬½ÓÔ´±íºÍÄ¿±ê±í
4¡¢UPDATE×Ó¾äºóÃæ¿ÉÒÔ¸úDELETE×Ó¾äÀ´È¥³ýһЩ²»ÐèÒªµÄÐÐ
Ê×ÏÈ´´½¨Ê¾Àý±í£º
create table PRODUCTS
(
PRODUCT_ID INTEGER,
PRODUCT_NAME VARCHAR2(60),
CATEGORY VARCHAR2(60)
);
insert into PRODUCTS values (1501, 'VIVITAR 35MM', 'ELECTRNCS');
insert into PRODUCTS values (1502, 'OLYMPUS IS50', 'ELECTRNCS');
insert into PRODUCTS values (1600, 'PLAY GYM', 'TOYS');
insert into PRODUCTS values (1601, 'LAMAZE', 'TOYS');
insert ......
Ëæ×Å΢ÈíÐÂÒ»´ú²Ù×÷ϵͳ Windows7 µÄÕýʽ·¢ÐУ¬Ê¹Óà Windows7 µÄÅóÓÑÒ²Ô½À´Ô½¶à£¬ºÜ¶àÈËÔÚ Windows7 »·¾³Ï°²×° Oracle »ò¶à»òÉÙÓöµ½ÁËһЩÎÊÌ⣬ÓеÄÉõÖÁ·¢³ö“Windows7ÎÞ·¨°²×°Oracle”µÄ¸Ð¿®¡£½ñÌì±ÊÕß½áºÏͼÎĺʹó¼Ò·ÖÏíÒ»ÏÂÔÚWindows7»·¾³ÏÂÈçºÎ³É¹¦°²×°OracleÊý¾Ý¿â¡£
±ÊÕßÑо¿·¢ÏÖ£ºÔÚWindows7ϲ»Äܳɹ¦°²×°Oracle£¬¾¿ÆäÔÒòÎÞ·ÇÊÇÒòΪͨ¹ý²»ÁËOracle°²×°³ÌÐòµÄÏȾöÐÔ¼ì²é£¬»òÊÇ“¿Í»§¶Ë²»Ö§³Ö°æ±¾ºÅΪ6.1µÄWindows 7²Ù×÷ϵͳ”£¬»òÊǓûÓн« Microsoft LoopBack Adapter ÅäÖÃΪϵͳµÄÖ÷ÍøÂçÊÊÅäÆ÷”£¬Õë¶ÔÕâÁ½ÖÖÇé¿ö£¬±ÊÕßÒ»Ò»ÓèÒÔ½â´ð¡£
ÏêÇéÇë²éÔıÊÕßµÄͼÎĽ̳̣º¡¶Windows7»·¾³ÏÂÈçºÎ³É¹¦°²×°OracleÊý¾Ý¿â¡· ......
1.Ñ¡ÓÃÊʺϵÄOracleÓÅ»¯Æ÷
OracleµÄÓÅ»¯Æ÷¹²ÓÐ3ÖÖ£º
a.RULE(»ùÓÚ¹æÔò)
b.COST(»ùÓڳɱ¾)
c.CHOOSE(Ñ¡ÔñÐÔ)
ÉèÖÃȱʡµÄÓÅ»¯Æ÷£¬¿ÉÒÔͨ¹ý¶Ôinit.oraÎļþÖÐOPTIMIZER_MODE²ÎÊýµÄ
¸÷ÖÖÉùÃ÷£¬ÈçRULE¡¢COST¡¢CHOOSE¡¢ALL_ROWS¡¢FIRST_ROWS¡£Ä㵱ȻҲÔÚSQL¾ä¼¶»òÊǻỰ(session)¼¶¶ÔÆä½øÐи²
¸Ç¡£
ΪÁËʹÓûùÓڳɱ¾µÄÓÅ»¯Æ÷(CBO£¬Cost-Based
Optimizer)£¬Äã±ØÐë¾³£ÔËÐÐanalyzeÃüÁÒÔÔö¼ÓÊý¾Ý¿âÖеĶÔÏóͳ¼ÆÐÅÏ¢(object statistics)µÄ׼ȷÐÔ¡£
Èç¹ûÊý¾Ý¿âµÄÓÅ»¯Æ÷ģʽÉèÖÃΪѡÔñÐÔ(CHOOSE)£¬ÄÇôʵ¼ÊµÄÓÅ»¯Æ÷ģʽ½«ºÍÊÇ·ñÔËÐÐ
¹ýanalyzeÃüÁîÓйء£Èç¹ûtableÒѾ±»analyze¹ý£¬ÓÅ»¯Æ÷ģʽ½«×Ô¶¯³ÉΪCBO£¬·´Ö®£¬Êý¾Ý¿â½«²ÉÓÃRULEÐÎʽµÄÓÅ»¯Æ÷¡£
ÔÚȱʡÇé¿öÏ£¬Oracle²ÉÓÃCHOOSEÓÅ»¯Æ÷£¬ÎªÁ˱ÜÃâÄÇЩ²»±ØÒªµÄÈ«±íɨÃè
(full table scan)£¬Äã±ØÐ뾡Á¿±ÜÃâʹÓÃCHOOSEÓÅ»¯Æ÷£¬¶øÖ±½Ó²ÉÓûùÓÚ¹æÔò»òÕß»ùÓڳɱ¾µÄÓÅ»¯Æ÷¡£
2.·ÃÎÊTableµÄ·½Ê½Oracle²ÉÓÃÁ½ÖÖ·ÃÎʱíÖмǼµÄ·½Ê½£º
a.È«±íɨÃè
È«±íɨÃè¾ÍÊÇ˳ÐòµØ·ÃÎʱíÖÐÿÌõ¼Ç¼¡£Oracle²ÉÓÃÒ»´Î¶ÁÈë¶à¸öÊý¾Ý¿é
(database block)µÄ·½Ê½ÓÅ»¯È«±íɨÃè¡£
b. ͨ¹ýROWID·ÃÎʱí
Äã¿ÉÒÔ²ÉÓûùÓÚROWIDµÄ·ÃÎÊ·½Ê½Çé¿ö£¬Ìá¸ß·ÃÎÊ±íµ ......