在我的mySQL表中插入多个记录

时间:2014-07-15 13:28:53

标签: mysql

我想在mySQL表中插入多条记录:

INSERT INTO example
  (example_id, name, value, other_value)
VALUES
  (1, 'Name 1', 'Value 1', 'Other 1'),
  (2, 'Name 2', 'Value 2', 'Other 2'),
  (3, 'Name 3', 'Value 3', 'Other 3'),
  (4, 'Name 4', 'Value 4', 'Other 4');
...

我可以用循环吗?类似的东西:

for (i=1 ; i<100 ; i++)
INSERT INTO example
      (example_id, name, value, other_value)
    VALUES
      (i, 'Name '+i, 'Value '+i, 'Other '+i);

1 个答案:

答案 0 :(得分:0)

您可以在Mysql(http://dev.mysql.com/doc/refman/5.0/es/create-procedure.html)中创建执行该循环的存储例程。例如:

DELIMITER //
CREATE PROCEDURE test()
BEGIN
    DECLARE CONT INT;
    DECLARE END_VALUE INT;

    SET CONT = 1;
    SET END_VALUE = 100;

    WHILE CONT < END_VALUE DO
        INSERT INTO example_vrc(example_id, name, value, other_value)
        VALUES(CONT, CONCAT('Name ', CONT), CONCAT('Value ', CONT), CONCAT('Other ', CONT));

        SET CONT = CONT + 1;
    END WHILE;

END;//
DELIMITER ;

将程序加载到数据库后,您将能够执行:

CALL test();