华为云云数据库GaussDBALTER EVENT_云淘科技

功能描述

修改已创建的定时任务中的参数。

注意事项

定时任务相关操作只有sql_compatibility = ‘B’时支持。
只有定时任务的所有者有权修改待修改的定时任务,系统管理员默认拥有修改所有定时任务的权限。
可以通过SHOW EVENTS或在PG_JOB表中查看log_user列来获得job的所有者信息
修改定时任务时每次修改成功后会更新被修改job的所有者为当前用户,若修改定时任务时指定了definer,则更新为被指定的definer。
definer选项场景限制与CREATE EVENT章节中对definer限制场景一致。

系统管理员修改其他用户创建的定时任务后,被修改定时任务的所有者将切换为系统管理员,待执行语句将使用系统管理员的权限执行。

语法格式

ALTER
    [DEFINER = user]    
EVENT event_name
    [ON SCHEDULE schedule]
    [ON COMPLETION [NOT] PRESERVE]
    [RENAME TO new_event_name]
    [ENABLE | DISABLE | DISABLE ON SLAVE]
    [COMMENT 'string']
    [DO event_body]

参数说明

DEFINER

定时任务待执行语句在执行时使用的权限。默认情况下使用当前创建定时任务者的权限,当definer被指定时,使用被指定用户user的用户权限。

definer参数只有具有sysadmin权限的用户有权指定。

ON SCHEDULE

定时任务执行时刻。其中schedule子句与CREATE EVENT中schedule一致。

RENAME TO

更新定时任务名。

ON COMPLETION [NOT] PRESERVE

默认情况下,一旦事务处于完成状态,系统表中就会立刻删除该定时任务。用户可以通过设置ON COMPLETION PRESERVE来覆盖默认行为。

ENABLE | DISABLE | DISABLE ON SLAVE

创建定时任务后,定时任务默认处于ENABLE状态,即到规定时间立即执行待执行语句。用户可以使用DISABLE关键字,改变定时任务的活动状态。DISABLE ON SLAVE表现与DISABLE一致。

COMMENT

用户可以给定时任务添加注释,注释内容在GS_JOB_ATTRIBUTE表中查看。

DO

定时任务待执行语句。

示例

--创建一个定时任务
gaussdb=# CREATE TABLE t_ev(num int);

gaussdb=#  CREATE EVENT IF NOT EXISTS event_e1 ON SCHEDULE AT sysdate + interval 5 second + interval 33 minute DISABLE DO insert into t_ev values(0);

--修改定时任务
--修改定时任务状态和待执行语句
gaussdb=#  ALTER EVENT event_e1 ENABLE DO select 1;

--修改定时任务名
gaussdb=#  ALTER EVENT event_e1 RENAME TO event_ee;

父主题: SQL语法

同意关联代理商云淘科技,购买华为云产品更优惠(QQ 78315851)

内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家