Что означает синтаксис IF триггера в следующей программе? - PullRequest
0 голосов
/ 11 апреля 2011
DELIMITER $$  
create trigger mytable_check before insert on test.mytable for each row  
begin  
 if new.id_category in ('list','of','special','categories')  
    and exists  
      (select * from mytable  
       where id_category=new.id_category  
         and keywords=new.keywords) then  
    call fail(concat('id_category,keywords must be unique when id_category is: ',new.id_category));  
 end if;  
end $$  
DELIMITER ;  

У меня небольшая проблема с пониманием этого триггерного оператора.Можете ли вы объяснить мне это утверждение? Что означает выражение

if new.id_category in ('list','of','special','categories')

??

1 Ответ

2 голосов
/ 11 апреля 2011
new.id_category = 'list'
or
new.id_category = 'of'
or
new.id_category = 'special'
or
new.id_category = 'categories'
...