SQL语句循环向表中插入数据

使用SQL语句循环向表中插入数据

1.首先创建表

CREATE TABLE `student` (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
  `name` varchar(255) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '姓名',
  `age` int(11) DEFAULT NULL COMMENT '年龄',
  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
  `score` double(20,3) DEFAULT NULL COMMENT '分数',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin;

2.编写插入数据SQL

DROP PROCEDURE
IF EXISTS INSERT_DATA_TO_STU;
DELIMITER;;
CREATE PROCEDURE INSERT_DATA_TO_STU () 
BEGIN
	DECLARE n INT DEFAULT 1;
	WHILE ( n < 1000020 ) DO
			INSERT INTO `student` ( `id`, `name`, `age`, `create_time`, `update_time`, `score` )
		VALUES
			( n, 'stu', FLOOR( 10 + RAND()* 21 ), LOCALTIME (), LOCALTIME (), FLOOR( 60 + RAND()* 41 ) + 0.567 );		
		SET n = n + 1;
	END WHILE;
END;;
CALL INSERT_DATA_TO_STU ();
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值