ORACLE PL/SQL°ü(package)ѧϰ±Ê¼Ç
°üÓɰü¹æ·¶ºÍ°üÌåÁ½²¿·Ö×é³É¡£
1¡¢°ü¹æ·¶£¨Package Specification£©
°ü¹æ·¶£¬Ò²½Ð×ö°üÍ·£¬°üº¬ÁËÓйذüµÄÄÚÈݵÄÐÅÏ¢¡£µ«ÊÇ£¬Ëü²»°üº¬Èκιý³ÌµÄ´úÂë¡£
´´½¨°üÍ·µÄÓï·¨Ò»°ãÈçÏÂ
CREATE [OR REPLACE] PACKAGE package_name {IS | AS}
Procedure_name | function_name | variable_declaration | type_definition | exception_declaration | cursor_declaration
END [package_name];
ÉùÃ÷°üÍ·»¹Òª×ñÑһЩÓï·¨¹æÔò£¬ÈçÏ£º
°ü²¿¼þ¿ÉÒÔÒÔÈÎÒâ´ÎÐò³öÏÖ¡£µ«ÊÇ£¬¶ÔÏó±ØÐëÔÚ±»ÒýÓÃ֮ǰ½øÐÐÉùÃ÷¡£
ËùÓÐÀàÐ͵IJ¿¼þ¶¼Ã»ÓбØÒª¶¼±»Ê¹Óá£ÀýÈ磬°ü¿ÉÒÔ½ö°üº¬¹ý³ÌºÍº¯Êý¹æ·¶£¬¶øÃ»ÓÐÉùÃ÷Òì³£´¦Àí»òÀàÐÍ¡£
¶ÔÓÚ¹ý³ÌºÍº¯ÊýµÄËùÓÐÉùÃ÷¶¼±ØÐëÊÇǰÏòÉùÃ÷¡£
2¡¢°üÖ÷Ì壨Package Body£©
°üÖ÷ÌåºÍ°üÍ·´æ´¢ÔÚ²»Í¬µÄÊý¾Ý×ÖµäÖС£Èç¹ûûÓж԰üÍ·½øÐгɹ¦µÄ±àÒ룬¾Í²»¿ÉÄܶ԰üÖ÷Ìå±àÒë³É¹¦¡£Ö÷ÌåÖаüº¬ÁËÔÚ°üÍ·ÖÐǰÏò×Ó³ÌÐòÉùÃ÷ÏàÓ¦µÄ´úÂë¡£
°üÖ÷ÌåÊÇ¿ÉÑ¡µÄ¡£Èç¹û°üÍ·²»°üº¬Èκιý³Ì»òº¯Êý£¬ÄÇô°üÖ÷Ìå¿ÉÒÔûÓС£Õâ¸ö¼¼Êõ¶ÔÓÚÉùÃ÷È«¾Ö±äÁ¿ÊǺÜÓÐÓõģ¬ÒòΪ°üÖеÄËùÓжÔÏóÔÚ°üµÄÍâÃæÊǿɼûµÄ¡£
°üÍ·ÖеÄËùÓÐǰÏòÉùÃ÷±ØÐëÔÚ°üÖ÷ÌåÖб»¸üС£¹ý³Ì»òº¯ÊýµÄ¹æ·¶ÔÚ°üÍ·ºÍ°üÖ÷ÌåÖбØÐëÊÇÏàͬµÄ¡£Õâ¸ö¹æ·¶°üÀ¨×Ó³ÌÐòµÄÃû×Ö¡¢²ÎÊýµÄÃû×ÖÒÔ¼°²ÎÊýµÄģʽ¡£
3¡¢°üºÍ×÷ÓÃÓò
ÔÚ°üÍ·Öж¨ÒåµÄÈκζÔÏó¶¼ÓÐÒ»¶¨µÄ·¶Î§£¬ÔÚ°üÒÔÍâͨ¹ýʹÓðüÃû³ÆÏÞ¶¨ÈÔÈ»¿ÉÒÔʹÓÃÕâЩ¶ÔÏó¡£ÀýÈ磬¿ÉÒÔÏñÏÂÃæPL/SQL¿éÄÇÑùµ÷ÓÃInventoryOps.DeleteISBN¹ý³Ì¡£
BEGIN
InventoryOps.DeleteISBN(‘78824389’);
END;
°ü¹ý³ÌµÄµ÷ÓÃÓëµ¥¶ÀµÄ¹ý³Ìµ÷ÓÃÏàͬ£¬Î¨Ò»µÄÇø±ð¾ÍÊÇÔÚ°ü¹ý³ÌµÄÇ°ÃæÌí¼ÓÁ˰üÃû³ÆÇ°×º¡£°ü¹ý³Ì¿ÉÒÔ´øÓÐĬÈϵIJÎÊý£¬¿ÉÒÔʹÓÃλÖñíʾ·¨»òÕßÃû³Æ±íʾ·¨µ÷ÓÃËüÃÇ£¬¾ÍÏñµ¥¶ÀµÄ´æ´¢¹ý³ÌÒ»Ñù¡£
°üÍ·ÖеĶÔÏóÔÚ°üÖ÷ÌåÖпÉÒÔÖ±½ÓʹÓ㬲»ÐèÒª¸½´ø°üÃûǰ׺¡£
4¡¢°ü×Ó³ÌÐòµÄÖØÔØ
ÔÚ°üÖУ¬¹ý³ÌºÍº¯ÊýÊÇ¿ÉÒÔÖØÔØµÄ¡£ÕâÒ²¾ÍÒâζ×Å¿ÉÒÔÈöà¸ö¹ý³Ì»òº¯Êý¹²ÓÃͬһ¸öÃû³Æ£¬µ«ÊÇ´øÓв»Í¬µÄ²ÎÊý¡£ÕâÊÇÒ»¸ö·Ç³£ÓÐÓõŦÄÜÌØÐÔ£¬ÒòΪËüÈÃͬһ¸ö²Ù×÷¿ÉÒÔÖ´ÐÐÔÚ²»Í¬ÀàÐ͵ĶÔÏóÉÏ¡£
ÏÂÃæÊ¾ÀýÑÝʾÁ˰ü×Ó³ÌÐòµÄÖØÔØ
CREATE OR REPLACE PACKAGE InventoryOps AS
…
-- Returns an array containing the books with the specified status.
PROCEDURE StatusList(p_Status IN
Ïà¹ØÎĵµ£º
¹¦ÄÜ£ºpl plusÖ´Ðб¾µØµÄsqlÎļþÖеÄsqlÓï¾ä
˵Ã÷£º±ÈÈ磺e:\zhaozhenlongÏÂÓÐcreate_table.sqlÎļþ£¬Ôò°´ÈçÏ·½·¨Ö´ÐУº
²½Ö裺
1¡¢ÔÚpl plusµÄ windowÏ£¬
2¡¢Ö´ÐУº
@e:\zhaozhenlong\drop_table.sql
@e:\zhaozhenlong\create_table.sql
......
select *
from (select row_number() over(partition by t.type order by date desc) rn,
t.*
from ±íÃû t)
where rn <= 2;
typeÒª·ÖµÄÀà
date ÅÅÐò ......
Ð¶ÔØSQL Server 2005µÄ·½·¨Ö®Ò»£¬·ÅÔÚÕâ¶ùÖ»ÊÇΪÁ˼Çס£º
1£º°ÑSQL Server2005µÄ°²×°ÅÌ£¨°²×°Îļþ£©·ÅÈëµ½¹âÇý¡£
2£º´ò¿ªÈçÏ·¾¶£º¿ªÊ¼/ÔËÐУ¬ÊäÈ룺cmd
3£ºÊäÈëÏÂÁÐÃüÁ
Start /wait \setup.exe /qb REMOVE=ALL INSTANCENAME=£º¹ÜÇøÅÌ·û£¬ÀýÈ磺G£º¡¢H£ºµÈ£»£º°²×°µÄSQLServerʵÀýÃû³Æ£¬Ä¬ÈÏֵΪ£º¹¦ÄÜ ......
SQLÓï¾äÓï·¨
Ŀ¼
13.1. Êý¾Ý¶¨ÒåÓï¾ä
13.1.1. ALTER DATABASEÓï·¨
13.1.2. ALTER TABLEÓï·¨
13.1.3. CREATE DATABASEÓï·¨
13.1.4. CREATE INDEXÓï·¨
13.1.5. CREATE TABLEÓï·¨
13.1.6. DROP DATABASEÓï·¨
13.1.7. DROP INDEXÓï·¨
13.1.8. DROP TABLEÓï·¨
13.1.9. RENAME TABLEÓï·¨
13.2. Êý¾Ý²Ù×÷Óï¾ ......
ÎÊÌ⣺¼ÙÉèÓÐÕÅѧÉú³É¼¨±í(tb)ÈçÏÂ:
ÐÕÃû ¿Î³Ì ·ÖÊý
ÕÅÈý ÓïÎÄ 74
ÕÅÈý Êýѧ 83
ÕÅÈý ÎïÀí 93
ÀîËÄ ÓïÎÄ 74
ÀîËÄ Êýѧ 84
ÀîËÄ ÎïÀí 94
Ïë±ä³É(µÃµ½ÈçϽá¹û)£º
ÐÕÃû ÓïÎÄ Êýѧ ÎïÀí
---- ---- --- ......