不是一次一行地创建一行测试数据,而是可以在MySQL中运行以执行以下操作的查询:
表名:my_table 行包括:ID(自动增量),fname,lname,电子邮件,电话
测试数据应复制到100行,其中数据为:
1 John Doe jdoe@jdoe.com 0000000
2 John Doe jdoe@jdoe.com 0000000
...
100 John Doe jdoe@jdoe.com 0000000
谢谢!
答案 0 :(得分:5)
一种方法是使用现有的表,其中包含要插入新表的行数。假设现有表是old_table
并且它有100(或更多)行的任何数据,这就是你要做的:
insert into my_table (fname,lname,email,phone)
select 'John', 'Doe', 'jdoe@jdoe.com', '0000000'
from old_table
limit 100
如果my_table中的主键是自动递增,那么这应该起作用
答案 1 :(得分:4)
您可以创建一个未命名的块并使用内部循环执行100次查询。
BEGIN
DECLARE v1 INT DEFAULT 0;
WHILE v1 < 100 DO
INSERT INTO my_table (ID, fname, lname, email, phone) VALUES (DEFAULT, 'John', 'Doe', 'jdoe@jdoe.com', '000000');
SET v1 = v1 + 1;
END WHILE;
END
答案 2 :(得分:1)
这个SQL应该可以解决问题 - 只需修改INSERT
即可DELIMITER //
CREATE PROCEDURE addItems(number INT)
BEGIN
label1: LOOP
SET number = number - 1;
INSERT ....
IF number <> 0 THEN ITERATE label1; END IF;
LEAVE label1;
END LOOP label1;
END;//
DELIMITER ;
CALL addItems(100);
答案 3 :(得分:0)
我认为您需要编写一段简单的代码来为您完成此操作。由于您的ID是自动增量,因此类似于:
<?php
$sql = "INSERT INTO table1 (fname, lname, email, phone) VALUES ";
for($i=0;$<=100;$i++)
$sql .= "('John', 'Doe', 'jdoe@jdoe.com', '0000000'),";
mysql_query(substr($sql, 0, -1));
?>
答案 4 :(得分:0)
也许您可以尝试http://www.generatedata.com/#generator在选项下,您可以输入重复的值。