mysql 存储过程创建动态表

    由于项目需求,有很多设备,每个设备每分钟要上传多条数据,采用每个设备单独一个表,这个表中单独存储这个设备的所有数据。因此在添加新的设备时,同时要根据当前参数ID创建这个表的数据表。

下面是SQL语句:

BEGIN

set @sqlCreate = concat(
'CREATE TABLE IF NOT EXISTS table_', id,
"(
stime datetime not null comment '数据时间',
name varchar(50) default null comment '名称',
value decimal(18,3) default null comment '值',
PRIMARY KEY (stime)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8");

PREPARE sqlCreate FROM @sqlCreate;
EXECUTE sqlCreate;
END

上文中的ID是我传的参数,在添加新的设备时可同时执行此存储过程,创建对应的ID数据表。

 

【版权声明】转载请注明出处 http://www.cnblogs.com/hsjava1/p/8708321.html

 

   

posted @ 2018-04-03 14:33  扎王爷  阅读(2021)  评论(0编辑  收藏  举报