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 小时前
MYSQL学习笔记:DML & DQL 核心语法
笔记·学习·mysql
小句9 小时前
MySQL慢查询日志详细使用指南
数据库·mysql·adb
码农水水10 小时前
中国邮政Java面试被问:容器镜像的多阶段构建和优化
java·linux·开发语言·数据库·mysql·面试·php
酉鬼女又兒15 小时前
SQL21 浙江大学用户题目回答情况
数据库·sql·mysql
wangmengxxw16 小时前
SpringAI-mysql
java·数据库·人工智能·mysql·springai
Jess0718 小时前
MySQL操作库 —— 库的操作
数据库·mysql
一只自律的鸡19 小时前
【MySQL】第十二章 变量 ,中断处理机制,流程控制
mysql
仍然.19 小时前
MySQL--数据库基础
数据库·mysql
是三好19 小时前
MySQL
数据库·mysql·oracle
会飞的灰大狼20 小时前
MySQL增量备份实战指南
数据库·mysql