Ну, ребята, я пытаюсь сделать для каждого цикла строк внутри другого для каждого цикла строк, я действительно новичок в mysql, и это мой триггер-триггер. У меня есть таблица Disponivel, и я хотел бы видеть, строк, которые я пытаюсь вставить в таблицу с именем Venda, уже находится в таблице Disponivel, и если это так, я хочу вставить ее в таблицу Venda. Если строка, которую я пытаюсь вставить, не является частью таблицы Disponivel, то она не должна вставляться в таблицу Venda. Может ли кто-нибудь помочь? Это то, что у меня есть.Как я могу сделать для каждого цикла строк внутри a для каждого цикла строки в mysql?
DELIMITER $$
create trigger venda_disponivel
before insert on Venda
for each row begin
for each row in Disponivel begin
if ((new.nomeA = Disponivel.nomeA) and (new.dia = Disponivel.dia) and (new.mes = Disponivel.mes) and (new.ano = Disponivel.ano) and (new.nomeR = Disponivel.nomeR)) then
end if;
end;
end$$
DELIMITER ;
Это дает мне эту ошибку:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'for each row in Disponivel begin if ((new.nomeA = Disponivel.nomeA) and (new.d' at line 4
create table Disponivel(
NomeA varchar(80),
NomeR varchar(80),
dia integer,
mes varchar(45),
ano integer,
primary key(nomeA, nomeR, dia, mes, ano),
foreign key(nomeA) references Prato(nomeA),
foreign key(nomeR) references Restaurante(nomeR),
foreign key(dia, mes, ano) references Data(dia, mes, ano));
create table Venda(
NomeA varchar(80),
dia integer,
mes varchar(45),
ano integer,
nomeR varchar(80),
num integer,
primary key(nomeA, nomeR, dia, mes, ano),
foreign key(nomeA) references Prato(nomeA),
foreign key(nomeR) references Restaurante(nomeR),
foreign key(dia, mes, ano) references Data(dia, mes, ano));
Просьба указать точные схемы таблиц для 'Venda' и' Disponivel' в форме 'CREATE TABLE ...' операторов – peterm
сделано, это то, что означало u? – Mop