[英]MySQL error #1064 while creating stored procedure
這是代碼:
IF(selected_item_id IS NOT NULL AND selected_category IS NOT NULL) THEN
IF(selected_item_id <> "all") THEN
SELECT i.id, i.name, i.summary, i.description, i.location, c.name AS 'category_name' FROM items i, categories c WHERE i.category_id = c.id AND i.id LIKE selected_item_id;
ELSE IF(selected_item_id = "all" AND selected_category <> "all" AND selected_category in (SELECT name FROM categories)) THEN
SELECT i.id, i.name, i.summary, i.description, i.location, c.name AS 'category_name' FROM items i, categories c WHERE i.category_id = c.id AND c.name LIKE selected_category;
ELSE IF(selected_item_id = "all" AND selected_category = "all") THEN
SELECT i.id, i.name, i.summary, i.description, i.location, c.name AS 'category_name' FROM items i, categories c WHERE i.category_id = c.id;
END IF
END IF
當我嘗試保存它時,我得到:
MySQL說:#1064在第17行的“ END IF”附近(這是最后一個END IF)
非常感謝您的幫助。
您不需要在ELSE和IF之間添加空間。 請參閱此了解詳情。 然后以分號結束IF。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.