mysql - Error #1064 while creating scheduled event -


i have table stores news. there 2 types of news: simple , scheduled news. scheduled news must shown every year , must hidden after 30 days. can't create cron job on server, decided use mysql scheduled events. query.

 drop event if exists `update_news`; delimiter $$  create  event `update_news` on schedule every 1 day starts '2015-07-15 00:00:00' begin  update `yakutsk-gf`.`app_news_item`  set `date` = date_add(`date`, interval 1 year)  `iscalendar` = '1' , datediff(now(), `date`) > 30 order `date` desc;  end $$  delimiter ; 

but when try execute it, mysql throws error

 delimiter ; Ответ mysql:   #1064 - have error in sql syntax; check manual corresponds mysql server version right syntax use near 'delimiter' @ line 1  

i tried find ways fix problem, far nothing found. fyi, mysql version 5.5.43-0

technically don't need change delimiter , use begin...end block because have 1 statement in body.

try way

create event update_news on schedule every 1 day starts '2015-07-15 00:00:00'   update yakutsk-gf.app_news_item      set date = date_add(date, interval 1 year)     iscalendar = '1'       , datediff(now(), date) > 30    order date desc; 

Comments