请教:如何以最快的速度创建测试数据?

[复制链接]
查看11 | 回复4 | 2011-2-18 11:42:49 | 显示全部楼层 |阅读模式
当数据量小的时候不必考虑速度问题,但是当我要创建一个大表来做测试的时候,就慢的要命了。
比如我要创建一个表,10亿条数据,怎么做才最快?


回复

使用道具 举报

千问 | 2011-2-18 11:42:49 | 显示全部楼层
插入一条
然后insert into t select * from t
如果有主键
insert into t select id+(select max(id) from t),... from t
回复

使用道具 举报

千问 | 2011-2-18 11:42:49 | 显示全部楼层
tom的big table脚本
回复

使用道具 举报

千问 | 2011-2-18 11:42:49 | 显示全部楼层
〇〇 发表于 2011-11-26 21:03
插入一条
然后insert into t select * from t
如果有主键

这个我试过,比一条条插入快,加上nologging还会更快。
但是当t表变大以后,直接select * from t是要全表扫描的,想加快这个过程只能加索引,加索引又要维护索引,
这里有矛盾。所以我想应该有更好的办法。
回复

使用道具 举报

千问 | 2011-2-18 11:42:49 | 显示全部楼层
dingjun123 发表于 2011-11-26 21:05
tom的big table脚本

多谢~搜到tom的脚本了,但是既然开这个帖子了,能不能顺便解释下为什么tom的这个脚本会快?
本人比较菜。。。不太看的出来。。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行