我试图在sql中创建一个while循环,该循环将在我的数据库中创建100个空条目。
我的sql查询如下:
SET @id := 1;
WHILE @id <= 100
BEGIN
INSERT INTO Sticker (id, sticker_url, user_name, user_nickname, latitude, longitude, adress) VALUES(@id, 'NULL', 'NULL', 'NULL', 1.2, 1.1, 'NULL');
SET @id = @id + 1;
END
执行查询后,结果为:“无错误” 但是查询没有创建任何条目,这有点奇怪。
SELECT @@ version:5.7.23-0ubuntu0.16.04.1
谢谢..
答案 0 :(得分:1)
我现在没有方便的mysql
框,但我认为这就是您想要的:
SET @id := 1;
WHILE @id <= 100 DO
INSERT INTO Sticker (id, sticker_url, user_name, user_nickname, latitude, longitude, adress) VALUES(@id, 'NULL', 'NULL', 'NULL', 1.2, 1.1, 'NULL');
SET @id := @id + 1;
END WHILE;
对不起,我无法测试。但是我认为缺少的主要是要使用DO
而不是BEGIN
。我敢打赌BEGIN
正在开始交易。
答案 1 :(得分:0)
也许问题出在结肠
df.merge(df2.pivot('Name', 'Category', 'Score'), left_on='Name', right_index=True)
Name Total Score Category A Category B
0 Charles 67 4 9
1 Peter 98 3 1
2 Mark 78 3 3
因为正确的SET语法是
SET var_name =值
https://dev.mysql.com/doc/refman/8.0/en/set-statement.html
在WHILE DO中缺少DO