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

06—PL/SQL±à³Ì

PL/SQL: OracleÖеÄSQL¹ý³Ì»¯±à³ÌÓïÑÔ
1. PL/SQL³ÌÐòÊÇÓÉ¿é½á¹¹¹¹³É£¬¸ñʽÈçÏ£º
  [DECLARE
   --ÉùÃ÷²¿·Ö
¡¡]
  BEGIN
   -- Ö÷Ìå
   [EXCEPTION
     -- Òì³£´¦Àí¿é
   ]
  END;
  /  --¿éµÄ½áÊø
2.±äÁ¿
¼òµ¥±äÁ¿£ºµ¥Öµ±äÁ¿
  ±äÁ¿Ãû ±äÁ¿ÀàÐÍ[:=³õʼֵ];
¸´ºÏ±äÁ¿£ºÏȶ¨Ò帴ºÏÀàÐÍ£¬È»ºóÔÙÓÃÀ´¸´ºÏ±äÁ¿;
  ±íÀàÐÍ: TYPE ÀàÐÍÃû IS TABLE OF Êý¾ÝÀàÐÍ INDEX BY BINARY_INTEGER;
          ±äÁ¿Ãû ±íÀàÐÍÃû;
  ¼Ç¼ÀàÐÍ£ºTYPE ÀàÐÍÃû IS RECORD(±äÁ¿Ãû ÀàÐÍ, ±äÁ¿Ãû ÀàÐÍ...);
ÉùÃ÷±äÁ¿µÄÀàÐÍÓëÖ¸¶¨±íµÄÖ¸¶¨ÁÐͬÀàÐÍ£º
  ±äÁ¿Ãû ±íÃû.ÁÐÃû%TYPE;
ÉùÃ÷¼Ç¼ÀàÐͱäÁ¿µÄÀàÐÍÓëÖ¸¶¨±íµÄÐÐͬÀàÐÍ£º
  ±äÁ¿Ãû ±íÃû%ROWTYPE;
3.Ìõ¼þÓï¾ä
 IF Ìõ¼þ THEN Óï¾ä;
  ELSIF Ìõ¼þ2 THEN Óï¾ä2;
  ELSIF Ìõ¼þ2 THEN Óï¾ä2;
  ELSE Óï¾än;
 END IF;
4.Ñ­»·Óï¾ä
 1) ¼òµ¥£º
    LOOP
       Óï¾ä
       EXIT WHEN Ìõ¼þ;
    END LOOP;
 2) WHILE:
    WHILE Ìõ¼þ LOOP
      Óï¾ä
    END LOOP;
 3) FOR
    FOR Êý×Ö±äÁ¿ IN [REVERSE] ÏÂÏÞ..ÉÏÏÞ LOOP
      Óï¾ä
    END LOOP;
5. Óαêcursor£ºËüÊÇOracleÊý¾Ý¿âÄÚµÄÒ»¸ö¹¤×÷Çø£¬´æ·ÅÁËSELECTÓï¾äµÄ²éѯ¼¯¡£
  1) ËüÓÐÒ»¸öÖ¸Õ룬³õʼʱָÏò²éѯ¼¯ÖеÄÊ×ÐС£
  2) ÊôÐÔ£º%found¡¢%notfound¡¢%rowcount¡¢%isopen¡¢
  3) ʹÓò½Ö裺
     a) ÉùÃ÷±äÁ¿ÓÃÀ´±£´æÊý¾Ý¡£
     b) ÉùÃ÷Óα꣬²¢Ö¸¶¨²éѯ¡£cursor v_emp_cursor is selectÓï¾ä;
     c) ´ò¿ªÓαꡣopen v_emp_cursor;
     d) Ò»´Î´ÓÓαêÖлñȡһÐмǼ¡£fetch v_emp_cursor into ±äÁ¿Áбí;
     e) ¹Ø±ÕÓαꡣclose v_emp_cursor;
  4) forÑ­»·¿ÉÒÔ×Ô¶¯Íê³É´ò¿ª£¬»ñÈ¡Êý¾Ý£¬¹Ø±ÕµÄ¹¦ÄÜ¡£
    declare
     v_


Ïà¹ØÎĵµ£º

SQL Server 2008 й¦ÄÜ

SQL Server 2008 й¦ÄÜ
 
 ÓÃÓÚ¹ÜÀíµÄй¦ÄÜÓÐÄÄЩ£¿
¶ÔÓÚ¾­³£Òª¸ºÔð¹ÜÀí·Ö²¼ÔÚÊýʮ̨ÉõÖÁÊý°Ų̀·þÎñÆ÷ÖеÄÊýÒ԰ټƻòǧ¼ÆµÄ´óÐ͸´ÔÓÊý¾Ý¿â»·¾³µÄÊý¾Ý¿â¹ÜÀíÔ±¶øÑÔ£¬ÐµIJßÂÔ¹ÜÀí¡¢¶à·þÎñÆ÷²éѯ¹¦ÄÜ¡¢ÅäÖ÷þÎñÆ÷ÒÔ¼°Êý¾ÝÊÕ¼¯Æ÷/¹ÜÀí²Ö¿â¹¦ÄÜΪËûÃǸ³ÓèÁËÇ¿´óµÄÄÜÁ¦¡£
 
 ÓÃÓÚ¿ÉÉìËõÐÔµÄй¦ÄÜÓÐÄ ......

ÈçºÎÐ¶ÔØSQL Server 2005

Ð¶ÔØSQL Server 2005µÄ·½·¨Ö®Ò»£¬·ÅÔÚÕâ¶ùÖ»ÊÇΪÁ˼Çס£º
1£º°ÑSQL Server2005µÄ°²×°ÅÌ£¨°²×°Îļþ£©·ÅÈëµ½¹âÇý¡£
2£º´ò¿ªÈçÏ·¾¶£º¿ªÊ¼/ÔËÐУ¬ÊäÈ룺cmd
3£ºÊäÈëÏÂÁÐÃüÁ
 
Start /wait \setup.exe /qb REMOVE=ALL INSTANCENAME=£º¹ÜÇøÅÌ·û£¬ÀýÈ磺G£º¡¢H£ºµÈ£»£º°²×°µÄSQLServerʵÀýÃû³Æ£¬Ä¬ÈÏֵΪ£º¹¦ÄÜ ......

Oracle PL/SQL¿é½á¹¹ºÍ×é³ÉÔªËØÑ§Ï°±Ê¼Ç(Ò»)

Ò»£¬PL/SQL¿éµÄ½á¹¹ºÍ×é³ÉÔªËØ
PL/SQL³ÌÐòÓÉÉùÃ÷²¿·Ö£¬Ö´Ðв¿·Ö£¬Òì³£´¦Àí²¿·ÖÈý¸ö²¿·Ö×é³É¡£½á¹¹ÈçÏ£º
DECLARE
/*ÉùÃ÷²¿·Ö£ºÔÚ´ËÉùÃ÷PL/SQL±äÁ¿£¬ÀàÐͼ°Óα꣬ÒÔ¼°¾Ö²¿µÄ´æ´¢¹ý³ÌºÍº¯Êý*/
BEGIN
/*Ö´Ðв¿·Ö£º¹ý³Ì¼°sqlÓï¾ä£¬³ÌÐòÖ÷Òª²¿·Ö£¬ÊDZØÐëµÄ*/
EXCEPTION
/*Òì³£´¦Àí²¿·Ö£º´íÎó´¦Àí*/
END
 
PL/SQL¿ ......

Êý¾Ý¿âÐÐתÁеÄsqlÓï¾ä£¨×ª£©


Êý¾Ý¿âÐÐתÁеÄsqlÓï¾ä
ÎÊÌâÃèÊö
¼ÙÉèÓÐÕÅѧÉú³É¼¨±í(CJ)ÈçÏÂ
Name Subject Result
ÕÅÈý ÓïÎÄ 80
ÕÅÈý Êýѧ 90
ÕÅÈý ÎïÀí 85
ÀîËÄ ÓïÎÄ 85
ÀîËÄ Êýѧ 92
ÀîËÄ ÎïÀí 82
ÏÖÔÚ Ïëд sql Óï¾ä     ²éѯºó½á¹û Ϊ    
ÐÕÃû ÓïÎÄ Êýѧ ÎïÀí
ÕÅÈý 80 90 85
ÀîËÄ 85 92 82& ......

£¨×ª£©SQL¾­µäÃæÊÔÌ⼯£¨Èý£©


µÚ¶þÊ®Ì⣺
ÔõôÑù³éÈ¡ÖØ¸´¼Ç¼
񡜧
id name
--------
1 test1
2 test2
3 test3
4 test4
5 test5
6 test6
2 test2
3 test3
2 test2
6 test6
²é³öËùÓÐÓÐÖØ¸´¼Ç¼µÄÊý¾Ý£¬ÓÃÒ»¾äsql À´ÊµÏÖ
create table D(
id varchar (20),
name varchar (20)
)
insert into D values('1','test1')
insert into D v ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ