Я создам событие по расписанию, которое зацикливает все записи, для которых в поле «Онлайн» указано «Y», и для него устанавливается значение «N».
Для этого я создал это событие, но когда сохранючто я получил ошибку
SQL 102: неправильный синтаксис newar 'LOGOUT', неправильный синтаксис рядом с 'CURSOR'
Я использую HeidiSQL и MS SQL Server 2012
CREATE EVENT "LOGOUT"
ON SCHEDULE
EVERY 1 DAY STARTS '2019-02-28 00:00:00'
ON COMPLETION NOT PRESERVE
ENABLE
COMMENT ''
DO BEGIN
DECLARE @MyCursor CURSOR;
DECLARE @MyField VARCHAR;
BEGIN
SET @MyCursor = CURSOR FOR
select Online from dbo.ActiveUser
where Online = 'Y'
OPEN @MyCursor
FETCH NEXT FROM @MyCursor
INTO @MyField
WHILE @@FETCH_STATUS = 0
BEGIN
Update dbo.ActiveUser Set Online = 'N'
FETCH NEXT FROM @MyCursor
INTO @MyField
END;
CLOSE @MyCursor ;
DEALLOCATE @MyCursor;
END
END