Oracle²âÊÔ´æ´¢¹ý³ÌÁ½ÖÖ·½Ê½
ÔÚ³õѧOracleʱ£¬Ð´ÁËÒ»¸ö´æ´¢¹ý³Ì£¬Ãû³ÆÊÇ£ºPROC_GET_BILL£¬Èý¸ö²ÎÊý£¬µÚ1£¬3ÊÇin²ÎÊý£¬µÚ2ÊÇout²ÎÊý£¬Ð´ÍêÖ®ºó£¬Ïë²âһϣ¬½á¹û·¢ÏÖÍøÉÏÓжàÖÖ·½Ê½£¨ÆäÖØÒªÊÇÏÂÃæÕâÁ½ÖÖ£¬Ö»ÊÇд·¨²»Í¬¶øÒÑ£©£¬¸Õ¿ªÊ¼°ÑÁ½ÖÖ±äÁ¿¶¨Ò巽ʽ¸ã´íÁË£¬Ò»Ö±Ö´Ðв»¹ý£¬¾ÂýÂý³¢ÊÔ£¬µÃµ½ÁËÏÂÃæÁ½ÖÖд·¨£¬Ï£ÍûÏñÎÒÕâÑù³õѧÕßÉÙ×ßÍä·£¬Ö±½Ó¸ãÇåÁ½ÖÖ·½Ê½£¨ºìÉ«×ÖÌåÊÇ×¢ÊÍ£©¡£
1.д·¨
var test1 VARCHAR2(2000);
var test2 VARCHAR2(10);
exec OUTER_SYSTEM_INTERFACE_PKG.PROC_GET_BILL('','',:test1,:test2);
select :test1 from dual;
OUTER_SYSTEM_INTERFACE_PKG£¨ÊÇPackage£©
2¡¢Ð´·¨
declare
o_result VARCHAR2(2000);
o_split_char VARCHAR2(10);
begin
CMCC.OUTER_SYSTEM_INTERFACE_PKG.PROC_GET_BILL('','', o_result, o_split_char);
dbms_output.put_line(o_result);
end;
CMCC£¨ÊÇDBÃû³Æ£©
Ïà¹ØÎĵµ£º
2¡¢ ³éÏóÊý¾ÝµÄÒýÓá£
¡¡¡¡µ±½¨Á¢ºÃ³éÏóÊý¾ÝÀàÐ͵Äʱºò£¬Êý¾Ý¿â¹ÜÀíÔ±¾Í¿ÉÒÔÏò»ù±¾Êý¾ÝÀàÐÍÄÇÑù£¬ÒýÓóéÏóÊý¾ÝÀàÐÍ£¬°üÀ¨ÔÚ½¨Á¢±í»òÕß¶ÔÏà¹Ø×ֶνøÐи³ÖµµÄʱºò£¬¶¼Õâô·½±ã¡£
¡¡¡¡ÈçÔÚ½¨Á¢±íµÄʱºò£¬¿ÉÒÔ°ÑÕâ¸ö³éÏóÊý¾ÝÀàÐÍÖ±½Ó¸úij¸ö×ֶιØÁªÆðÀ´¡£Èç
¡¡¡¡Create Table USERS
¡¡¡¡(F_Adress Adress );
¡¡¡ ......
¸ß¼¶¸´ÖÆ
ʲôÊǸ´ÖÆ£¿¼òµ¥µØËµ¸´ÖƾÍÊÇÔÚÓÉÁ½¸ö»òÕß¶à¸öÊý¾Ý¿âϵͳ¹¹³ÉµÄÒ»¸ö·Ö²¼Ê½Êý¾Ý¿â»·¾³Öп½±´Êý¾ÝµÄ¹ý³Ì¡£
¸ß¼¶¸´ÖÆ£¬ÊÇÔÚ×é³É·Ö²¼Ê½Êý¾Ý¿âϵͳµÄ¶à¸öÊý¾Ý¿âÖи´ÖƺÍά»¤Êý¾Ý¿â¶ÔÏóµÄ¹ý³Ì¡£ Oracle ¸ß¼¶¸´ÖÆÔÊÐíÓ¦ÓóÌÐò¸üÐÂÊý¾Ý¿âµÄÈκθ±±¾£¬²¢½«ÕâЩ¸ü¸Ä×Ô¶¯´«µÝµ½ÆäËûÊ ......
ÔÚplsqlÖУ¬ÃæÏò¶ÔÏóµÄ³ÌÐòÉè¼ÆÊÇ»ùÓÚ¶ÔÏóÀàÐÍÀ´Íê³ÉµÄ¡£¶ÔÏóÀàÐÍÊÇÓû§×Ô¶¨ÒåµÄÒ»ÖÖ¸´ºÏÊý¾ÝÀàÐÍ£¬Ëü·â×°ÁËÊý¾Ý½á¹¹ºÍÓÃÓÚ²Ù×ÝÕâЩÊý¾Ý½á¹¹µÄ¹ý³ÌºÍº¯Êý£¬ÔÚ½¨Á¢¸´ÔÓÓ¦ÓóÌÐòʱ£¬Í¨¹ýʹÓöÔÏóÀàÐÍ¿ÉÒÔ½µµÍÓ¦Óÿª·¢ÄѶȣ¬½ø¶øÌá¸ßÓ¦Óÿª·¢µÄЧÂʺÍËÙ¶È¡£
¶ÔÏóÀàÐͰüÀ¨¶ÔÏóÀàÐ͹淶£¨object type specification£©ºÍ¶ÔÏóÀàÐÍ ......
create or replace type mytype IS TABLE OF varchar2(20);
declare type1 mytype :=mytype('1','2','3','4');
i number:=1;
var_str varchar(20):='liaomin';
begin
type1.EXTEND;
type1(type1.COUNT):=var_str;
loop
dbms_output.put_line(type1(i));
i:=i+1;
exit when i=type1.count+1; ......