场景
Mysql插入数据从指定选项中随机选择、插入时间从指定范围随机生成、Navicat使用存储过程模拟插入测试数据:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/129179745
在上面的基础上,如何使用存储过程构造坐标数据规律递增以及时间递增的模拟数据。
表结构如下
要实现x字段,类型为decimal,每次递增1插入;record_time时间字段每次递增一秒插入数据。
注:
博客:
https://blog.csdn.net/badao_liumang_qizhi
实现
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 DO INSERT 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、点击保存和运行
运行后输入循环次数
等待运行结束
查看数据效果
博客园:
https://www.cnblogs.com/badaoliumangqizhi/
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。