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

oracle PL/SQL FOR UPDATE Óë FOR UPDATE OFµÄÇø±ð

PL/SQL-FOR UPDATE Óë FOR UPDATE OFµÄÇø±ð
url:http://hi.baidu.com/1413/blog/item/a521251f7e5993c4a686696b.html
Êý¾Ý¿â oracle for update of   ºÍ   for updateÇø±ð    
select * from TTable1 for update Ëø¶¨±íµÄËùÓÐÐУ¬Ö»ÄܶÁ²»ÄÜд
2 select * from TTable1 where pkid = 1 for update Ö»Ëø¶¨pkid=1µÄÐÐ
3 select * from Table1 a join Table2 b on a.pkid=b.pkid for update Ëø¶¨Á½¸ö±íµÄËùÓмǼ
4 select * from Table1 a join Table2 b on a.pkid=b.pkid where a.pkid = 10 for update Ëø¶¨Á½¸ö±íµÄÖÐÂú×ãÌõ¼þµÄÐÐ
5. select * from Table1 a join Table2 b on a.pkid=b.pkid where a.pkid = 10 for update of a.pkid Ö»Ëø¶¨Table1ÖÐÂú×ãÌõ¼þµÄÐÐ
for update ÊǰÑËùÓÐµÄ±í¶¼Ëøµã for update of ¸ù¾Ýof ºó±íµÄÌõ¼þËø¶¨Ïà¶ÔÓ¦µÄ±í
-----------
¹ØÓÚNOWAIT(Èç¹ûÒ»¶¨ÒªÓÃFOR UPDATE£¬ÎÒ¸ü½¨Òé¼ÓÉÏNOWAIT)
µ±ÓÐLOCK³åͻʱ»áÌáʾ´íÎó²¢½áÊøSTATEMENT¶ø²»ÊÇÔÚÄÇÀïµÈ´ý(±ÈÈç:Òª²éµÄÐÐÒѾ­±»ÆäËüÊÂÎñËøÁË,µ±Ç°µÄËøÊÂÎñÓëÖ®³åÍ»,¼ÓÉÏnowait,µ±Ç°µÄÊÂÎñ»á½áÊø»áÌáʾ´íÎó²¢Á¢¼´½áÊø STATEMENT¶ø²»Ôٵȴý).
Èç¹û¼ÓÁËfor updateºó ¸ÃÓï¾äÓÃÀ´Ëø¶¨Ìض¨µÄÐУ¨Èç¹ûÓÐwhere×Ӿ䣬¾ÍÊÇÂú×ãwhereÌõ¼þµÄÄÇЩÐУ©¡£µ±ÕâЩÐб»Ëø¶¨ºó£¬ÆäËû»á»°¿ÉÒÔÑ¡ÔñÕâЩÐУ¬µ«²»Äܸü¸Ä»òɾ³ýÕâЩÐУ¬Ö±µ½¸ÃÓï¾äµÄÊÂÎñ±»commitÓï¾ä»òrollbackÓï¾ä½áÊøÎªÖ¹¡£
ÒòΪFOR   UPDATE×Ó¾ä»ñµÃÁËËø£¬ËùÒÔCOMMIT½«ÊÍ·ÅÕâÐ©Ëø¡£µ±ËøÊÍ·ÅÁË£¬¸ÃÓαê¾ÍÎÞЧÁË¡£


Ïà¹ØÎĵµ£º

Oracle PL/SQLÖÐÈçºÎʹÓÃ%TYPEºÍ%ROWTYPE

¡¡
¡¡¡¡1. ʹÓÃ%TYPE
¡¡¡¡ÔÚÐí¶àÇé¿öÏ£¬PL/SQL±äÁ¿¿ÉÒÔÓÃÀ´´æ´¢ÔÚÊý¾Ý¿â±íÖеÄÊý¾Ý¡£ÔÚÕâÖÖÇé¿öÏ£¬±äÁ¿Ó¦¸ÃÓµÓÐÓë±íÁÐÏàͬµÄÀàÐÍ¡£ÀýÈ磬students±íµÄfirst_nameÁеÄÀàÐÍΪVARCHAR2(20),ÎÒÃÇ¿ÉÒÔ°´ÕÕÏÂÊö·½Ê½ÉùÃ÷Ò»¸ö±äÁ¿£º
¡¡¡¡DECLARE
¡¡¡¡ v_FirstName VARCHAR2(20);
¡¡
¡¡µ«ÊÇÈç¹ûfirst_nameÁе͍Òå¸Ä±äÁ ......

¹ØÓÚSQLÒìµØ±¸·ÝµÄ·½·¨

·½°¸Ò»£ºSQL×Ô´øµÄÊý¾Ý¿â±¸·Ý¼Æ»®
Ò»£º»ù±¾Ë¼Â·
1£ºÒªÊµÏÖÒìµØ±¸·Ý£¬±ØÐëʹÓÃÓòÓû§ÕʺÅÀ´Æô¶¯SQL Server·þÎñÒÔ¼°SQL Server Agent·þÎñ£¬ÒòΪ±¾µØÏµÍ³ÕÊ»§ÎÞ·¨·ÃÎÊÍøÂç¡£
2£ºÔÚÒìµØ»úÆ÷Öн¨Á¢Ò»¸öÓëSQL Server·þÎñÆ÷ÖÐÆô¶¯SQL Server·þÎñµÄÓòÓû§ÕʺÅͬÃûÕʺÅ,ÇÒÃÜÂë±£³ÖÏàͬ¡£ÔÚÒìµØ»úÆ÷Öн¨Á¢Ò»¸ö¹²ÏíÎļþ¼Ð£¬²¢ÉèÖÃºÏ ......

MySQL5.1ÄÚ±íתµ½MS SQL£¬±í½á¹¹Ó¦ÈçºÎÉèÖã¿

# MySQL-Front 5.1  (Build 4.2)
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE */;
/*!40101 SET SQL_MODE='STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES */;
/*!40103 SET SQL_NOTES='ON' */;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS */ ......

jdbcÖе÷ÓÃoracleº¯Êý

1¡¢´´½¨±í
 create table stud(
 sid int,
 sname varchar2(50),
 age number,
 score number(4,2))
²¢²åÈëһЩÊý¾Ý£¨×Ô¼ºÊÖ¶¯²åÈëһЩ°É£©
2¡¢´´½¨º¯Êý
create or replace function fun_getScores(
       v_age in stud.age%type
)
return number
is ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ