Oracle²ð·Ö×Ö·û´®º¯Êý
--¶¨ÒåÀàÐÍ
CREATE OR REPLACE TYPE ty_str_split IS TABLE OF VARCHAR2(4000);
--´´½¨º¯Êý
CREATE OR REPLACE FUNCTION f_stringsplit (p_str IN VARCHAR2, p_delimiter IN VARCHAR2)
RETURN ty_str_split PIPELINED
/*****
****×Ö·û´®²ð·Ö,Ï൱ÓÚjava.lang.StringÀàµÄsplit·½·¨
****×¢Òâ:ÐÂÔötypes:CREATE OR REPLACE TYPE ty_str_split IS TABLE OF VARCHAR2 (100);
****´´½¨Õߣº
****ʱ¼ä£º
****ÕªÈ¡ÍøÂç×ÊÔ´
***/
IS
j INT := 0;
i INT := 1;
len INT := 0;
len1 INT := 0;
str VARCHAR2 (100);
BEGIN
len := LENGTH (p_str);
len1 := LENGTH (p_delimiter);
WHILE j < len
LOOP
j := INSTR (p_str, p_delimiter, i);
IF j = 0
THEN
j := len;
str := SUBSTR (p_str, i);
PIPE ROW (str);
IF i >= len
THEN
EXIT;
END IF;
ELSE
str := SUBSTR (p_str, i, j - i);
i := j + len1;
PIPE ROW (str);
END IF;
END LOOP;
RETURN;
END f_stringsplit;
--µ÷ÓÃ
select¡¡*¡¡from¡¡t
Ïà¹ØÎĵµ£º
OracleÊý¾Ýµ¼Èëµ¼³öimp/exp¾ÍÏ൱ÓÚoracleÊý¾Ý»¹ÔÓ뱸·Ý¡£expÃüÁî¿ÉÒÔ°ÑÊý¾Ý´ÓÔ¶³ÌÊý¾Ý¿â·þÎñÆ÷µ¼³öµ½±¾µØµÄdmpÎļþ£¬impÃüÁî¿ÉÒÔ°ÑdmpÎļþ´Ó±¾µØµ¼Èëµ½Ô¶´¦µÄÊý¾Ý¿â·þÎñÆ÷ÖС£ ÀûÓÃÕâ¸ö¹¦ÄÜ¿ÉÒÔ¹¹½¨Á½¸öÏàͬµÄÊý¾Ý¿â£¬Ò»¸öÓÃÀ´²âÊÔ£¬Ò»¸öÓÃÀ´ÕýʽʹÓá£
Ö´Ðл·¾³£º¿ÉÒÔÔÚSQLPLUS.EXE»òÕßDOS£¨ÃüÁîÐУ©ÖÐÖ´ÐУ¬
DOSÖп ......
Oracle
Ë÷Òý¼¼ÊõµÄÓ¦ÓÃÓëÆÊÎö
×î
½üÕâ¶Îʱ¼ä£¬×ÜÊÇÏëдһЩÓйØÐÔÄܵ÷ÓŵÄÎÄÕ¡£µ«ÊÇ¿àÓÚûÓÐÒ»¸öʵ¼ÊµÄ°¸Àý£¬±¾ÈËÓÖ²»Ô¸¿Õ̸ÀíÂÛ£¬ÒòΪÕâЩÀíÂÛËæ±ãÔÚÍøÉϾÍÄÜÕÒµ½£¬¶øÇÒ»ù±¾ÉÏǧƪһÂÉ£¬
ÒòΪÀíÂÛÉϵÄÄÇЩ¶«Î÷¾ÍÄÇô¶à£¬ÔÙÔõô½²Ò²²»ÈçÒ»¸öʵ¼Ê°¸ÀýÉú¶¯¡£»¹ºÃÉÏÌì²»¸ºÓÐÐÄÈË£¬Ç°Ð©ÌìÈÃÎÒÅöµ½ÁËÒ»¸öʵ¼ÊµÄ°¸Àý¡£Õâ¸ö ......
create or replace procedure check_records (ikbid in number,ikch in varchar2 ,ixh in varchar2,ixnd in varchar2,ikkxq in varchar2,info out varchar2,msg out varchar2)
as
v1 number;
v2 number;
v3 number;
begin
select XZRS into v2 from KCB_JW where KCH=ikch;
select count(*) into v3 fro ......
Õý³£À´Ëµ£¬ÔÚÍê³ÉSelectÓï¾ä¡¢create indexµÈһЩʹÓÃTEMP±í¿Õ¼äµÄÅÅÐò²Ù×÷ºó£¬OracleÊÇ»á×Ô¶¯ÊͷŵôÁÙʱ¶ÎaµÄ¡£µ«ÓÐЩÓкîÎÒÃÇÔò»áÓöµ½ÁÙʱ¶ÎûÓб»ÊÍ·Å£¬TEMP±í¿Õ¼ä¼¸ºõÂúµÄ×´¿ö£¬ÉõÖÁÊÇÎÒÃÇÖØÆôÁËÊý¾Ý¿âÈÔûÓнâ¾öÎÊÌâ¡£Õâ¸öÎÊÌâÔÚÂÛ̳ÖÐÒ²³£±»ÍøÓÑÎʵ½£¬ÏÂÃæÎÒ×ܽáһϣ¬¸ø³ö¼¸ÖÖ´¦Àí·½·¨¡£
......