Oracle如何定义两个数组变量
DECLARE TYPE ARRAYLIST IS VARRAY(100) OF VARCHAR(50);
MY_ARRAYLIST ARRAYLIST := ARRAYLIST('000015','000032');--这里填要依次更改的卡片编码
TYPE ARRAYLIST2 IS VARRAY(100) OF VARCHAR(50);
MY_ARRAYLIST2 ARRAYLIST2 := ARRAYLIST2('111','222');--这里依次填正确的使用部门ID
BEGIN
for i in 1..MY_ARRAYLIST.count
loop
--dbms_output.put_line(MY_ARRAYLIST(i));
for r in (SELECT B.FASSETNO FROM T_FA_CARD A INNER JOIN t_fa_allocation B ON A.FALTERID = B.FALTERID
WHERE A.FNUMBER = MY_ARRAYLIST(i)) loop
--dbms_output.put_line(MY_ARRAYLIST2(i));
execute immediate 'UPDATE T_FA_CHANGEALLOC SET FALLOCUSEDEPTID = '||MY_ARRAYLIST2(i)||' WHERE FPREALLOCASSETNO = '''||r.FASSETNO||'''';
end loop;
end loop;
END;
人说,如果你很想要一样东西,就放它走 。如果它回来找你,那么它永远都是你的。要是它没有回来,那么不用再等了,因为它根本就不是你的。
——伊恩·麦克尤恩