Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

oracle µÄfor updateÐÐËøÓï·¨

SELECT...FOR UPDATE Óï¾äµÄÓï·¨ÈçÏ£º 
¡¡¡¡SELECT ... FOR UPDATE [OF column_list][WAIT n|NOWAIT][SKIP LOCKED]; 
ÆäÖУº 
¡¡¡¡OF ×Ó¾äÓÃÓÚÖ¸¶¨¼´½«¸üеÄÁУ¬¼´Ëø¶¨ÐÐÉϵÄÌØ¶¨ÁС£ 
¡¡¡¡WAIT ×Ó¾äÖ¸¶¨µÈ´ýÆäËûÓû§ÊÍ·ÅËøµÄÃëÊý£¬·ÀÖ¹ÎÞÏÞÆÚµÄµÈ´ý¡£ 
¡¡¡¡“ʹÓÃFOR UPDATE WAIT”×Ó¾äµÄÓŵãÈçÏ£º 
¡¡¡¡£±·ÀÖ¹ÎÞÏÞÆÚµØµÈ´ý±»Ëø¶¨µÄÐУ» 
¡¡¡¡£²ÔÊÐíÓ¦ÓóÌÐòÖжÔËøµÄµÈ´ýʱ¼ä½øÐиü¶àµÄ¿ØÖÆ¡£ 
¡¡¡¡£³¶ÔÓÚ½»»¥Ê½Ó¦ÓóÌÐò·Ç³£ÓÐÓã¬ÒòΪÕâЩÓû§²»Äܵȴý²»È·¶¨ 
¡¡¡¡£´ ÈôʹÓÃÁËskip locked£¬Ôò¿ÉÒÔÔ½¹ýËø¶¨µÄÐУ¬²»»á±¨¸æÓÉwait n Òý·¢µÄ‘×ÊԴæ’Òì³£±¨¸æ 
ʾÀý: 
create table t(a varchar2(20),b varchar2(20)); 
insert into t values('1','1'); 
insert into t values('2','2'); 
insert into t values('3','3'); 
insert into t values('4','4'); 
ÏÖÔÚÖ´ÐÐÈçϲÙ×÷£º 
ÔÚplsql developeÖдò¿ªÁ½¸ösql´°¿Ú£¬ 
ÔÚ1´°¿ÚÖÐÔËÐÐsql 
select * from t where a='1' for update; 
ÔÚ2´°¿ÚÖÐÔËÐÐsql1 
1. select * from t where a='1'; ÕâÒ»µãÎÊÌâҲûÓУ¬ÒòΪÐм¶Ëø²»»áÓ°Ïì´¿´âµÄselectÓï¾ä 
ÔÙÔËÐÐsql2 
2. select * from t where a='1' for update; ÔòÕâÒ»¾äsqlÔÚÖ´ÐÐʱ£¬ÓÀÔ¶´¦Óڵȴý״̬£¬³ý·Ç´°¿Ú1ÖÐsql±»Ìá½»»ò»Ø¹ö¡£ 
ÈçºÎ²ÅÄÜÈÃsql2²»µÈ´ý»òµÈ´ýÖ¸¶¨µÄʱ¼äÄØ£¿ ÎÒÃÇÔÙÔËÐÐsql3 
3. select * from t where a='1' for update nowait; ÔòÔÚÖ´ÐдËsqlʱ£¬Ö±½Ó±¨×ÊԴæµÄÒì³£¡£ 
ÈôÖ´ÐÐ select * from t where a='1' for update wait 6; ÔòÔڵȴý6Ãëºó£¬±¨ ×ÊԴæµÄÒì³£¡£ 
Èç¹ûÎÒÃÇÖ´ÐÐsql4 
4. select * from t where a='1' for update nowait skip Locked; ÔòÖ´ÐÐsqlʱ£¬¼´²»µÈ´ý£¬Ò²²»±¨×ÊԴæÒì³£¡£ 
ÏÖÔÚÎÒÃÇ¿´¿´Ö´ÐÐÈçϲÙ×÷½«»á·¢ÉúÊ²Ã´ÄØ£¿ 
ÔÚ´°¿Ú1ÖÐÖ´ÐУº 
select * from t where rownum<=3 nowait skip Locked; 
ÔÚ´°¿Ú2ÖÐÖ´ÐУº 
select * from t where rownum<=6 nowait skip Locked; 
select for update Ò²¾ÍÈç´ËÁ˰ɣ¬insert¡¢update¡¢delete²Ù×÷ĬÈϼÓÐм¶Ëø£¬ÆäÔ­ÀíºÍ²Ù×÷Óëselect for update²¢ÎÞÁ½Ñù¡£ 
select for update of£¬Õâ¸öof×Ó¾äÔÚÇ£Á¬µ½¶à¸ö±íʱ£¬¾ßÓнϴó×


Ïà¹ØÎĵµ£º

oracleÖÐtranslateÓëreplaceµÄʹÓÃ

1.translate
  Óï·¨£ºTRANSLATE(char, from, to)
 
 
Ó÷¨£º·µ»Ø½«³öÏÖÔÚfromÖеÄÿ¸ö×Ö·ûÌæ»»ÎªtoÖеÄÏàÓ¦×Ö·ûÒÔºóµÄ×Ö·û´®¡£
          
 Èôfrom±Èto×Ö·û´®³¤£¬ÄÇôÔÚfromÖбÈtoÖжà³öµÄ×Ö·û½«»á±»É¾³ý¡£
    &nbs ......

Oracleʱ¼äÈÕÆÚ²Ù×÷

Oracleʱ¼äÈÕÆÚ²Ù×÷
sysdate+(5/24/60/60) ÔÚϵͳʱ¼ä»ù´¡ÉÏÑÓ³Ù5Ãë
sysdate+5/24/60 ÔÚϵͳʱ¼ä»ù´¡ÉÏÑÓ³Ù5·ÖÖÓ
sysdate+5/24 ÔÚϵͳʱ¼ä»ù´¡ÉÏÑÓ³Ù5Сʱ
sysdate+5 ÔÚϵͳʱ¼ä»ù´¡ÉÏÑÓ³Ù5Ìì
add_months(sysdate,-5) ÔÚϵͳʱ¼ä»ù´¡ÉÏÑÓ³Ù5ÔÂ
add_months(sysdate,-5*12) ÔÚϵͳʱ¼ä»ù´¡ÉÏÑÓ³Ù5Äê
ÉÏÔÂÄ©µÄÈÕÆÚ£ºsel ......

OracleÊý¾Ý¿âÃÜÂëÎļþµÄά»¤£º

1. ²é¿´ÃÜÂëÎļþÖеijÉÔ±£º
¿ÉÒÔͨ¹ý²éѯÊÓͼV$PWFILE_USERSÀ´»ñȡӵÓÐSYSOPER/SYSDBAϵͳȨÏÞµÄÓû§µÄÐÅÏ¢£¬±íÖÐSYSOPER/SYSDBAÁеÄȡֵTRUE/FALSE±íʾ´ËÓû§ÊÇ·ñÓµÓÐÏàÓ¦µÄȨÏÞ¡£ÕâЩÓû§Ò²¾ÍÊÇÏàÓ¦µØ´æÔÚÓÚÃÜÂëÎļþÖеijÉÔ±¡£
2. À©Õ¹ÃÜÂëÎļþµÄÓû§ÊýÁ¿£º
µ±ÏòOracleÊý¾Ý¿âÃÜÂëÎļþÌí¼ÓµÄÕʺÅÊýÄ¿³¬¹ý´´½¨ÃÜÂëÎļþʱ ......

oracle Êý¾Ý¿â´´½¨DBLink Óï·¨

-- Drop existing database link drop database link DL_name
-- Create database link create database link DL_name connect to username identified by userpwd using '(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=ipaddress)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=service_name)))'; ......

oracleÀï³£ÓÃÃüÁî

µÚÒ»Õ£ºÈÕÖ¾¹ÜÀí
1.forcing log switches
sql> alter system switch logfile;
2.forcing checkpoints
sql> alter system checkpoint;
3.adding online redo log groups
sql> alter database add logfile [group 4]
sql> ('/disk3/log4a.rdo','/disk4/log4b.rdo') size 1m;
4.adding online re ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ