在开发过程中我们不管是用来测试性能还是在生产环境中页面展示好看一点, 又或者学习验证某一知识点经常需要一些测试数据, 这个时候如果手敲的话, 十行二十行还好, 多了就很死亡了, 接下来介绍两种常用的MySQL测试数据批量生成方式
在SQL中,批量插入测试数据通常有几种方法,具体取决于使用的数据库管理系统。以下是一些常见的方法,以及相关的示例:
1、使用INSERT语句多次插入:
这是最简单的方法,只需多次使用INSERT语句。
NSERT INTO 表名 (列1, 列2, 列3) VALUES (值1, 值2, 值3);
INSERT INTO 表名 (列1, 列2, 列3) VALUES (值4, 值5, 值6);
-- 以此类推
2、使用INSERT INTO SELECT语句:
如果已经有一个包含所需数据的表,可以使用此方法。
INSERT INTO 表名 (列1, 列2, 列3)
SELECT 值1, 值2, 值3
UNION ALL
SELECT 值4, 值5, 值6;
-- 以此类推
3、使用临时表:
首先,将数据插入到一个临时表中,然后再将临时表的数据复制到目标表中。
-- 创建临时表并插入数据
CREATE TABLE 临时表 (列1 数据类型, 列2 数据类型, ...);
INSERT INTO 临时表 (列1, 列2, ...) VALUES (值1, 值2, ...);
-- 复制数据到目标表
INSERT INTO 表名 (列1, 列2, ...) SELECT * FROM 临时表;
-- 如果不再需要临时表,可以删除它
DROP TABLE 临时表;
4、使用批量插入工具或命令:
某些数据库管理系统提供了批量插入数据的工具或命令,例如MySQL的LOAD DATA INFILE命令。
5、使用编程语言的库或框架:
许多编程语言都有与数据库交互的库或框架,这些库通常支持批量插入数据。例如,在Python中,您可以使用SQLAlchemy或psycopg2等库来批量插入数据。
6、使用事务:
在某些情况下,可以把多个插入语句放在一个事务中,这样可以提高性能,因为所有语句要么都成功执行,要么都失败。例如:
BEGIN; -- 开始事务
INSERT INTO 表名 (列1, 列2, ...) VALUES (值1, 值2, ...);
INSERT INTO 表名 (列1, 列2, ...) VALUES (值3, 值4, ...);
COMMIT; -- 提交事务
标签:INSERT,批量,...,--,INTO,表名,测试数据,插入,SQL From: https://blog.csdn.net/m0_58552717/article/details/140448078