Sql server2012存储过程参数传递null值,如何判定这个参数是null

存储过程写if@paraisnullBeginselect语句条件相当于where1=1EndelseSelect语句为什么参数传递null值时没有返回任何结果,prin... 存储过程写
if @para is null
Begin
select语句条件相当于where 1=1
End
else
Select语句
为什么参数传递null值时没有返回任何结果,print @para也是空,参数给定一个之正常.不能用@para is null或者isnull(@para,'')=''还能用什么方法判定@para是传递null值,这是bug吗
展开
 我来答
Andy_Sun321
2015-04-16 · TA获得超过1376个赞
知道小有建树答主
回答量:811
采纳率:89%
帮助的人:725万
展开全部
你的返回结果是什么意思?
当@para传入null时,print当然为空的了。
判断一个变量或字段值是否为空就是用is null来判断的:如果变量或字段值为null结果为true, 否则为false;而isnull则是在第一个参数值为null时返回第二个参数值,如果第一个参数值不为null则直接返回第一个参数值。
填写用户名ABCD
推荐于2018-03-08 · TA获得超过393个赞
知道小有建树答主
回答量:464
采纳率:33%
帮助的人:202万
展开全部
ISNULL(@para,'') = ''

@para IS NULL
更多追问追答
追问
都不好用呢
追答
if ISNULL(@para,'') = ''
Begin
select语句条件相当于where 1=1
End
else
Select语句
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
szm341
2015-04-16 · TA获得超过6726个赞
知道大有可为答主
回答量:5005
采纳率:100%
帮助的人:5149万
展开全部
你确定传的是NULL而不是'NULL'?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
射手幽灵伊
2015-04-16 · TA获得超过2716个赞
知道大有可为答主
回答量:4955
采纳率:81%
帮助的人:1958万
展开全部
2012可以调试了,你调试一下存储过程。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式