存储过程的简单问题,请高手指教

nchen123 2003-09-25 11:01:47
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
...全文
43 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
nchen123 2003-09-25
  • 打赏
  • 举报
回复
解决了,多谢!
quanyi 2003-09-25
  • 打赏
  • 举报
回复
if @flagu is null
LoveSQL 2003-09-25
  • 打赏
  • 举报
回复
if not exists(select GrantOrDeny from TDocPermission
where
docId = @docId
and deptOrUser = 'u'
and deptOrUserId = @userId
and permissionId = @permissionId)
txlicenhe 2003-09-25
  • 打赏
  • 举报
回复
If @flagu is null
...
nchen123 2003-09-25
  • 打赏
  • 举报
回复
up

34,874

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧