Oracle PL/SQLÈëÃÅÖ®¿®Êö
Ò»¡¢PL/SQL³öÏÖµÄÄ¿µÄ
¡¡¡¡½á¹¹»¯²éѯÓïÑÔ(Structured Query
Language£¬¼ò³ÆSQL)ÊÇÓÃÀ´·ÃÎʹØϵÐÍÊý¾Ý¿âÒ»ÖÖͨÓÃÓïÑÔ£¬ËüÊôÓÚµÚËÄ´úÓïÑÔ£¨4GL£©£¬ÆäÖ´ÐÐÌصãÊǷǹý³Ì»¯£¬¼´²»ÓÃÖ¸Ã÷Ö´ÐеľßÌå·½·¨ºÍ;
¾¶£¬¶øÊǼòµ¥µÄµ÷ÓÃÏàÓ¦Óï¾äÀ´Ö±½ÓÈ¡µÃ½á¹û¼´¿É¡£ÏÔÈ»£¬ÕâÖÖ²»¹Ø×¢ÈκÎʵÏÖϸ½ÚµÄÓïÑÔ¶ÔÓÚ¿ª·¢ÕßÀ´ËµÓÐ׿«´óµÄ±ãÀû¡£
È»¶ø£¬¶ÔÓÚÓÐЩ¸´ÔÓµÄÒµÎñÁ÷³ÌÓÖÒªÇóÏàÓ¦µÄ³ÌÐòÀ´ÃèÊö£¬ÄÇô4GL¾ÍÓÐЩÎÞÄÜΪÁ¦ÁË¡£PL/SQLµÄ³öÏÖÕýÊÇΪÁ˽â¾öÕâÒ»ÎÊÌ⣬PL/SQLÊÇÒ»ÖÖ¹ý³Ì»¯
ÓïÑÔ£¬ÊôÓÚµÚÈý´úÓïÑÔ£¬ËüÓëC,C++,JavaµÈÓïÑÔÒ»Ñù¹Ø×¢ÓÚ´¦Àíϸ½Ú£¬Òò´Ë¿ÉÒÔÓÃÀ´ÊµÏֱȽϸ´ÔÓµÄÒµÎñÂß¼¡£
¡¡¡¡±¾½Ì³Ì·ÖÁ½²¿·Ö£¬µÚÒ»²¿·ÖÖ÷Òª¶ÔPL/SQLµÄ±à³Ì»ù´¡½øÐÐÌÖÂÛ£¬µÚ¶þ²¿·Ö½áºÏÒ»¸ö°¸ÀýÀ´½²½âPL/SQL±à³Ì¡£Ï£Íû¶ÁÕßÔĶÁ±¾ÎĺóÄܹ»¶ÔPL/SQL±à³ÌÓÐÒ»¸ö×ÜÌåÉϵÄÈÏʶ£¬Îª½ñºóÉîÈëPL/SQL±à³Ì´òÏÂÒ»¸ö»ù´¡¡£
¡¡¡¡¶þ¡¢PL/SQL±à³Ì»ù´¡
¡¡¡¡ÕÆÎÕÒ»Ãűà³ÌÓïÑÔÊ×ÒªÊÇÒªÁ˽âÆä»ù±¾µÄÓï·¨½á¹¹£¬¼´³ÌÐò½á¹¹¡¢Êý¾ÝÀàÐÍ¡¢¿ØÖƽṹÒÔ¼°ÏàÓ¦µÄÄÚǶº¯Êý£¨»ò±à³Ì½Ó¿Ú£©¡£
¡¡¡¡1¡¢PL/SQL³ÌÐò½á¹¹
¡¡¡¡PL/SQL³ÌÐò¶¼ÊÇÒԿ飨block£©Îª»ù±¾µ¥Î»¡£ÈçÏÂËùʾΪһ¶ÎÍêÕûµÄPL/SQL¿é£º
/*ÉùÃ÷²¿·Ö£¬ÒÔdeclare¿ªÍ·*/
declare
v_id integer;
v_name varchar(20);
cursor c_emp is select * from employee where emp_id=3;
/*Ö´Ðв¿·Ö£¬ÒÔbegin¿ªÍ·*/
begin
¡¡open c_emp;¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡--´ò¿ªÓαê
¡¡loop
¡¡¡¡fetch c_emp into v_id,v_name;¡¡¡¡--´ÓÓαêÈ¡Êý¾Ý
¡¡¡¡exit when c_emp%notfound ;
¡¡end loop ;
close c_emp;¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ --¹Ø±ÕÓαê
dbms_output.PUT_LINE(v_name);
/*Òì³£´¦Àí²¿·Ö£¬ÒÔexception¿ªÊ¼*/
exception
¡¡when no_data_found then
¡¡¡¡dbms_output.PUT_LINE('ûÓÐÊý¾Ý');
end ;
¡¡
¡¡´ÓÉÏÃæµÄPL/SQL³ÌÐò¶Î¿´³ö£¬Õû¸öPL/SQL¿é·ÖÈý²¿·Ö£ºÉùÃ÷²¿·Ö£¨ÓÃdeclare¿ªÍ·£©¡¢Ö´Ðв¿·Ö£¨ÒÔbegin¿ªÍ·£©ºÍÒì³£´¦Àí²¿·Ö£¨ÒÔ
exception¿ªÍ·£©¡£ÆäÖÐÖ´Ðв¿·ÖÊDZØÐëµÄ£¬ÆäËûÁ½¸ö²¿·Ö¿ÉÑ¡¡£ÎÞÂÛPL/SQL³ÌÐò¶ÎµÄ´úÂëÁ¿Óжà´ó£¬Æä»ù±¾½á¹¹¾ÍÊÇÓÉÕâÈý²¿·Ö×é³É¡£
¡¡¡¡2¡¢±äÁ¿ÉùÃ÷Ó븳ֵ
¡¡¡¡PL/SQLÖ÷ÒªÓÃÓÚÊý¾Ý¿â±à³Ì£¬ËùÒÔÆäËùÓÐÊý¾ÝÀàÐ͸úoracleÊý¾Ý¿âÀïµÄ×Ö¶ÎÀàÐÍÊÇÒ»Ò»¶ÔÓ¦µÄ£¬´óÌå·ÖΪÊý×ÖÐÍ¡¢²¼¶ûÐÍ¡¢×Ö·ûÐͺÍÈÕÆÚÐÍ¡£Îª·½±ãÀí½âºóÃæµÄÀý³Ì£¬ÕâÀï¼òµ¥½éÉÜÁ½ÖÖ³£ÓÃÊý¾ÝÀàÐÍ£ºnumber¡¢varchar2¡£
¡¡¡¡ number
¡¡¡¡ÓÃÀ´´æ´¢ÕûÊýºÍ¸¡µãÊý¡£·¶Î§Îª£
Ïà¹ØÎĵµ£º
ÔÚʹÓÃSQL*PlusÉú³É±¨¸æÎļþµÄʱºò£¬ÍùÍù»áÒòΪÆäĬÈϵÄÉèÖõ¼ÖÂÊä³öµÄ½á¹û·Ç³£µÄûÓпɶÁÐÔ£¬ÏÂÃæ½éÉÜÒ»¸öÈÕ³£ÖлᱻÓõ½µÄÒ»¸ö½Å±¾£¬ÆäÖаüº¬Ò»Ð©¸ñʽ»¯
Êä³öµÄsetÃüÁî
£¬ÎªÁË·½±ãÀí½â£¬ÎÒ»áÔÚÿһÌõsetÃüÁîÖ®ºó½ô¸ú×ÅÒ»¸ö¼òµ¥µÄ½âÊÍ£¬ÇëÂýÂýÌå»á¡£
sqlplus -s user_name/user_password << EOF >/dev/n ......
SQL×¢Èë¹¥»÷·À·¶¼¼ÇÉ
Ò»°ãµÄSQL×¢Èë¹¥»÷¶¼ÊÇͨ¹ý¹¹½¨Ò»Ìõ¸´ÔÓµÄsqlÓï¾ä£¬
ͨ¹ýÍøҳ©¶´À´Ö´ÐÐsqlÓï¾ä£¬´ïµ½¹¥»÷Êý¾Ý¿âµÄÄ¿µÄ¡£
Èçͨ¹ýÎÄÕÂIDÀ´²éѯijһƪÎÄÕµÄÍøÒ³£¬
ͨ³£²ÉÓõÄsqlÓï¾äΪ£º
sql="select top 1 * from articles where articId="&request("id")
ÄÇô¿ÉÒÔ¼òµ ......
ÈçºÎ°ÑAccessת³ÉSQL ServerµÄ·½·¨½éÉÜ
ºÜ¶àÅóÓÑÏëÓÃSQL 2000Êý¾Ý¿âµÄ±à³Ì·½·¨£¬µ«ÊÇÈ´ÓÖ¿àÓÚ×Ô¼ºÊÇѧAccessµÄ£¬¶ÔSQLÖ»ÊÇÒ»µãµãµÄÁ˽â¶øÒÑ£¬ÕâÀïÎÒ¸ø´ó¼ÒÌṩÒÔϲο¼---½«Accessת»¯³ÉSQL 2000µÄ·½·¨ºÍ×¢ÒâÊÂÏî¡£Ê×ÏÈ£¬ÎÒ˵µÄÊÇÔÚAccess 2000£¬SQL 2000Ö®¼äת»»£¬ÆäËûµÄÎÒÒ²»¹Ã»Óг¢ÊÔ¹ý£¬Ï£ ......
¶ÔÓÚ·þÎñÆ÷ÉÏÊý¾ÝµÄ±¸·Ý¹¤×÷ÊÇÍø¹ÜÔ±ÈÕ³£¹¤×÷ÖÐ×îÖØÒªµÄ¹¤×÷Ö®Ò»£¬SQLServerAgent·þÎñʹµÃÎÒÃÇ¿ÉÒÔÓÃSQLÉϵēÊý¾Ý¿âά»¤¼Æ»®”¹¦
ÄÜÀ´×Ô¶¯±¸·ÝÊý¾Ý£¬µ«×î½üÎÒ·¢ÏÖ·þÎñÆ÷ÉÏSQLServerAgent·þÎñÎÞ·¨Æô¶¯ÁË£¬»ØÏë×î½üËù×öµÄ²Ù×÷£¬ÔÀ´ÊÇÒòΪÎÒ°ÑSQLÖÐ
Builtin/AdministratorsÕâ¸öÕʺŵķþÎñÆ÷·ÃÎÊȨÏÞ½ûÖ¹ ......