你好我得到,而在MySQL中執行以下代碼的錯誤:錯誤而執行SQL樹
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語法中;檢查對應於你的MySQL服務器版本使用附近的「聲明right_most_sibling INTEGER」第2行
任何想法正確的語法手冊,我該如何解決?
我下面這個tutorial
它是否在抱怨末尾的分號? – 2009-09-20 21:43:31
如果你的意思是一個,那麼末尾有或沒有分號 – ant 2009-09-20 21:45:16
嘗試從較小的東西開始:只是一個語句(例如DECLARE語句);然後添加語句。這將有助於確定哪個部分導致錯誤。 – ChrisW 2009-09-20 22:05:55