oracle³õѧÕßÄãÇë½Ì - Oracle / »ù´¡ºÍ¹ÜÀí
--½¨Á¢Ò»¸ö°üÒÔ¶¨ÒåÒ»¸öÓαê
create or replace package PK_test
as
type cur_test is ref cursor;
end PK_test;
--½¨Á¢Ò»¸ö¹ý³Ì,ͨ¹ýÊäÈëJOBID£¬·µ»ØÒ»¸ö±í¼Ç¼£¨Óα꣩!
create or replace procedure PR_TEST_CURSOR
(JOBID IN VARCHAR2,cur_test out pk_test.cur_test)
as
begin
open cur_test for select ENAME,JOB from emp where JOB=JOBID;
end;
--ͨ¹ý¹ý³Ìµ÷ÓÃÉú³ÉÓαê(ºìÉ«²¿·Ö£©£¬²¢ÀûÓÃÓαê´òÓ¡.
declare
type t_name is table of scott.emp.ename%type;
type t_job is table of scott.emp.job%type;
cr_test pk_test.cur_test;
e_name t_name;
e_job t_job;
begin
--open cr_test for select ename,job from emp where job='MANAGER';
PR_TEST_CURSOR('MANAGER',cr_test);
fetch cr_test BULK COLLECT
INTO e_name, e_job;
CLOSE cr_test;
for i in e_name.first..e_name.last loop
dbms_output.put_line(e_name(i)||e_job(i));
end loop;
end;
/*
ÎÊÌ⣺ÒÔÉϵ÷ÓÃÊÇÓÐÎÊÌâµÄ,ÎÞ·¨Ê¹Ó㬱¾ÈËÊdzõѧÕߣ¬¾õµÃÕâÑùµÄµ÷ÓÃÓ¦¸ÃÊÇûÎÊÌâµÄ°É£¡
Çë´ó¼Ò°ïæ½âÎò£¡
*/
fetch cr_test BULK COLLECT
INTO e_name, e_job;
ÕâÀïÓ¦¸ÃÓÃpl/sql±í£¬Ò»¸ö±äÁ¿Ò»´ÎÖ»ÄܽÓÊÕÒ»¸öÖµ£¬²»ÄÜfetch BULK COLLECT
Ïà¹ØÎÊ´ð£º
ÎÒÊÇÓÃÔ¶³Ì×ÀÃæÁ¬²Ù×÷·þÎñÆ÷ÉϵÄÊý¾Ý¿â¡£
ÔÚ´´½¨Ò»¸öÓû§Ö®ºó£¬ÔÙÓÃPLSQLµÇ¼£¬ÔòPLSQLËÀµôÁË¡£
ÎҹصôPLSQLÖ®ºó£¬ÓÃÆäËûÓû§Ò²²»ÄܵǼ¡£
ÎÒ°ÑoracleµÄ·þÎñÍ£Ö¹£¬½á¹û¾ÍÊÇoracleµÄ·þÎñ״̬¾ÍÍ£ÁôÔÚ¡°Í ......
´ó¼ÒºÃ,ÎÒÏÖÔÚ°Ñoracle·þÎñÆ÷ÉÏÃæµÄÔʼÎļþ,ÏÂÔØµ½±¾»úÁË.ÎÒÏëÔÚ±¾»ú·ÃÎÊÊý¾Ý¿âÔõôÉèÖð¡.ÊDz»ÊÇÀàËÆ¿ÉÒÔ½¨Á¢Ò»¸öʲôÐéÄâ·þÎñÆ÷À´ÊµÏÖ.Çë´ó¼Ò³ö³öÖ÷Òâ
ÒýÓÃ
´ó¼ÒºÃ,ÎÒÏÖÔÚ°Ñoracle·þÎñÆ÷ÉÏÃæ ......
exp user/password@dbname file=c:\table.dmp tables=jbitaku,jbitakum grants=y
È»áá°´»Ø車鍵 說Ã÷:¡¡ user/password@dbname ¡¡·Ö別±íʾÓÃ戶Ãû£¬ÃÜ碼ºÍ·þ務Ãû f ......
ÔÚÁ¬½ÓÊý¾ÝԴʱ£¬Êý¾ÝÁ¬½ÓÊôÐÔÖÐÑ¡Ôñoracle provider for ole db
µ¥»÷ÏÂÒ»²½Ê±±¨´í ¡°Ìṩ³ÌÐò²»ÔÙ¿ÉÓã¬ÇëÈ·¶¨Ìṩ³ÌÐò±»ÕýÈ·°²×°¡£¡±
ÎÒÓõÄÊÇoracle 8£¬ÏÈǰÓõÄ10gÒ²Óöµ½ÀàËÆµÄÎÊÌâ
ʹÓÃmicrosoft ole db pro ......
Ö÷ÒªÏëʵÏÖ£ºÔÚÿÌìµÄ0µã֮ǰ×Ô¶¯½«Êý¾Ý²åÈëÊý¾Ý¿â£¬Ï£Íû´ó¼ÒÖ¸µã£¡
×Ô¶¯²åÈë?Êý¾ÝÔ´ÄÄÀïÀ´µÄ,²åÈ뵽ʲôµØ·½
´¥·¢Æ÷?
Ó¦¸ÃÓÃJOB
Êý¾ÝÔ´ÔÝʱÏëµÄÊǹ̶¨Êý¾Ý£¬²åÈëµ½Ò»Õűí
ÄǾÍÊÇÓÃJOB¶¨Ê±Ö´ÐÐ,´ÓÎļþµ¼ÈëÊ ......