【发布时间】:2019-06-06 09:43:03
【问题描述】:
我正在尝试对数据库进行多次插入。我需要使用一个循环,因为在 Node.js 中,我正在定义我应该添加多少行。因此,我不能在Insert Into 上使用Values(...), (...) 语法。
但是,当我使用此循环时,我收到错误 1064。我该怎么办?
DELIMITER //
DROP PROCEDURE IF EXISTS addReservations;
CREATE PROCEDURE addReservations()
BEGIN
DECLARE v1 INT DEFAULT 0;
WHILE v1 < 5 DO
INSERT INTO `Reservations` (`Timeslot_idTimeslot`, `Exam_type_idExam_type`, `Temp_Student_idStudent`, `Lock_expiration_date`)
VALUES (1, 1, 1, '2019-07-02 00:00:00');
SET v1 = v1 + 1;
END WHILE;
END;
DELIMITER;
我收到的错误是:
错误代码:1064 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的“DELIMITER”附近使用正确的语法
【问题讨论】:
-
DELIMITER // 应该是 DELIMITER $$
-
除非 OP 想change the delimiter。