こんにちは、MySQL で次のコードを実行中にエラーが発生しました。
BEGIN
DECLARE right_most_sibling INTEGER;
SET right_most_sibling
= (SELECT rgt
FROM Personnel
WHERE emp = 'Albert');
UPDATE Personnel
SET lft = CASE WHEN lft > right_most_sibling
THEN lft + 2
ELSE lft END,
rgt = CASE WHEN rgt >= right_most_sibling
THEN rgt + 2
ELSE rgt END
WHERE rgt >= right_most_sibling;
INSERT INTO Personnel (emp, lft, rgt)
VALUES ('Bert', right_most_sibling,
(right_most_sibling + 1))
END;
次のエラーが表示されます。
#1064 - SQL 構文にエラーがあります。2 行目の 'DECLARE right_most_sibling INTEGER' 付近で使用する正しい構文については、MySQL サーバーのバージョンに対応するマニュアルを確認してください。
任意のアイデア、どうすれば修正できますか?
私はこのチュートリアルに従っていました