この例 ( DUP_VAL_ON_INDEX Exception ) を考えると、制約に違反した値をキャプチャしてログに記録することは可能ですか?
一括挿入によって複数の違反が発生した場合、アプローチは同じですか?
BEGIN
-- want to capture '01' and '02'
INSERT INTO Employee(ID)
SELECT ID
FROM (
SELECT '01' ID FROM DUAL
UNION
SELECT '02' ID FROM DUAL
);
EXCEPTION
WHEN DUP_VAL_ON_INDEX THEN
-- log values here
DBMS_OUTPUT.PUT_LINE('Duplicate value on an index');
END;