Я использую код C++ со встроенным Pro*C (версия: 11.2.0.3.0) для Oracle DB. Я использую предложение массовой вставки, как показано ниже:
insert int TBL1 (col1, col2)
select a.col1, b.col2 from TBL2 a, TBL3 b
where a.col1 = :v and a.col2 = b.col2
Я запускаю этот запрос для вставки набора записей и значений привязки для :v
на месте.
Однако, в то время как некоторые записи могли быть вставлены, некоторые не удалось с
ORA-01403: no data found
Я вижу из sqlca.sqlerrd[2]
количество строк, которые можно было бы вставить. Итак, я знаю, что можно вставить M из N записей. Теперь я хотел бы знать, какие записи потерпели неудачу, поэтому мне нужен список всех значений a.col1
, которые могли вызвать эту ошибку. Есть ли выход? Любая подсказка или направление было бы очень полезно.