Mysql 循环插入数据

CREATE TABLE test_t(

role_id INT ,

menu_id INT ,

company_id INT

)

第一种:

INSERT INTO test_t(role_id,menu_id,company_id) SELECT 1000,id,1 FROM test WHERE product_id IS NULL

第二种:

DELIMITER //

CREATE PROCEDURE proc()

BEGIN

DECLARE role INT;

DECLARE menu INT;

DECLARE company INT;

DECLARE done INT DEFAULT FALSE;

DECLARE cur CURSOR FOR

SELECT 1,id,1 FROM test WHERE product_id IS NULL;

-- 将结束标志绑定到游标

DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;

OPEN cur;

read_loop: LOOP

FETCH cur INTO role,menu,company;

IF done THEN

LEAVE read_loop;

END IF;

INSERT INTO test_t(role_id,menu_id,company_id) VALUES(role,menu,company);

END LOOP;

-- 关闭游标

CLOSE cur;

END //

CALL proc()

相关推荐
田超凡1 小时前
深入理解MySQL_10 Explain的用法
mysql·java-ee
cyforkk3 小时前
MySQL锁机制详解:从乐观锁到悲观锁
数据库·mysql
ShiXZ2134 小时前
指令集-SQL 常用指令速查手册
数据库·sql·mysql·oracle
郑州光合科技余经理4 小时前
海外外卖平台源码改造实战——多语言核心代码实现
java·开发语言·前端·后端·mysql·架构·php
不会写DN4 小时前
MySQL 并发插入竞态问题:原子写入实践指南
数据库·mysql
少时登峰5 小时前
【吃透 MySQL InnoDB连载】第 6 章・索引底层原理
数据库·mysql
许彰午5 小时前
从Oracle看MySQL聚簇索引的架构性缺陷与缓解之道
mysql·oracle·架构
AllData公司负责人6 小时前
数据集成管理|AIIData数据中台实现MySQL、Hive、Oracle一键接入Doris
大数据·数据库·人工智能·hive·mysql·oracle·数据分析
一嘴一个橘子6 小时前
mysql 的经验
mysql
数据库小学妹7 小时前
MySQL高可用架构选型实战:MHA vs MGR vs InnoDB Cluster原理对比与性能实测
mysql·mgr·mha·架构选型·mysql高可用