DECLARE
vinput VARCHAR2(200);
voutput VARCHAR2(4000);
BEGIN
vinput := '1111073124253975';
FOR x IN (WITH tab1 AS
(SELECT vinput str FROM dual)
SELECT regexp_substr(str || ',', '[^,]+', 1, LEVEL) AS c2
FROM tab1 t
CONNECT BY LEVEL <=
length(regexp_replace(str, '[^,]', NULL)) + 1) LOOP
dbms_output.put_line('userid:' || x.c2);
BEGIN
--tf_f_user
vtable := 'tf_f_user';
SELECT 'insert into tf_f_user values ' || '(' || user_id || ',' ||
dummy_tag || ',' || net_type_code || ',' || serial_number || ',' ||
chr(10) || eparchy_code || ',' || city_code || ',' || cust_id || ',' ||
usecust_id || ',' || brand_code || ',' || product_id || ',' ||
chr(10) || user_type_code || ',' || prepay_tag || ',' ||
service_state_code || ',' || open_mode || ',' || acct_tag || ',' ||
remove_tag || ',' || to_char(in_date, 'yyyymmddhh24miss') || ',' ||
chr(10) || to_char(open_date, 'yyyymmddhh24miss') || ',' ||
to_char(pre_destroy_date, 'yyyymmddhh24miss') || ',' ||
to_char(destroy_date, 'yyyymmddhh24miss') || ',' || chr(10) ||
first_call_date || ',' ||
to_char(last_stop_date, 'yyyymmddhh24miss') || ',' ||
credit_class || ',' || base_credit_value || ',' ||
credit_value || ',' || chr(10) || credit_control_id || ',' ||
changeuser_date || ',' || score_value || ',' ||
to_char(update_time, 'yyyymmddhh24miss') || ');'
INTO voutput
FROM ucr_act1.tf_f_user t
WHERE t.user_id = x.c2
AND t.remove_tag = ('0');
dbms_output.put_line(voutput);
EXCEPTION
WHEN no_data_found THEN
dbms_output.put_line('no ' || vtable || '!');
END;
BEGIN
--tf_f_feepolicy
vtable := 'tf_f_feepolicy';
SELECT 'insert into tf_f_feepolicy values ' || '(' ||
feepolicy_ins_id || ',' || id_type || ',' || id || ',' ||
feepolicy_id || ',' || spec_tag || ',' || rela_user_id || ',' ||
product_id || ',' || serv_bund_id || ',' || nvl(serv_id, 0) || ',' ||
nvl(feepolicy_bund_id, 0) || ',' ||
to_char(start_date, 'yyyymmddhh24miss') || ',' ||
to_char(end_date, 'yyyymmddhh24miss') || ');'
INTO voutput
FROM ucr_act1.tf_f_feepolicy t
WHERE t.id = x.c2
AND t.start_date <= SYSDATE
AND t.end_date >= SYSDATE;
dbms_output.put_line(voutput);
EXCEPTION
WHEN no_data_found THEN
dbms_output.put_line('no ' || vtable || '!');
END;
BEGIN
--tf_f_user_importinfo
vtable := 'tf_f_user_importinfo';
SELECT 'insert into tf_f_user_importinfo values ' || '(' || user_id || ',' ||
net_type_code || ',' || product_id || ',' || brand_code || ',' ||
logic_phone || ',' || phyical_phone || ',' ||
to_char(start_date, 'yyyymmddhh24miss') || ',' ||
to_char(end_date, 'yyyymmddhh24miss') || ');'
INTO voutput
FROM ucr_act1.tf_f_user_importinfo t
WHERE t.user_id = x.c2
AND t.start_date <= SYSDATE
AND t.end_date >= SYSDATE;
dbms_output.put_line(voutput);
EXCEPTION
WHEN no_data_found THEN
dbms_output.put_line('no ' || vtable || '!');
END;
BEGIN
--tf_f_user_member
vtable := 'tf_f_user_member';
SELECT 'insert into tf_f_user_member values ' || '(' || user_id || ',' ||
member_role_code || ',' || member_role_type || ',' ||
member_role_id || ',' || member_role_number || ',' ||
discnt_priority || ',' ||
to_char(start_date, 'yyyymmddhh24miss') || ',' ||
to_char(end_date, 'yyyymmddhh24miss') || ');'
INTO voutput
FROM ucr_act1.tf_f_user_member t
WHERE t.user_id = x.c2
AND t.start_date <= SYSDATE
AND t.end_date >= SYSDATE;
dbms_output.put_line(voutput);
EXCEPTION
WHEN no_data_found THEN
dbms_output.put_line('no ' || vtable || '!');
END;
END LOOP;
END;
--
--SELECT * FROM ucr_act1.tf_f_user_importinfo t WHERE t.user_id = ('1111073124253975');
sql and exception
最新推荐文章于 2024-09-27 11:31:35 发布