³õѧPL/SQL Óαê
1,ÏÔʾÓαêµÄ²Ù×÷
(1) ¶¨ÒåÓαê
¸ù¾Ý²éѯµÄÊý¾ÝÇé¿ö£¬ÔÚPL/SQL¿éµÄÉùÃ÷²¿·Ö¶¨ÒåÓα꣬Ó﷨Ϊ£º
cursor cursor_name is select_statement;
×¢Ò⣺
ÓÎ±ê±ØÐëÔÚPL/SQL¿éµÄÉùÃ÷²¿·Ö½øÐж¨Ò壻
Óα궨Òåʱ¿ÉÒÔÒýÓÃPL/SQL±äÁ¿£¬µ«±äÁ¿±ØÐëÔÚÓα궨Òå֮ǰ¶¨Ò壻
¶¨ÒåÓαêʱ²¢Ã»ÓÐÉú³ÉÊý¾Ý£¬Ö»Êǽ«¶¨ÒåÐÅÏ¢±£´æµ½Êý¾Ý×ÖµäÖУ»
Óα궨Òåºó£¬¿ÉÒÔʹÓÃcursor_name%rowtype ¶¨Òå±äÁ¿£»
£¨2£© ´ò¿ªÓαê
ΪÁËÔÚÄÚ´æÖзÖÅ仺³åÇø£¬²¢´ÓÊý¾Ý¿âÖмìË÷Êý¾Ý£¬ÐèÒªÔÚPL/SQL¿éµÄÖ´Ðв¿·Ö´ò¿ªÓα꣬Ó﷨Ϊ£º
open cursor_name;
×¢Ò⣺
Ö»ÓÐÔÚ´ò¿ªÓαêʱ£¬²ÅÊÇÕæÕýµÄ´´½¨»º³åÇø£¬²¢´ÓÊý¾Ý¿â¼ìË÷Êý¾Ý£»
ÓαêÒ»µ©´ò¿ª£¬¾ÍÎÞ·¨Ôٴδò¿ª£¬³ý·ÇÏȹرգ»
Èç¹ûÓα궨ÒåÖеıäÁ¿Öµ·¢Éú±ä»¯£¬ÔòÖ»ÄÜÔÚÏ´δò¿ªÓαêʱ²ÅÆð×÷Óã»
£¨3£©¼ìË÷Óαê
Ó﷨Ϊ£º
Fetch cursor_name into variable_list|record_variable;
×¢Ò⣺
ÔÚʹÓÃfetchÓï¾ä֮ǰ±ØÐëÏÈ´ò¿ªÓα꣬±£Ö¤»º³åÇøÓÐÊý¾Ý£»
¶ÔÓαêµÚÒ»´ÎʹÓÃfetchÓï¾äʱ£¬ÓαêÖ¸ÕëÖ¸ÏòµÚÒ»Ìõ¼Ç¼£¬Òò´Ë²Ù×÷µÄ¶ÔÏóÊǵÚÒ»Ìõ¼Ç¼¡£²Ù×÷Íêºó£¬ÓαêÖ¸ÕëÖ¸ÏòÏÂÒ»Ìõ¼Ç¼£»
ÓαêÖ¸ÕëÖ»ÄÜÏòÏÂÒÆ¶¯£¬²»ÄÜ»ØÍË¡£
into×Ó¾äÖбäÁ¿¸öÊý£¬Ë³Ðò£¬Êý¾ÝÀàÐͱØÐëºÍ»º³åÇøÖеĶÔÓ¦¡£
ÓÉÓÚÓαê¶ÔÓ¦µÄ»º³åÇøÖпÉÄÜÓжà¸ö¼Ç¼£¬Òò´Ë¼ìË÷ÓαêµÄ¹ý³ÌÊÇÒ»¸öÑ»·¹ý³Ì¡£
£¨4£© ¹Ø±ÕÓαê
Óαê¶ÔÓ¦»º³åÇøµÄÊý¾Ý´¦ÀíÍêºó£¬Ó¦¸Ã¼°Ê±¹Ø±ÕÓα꣬ÒÔÊÍ·ÅËüÕ¼ÓõÄϵͳ×ÊÔ´¡£¹Ø±ÕÓαêµÄÓ﷨Ϊ£º
close cursor_name;
ÀýÈ磺¸ù¾ÝÊéÃû²éѯ¶ÔÓ¦ÊéµÄÐÅÏ¢£¬ÓÉÓÚ²éѯµÄ½á¹û¿ÉÄÜÓжà¸ö£¬Òò´Ë²ÉÓÃÓαꣻ
declare
v_bookname book.bookname%type;
cursor c_book is select * from book where bookName=v_bookname;
v_book c_book%rowtype;
begin
v_bookname:=&x;
op
Ïà¹ØÎĵµ£º
ÕâЩº¯ÊýÔÚϵͳº¯Êý¿ÉÒÔÕÒµ½¡£ÏÂÃæÊÇÎÒÁ·Ï°Ê±Ð´µÄ´úÂ룬°üº¬Á˳£ÓõÄ×Ö·û´®²Ù×÷º¯Êý
/*********************************
³£ÓÃ×Ö·û´®º¯Êý:sqlÖÐûÓÐÊý×éÕâһ˵
*********************************/
--int charindex('ÒªÕÒµÄ×Ö·û´®','Ô´×Ö·û´®',¿ªÊ¼Î»ÖÃ)£¬»ñÈ¡×Ö·û´®ÖÐÖ¸¶¨×Ö·û´®µÄλÖÃ
declare @str varchar(50)
set ......
1¡¢Á½±í£¬Ò»ÕÅÓÐÉϰÙÍòµÄÊý¾Ý£¨±íA)£¬ÁíÒ»ÕÅÖ»ÓÐÒ»Íò¶àÌõÊý¾Ý£¨±íB£©£¬A±íµÄÍâ¼ü¹ØÁªµ½B±íµÄÖ÷¼üÉÏ¡£
ÎÊÏÂÃæÁ½ÌõSQLÓï¾ä£¬ÄÇÌõÐÔÄܸü¸ß£¿
(1)SELECT A.ID, B.ID from A, B WHERE A.FID = B.ID
(2)SELECT A.ID, B.ID from B, A WHERE A.FID = B.ID ......
ͼ±í
ͼ±í(ÓֳƹØÏµÍ¼)ÊÇSQL ServerÖÐÒ»ÀàÌØÊâµÄÊý¾Ý¿â¶ÔÏó£¬ËüÌṩ¸øÓû§Ö±¹ÛµØ¹ÜÀíÊý¾Ý¿â±íµÄ·½·¨¡£Í¨¹ýͼ±í£¬Óû§¿ÉÒÔÖ±¹ÛµØ´´½¨¡¢±à¼Êý¾Ý¿â±íÖ®¼äµÄ¹ØÏµ£¬Ò²¿ÉÒÔ±à¼±í¼°ÆäÁеÄÊôÐÔ¡£ÀûÓÃÆóÒµ¹ÜÀíÆ÷´´½¨Í¼±íµÄ¾ßÌå²½ÖèÈçÏ£º
(1)ÔÚÆóÒµ¹ÜÀíÆ÷ÖУ¬Õ¹¿ªÖ¸¶¨µÄ·þÎñÆ÷ºÍÊý¾Ý¿â£¬´ò¿ªÒª½¨Á¢µÄͼ±íËùÔÚµÄÊý¾Ý¿â£¬ÓÒ»÷ͼ±íÍ ......
´æ´¢¹ý³Ì
ÔÚ´óÐÍÊý¾Ý¿âϵͳÖУ¬Ëæ×Ź¦ÄܵIJ»¶ÏÍêÉÆ£¬ÏµÍ³Ò²±äµÃÔ½À´Ô½¸´ÔÓ£¬´óÁ¿µÄʱ¼ä½«»áºÄ·ÑÔÚSQL´úÂëºÍÓ¦ÓóÌÐò´úÂëÉÏ£¬¿öÇÒÔںܶàÇé¿öÏ£¬Ðí¶à´úÂë±»ÖØ¸´Ê¹Óöà´Î£¬Ã¿´Î¶¼ÊäÈëÏàͬµÄ´úÂë¼È·±ËöÓֻήµÍϵͳÔËÐÐЧÂÊ¡£Òò´Ë£¬SQL ServerÌṩÁËÒ»ÖÖ·½·¨£¬Ëü¿ÉÒÔ½«Ò»Ð©¹Ì¶¨µÄ²Ù×÷¼¯ÖÐÆðÀ´ÓÉSQL ServerÊý¾Ý¿â·þÎñÆ÷À´Íê³É£ ......
Ë÷Òý²Ù×÷
Êý¾Ý¿âÖеÄË÷ÒýÓëÊé¼®ÖеÄË÷ÒýÀàËÆ£¬ÔÚÒ»±¾ÊéÖУ¬ÀûÓÃË÷Òý¿ÉÒÔ¿ìËÙ²éÕÒËùÐèÐÅÏ¢£¬ÎÞÐëÔĶÁÕû±¾Êé¡£ÔÚÊý¾Ý¿âÖУ¬Ë÷ÒýʹÊý¾Ý¿â³ÌÐòÎÞÐë¶ÔÕû¸ö±í½øÐÐɨÃ裬¾Í¿ÉÒÔÔÚÆäÖÐÕÒµ½ËùÐèÊý¾Ý¡£ÊéÖеÄË÷ÒýÊÇÒ»¸ö´ÊÓïÁÐ±í£¬ÆäÖÐ×¢Ã÷Á˸÷¸ö´ÊµÄÒ³Âë¡£¶øÊý¾Ý¿âÖеÄË÷ÒýÊÇij¸ö±íÖÐÒ»ÁлòÕßÈô¸ÉÁÐÖµµÄ¼¯ºÏ£¬ºÍÏàÓ¦µÄÖ¸Ïò±íÖÐÎïÀí±ê ......