Постановка задачи: -
Я вставляю запись в Oracle, если эта запись уже присутствует (дубликат ==> первичный ключ присутствует) в базе данных
Я хочу обновить его с новым.
В настоящее время, чтобы решить эту проблему при вставке записи, если я получаю OCI_ERROR, тогда я звоню
OCIErrorGet ((dvoid *) errhp, (ub4) 1, (текст *) NULL, & errcode, errbuf, (ub4) sizeof (errbuf), OCI_HTYPE_ERROR);
Затем я проверяю errbuf, если значение ошибки buf равно ORA-00001 ==> уникальное ограничение нарушено, если оно присутствует, тогда я обновляю значение
Есть ли способ сделать то же самое, кроме поиска записи в базе данных, если эта запись уже существует, обновить ее
Я не хочу этого делать, потому что мне придется написать код для этого
Существует ли какая-либо конкретная ошибка, если значение дублируется в ORACLE?
есть предложения?