Bazı satırları eklerken herhangi bir hatayı önlemek için bu özel durumu koyarım ancak neden çalışabileceğimi bilmiyorum.Bir hata nasıl karşılanır forall plsql
DECLARE
TYPE dataDate IS TABLE OF DATE;
l_dataDate dataDate;
BEGIN
select data1 BULK COLLECT INTO l_dataDate from USER.TABLE_DATA;
FORALL i IN l_dataDate.FIRST..l_dataDate.LAST
BEGIN
INSERT INTO USER.DIMDATE SELECT
to_number(to_char(l_dataDate(i), 'YYYYMMDDHH24MISS')),
to_number(to_char(l_dataDate(i), 'YYYYMMDD')),
l_dataDate(i),
to_number(to_char(l_dataDate(i), 'DD')),
to_char (l_dataDate(i), 'Day'),
to_number(to_char (l_dataDate(i), 'MM')),
to_char (l_dataDate(i), 'Month'),
to_number(to_char(l_dataDate(i), 'YYYY')) FROM DUAL
WHERE NOT EXISTS (SELECT 1 FROM USER.DIMDATE WHERE COD_FECHA=to_number(to_char(l_dataDate(i), 'YYYYMMDDHH24MISS')));
COMMIT;
EXCEPTION
WHEN OTHERS THEN
dbms_output.put_line('ERROR '||SUBSTR(SQLERRM, 1, 200));
END;
END;
/
Böyle bir şey yapmak mümkün mü? Şimdiden teşekkürler.
Bir yığın toplu alım yapmak istediğinizi varsayalım. https://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:1422998100346727312 –