循环Mysql使用PhpMyadmin在表中插入数据

时间:2013-05-14 14:53:12

标签: mysql sql phpmyadmin

您好我试图在数据库中插入数据,以便为每个号码设置一个id

table numbers

id | number

1  | 2560
2  | 2561

这继续100个数字。我发现这是PL / sql

BEGIN
   FOR v_LoopCounter IN 2560..2660 LOOP
   INSERT INTO numbers (number)
   VALUES (v_LoopCounter);
END LOOP;
END;

也尝试了

BEGIN
   FOR v_LoopCounter IN 2560.2660 LOOP;
   INSERT INTO numbers (number);
   VALUES (v_LoopCounter);
END LOOP;
END;

我如何使用Phpmyadmin在Sql中执行此操作,因为我可以使用它。

谢谢!

我曾尝试在PHPMyadmin中运行此SQL,但我总是遇到语法错误

您的SQL查询中似乎有错误。下面的MySQL服务器错误输出(如果有的话)也可以帮助您诊断问题

我现在也尝试了

SELECT * FROM table_name WHERE
BEGIN
       FOR v_LoopCounter IN 2560..2660 LOOP
       INSERT INTO numbers (number)
       VALUES (v_LoopCounter);
    END LOOP;
    END;

3 个答案:

答案 0 :(得分:0)

尝试:

DELIMITER //
BEGIN
   FOR v_LoopCounter IN 2560..2660 LOOP
   INSERT INTO numbers (number)
   VALUES (v_LoopCounter);
END LOOP;
END
//

答案 1 :(得分:0)

试试这个 首先选择数据库,否则您将获得无数据库选择错误

DROP PROCEDURE IF EXISTS myFunction;
delimiter $$

CREATE PROCEDURE myFunction()
     BEGIN
             DECLARE i INT DEFAULT 1;
             DECLARE j INT DEFAULT 0;
             DROP TABLE IF EXISTS test;
             CREATE TEMPORARY TABLE test
                 (id int, numbers int);

         WHILE (i<=100) DO
                SET j=i+2560;
                INSERT INTO test VALUES(i,j);
                SET i=i+1;
         END WHILE;

         select * from test;

         drop table test;

 END$$

之后调用程序

delimiter ;

call myFunction();

答案 2 :(得分:0)

--- 你不能在 PHPMyAdmin 中使用 FOR 循环---

使用这种方式:-

  1. 打印您的所有查询并复制。

  2. 将其粘贴到 sql 选项卡中,然后按 GO。

  3. 完成。


    示例:-

     str = "";
     for (let i = 8; i < 77; i++) {
         str = str + "HERE IS YOU QUERY YOU WANT... Like DELETE FROM tabel_name WHERE column_id=+i+;\n"
     }
     console.log(str);