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()

相关推荐
码农颜2 小时前
5.2.2 隔离级别
数据库·mysql
骇客野人2 小时前
MySQL 信创化迁移至 PolarDB-X 整体实施方案
数据库·mysql
molaoye7 小时前
win10下安装MySQL 8.0.*实录
数据库·mysql
番茄炒鸡蛋加糖7 小时前
中级核心技术1--MySQL/Java 并发
java·数据库·mysql
灯澜忆梦8 小时前
【MySQL10】进阶篇 | 索引_#1
数据库·sql·mysql
OceanWaves19939 小时前
mysql 5.7.29 主从同步配置
数据库·mysql·adb
molaoye9 小时前
win10下切换MySQL版本
数据库·mysql
c2385610 小时前
MySQL 基础用法(下):查询进阶与核心特性
android·c语言·c++·mysql
XWalnut10 小时前
MySQL入门到精通
数据库·mysql
wear工程师10 小时前
MySQL 分页为什么会重复数据:补上 id 还不够
sql·mysql