oracle°üºÍREF CURSOR
Ê×ÏÈ£¬ÐèÒªÖØÐÂÕûÀíÒ»ÏÂÏà¹Ø¸ÅÄoracleÊý¾Ý¿âÖк¯ÊýµÄ×÷Óã¬ÊÇÖ»Äܱ»±ðÈ˵÷Ó㬴洢¹ý³Ì¿ÉÒÔµ¥¶ÀÖ´ÐУ¬²¢ÇÒ¿ÉÒÔµ÷Óô洢¹ý³Ì£¬¶ø°üµÄ×÷Óðü¿ÉÒÔ½«ÈκγöÏÖÔÚ¿éÉùÃ÷µÄÓï¾ä ( ¹ý³Ì , º¯Êý , Óαê , Óαê , ÀàÐÍ , ±äÁ¿ ) ·ÅÓÚ°üÖÐ , Ï൱ÓÚÒ»¸öÈÝÆ÷ . ½«ÉùÃ÷Óï¾ä·ÅÈë°üÖеĺô¦ÊÇ : Óû§¿ÉÒÔ´ÓÆäËû PL/SQL ¿éÖжÔÆä½øÐÐÒýÓà , Òò´Ë°üΪ PL/SQL ÌṩÁËÈ«¾Ö±äÁ¿£¬°ü·ÖΪ°üÍ·ºÍ°üÌ壬°üÍ·ÏȱàÒëͨ¹ýºó²ÅÄܱàÒë°üÌå¡£
°üÍ·µÄ´´½¨£º
1) °üÍ· :
Óï·¨¸ñʽ :
CREATE OR REPLACE PACKAGE package_name /* °üÍ·Ãû³Æ */
IS|AS
pl/sql_package_spec /* ¶¨Òå¹ý³Ì , º¯ÊýÒÔ¼°·µ»ØÀàÐÍ , ±äÁ¿ , ³£Á¿¼°Êý¾ÝÀàÐͶ¨Òå */
¶¨Òå°üÍ·Ó¦µ±×ñÑÒÔÏÂÔÔò :
1) °üÔªËØλÖÿÉÒÔÈÎÒâ°²ÅÅ . È»¶øÔÚÉùÃ÷²¿·Ö , ¶ÔÏó±ØÐëÔÚÒýÓÃÇ°½øÐÐÉùÃ÷ .
2) °üÍ·¿ÉÒÔ²»¶ÔÈκÎÀàÐ͵ÄÔªËؽøÐÐ˵Ã÷ . ÀýÈç , °üÍ·¿ÉÒÔÖ»´ø¹ý³ÌºÍº¯Êý˵Ã÷Óï¾ä , ¶ø²»ÉùÃ÷ÈκÎÒì³£ºÍÀàÐÍ .
3) ¶Ô¹ý³ÌºÍº¯ÊýµÄÈκÎÉùÃ÷¶¼±ØÐëÖ»¶Ô×Ó³ÌÐòºÍÆä²ÎÊý½øÐÐÃèÊö , ²»ÄÜÓÐÈκδúÂëµÄ˵Ã÷ , ´úÂëµÄʵÏÖÖ»ÄÜÔÚ°üÌåÖгöÏÖ . Ëü²»Í¬ÓÚ¿éÉùÃ÷ , ÔÚ¿éÉùÃ÷ÖÐ , ¹ý³ÌºÍº¯ÊýµÄ´úÂë¿Éͬʱ³öÏÖÔÚÉùÃ÷²¿·Ö .
2. °üÌå :
Óï·¨¸ñʽ :
CREATE OR REPLACE PACKAGE BODY package_name/* °üÃû±ØÐëÓë°üÍ·µÄ°üÃûÒ»Ö */
IS | AS
pl/sql_package_body /* Óαê , º¯Êý , ¹ý³ÌµÄ¾ßÌ嶨Òå */
°üÌåÊÇÓë°üÍ·Ï໥¶ÀÁ¢µÄ , °üÌåÖ»ÄÜÔÚ°üÍ·Íê³É±àÒëºó²ÅÄܽøÐбàÒë . °üÌåÖдøÓаüÍ·ÖÐÃèÊöµÄ×Ó³ÌÐòµÄ¾ßÌåʵÏֵĴúÂë¶Î . ³ý´ËÖ®Íâ , °üÌ廹¿ÉÒÔ°üÀ¨¾ßÓаüÌåÈËÈ«¾äÊôÐԵĸ½¼ÓÉùÃ÷²¿·Ö , µ«ÕâЩ¸½¼ÓÉùÃ÷¶ÔÓÚ°üÍ·ÊDz»¼ûµÄ .
Demo:
****************
*°ü
****************
create or replace package mypack
as
type mytype is ref cursor return emp%rowtype; --ÉùÃ÷REFÓαê
function myemp(dno number) return mytype;
end;
****************
*body
****************
create or replace package body mypack
as
function myemp(dno
Ïà¹ØÎĵµ£º
1.
¿ªÊ¼-->ÔËÐÐ-->cmd-->
.µ¼³öÊý¾Ý
exp help=y ²é¿´°ïÖú
exp rbt/rbt@ora10 file=c:\db.dmp full=y °´EnterÖ´ÐÐ
.³É¹¦Ö´ÐС£¡£¡£
.µ¼ÈëÊý¾Ý
imp help=y ²é¿´°ïÖú
impÓÉÓµÓÐDBAȨÏÞµÄÓû§eXPÖ´ÐÐ.
imp kxself2/kxself2@ora10 full=y file=c:\db.dmp
»ò
Imp username/password file=f ......
¸½:Oracle SQL Developer — À©Õ¹½»Á÷ÖÐÐÄ
http://www.oracle.com/technology/global/cn/products/database/sql_developer/files/extensions.htm
֮ǰ×÷Ϊһ¸öOracle Employee£¬È´×ÜÊÇÔÚʹÓÃPL/SQL Developer£¨¶øÇÒÊÇÆƽâ°æ£©£¬ÕâʵÔÚÓÐЩ˵²»¹ýÈ¥£¬µ«ÊÇÈçºÎÕÒµ½Ò»¸öºÏÐijÃÊÖµÄÄܹ»Ô ......
½ñÌì×öÏîÄ¿µÄʱºò£¬½«null´«ÈëOracleµÄ±íÖУ¬¾ÍÊDz»³É¹¦
¾¹ý³¢ÊԵóöÁËÁ½¸ö½â¾ö·½°¸£º
1.´«ÈëOracleDateTime.NULL
2.Nullable<DateTime> optime = DBNull.Value; ´«Èëoptime(¿ªÊ¼ÍøÉÏÕҵĴð°¸ÊÇNullable<DateTime> optime = null·¢ÏÖ»¹Êǻᱨ´í) ......
´æ´¢¹ý³Ì °üº¬Èý²¿·Ö£º ÉùÃ÷£¬Ö´Ðв¿·Ö£¬Òì³£¡£
¿ÉÒÔÓÐÎÞ²ÎÊý³ÌÐòºÍ´ø²ÎÊý´æ´¢¹ý³Ì¡£
Î޲γÌÐòÓï·¨
1 create or replace procedure NoParPro
2 as ;
3 begin
4&n ......