每月1号自动创建1个数据库,数据库以年月命名,如“20160801”。
应该在函数里面写?还是在时间里面写?
有没有高手指导一下。
应该在函数里面写?还是在时间里面写?
有没有高手指导一下。
解决方案
10
set @str= CONCAT(“create database yourname”,DATE_FORMAT(CURRENT_DATE(),”%Y%m”));
SET @sqlstr=@str;
PREPARE stmt from @sqlstr;
EXECUTE stmt;
deallocate prepare stmt;
在过程里写,本人增加定时任务命令
SET @sqlstr=@str;
PREPARE stmt from @sqlstr;
EXECUTE stmt;
deallocate prepare stmt;
在过程里写,本人增加定时任务命令
10
database 改成table 就是拼接sql执行的过程
20
set @str= CONCAT("CREATE TABLE dd",DATE_FORMAT(CURRENT_DATE(),"%Y%m")( `id` int(20) NOT NULL DEFAULT "0",`nickname` varchar(50) DEFAULT NULL)); SET @sqlstr=@str; PREPARE stmt from @sqlstr; EXECUTE stmt; deallocate prepare stmt;本人是这么写的,保存的时候报错
set @str= CONCAT(“CREATE TABLE dd”,DATE_FORMAT(CURRENT_DATE(),”%Y%m”),”(`id` int(20) NOT NULL DEFAULT 0,`nickname` varchar(50) DEFAULT NULL)”);
SET @sqlstr=@str;
PREPARE stmt from @sqlstr;
EXECUTE stmt;
deallocate prepare stmt;
拼接sql上面是个字符串,要用引号