MySQL ワークベンチで SQL エディターを使用して、空間テーブル ポイントを作成しました。この表に記入するために、私が使用しているコードは次のとおりです。
CREATE PROCEDURE fill_points(
IN size INT(10)
)
BEGIN
DECLARE i DOUBLE(10,1) DEFAULT size;
DECLARE lon FLOAT(7,4);
DECLARE lat FLOAT(6,4);
DECLARE position VARCHAR(100);
-- Deleting all.
DELETE FROM Points;
WHILE i > 0 DO
SET lon = RAND() * 360 - 180;
SET lat = RAND() * 180 - 90;
SET position = CONCAT( 'POINT(', lon, ' ', lat, ')' );
INSERT INTO Points(name, location) VALUES ( CONCAT('name_', i), GeomFromText(position) );
SET i = i - 1;
END WHILE;
END
実行すると、エラーが表示されます
エラー コード: 1064。SQL 構文にエラーがあります。1 行目の 'END' 付近で使用する正しい構文については、MySQL サーバーのバージョンに対応するマニュアルを確認してください。
ステートメントの実行
CALL fill_points(1000);
同じエラーが表示されます
自分の進み方が正しいかどうかさえわからない。
誰か助けてくれませんか...