2015-08-14 57 views
0

我想在MySQL有没有一种简单的方法在mysql中生成测试数据?

假设有这样一个表来生成测试数据,

create table person (
    id int auto_increment primary key, 
    name text, 
    age int, 
    birth_day date 
); 

让我知道如何在一个简单的方式来创建测试数据。

顺便说一句,我知道使用标准输入某些方面像

repeat 5 echo 'insert into person (name, age, birth_day) select concat("user", ceil(rand() * 100)), floor(rand()*100), date_add(date("1900/01/01"), interval floor(rand()*100) year);' 

repeat 5 perl -M"Data::Random qw(:all)" -E 'say sprintf qq#insert into person (name, age, birth_day) values ("user%s", %s,"%s");#, (int rand(100)), (int rand(100)), rand_date(min => "1900-01-01", max=>"1999-12-31")' 

我认为后者可能会更好,因为它不使用MySQL的函数。

+0

是否需要辨别的数据(即,不名称字段必须是实际名称,或者它可以是随机文本?) - 这个怎么样? http://www.phpclasses.org/package/6416-PHP-Populate-a-MySQL-database-with-random-data.html –

+0

谢谢你的链接。我会试试这个。很抱歉,无法理解您的说法,但我认为名称字段不一定是实际的名称。我的意思是人桌是一个例子。 – hiroyuki

+0

就是这样,如果它不一定是一个真正的名字,那就忽略我的问题吧! –

回答

2

这是为mysql生成虚拟数据的最简单的方法;

http://dummydata.me/generate

这里;

https://dba.stackexchange.com/questions/449/tool-to-generate-large-datasets-of-test-data

编辑:dummydata.me不工作,我发现了一个可供选择的一个工作:)

试试这个: http://www.generatedata.com/

+0

谢谢。但http://dummydata.me/generate不起作用?我喜欢离线。我将在稍后阅读下一个链接 – hiroyuki

+0

我找到了另一个,并编辑了这篇文章。 – sulhadin

+0

请让我知道它对你有用吗? – sulhadin

相关问题