mysql新增10000条数据或者存储过程执行

原理是使用存储过程
然后循环

DROP PROCEDURE IF EXISTS proc_initData;
DELIMITER $
CREATE PROCEDURE proc_initData()
BEGIN
DECLARE i INT DEFAULT 1;
WHILE i<=10000 DO
INSERT INTO user (name, phone, sex, auth, status) VALUES(LAST_INSERT_ID(),LAST_INSERT_ID(),LAST_INSERT_ID(),LAST_INSERT_ID(),‘0’);
SET i = i+1;
END WHILE;
END $
CALL proc_initData();

bc

DROP PROCEDURE IF EXISTS proc_initData;
DELIMITER $
CREATE PROCEDURE proc_initData()
BEGIN
DECLARE i INT DEFAULT 1;
WHILE i<=300000 DO


UPDATE `book_tree` SET `page_count` = (SELECT page_count FROM `book_info` WHERE id = i)  WHERE `book_id` = i;


SET i = i+1;
END WHILE;
END $
CALL proc_initData();
DROP PROCEDURE IF EXISTS proc_initData;
DELIMITER $
CREATE PROCEDURE proc_initData()
BEGIN
DECLARE i INT DEFAULT 1;
WHILE i<=1000 DO


SET @bookid = 
(SELECT 
  id 
FROM
  `book_info` 
WHERE `english_name` = 
  (SELECT 
    `english_name` 
  FROM
    `book_infodr` 
  WHERE id = i
    AND `pdf` IS NOT NULL) 
  AND `author` = 
  (SELECT 
    `author` 
  FROM
    `book_infodr` 
  WHERE id = i 
    AND `pdf` IS NOT NULL) LIMIT 1) ;

UPDATE 
  `book_info` 
SET
  `file_path` = 
  (SELECT 
    `pdf` 
  FROM
    `book_infodr` 
  WHERE id = i) 
WHERE id = @bookid; 


SET i = i+1;
END WHILE;
END $
CALL proc_initData();

循环更新数据

DROP PROCEDURE IF EXISTS proc_initData;
DELIMITER $
CREATE PROCEDURE proc_initData()
BEGIN
DECLARE i INT DEFAULT 5245;
WHILE i<=9451 DO


SET @idv = (SELECT id FROM `data_tree` WHERE `type_number` = (SELECT `category` FROM `book_info` WHERE id = i));
SET @pidv =(SELECT `parent_id` FROM `data_tree` WHERE `type_number` = (SELECT `category` FROM `book_info` WHERE id = i));
UPDATE book_tree SET `two_level_id` = @pidv,`three_level_id`= @idv WHERE `book_id` = i;


SET i = i+1;
END WHILE;
END $
CALL proc_initData();
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值