亚洲免费在线视频-亚洲啊v-久久免费精品视频-国产精品va-看片地址-成人在线视频网

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Oracle數(shù)據(jù)庫(kù)中獲取數(shù)據(jù)的存儲(chǔ)過(guò)程示例

瀏覽:153日期:2023-11-23 10:30:32

>>從一個(gè)表A的取得數(shù)據(jù)插入另一個(gè)表B中?

(1)對(duì)于表A和表B兩個(gè)表結(jié)構(gòu)完全相同的話(huà)〔字段個(gè)數(shù),相應(yīng)字段的類(lèi)型等等〕,可以使用

INSERT INTO B SELECT * FROM A;

INSERT INTO B(field1,field2,field3) select A.field1,A.field2,A.field3 from A;

(2) 對(duì)于兩個(gè)表如果字段數(shù)不一樣,但是有幾個(gè)字段的結(jié)構(gòu)一樣時(shí)〔類(lèi)似于父子關(guān)系〕,必須使用 INSERT INTO B(field1,field2) select A.field1,A.field2 from A;

1.用帶參數(shù)的游標(biāo)實(shí)現(xiàn)insert功能:

CREATE OR REPLACE PROCEDURE GET_DATA(

-- 參數(shù)列表:

n_task_id IN number, --任務(wù)編號(hào)

v_task_name IN varchar2, --任務(wù)名稱(chēng)

v_name IN varchar2 -- 名稱(chēng)

)

-----------------------------------------------

-- PROCEDURE名 :GET_DATA --

-- 処理內(nèi)容 :從數(shù)據(jù)源表取得符合條件的的數(shù)據(jù)插入到目標(biāo)數(shù)據(jù)表: --

-- 引數(shù) :n_tas_id 任務(wù)ID, --

-- v_task_namek 任務(wù)名稱(chēng), --

-- v_bdw_name 對(duì)數(shù)據(jù)源表限制條件:本地網(wǎng)名稱(chēng) --

-----------------------------------------------

IS

--插入行數(shù)控制

i_count number(5);

--取數(shù)據(jù)游標(biāo):DATA_CUR(IN_NAME)

--參數(shù):本地網(wǎng)名稱(chēng):IN_NAME

CURSOR DATA_CUR(IN_NAME VARCHAR2) IS /**注意:參數(shù)的定義中不帶精度**/

SELECT *

FROM GET_DATA_SRC A

WHERE A.NAME = IN_NAME;

BEGIN

--計(jì)數(shù)器,控制插入行數(shù)

i_count := 0;

--循環(huán)插入數(shù)據(jù)

FOR MYCUR IN DATA_CUR(v_name) LOOP

INSERT INTO ABC(

ROW_ID,

TASK_ID,

TASK_NAME,

GET_DATA_DT,

CUST_ID,

ASSIGN_FLAG,

DEAL_DATE

)VALUES(

SEQ_KD.NEXTVAL,

N_TASK_ID,

V_TASK_NAME,

SYSDATE,

MYCUR.CUST_ID,

'N',

NULL

);

--程序試用階段,以后會(huì)刪除satrt

i_count := i_count + 1;

IF i_count >100 THEN

COMMIT;

RETURN;

END IF;

--程序試用階段,以后會(huì)刪除end

END LOOP;

--數(shù)據(jù)commit,程序調(diào)試階段避免大量數(shù)據(jù),暫時(shí)關(guān)閉

--commit;

--------例外處理部分----------------------------

EXCEPTION

WHEN OTHERS THEN

rollback;

END SRBZ_GET_SRBZ_KD_SPEED;

/

2.使用語(yǔ)句拼接法實(shí)現(xiàn)insert功能:

注:2.1字符串常量的引號(hào) 2.2 變量的引號(hào)

CREATE OR REPLACE PROCEDURE ABC(

-- 參數(shù)列表:

task_id IN number, --任務(wù)編號(hào)

task_name IN varchar2, --任務(wù)名稱(chēng)

in_NAME IN varchar2 --名稱(chēng)

)

--------------------------- PROCEDURE名 :ABC

-- 処理內(nèi)容 :從數(shù)據(jù)源表取得符合條件的的數(shù)據(jù)插入到目標(biāo)數(shù)據(jù)表

-- 引數(shù) :table_src 數(shù)據(jù)源表

-- table_to 數(shù)據(jù)插入目標(biāo)表

-- in_bdw_name 對(duì)數(shù)據(jù)源表限制條件:本地網(wǎng)名稱(chēng)

---------------------------------------------

IS

--INSERT_STRING 動(dòng)態(tài)生成的insert語(yǔ)句存放處

INSERT_STRING VARCHAR2(1000);

--數(shù)據(jù)源表存放處

tableSrc varchar2(500);

--數(shù)據(jù)插入目標(biāo)表存放處

tableTarget varchar2(1000);

--數(shù)據(jù)目標(biāo)表需要插入值的字段存放處

StrFields varchar2(1000);

BEGIN

--數(shù)據(jù)源表為:AAA

tableTarget := ' BBB ';

--數(shù)據(jù)來(lái)源

tableSrc := ' select seq_kd.nextval,sysdate,'||task_id||','''||task_name||''', '

||'A.* from AAA A'

||' WHERE A.value='||'''IP-VPDN'''

||'AND A.remark IS NULL';

--需要插入的字段

StrFields := '(ROW_ID,GET_DATA_DT,TASK_ID,TASK_NAME,COST_CTR,SERVICE_ID,'

||'SI_ADDR,SI_SERVER_ID)';

--生成insert語(yǔ)句

INSERT_STRING := 'INSERT INTO ' || tableTarget || StrFields || tableSrc ;

--執(zhí)行insert語(yǔ)句

execute immediate INSERT_STRING;

--提交事務(wù)

commit;

--------例外處理部分-------------------------------------------------------

EXCEPTION

--異常的拋出

WHEN OTHERS THEN

--DBMS_OUTPUT.PUT_LINE('處理過(guò)程中出錯(cuò),程序退出,未執(zhí)行相關(guān)內(nèi)務(wù)');

rollback;

END SRBZ_GET_SRBZ_KD_GSVPDN_FREE;

/

主站蜘蛛池模板: 经典三级久久久久 | 欧美日韩国产58香蕉在线视频 | 一级做a爱视频 | 久久成人免费观看全部免费 | 天堂色网站 | 欧美一级成人一区二区三区 | 99re热这里只有精品视频 | 国产成人午夜精品影院游乐网 | 欧美日韩a∨毛片一区 | 欧美激情一区二区三区高清视频 | 亚洲 自拍 另类 欧美 综合 | 国产一级毛片夜一级毛片 | 欧美成人高清视频 | 特级aa一级欧美毛片 | 在线看免费观看韩国特黄一级 | 亚洲精品综合久久中文字幕 | 免费观看欧美精品成人毛片能看的 | 久久手机免费视频 | 欧美成人交tv免费观看 | 亚洲黄色成人 | 日本午色www高清视频 | 欧美另类交视频 | 国产黄a三级三级三级 | 日韩精品一区二三区中文 | 中文字幕 亚洲 一区二区三区 | 亚洲综合天堂网 | 美女视频免费永久观看的 | 波多野结衣中文在线 | 久久免费福利 | 19+韩国主播青草vip视频 | 国产日韩欧美一区二区三区综合 | 亚洲三级免费 | 午夜性爽视频男人的天堂在线 | 成人亚洲在线 | 亚洲成人综合在线 | 日本成人在线视频网站 | 欧美一级特黄aa大片 | 深夜国产成人福利在线观看女同 | 亚洲三级视频在线观看 | 亚洲一级毛片免费观看 | 日本无卡码免费一区二区三区 |