本人初学写MySQL数据库的SQL,想写一存储过程,死活通不过,
MySQL 版本:5.1.4
执行工具:Navicat Premiumdelimiter //
create procedure usp_chcek_data_delete_power(in groupId char, out affRows int, out msg varchar)
begin
SELECT COUNT(*) INTO affRows from t_data_group_objects WHERE c_group_id = groupId;
if(affRows > 0) then
set msg = '该数据分组已经对应了对象数据不能删除!';
return;
end if; select count(*) into affRows from t_role_data b where b.c_data_id = groupId;
if(affRows > 0) then
msg := '该数据分组已经和权限关联,不能删除!';
return;
end if;
end
//-------------------------------------------------------------------
错误提示:[Err] 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 ')
begin
SELECT COUNT(*) INTO affRows from t_data_group_objects WHERE c_group_' at line 1
请各位高手指点,没有搞明白
MySQL 版本:5.1.4
执行工具:Navicat Premiumdelimiter //
create procedure usp_chcek_data_delete_power(in groupId char, out affRows int, out msg varchar)
begin
SELECT COUNT(*) INTO affRows from t_data_group_objects WHERE c_group_id = groupId;
if(affRows > 0) then
set msg = '该数据分组已经对应了对象数据不能删除!';
return;
end if; select count(*) into affRows from t_role_data b where b.c_data_id = groupId;
if(affRows > 0) then
msg := '该数据分组已经和权限关联,不能删除!';
return;
end if;
end
//-------------------------------------------------------------------
错误提示:[Err] 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 ')
begin
SELECT COUNT(*) INTO affRows from t_data_group_objects WHERE c_group_' at line 1
请各位高手指点,没有搞明白
DROP PROCEDURE IF EXISTS usp_chcek_data_delete_power//
CREATE PROCEDURE usp_chcek_data_delete_power(IN groupId CHAR(10), OUT affRows INT, OUT msg VARCHAR(10))
BEGIN
SELECT COUNT(*) INTO @affRows FROM t_data_group_objects WHERE c_group_id = groupId;
IF @affRows>0 THEN
SET msg = '该数据分组已经对应了对象数据不能删除!';
ELSE
SELECT COUNT(*) INTO @affRows FROM t_role_data b WHERE b.c_data_id = groupId;
IF affRows > 0 THEN
SET msg = '该数据分组已经和权限关联,不能删除!';
END IF;
END IF;
END
//