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
Post a Comment