存储过程的简单问题,请高手指教
create procedure HasPermission
(
@docId int,
@userId int,
@permissionId int,
@hasPermission int output -- 输出 0 或 1
)
as
declare @flagu int
declare @flagd int
select @flagu = GrantOrDeny from TDocPermission -- << -------------
where
docId = @docId
and deptOrUser = 'u'
and deptOrUserId = @userId
and permissionId = @permissionId
select @flagd = GrantOrDeny from TDocPermission
where
docId = @docId
and deptOrUser = 'd'
and permissionId = @permissionId
and deptOrUserId in
(
select deptId from TUser where userId = @userId
)
if @flagd = 0
select @hasPermission = 1
else
if @flagu = 1
-- 如果要在这里判断 @flagu 是否为空,也就是说上面箭头的 select 语句的查询结果为空,该怎么写这个判断语句 ?
....
go