DELIMITER $$
CREATE PROCEDURE insert_data_loop()
BEGIN
DECLARE i INT DEFAULT 1;
WHILE i <= 10 DO
INSERT INTO your_table (column1, column2) VALUES ('value1', 'value2');
SET i = i + 1;
END WHILE;
END $$
DELIMITER ;
import mysql.connector
# 连接数据库
mydb = mysql.connector.connect(
host="localhost",
user="yourusername",
password="yourpassword",
database="yourdatabase"
# 创建游标
mycursor = mydb.cursor()
# 循环插入数据
for i in range(10):
sql = "INSERT INTO your_table (column1, column2) VALUES (%s, %s)"
val = ("value1", "value2")
mycursor.execute(sql, val)
# 提交事务
mydb.commit()
# 关闭连接
mycursor.close()
mydb.close()
这个脚本会循环执行插入语句,将指定的数据插入表中。你可以根据需要修改插入的数据和循环次数。
3. 是否有其他方法可以循环添加数据库数据? 除了存储过程和脚本,还可以使用MySQL的批量插入语句来实现循环添加数据库数据。例如,可以使用INSERT INTO … SELECT 语句结合UNION ALL来实现批量插入。以下是一个示例代码:
INSERT INTO your_table (column1, column2)
SELECT 'value1', 'value2'
UNION ALL
SELECT 'value1', 'value2'
UNION ALL
SELECT 'value1', 'value2'
-- 继续添加需要的行数