Я использую следующий запрос MySQL,Что не так с запросом mysql?
DELIMITER $$
DROP PROCEDURE IF EXISTS `allied`.`aboutus_delete`$$
CREATE DEFINER=`allied`@`%` PROCEDURE `aboutus_delete`(
IN p_Id int(11)
)
BEGIN
if exists( select aboutUsId
from aboutus
where aboutUsId=p_id
and isDeleted=0
)
update aboutus set isDeleted=1 where aboutUsId=p_id
else
select 'No record to delete'
END$$
DELIMITER ;
Но я получаю эту ошибку, когда я исполняю его ...
Error Code : 1064
You have an error in your SQL syntax; check the manual that corresponds
to your MySQL server version for the right syntax to use near
'update aboutus set isDeleted=1 where aboutUsId=p_id
else
select 'No record to' at line 6
EDIT:
используя точку с запятой, кажется, не работы,
if exists(select aboutUsId from aboutus where aboutUsId=p_id and
isDeleted=0) then
update aboutus set isDeleted=1 where aboutUsId=p_id;
else
select 'No record to delete';
это не запрос, это сценарий создания процедуры – lexu
@lexu ya его процедура, но почему я получаю эту ошибку? – bala3569
только для полноты - нужны точки с запятой внутри SP в MySQL? – Axarydax