我有一个简单的存储过程,它将记录插入表中的四个字符字段。以下是程序
CREATE PROCEDURE dowhile()
BEGIN
DECLARE I INT DEFAULT 5
v1loop: WHILE I < 10000 DO
INSERT INTO TestTable1(A,B,C,D)
SELECT CONCAT(I,'A'), CONCAT(I,'B'), CONCAT(I,'C'), CONCAT(I,'D')
SET I = I + 1
END WHILE v1loop
END;
在线查看 - 没有免费的MSSQL到MYSQL SQL转换工具
错误是 - 插入中的SQL语法错误 - SELECT语句
我检查了这个似乎正确的语法。
任何指示都会有所帮助。
答案 0 :(得分:2)
实际上并不坏,你只需要添加一些分号并更改MySQL的默认分隔符。这需要完成,因为我们在SQL中使用SQL。
DELIMITER $$
CREATE PROCEDURE dowhile()
BEGIN
DECLARE I INT DEFAULT 5;
v1loop: WHILE I < 10000 DO
INSERT INTO TestTable1(A,B,C,D)
SELECT CONCAT(I,'A'), CONCAT(I,'B'), CONCAT(I,'C'), CONCAT(I,'D');
SET I = I + 1;
END WHILE v1loop;
END$$
DELIMITER ;
刚刚在我的MySQL服务器上测试过它。