Когда я пытаюсь вызвать процедуру с call insertp_detail ('P005','02','T001','CAT2')
, он будет показывать ошибку:Невозможно выполнить вызов для процедуры
SQL0811N Результат скалярной полной выборки, SELECT INTO заявления или стоимостей в заявлении больше один ряд. SQLSTATE = 21000
Ожидаемый результат, который я хочу с помощью этой процедуры, заключается в том, чтобы вставить значения в таблицу purchase_detail.
CREATE PROCEDURE insertp_detail
(IN purchase_id char(4), seat_id char(2), trans_id char(4), seat_type varchar(5))
BEGIN
IF ((SELECT COUNT(trans_id)
FROM purchase_detail
GROUP BY trans_id) < 3)
THEN INSERT into purchase_detail values(purchase_id, seat_id, trans_id, seat_type);
end if;
end
'(SELECT COUNT (trans_id) ОТ purchase_detail GROUP BY trans_id)' возвращает несколько строк - вы имели в виду, чтобы добавить где положение в ней вместо группы по ? – GurV