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

相关推荐
q***064711 小时前
MySQL的UPDATE(更新数据)详解
数据库·mysql
8***B11 小时前
MySQL性能
数据库·mysql
Warren9813 小时前
Python自动化测试全栈面试
服务器·网络·数据库·mysql·ubuntu·面试·职场和发展
kka杰14 小时前
MYSQL 表的增删查改-更新/删除
数据库·mysql
深藏bIue15 小时前
linux服务器mysql目录下的binlog文件删除
linux·服务器·mysql
甜鲸鱼15 小时前
Java与MySQL中的枚举(Enum)
java·mysql
q***448115 小时前
mysql配置环境变量——(‘mysql‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件解决办法)
数据库·mysql·adb
Zero-Talent15 小时前
MySQL初级
数据库·mysql·oracle
yaoty17 小时前
FastAPI 流式响应中,如何优雅处理客户端断连后的数据库操作?
mysql·fastapi
不断高歌18 小时前
MySQL基础随堂笔记3
数据库·mysql