У меня есть этот код. : P99_CAR,: P99_PARTS - это списки, которые вы можете выбрать ID (через таблицу поиска),: P99_AMOUNT - это простой ввод в мою форму. Таким образом, вы выбираете эти 3 части и хотите проверить следующий код. Поэтому, если PART_ID равен 5, а CAR_ID равен 3, и я выбираю те же номера из списка, то возникает ОШИБКА, и я не знаю, почему.
DECLARE
--Varchar(100) or Number
l_car Varchar(100);
l_part Varchar(100);
BEGIN
SELECT CAR_ID, PART_ID INTO l_car, l_part FROM CAR_PARTS WHERE CAR_ID = :P99_CAR AND PARTS_ID = :P99_PARTS;
IF l_car IS NULL OR l_parts IS NULL THEN
INSERT INTO CAR_PARTS (CAR_ID, PARTS_ID, CUR_AMOUNT) VALUES (:P99_CAR, :P99_PARTS, :P99_AMOUNT);
ELSE
UPDATE CAR_PARTS
SET CAR_ID = :P99_CAR,
PARTS_ID = :P99_PARTS,
CUR_AMOUNT = CUR_AMOUNT + :P99_AMOUNT
WHERE CAR_ID = :P99_CAR AND PARTS_ID = :P99_PARTS;
END IF;
END;
Но я получаю ORA-01403 Ошибка при обработке и при отправке этого
Ajax-вызов вернул ошибку сервера ORA-01403: данные для выполнения не найдены
Код PL / SQL.
Я знаю, что мне нужно вставить Исключение с этой ОШИБКОЙ, но почему это происходит?