値を挿入して更新しようとしているストアド プロシージャを作成しました。挿入を実行しているとき(5つのパラメーターと異なるデータ型が含まれています)には異なる値があり、更新時には(6つのパラメーターと異なるデータ型が含まれています)異なる値があります.両方のケースで単一のストアドプロシージャを使用したい(挿入/更新) パラメータを管理するにはどうすればよいですか?
手順
create or replace procedure PS_File_Update_Insert (
Input_val in varchar2
, p1 in varchar2
, p2 in varchar2
, p3 in varchar2
, p4 in varchar2
, p5 in varchar2
)
is
BEGIN
if Input_val = 'Insert' then
insert into PS_FILE (SRC_FILE_ID
,TRUSTED_PARTY_ID
,FILE_NM,FILE_PROC_DT
,FILE_STATUS)
values (SRC_FILE_ID_SEQ.nextval
,1234
,'zxcv'
,SYSDATE
,'NEW');
elsif Input_val = 'update' then
update PS_FILE
set FILE_STATUS='STAGING'
, REC_CNT='abcd'
, ERR_CNT='123'
, DUPE_CNT=NULL
where SRC_FILE_ID='1234';
end if;
end;