ÎÊÌâ1£º
ʲôʱºò²Å»á·¢Éúnot foundÒì³£ £¬ÒÔ¼°db2ÖÐsqlcodeµÄÖµÊÇÈçºÎ±ä»¯µÄ£¿ ÔÚdb2ÖУ¬Ò»Ìõselect Óï¾äÒ²ÓпÉÄÜ·¢Éúnot foundÒì³££¬Æ©Èç declare sqlcode integer default 0; declare sql_code integer default 0; declare classCode varchar(40) ;
select app_class_code into classCode from kf_app_class where app_name='ÎÞЧ¼Ç¼'; set sql_code=sqlcode;
Èç¹û´ËʱûÓмìË÷µ½¼Ç¼£¬ÄÇôsqlcodeµÄֵΪ100£¬ÓеĻ°Îª0; ÎÒÃÇ¿ÉÒÔ¶¨ÒåNOT FOUND Òì³£´¦Àí
declare sqlcode integer default 0; declare sql_code integer default 0; declare classCode varchar(40) ; begin
declare continue handler for not found begin
--×¢Èç¹û·¢Éúnot foundÄÇô´ËʱµÄsqlcode±Ø¶¨Îª100 set sql_code=sqlcode;/*ÔÚÕâÀïsqlcodeµÄֵΪ100£»*/ --Èç¹ûÔٴεõ½sqlcodeµÄÖµÄÇôËüµÄÖµ±äΪ0
set sql_code=sqlcode;/*ÕâÀïsqlcode±ä³ÉÁË0£¬ÒòΪÉÏÒ»ÌõÓï¾äÖ´Ðгɹ¦ÁË£¬ÄÇôsqlcode±ä³ÉÁË0*/ end;
select app_class_code into classCode from kf_app_class where app_name='ÎÞЧ¼Ç¼'; set sql_code=sqlcode;/*ͬÀí´ËʱÈç¹ûûÓÐÈ¡µ½Êý¾Ý£¬ÄÇô»á½ødeclare continue handler £¬·µ»ØºósqlcodeµÄֵҲΪ0*/ end;
ËùÒÔÎÒÃÇ¿ÉÒÔͨ¹ýÁ½ÖÖ·½·¨À´²¶»ñºÍ´¦Àínot found ·½·¨1£º begin
declare continue handler for not found begin
--Òì³£´¦Àí´úÂë end; sqlÓï¾ä end; ·½·¨2£º begin
sqlÓï¾ä
if sqlcode=100 then --Òì³£´¦Àí´úÂë
end if; end; ÎÊÌâ2£º
¶¨ÒåÁËÓα꣬ÔõôfecthÒ»Ìõ¼Ç¼£¬Ôõô½øÐÐÑ»·£¿
Q:¶¨ÒåÁËÓαê¼ÙÉè·¢Éúnot found Òì³££¬ÄÇôÊÇÔÚopen cursorNameµÄʱºò»¹ÊÇÔÚfecthµÄʱºò·¢ÉúÒì³££¿
A£º¼ìÑéÓαêÖеÄÊý¾ÝÊÇ·ñÈ¡Íê»òÕßÓÐÎ޼Ǽ£¬Ó¦¸ÃÔÚfecthµÄʱºò£¬¶ø²»ÊÇ·¢ÉúÔÚopen cursorNameµÄʱºò£¬
ÏÂÃæÒ»¸öÀý×ÓÏêϸµÄ˵Ã÷ÁËÓαêʹÓùý³Ì begin
declare sqlcode integer default 0; declare app_code varchar(10);
declare cursor1 cursor for select app_code from kf_app_class ; open cursor1; cursorLoop: loop
fecth cursor1 into app_code ;
if sqlcode=100 then leave cursorLoop; end if; end loop; end;
Q:sqlcode ¿ÉÒÔÖ±½ÓÓÃÂð£¿
A:ÔÚdb2ÖУ¬Èç¹ûҪʹÓÃsqlcodeÄÇô±ØÐëÔÚʹÓÃǰdeclare; Æ©Èç
declare sqlcode integer default 0; if sqlcode =? then end if; ¸½×¢
db2µÄÆäËûÒì³£´¦Àí
¶ÔÓ¦ oracleµÄ when other exceptions
declare exit handler for sqlwaring,sqlexcption begin ££´¦ÀíÒì³£ end;
µ±³ÌÐòÖ´ÐÐexit handlerÒì³£´¦Àíºó£¬ÄÇô»áÍ˳ö³ÌÐò£¬²»»áÔÚ½Ó×ÅÖ´ÐУ¬Ò²¾ÍÊÇ
declare exit handler for sqlwaring,sqlexcption begin
££´¦ÀíÒì³£ end; sqlÓï¾ä1£» sqlÓï¾ä2£»
Ö´ÐÐsqlÓï¾ä1·¢ÉúÒì³££¬»á½øÈë exit handler £¬È»ºóÍ˳ö³ÌÐò£¬²»»áÔÚÖ´ÐÐ sqlÓï¾ä2 Ö´ÐÐsqlÓï¾ä1·¢ÉúÒì³££¬»á½øÈë exit handler £¬È»ºóÍ˳ö³ÌÐò£¬²»»áÔÚÖ´ÐÐ sqlÓï¾ä2