如何创建一个过程来生成 MySQL 中的一系列数字?
How to create a procedure to generate a range of numbers in MySQL?
我正在尝试创建一个过程来生成介于 2 个整数 L 和 H 之间的数字范围。这是我的代码:
CREATE TABLE Numbers (n INT);
DELIMITER //
CREATE PROCEDURE GenerateNumbers(IN L INT, IN H INT)
BEGIN
DECLARE I INT UNSIGNED DEFAULT L;
WHILE I <= H DO
INSERT INTO Numbers(n) VALUES(I);
SET I = I + 1;
END WHILE;
END //
DELIMITER;
每当我运行代码它returns这个错误
ERROR 1064 (42000) at line 16: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DELIMITER' at line 1
有人可以帮忙吗?
所以这很简单,你会踢自己的 - 你只需要 DELIMITER
和分号之间的 space:
DELIMITER ;
而不是:
DELIMITER;
我正在尝试创建一个过程来生成介于 2 个整数 L 和 H 之间的数字范围。这是我的代码:
CREATE TABLE Numbers (n INT);
DELIMITER //
CREATE PROCEDURE GenerateNumbers(IN L INT, IN H INT)
BEGIN
DECLARE I INT UNSIGNED DEFAULT L;
WHILE I <= H DO
INSERT INTO Numbers(n) VALUES(I);
SET I = I + 1;
END WHILE;
END //
DELIMITER;
每当我运行代码它returns这个错误
ERROR 1064 (42000) at line 16: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DELIMITER' at line 1
有人可以帮忙吗?
所以这很简单,你会踢自己的 - 你只需要 DELIMITER
和分号之间的 space:
DELIMITER ;
而不是:
DELIMITER;