REPEAT Query MySQL - PullRequest
       7

REPEAT Query MySQL

0 голосов
/ 24 апреля 2018

У меня возникли проблемы с запросом REPEAT в MySQL. Я задал подобный вопрос не так давно, но на него никогда не отвечали.

По сути, я пытаюсь вставить 300 строк одинаковых данных в поля Password и Email.

Вот код, который я пытаюсь ввести:

REPEAT
   INSERT INTO mysqltest.noderedtest (Password, Email)
   VALUES ("Test", "email@email.com")
UNTIL Room Number >= 300
END REPEAT;

Я получаю ошибку:

Синтаксическая ошибка: «Повторить» (повтор) не является допустимым вводом в этой позиции.

Любая помощь в этом будет очень признательна!

Ответы [ 2 ]

0 голосов
/ 24 апреля 2018

Вы должны обернуть это:

CREATE PROCEDURE proc1()
BEGIN
SET @Room_Number = 0;
REPEAT
   INSERT INTO noderedtest (Password, Email) VALUES ('Test', 'email@email.com');
   SET @Room_Number = @Room_Number + 1;
UNTIL @Room_Number >= 300 END REPEAT;
END

-- call
CALL proc1;

-- check
SELECT * FROM noderedtest

Демоверсия DBFiddle

0 голосов
/ 24 апреля 2018

Для записи, похоже, у вас есть пробел в неправильном месте:
UNTIL Room Number >= 300
Может быть, это должно быть
UNTIL RoomNumber >= 300?

В любом случае, я бы простоиспользуйте цикл WHILE (при условии, что вы находитесь внутри хранимой процедуры)

BEGIN
    DECLARE i int DEFAULT 0;
    WHILE i < 300 DO
        INSERT INTO mysqltest.noderedtest (Password, Email) VALUES ("Test", "email@email.com")
        SET i = i + 1;
END WHILE;
...