如何快速用SQL语句增加10万条数据?

hellok168 2010-12-09 10:16:45
如何快速用SQL语句增加10万条数据?
...全文
446 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
xdm2003 2010-12-13
  • 打赏
  • 举报
回复
10万条记录,用insert也费不了多少时间
需要造更大量的数据的话,load data方式会快很多
linghongjun 2010-12-13
  • 打赏
  • 举报
回复
同意8楼的,用load data infile 确实很快,测试了10W条.很快
sustbeckham 2010-12-13
  • 打赏
  • 举报
回复
先insert一条数据
比如account表

然后insert into account select * from account;
把这句话执行上N遍 就有2的N次方个结果。。。手动敲也用不了十几秒就搞定了。。
zuoxingyu 2010-12-09
  • 打赏
  • 举报
回复
写个存储过程插入,或者用狼头哥的办法,用EXCEL来做模板。
rucypli 2010-12-09
  • 打赏
  • 举报
回复
写个存储过程 ,掉用之前
set innodb_flush_log_at_trx_commit = 0
set auto_commit=0
WWWWA 2010-12-09
  • 打赏
  • 举报
回复
什么数据库?
iihero_ 2010-12-09
  • 打赏
  • 举报
回复
insert /*+append*/ into table1(id, no) select level, level
from dual
connect by level <= 10000000;
iihero_ 2010-12-09
  • 打赏
  • 举报
回复
俺搞错了,看成是Oracle中的记录生成
ACMAIN_CHM 2010-12-09
  • 打赏
  • 举报
回复
用存储过程吧。网上有现成的了。

http://topic.csdn.net/u/20090626/16/65f043cf-b9d9-4707-b660-9857461177f4.html
[Quote]
测试表如下
SQL codecreate table t_06 (
id int not null primary key,
c1 varchar(30),
i2 int
) engine = myisam;

delimiter //

CREATE PROCEDURE prepareData_t_06 ()
BEGIN
DECLARE i INT DEFAULT 1;
WHILE i < 500000 DO
insert into t_06 values (i,concat('AA',i),i);
SET i = i + 1;
END WHILE;
END;
//

delimiter ;

CALL prepareData_t_06();

select count(*) from t_06;
show index from t_06;
show table status like 't_06';

[/Quote]

56,678

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧