Существует ли какая-либо функция Oracle, которая указывает на наличие записи, или какой-либо другой полезный метод для достижения этой цели?
РЕДАКТИРОВАТЬ: используя оператор MERGE, который я сделал:
MERGE
INTO lims_min.mytab src
USING lims_min.mytab tgt
ON ( src.col1 = tgt.col1
AND tgt.col1 = p_val1
AND src.col2 = tgt.col2
AND tgt.col2 = p_val2
)
WHEN MATCHED
THEN
UPDATE
SET tgt.col3=p_val3,
tgt.col4=p_val4
WHEN NOT MATCHED
THEN
INSERT (col1, col2, col3, col4)
VALUES (val1, val2, val2, val4);
Iполучить сообщение о том, что col3 является недействительным идентификатором.Опечаток нет, и это существует. Column.p_val1, p_val2, p_val3 и p_val4 являются строковыми параметрами, которые передаются хранимой процедуре.Я думаю, что проблема может заключаться в этих параметрах, возможно, они должны быть помещены внутри утверждения WHERE?Есть идеи?