MySql数据库 事件以及函数操作

  • 查看事件调度器是否开启
show variables like 'event_scheduler';
  • 开启事件调度器
 set global event_scheduler = on;
  • 查询所有时间的状态
SELECT
	EVENT_CATALOG,
	EVENT_SCHEMA,
	EVENT_NAME,
	DEFINER,
	EVENT_DEFINITION,
	EVENT_TYPE,
	SQL_MODE,
	STATUS,
	EXECUTE_AT,
	INTERVAL_VALUE,
	INTERVAL_FIELD,
	STARTS,
	ENDS,
	ON_COMPLETION,
	CREATED,
	LAST_ALTERED,
	LAST_EXECUTED,
	EVENT_COMMENT
FROM
	information_schema. EVENTS
WHERE
	BINARY EVENT_SCHEMA = 'HMDB'
ORDER BY
	EVENT_NAME;
  • 开启某个事件
ALTER EVENT eventForOrderMainHistory ENABLE
  • 查询(hmdb数据库)所有的事件
SELECT
	EVENT_CATALOG,
	EVENT_SCHEMA,
	EVENT_NAME,
	DEFINER,
	EVENT_DEFINITION,
	EVENT_TYPE,
	SQL_MODE,
	STATUS,
	EXECUTE_AT,
	INTERVAL_VALUE,
	INTERVAL_FIELD,
	STARTS,
	ENDS,
	ON_COMPLETION,
	CREATED,
	LAST_ALTERED,
	LAST_EXECUTED,
	EVENT_COMMENT
FROM
	information_schema. EVENTS
WHERE
	EVENT_SCHEMA = 'hmdb'
ORDER BY
	EVENT_NAME
  • 开启某个事件
ALTER EVENT eventForOrderMainHistory ENABLE
  • 删除事件
 drop event event_name;
  • 查询所有事件的状态
SELECT
	EVENT_CATALOG,
	EVENT_SCHEMA,
	EVENT_NAME,
	DEFINER,
	EVENT_DEFINITION,
	EVENT_TYPE,
	SQL_MODE,
	STATUS,
	EXECUTE_AT,
	INTERVAL_VALUE,
	INTERVAL_FIELD,
	STARTS,
	ENDS,
	ON_COMPLETION,
	CREATED,
	LAST_ALTERED,
	LAST_EXECUTED,
	EVENT_COMMENT
FROM
	information_schema. EVENTS
WHERE
	BINARY EVENT_SCHEMA = 'HMDB'
ORDER BY
	EVENT_NAME;

  • 删除函数
 DROP PROCEDURE IF EXISTS OrderMainToHistory_copy
  • 创建函数
CREATE PROCEDURE `OrderMainToHistory_new`()
BEGIN
	INSERT INTO order_main_history  SELECT * from order_main WHERE  DICT_ORDER_STATUS='CLOSE' AND NOW() >  date_add(CREATE_DATE, interval 1 MONTH) ;
-- 删除入创建了一个月 并且已经归档的工单。
    DELETE from ORDER_MAIN  WHERE DICT_ORDER_STATUS='CLOSE' AND NOW() >  date_add(CREATE_DATE, interval 1 MONTH);
END

猜你喜欢

转载自my.oschina.net/u/3690780/blog/1797752
今日推荐