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
¡¡¡¡ÓÃÀ´´æ´¢ÕûÊýºÍ¸¡µãÊý¡£·¶Î§Îª£
Ïà¹ØÎĵµ£º
oracle±í¿Õ¼ä²Ù×÷Ïê½â
1
2
3×÷Õߣº À´Ô´£º ¸üÐÂÈÕÆÚ£º2006-01-04
5
6
7½¨Á¢±í¿Õ¼ä
8
9CREATE TABLESPACE data01
10DATAFILE '/ora ......
ÔÚʹÓÃSQL*PlusÉú³É±¨¸æÎļþµÄʱºò£¬ÍùÍù»áÒòΪÆäĬÈϵÄÉèÖõ¼ÖÂÊä³öµÄ½á¹û·Ç³£µÄûÓпɶÁÐÔ£¬ÏÂÃæ½éÉÜÒ»¸öÈÕ³£ÖлᱻÓõ½µÄÒ»¸ö½Å±¾£¬ÆäÖаüº¬Ò»Ð©¸ñʽ»¯
Êä³öµÄsetÃüÁî
£¬ÎªÁË·½±ãÀí½â£¬ÎÒ»áÔÚÿһÌõsetÃüÁîÖ®ºó½ô¸ú×ÅÒ»¸ö¼òµ¥µÄ½âÊÍ£¬ÇëÂýÂýÌå»á¡£
sqlplus -s user_name/user_password << EOF >/dev/n ......
1 :ÆÕͨSQLÓï¾ä¿ÉÒÔÓÃexecÖ´ÐÐ
Select * from tableName
exec('select * from tableName')
exec sp_executesql N'select * from tableName' -- Çë×¢Òâ×Ö·û´®Ç°Ò»¶¨Òª¼ÓN
2:×Ö¶ÎÃû£¬±íÃû£¬Êý¾Ý¿âÃûÖ®Àà×÷Ϊ±äÁ¿Ê±£¬±ØÐëÓö¯Ì¬SQL
declare @fname varchar(20)
set @fname = 'FiledName'
Select @fname fr ......
ÈÕÆÚÀàÐ͸ÅÊö
SQL ServerÖеÄÈÕÆÚÀàÐͰüÀ¨datetimeºÍsmalldatetime£¬½öÄÜ´¦Àí¿ÉÒÔʶ±ðΪ1753Äê¡«9999Äê¼äµÄÈÕÆÚµÄÖµ£¬Ã»Óе¥¶ÀµÄÈÕÆÚÐÍ»òʱ¼äÐÍ¡£
1£®datetime
datetimeÀàÐÍ´¦Àí´Ó1753Äê1ÔÂ1ÈÕ¡«9999Äê12ÔÂ31ÈÕµÄÈÕÆÚºÍʱ¼äÊý¾Ý£¬¾«È·¶ÈΪ°Ù·ÖÖ®ÈýÃë¡£
¼´£º¶ÔÓÚ0.000¡«0.001¡¢0.009µÄÈÕÆÚÖµ£¬µ÷ÕûΪ0.000£»¶ÔÓÚ ......
1¡¢PL/SQL
Developer¼ÇסµÇ½ÃÜÂë
ÔÚʹÓÃPL/SQL
Developerʱ£¬ÎªÁ˹¤×÷·½±ãÏ£ÍûPL/SQL
Developer¼ÇסµÇ¼OracleµÄÓû§ÃûºÍÃÜÂ룻
ÉèÖ÷½·¨£ºPL/SQL
Developer 7.1.2
->tools->Preferences->Oracle->Logon History £¬ “Store
history”ÊÇĬÈϹ´Ñ¡µÄ£¬¹´ÉÏ&ldqu ......