Mysql
MySQL 儲存過程中的語法錯誤
我在執行 SQL 儲存過程時遇到了問題,我收到錯誤消息,因為在我的語句中顯示語法錯誤,但我找不到,
儲存過程
--- -- 正常 DDL -- 注意:常式正文前後的註釋不會被伺服器儲存 --- 分隔符 $$ 創建過程`enterprisedb`。`orderstatus` ( 在 inmode varchar(27) 中, IN OrderStatus_id int, IN Status_comments varchar(255), 在 CreatedOn 日期時間, IN CreatedBy varchar(255), 在更新日期時間, IN 更新由 varchar(255), IN is_active 位 ) 開始 /*insert*/ if inmode = 'insert' then insert into orderstatus (OrderStatus_id, OrderStatus, Status_comments, CreatedOn, CreatedBy, UpdatedOn, UpdatedBy, is_active) values (OrderStatus_id, OrderStatus, Status_comments, CreatedOn, CreatedBy, UpdatedOn, UpdatedBy, is_active); end if; /*update*/ if inmode = 'update' then update orderstatus ods set ods.OrderStatus = OrderStatus, ods.Status_comments = Status_comments, ods.CreatedOn = CreatedOn, ods.CreatedBy = CreatedBy, ods.UpdatedOn = UpdatedOn, ods.UpdatedBy = UpdatedBy, ods.is_active = is_active where ods.OrderStatus_id = OrderStatus_id; /*delete*/ if inmode = 'delete' then update orderstatus ods set ods.is_active = 0 where ods.OrderStatu_id = OrderStatus_id; end if; /*select*/ if inmode = 'select' then select * from orderstatus ods where ods.OrderStatus_id = OrderStatus_id; end if; END
它顯示以下消息,我找不到錯誤。
- 我可以點擊是按鈕並繼續執行程序嗎?
- 它會引起任何問題嗎?
- 如何解決這個問題?a A 歡迎提出任何建議、答案和意見。
提前致謝。
您是否可能錯過了“如果結束”;來自“if inmode = ‘delete’”語句?