navicat定时事件

#定时创建数据表
##1.首先打开navicat,进入需要连接的服务器
##2.查看定时任务是否开启,命令如下:

show variables like '%event_scheduler%';

如果其设置值为为 OFF 或 0 ,通过执行下列语句,来开启event_scheduler,把它设置为设为ON 或 1,从新查询状态。

set global event_scheduler = 1

##3.创建函数

#找到函数,右键新建,选择函数,输入相关的sql语句后保存。
CREATE DEFINER=`root`@`%` PROCEDURE `create_ship_info`()
BEGIN
	#Routine body goes here...
	DECLARE i int;
	set i=0;
	while i<=5 DO
		SET @hours= DATE_FORMAT(DATE_ADD(CURRENT_TIME(), INTERVAL i DAY), '%Y%m%d');
		SET @sql_create_table = CONCAT('CREATE TABLE if not EXISTS ship_info_device_status_dto_',@hours,"(
    id              bigint       not null
        primary key,
		entity_id       bigint       null,
		ship_name       varchar(255) null,
		ship_id         varchar(255) null,
		device_no       varchar(255) null,
		offline_flag    bit          null,
		latitude        double       null,
		longitude       double       null,
		job_type        varchar(255) null,
    job_way         varchar(255) null,
		owner_name      varchar(255) null,
		attribution     varchar(255) null,
		fleet_id        bigint       null,
    fleet_name      varchar(255) null,
		company_id      bigint       null,
    company_name    varchar(255) null,
		create_date     datetime     null,
		sequence        varchar(255) null,
		type            int          null,
		ship_no         varchar(255) null,
    acq_time        datetime     null,
		terminal_code   varchar(255) null,
    comm_type       varchar(255) null,
    utc             datetime     null,
		power           varchar(255) null,
    course          double       null,
    trueheading     double       null,
		speed           double       null,
		signal_strength int          null,
		libv            double       null,
		pvbv            double       null,
    create_time     datetime     null,
    send_time       datetime     null,  
		height          double       null,
		INDEX(device_no),
		INDEX(utc),
		INDEX(latitude),
		INDEX(longitude)
		)ENGINE=MyISAM DEFAULT CHARSET = utf8;");
		
	PREPARE ju from @sql_create_table;
	EXECUTE ju;
	set i = i + 1;
	end while;
END

##4.新建事件 起名call create()
create()为函数名
选择计划,定时或是每日循环。

  • 9
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值