oracle´ø²ÎÊýÓαêµÄʹÓÃ
¡¡¡¡´ÓÓαêÌáÈ¡Êý¾Ý
¡¡¡¡´ÓÓαêµÃµ½Ò»ÐÐÊý¾ÝʹÓÃFETCHÃüÁÿһ´ÎÌáÈ¡Êý¾Ýºó£¬Óα궼ָÏò½á¹û¼¯µÄÏÂÒ»ÐС£Óï·¨ÈçÏ£º
FETCH cursor_name INTO variable[,variable,...]
¡¡¡¡¶ÔÓÚSELECT¶¨ÒåµÄÓαêµÄÿһÁУ¬FETCH±äÁ¿ÁÐ±í¶¼Ó¦¸ÃÓÐÒ»¸ö±äÁ¿ÓëÖ®Ïà¶ÔÓ¦£¬±äÁ¿µÄÀàÐÍÒ²ÒªÏàͬ¡£
¡¡¡¡Àý£º
SET SERVERIUTPUT ON
DECLARE
v_ename EMP.ENAME%TYPE;
v_salary EMP.SALARY%TYPE;
CURSOR c_emp IS SELECT ename,salary from emp;
BEGIN
OPEN c_emp;
FETCH c_emp INTO v_ename,v_salary;
DBMS_OUTPUT.PUT_LINE('Salary of Employee'|| v_ename
||'is'|| v_salary);
FETCH c_emp INTO v_ename,v_salary;
DBMS_OUTPUT.PUT_LINE('Salary of Employee'|| v_ename
||'is'|| v_salary);
FETCH c_emp INTO v_ename,v_salary;
DBMS_OUTPUT.PUT_LINE('Salary of Employee'|| v_ename
||'is'|| v_salary);
CLOSE c_emp;
END
¡¡¡¡Õâ¶Î´úÂëÎÞÒÉÊǷdz£Âé·³µÄ£¬Èç¹ûÓжàÐзµ»Ø½á¹û£¬¿ÉÒÔʹÓÃÑ»·²¢ÓÃÓαêÊôÐÔΪ½áÊøÑ»·µÄÌõ¼þ£¬ÒÔÕâÖÖ·½Ê½ÌáÈ¡Êý¾Ý£¬³ÌÐòµÄ¿É¶ÁÐԺͼò½àÐÔ¶¼´óΪÌá¸ß£¬ÏÂÃæÎÒÃÇʹÓÃÑ»·ÖØÐÂдÉÏÃæµÄ³ÌÐò£º
SET SERVERIUTPUT ON
DECLARE
v_ename EMP.ENAME%TYPE;
v_salary EMP.SALARY%TYPE;
CURSOR c_emp IS SELECT ename,salary from emp;
BEGIN
OPEN c_emp;
LOOP
FETCH c_emp INTO v_ename,v_salary;
EXIT WHEN c_emp%NOTFOUND;
DBMS_OUTPUT.PUT_LINE('Salary of Employee'|| v_ename
||'is'|| v_salary);
END
¡¡¡¡¼Ç¼±äÁ¿
¡¡¡¡¶¨ÒåÒ»¸ö¼Ç¼±äÁ¿Ê¹ÓÃTYPEÃüÁîºÍ%ROWTYPE£¬¹ØÓÚ%ROWsTYPEµÄ¸ü¶àÐÅÏ¢Çë²ÎÔÄÏà¹Ø×ÊÁÏ¡£
¡¡¡¡¼Ç¼±äÁ¿ÓÃÓÚ´ÓÓαêÖÐÌáÈ¡Êý¾ÝÐУ¬µ±ÓαêÑ¡ÔñºÜ¶àÁеÄʱºò£¬ÄÇôʹÓüǼ±ÈΪÿÁÐÉùÃ÷Ò»¸ö±äÁ¿Òª·½±ãµÃ¶à¡£
¡¡¡¡µ±ÔÚ±íÉÏʹÓÃ%ROWTYPE²¢½«´ÓÓαêÖÐÈ¡³öµÄÖµ·ÅÈë¼Ç¼ÖÐʱ£¬Èç¹ûҪѡÔñ±íÖÐËùÓÐÁУ¬ÄÇôÔÚSELECT×Ó¾äÖÐʹÓÃ*±È½«ËùÓÐÁÐÃûÁгöÀ´Òª°²È«µÃ¶à¡£
¡¡¡¡Àý£º
SET SERVERIUTPUT ON
DECLARE
R_emp EMP%ROWTYPE;
CURSOR c_emp IS SELECT * from emp;
BEGIN
OPEN c_emp;
LOOP
FETCH c_emp INTO r_emp;
EXIT WHEN c_emp%NOTFOUND;
DBMS_OUT.PUT.PUT_LINE('Salary of Employee'||r_emp.ename||'is'|| r_emp.salary);
END LOOP;
CLOSE c_emp;
END;
¡¡¡¡%ROWTYPEÒ²¿ÉÒÔÓÃÓαêÃûÀ´¶¨Ò壬ÕâÑùµÄ»°¾Í±ØÐëÒªÊ×ÏÈÉùÃ÷Óα꣺
SET SERVERIUTPUT ON
DECLARE
CURSOR c_emp IS SELECT ename,sala
Ïà¹ØÎĵµ£º
Oracle°²×°Æª
°æ±¾£ºwin32_11gR1_database_1013
ϵͳ£ºwin7
Äڴ棺3g£¨Å¼×Ô¼ºµØ-0-£©
1¡¢ÒòΪ²Ù×÷ϵͳѡÔñÁËwin7£¬ËùÒÔÔÚ°²×°Ö®Ñ¡ÐèÒªÐÞ¸ÄÒ»ÏÂÅäÖÃÎļþ£¬database\stage\prereq\db\refhost.xml
2¡¢ÐÞ¸ÄÍêÅäÖÃÎļþºó£¬µãinstall°²×°¼´¿É£¬µÈdos½çÃæ¼ÓÔØÍêºóÌø³öÈçϽçÃæ
3¡¢ÏÂÒ»²½
4¡¢Ñ¡ÔñÆóÒµ°æ£¬È»ºó ......
£££££¹ØÓÚ·Ö×éºó×Ö¶ÎÆ´½ÓµÄÎÊÌâ
À´×Ô:www.itpub.net
×î½üÔÚÂÛ̳ÉÏ£¬¾³£»á¿´µ½¹ØÓÚ·Ö×éºó×Ö¶ÎÆ´½ÓµÄÎÊÌ⣬
´ó¸ÅÊÇÀàËÆÏÂÁеÄÇéÐΣº
SQL> select no,q from test
2 /
NO Q
---------- ------------------------------
001 n1
001 n2
001 n3
001 n4
001 n5
002 m1
003 t1
003 t2
003 t3
003 ......
1£¬oracle tools£ºOUI¡¢DBCA¡¢OEM¡¢SQL*PLUS¡¢NETCA¡¢µÚÈý·½¹¤¾ß£¨toad¡¢PL\SQL developer£©
2£¬¿ÉʹÓÃresponsefile¿ìËÙȥͼÐΰ²×°oracle£¬ÔÚÔ´°²×°Îļþ/responseÀïÃæÓÐһЩģ°åÅäÖÃrpsÎļþ
3£¬Ô¤ÖÃÓû§ÊÇsysÓû§ÓësystemÓû§£ºsysÊÇoracleÊý¾Ý¿â
ÖÐȨÏÞ×î¸ßµÄÕʺţ¬¾ßÓÐcreate
databaseµÄȨÏÞ£¬¶øsystemûÓÐÕâ¸öȨÏÞ£ ......
oracleÊý¾Ý¿âµÄ±¸·ÝÓë»Ö¸´
---- µ±ÎÒÃÇʹÓÃÒ»¸öÊý¾Ý¿âʱ£¬×ÜÏ£ÍûÊý¾Ý¿âµÄÄÚÈÝÊǿɿ¿µÄ¡¢ÕýÈ·µÄ£¬µ«ÓÉÓÚ¼ÆËã»úϵͳµÄ¹ÊÕÏ£¨°üÀ¨»úÆ÷¹ÊÕÏ¡¢½éÖʹÊÕÏ¡¢Îó²Ù×÷µÈ£©£¬Êý¾Ý¿âÓÐʱҲ¿ÉÄÜÔâµ½ÆÆ»µ£¬ÕâʱÈçºÎ¾¡¿ì»Ö¸´Êý¾Ý¾Í³ÉΪµ±ÎñÖ®¼±¡£Èç¹ûƽʱ¶ÔÊý¾Ý¿â×öÁ˱¸·Ý£¬ÄÇô´Ëʱ»Ö¸´Êý¾Ý¾ÍÏԵúÜÈÝÒס£Óɴ˿ɼû£¬×öºÃÊý¾Ý¿âµÄ±¸·ÝÊǶ ......
¶ÔÓÚORACLEÊý¾Ý¿âµÄÊý¾Ý´æÈ¡£¬Ö÷ÒªÓÐËĸö²»Í¬µÄµ÷Õû¼¶±ð£¬µÚÒ»¼¶µ÷ÕûÊDzÙ×÷ϵͳ¼¶°üÀ¨Ó²¼þƽ̨,µÚ¶þ¼¶µ÷ÕûÊÇORACLE RDBMS¼¶µÄµ÷Õû,µÚÈý¼¶ÊÇÊý¾Ý¿âÉè¼Æ¼¶µÄµ÷Õû,×îºóÒ»¸öµ÷Õû¼¶ÊÇSQL¼¶¡£Í¨³£ÒÀ´ËËļ¶µ÷Õû¼¶±ð¶ÔÊý¾Ý¿â½øÐе÷Õû¡¢ÓÅ»¯£¬Êý¾Ý¿âµÄÕûÌåÐÔÄÜ»áµÃµ½ºÜ´óµÄ¸ÄÉÆ¡£ÏÂÃæ´Ó¼¸¸ö²»Í¬·½Ã ......