mysql 动态创建事件_mysql 通过事件定时为数据库创建动态表名
#检测事件是否开启
show variables like 'event_scheduler';
#开启事件(最好在my.init设置,因为重启后还会变回默认值OFF)
set global event_scheduler = on;
#创建事件(从11月24号开始每天执行一次)
create EVENT eve_createTable
ON SCHEDULE EVERY 1 DAY
STARTS '2016-11-24 00:00:00' ON COMPLETION PRESERVE ENABLE
DO
CALL pro_createTable();
注:
#创建存储过程(动态表名)
CREATE PROCEDURE pro_createTable()
BEGIN
DECLARE str VARCHAR(20000);
set str= CONCAT('CREATE TABLE member_network_',DATE_FORMAT(now(),'%Y%m%d'),'(
`id` bigint(20) NOT NULL AUTO_INCREMENT ,
`member_id` bigint(20) NULL DEFAULT NULL ,
`host_ip` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
`serv_crc` varchar(2000) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT NULL ,
`app_crc` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
`sync_time` timestamp NULL DEFAULT NULL ,
`online_time` datetime NULL DEFAULT NULL ,
`type` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
`up_stream_flux` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
`down_stream_flux` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
`total_stream_flux` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
`line_no` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
`url` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL ,
`action` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
`sev_port` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
`sor_port` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
`protocol` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
`regionCode` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
`memo` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
`policy` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
`dns` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
`name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
`idcard` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
`client_name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
PRIMARY KEY (`id`),
INDEX `dept_type` (`regionCode`(255), `serv_crc`(255), `online_time`, `name`, `type`(255)) USING BTREE
)
ENGINE=InnoDB
DEFAULT CHARACTER SET=utf8 COLLATE=utf8_general_ci
AUTO_INCREMENT=1
ROW_FORMAT=COMPACT
');
SET @sqlstr=str;
PREPARE stmt from @sqlstr;
EXECUTE stmt;
deallocate prepare stmt;
END;
执行时报错,因为CONCAT拼接超过最大值;
#sql语句查看该参数,修改并重启mysql
show VARIABLES like '%max_allowed_packet%';
set global max_allowed_packet = 25600
mysql的前天、今天、后天
#2016-12-09
DATE_FORMAT(date_sub(curdate(),interval 1 day),'%Y%m%d')
#2016-12-10
DATE_FORMAT(date_sub(curdate(),interval 0 day),'%Y%m%d')
#2016-12-11
DATE_FORMAT(date_sub(curdate(),interval -1 day),'%Y%m%d')
mysql 动态创建事件_mysql 通过事件定时为数据库创建动态表名相关推荐
- mysql库表的触发器表名_MySQL 触发器,实现不同数据库,不同表名,表结构不同,数据实时同步...
创建触发器: CREATE TRIGGER trigger_name trigger_time trigger_event ON tbl_name FOR EACH ROW trigger_stmt ...
- mybatis 动态字段与表中不一样_mybatis创建一个或多个新用户 insert 字段和表名不确定时动态添加问题...
创建用户: /** * 创建一个或多个新用户 insert 字段和表名不确定时动态添加 */ @Test public void createAccount() { String lineColumn ...
- excel查询mysql数据库表,excel创建数据表/查询mysql数据库中所有表名
excel两个表格,数据库表与专门查询该数据库信息的表.在查询表中以多个项目进行查询符合条件的数据. 可以用"筛选"这个功能,在菜单里,对两个列进行筛选,符合条件的就会显示出来.很 ...
- qt中用mysql获取所有的数据库、数据库中的表名
mysql中获取所有数据库用命令:show databases(包含视图) 查看数据库的所有表名用命令:use database(数据库名);show tables; 而在qt中使用mysql获取数据 ...
- MySql 查询数据库中所有表名
MySql 查询数据库中所有表名 查询数据库中所有表名 select table_name from information_schema.tables where table_schema='csd ...
- mysql desc 显示备注_MySQL_Mysql中返回一个数据库的所有表名,列名数据类型备注,desc 表名; show columns from 表名; d - phpStudy...
Mysql中返回一个数据库的所有表名,列名数据类型备注 desc 表名; show columns from 表名; describe 表名; show create table 表名; use in ...
- mysql无关子查询_mysql中相关,无关子查询,表与表之间的关系以及编码和乱码的解决...
※MySQL中的字符编码(注意,utf8中没有'-',跟Java中不一样) SHOW VARIABLES; //查看系统变量 //查询字符编码相关的系统变量 SHOW VARIABLES WHERE ...
- mysql表导出和导入命令行_MySQL命令行导出导入数据库和数据表-Go语言中文社区...
MySQL命令行导出数据库: 1,进入MySQL目录下的bin文件夹:cd MySQL中到bin文件夹的目录 如我输入的命令行:cd C:Program FilesMySQLMySQL Server ...
- MySQL入门指南1(进入命令行,数据库,数据表操作)
目录 进入mysql命令行步骤: 常用MySQL命令 一.数据库操作 二.数据表操作 三.最后的话 进入mysql命令行步骤: 1.以管理员身份进入命令提示符 2.通过命令: net start my ...
最新文章
- python3编译exe_编译 – 如何将我的Python 3应用程序编译到.exe?
- leetcode 5. 最长回文子串 暴力法、中心扩展算法、动态规划,马拉车算法(Manacher Algorithm)
- print python 如何加锁_深度解密Python单例模式
- 新版本springboot-整合mybatis
- 蒙特卡洛模拟(Monte Carlo simulation)
- Java生产环境下性能监控与调优详解 第3章 基于JVisualVM的可视化监控
- 第三十四章 批量印刷书籍
- 用java输出真值表离散数学_离散数学 第一章 命题逻辑 1-4真值表与等价公式
- table标签中thead、tbody、tfoot的作用
- 清除float浮动的几种方法
- python变量、运算符、要求从键盘输入用户名和密码,校验格式是否符合规则,如果不符合,打印出不符合的原因,并提示重新输入练习
- web安全测试--基础篇
- php pager,fleaphp常用方法分页之Pager使用方法
- 音频特征----频谱图
- 《从0到1:CTFer成长之路》SQL注入-1
- linux物联网项目,6个开源项目提升物联网开发效率
- HTML图片上传服务器
- 使用MATLAB实现对信号的EMD分解
- 生成token和验证token机制
- 关于数据库的内模式、模式、外模式,数据的逻辑独立性,数据的物理独立性的个人体会