Delimiter$$
CREATE TRIGGER after_finisher_update
AFTER UPDATE ON Booklist1
FOR EACH ROW
BEGIN
UPDATE Booklist1
SET Finished = 'yes'
WHERE Current_Page = Page_Count
END $$
У меня есть таблица с несколькими столбцами, которая формирует список книг (название, автор... ect). Я хочу, чтобы мой "Законченный" столбец (по умолчанию "нет") переключился на "да" после текущей_страницы = page_count.
Спасибо.
Использование Mysql ; чтобы отметить конец заявления.
Когда вы определяете процедуру, функцию или триггер, вы собираетесь использовать несколько операторов.
Вам нужно указать mysql, где заканчивается оператор function/procedure/trigger.
if type delimeter// я буду использовать //, чтобы указать конец оператора.
поэтому этот блок:
select now() ;
do sleep(1) ;
select now() ;
могут быть заменены на:
delimiter //
select now() //
do sleep(1) //
select now() //
delimiter ;
Пример создания триггера с использованием $$ в качестве разделителя:
delimiter $$
create trigger trg_table_insert after insert on table
for each row
begin
insert into table_log ( dml_type , col_a,col_b , col_c ) value ( 'I', new.col_a,new.col_b,new.col_c );
end
$$
delimiter ;
И каждый раз, когда я возвращаю делиметр ; ,
^^^^^^^ вы делаете это, чтобы иметь регулярное поведение mysql.