场景
Mysql插入数据从指定选项中随机选择、插入时间从指定范围随机生成、Navicat使用存储过程模拟插入测试数据:
Mysql插入数据从指定选项中随机选择、插入时间从指定范围随机生成、Navicat使用存储过程模拟插入测试数据_mysql循环插入随机数据_霸道流氓气质的博客-CSDN博客
在上面的基础上,如何使用存储过程构造坐标数据规律递增以及时间递增的模拟数据。
表结构如下
要实现x字段,类型为decimal,每次递增1插入;record_time时间字段每次递增一秒插入数据。
注:
博客:
霸道流氓气质_C#,架构之路,SpringBoot-CSDN博客
实现
1、Navicat-函数-新建函数-选择过程-输入名称-下一步,配置参数模式为IN,名称随意这里为num,类型为int,代表循环次数。
2、点击完成,修改过程代码如下
CREATE DEFINER=`root`@`localhost` PROCEDURE `moniguiji`(IN `num` int)
BEGIN#Routine body goes here...DECLARE i int DEFAULT 1;DECLARE x DOUBLE DEFAULT 5258.61;DECLARE DTime DATETIME DEFAULT '2023-08-15 16:00:00';WHILE i<=num DOINSERT INTO `t_personnel_orientation` ( `x`, `y`, `card_number`, `record_time` )VALUES(x,5370.97,'111111',DTime);SET i=i+1;SET x=x+1;SET DTime = DATE_ADD(DTime,INTERVAL 1 SECOND);END WHILE;
END
这里的意思是声明x变量并从5258.61默认值开始,每次循环执行加1操作。
声明DTime时间变量,每次循环从'2023-08-15 16:00:00'开始递增加一秒。
3、点击保存和运行
运行后输入循环次数
等待运行结束
查看数据效果