首页 新闻 搜索 专区 学院

sql server查询不到记录,返回的是一个什么值?

0
悬赏园豆:10 [已解决问题] 解决于 2011-11-25 12:30
select @tid=tag.Tid from tag where tag.Tag=@tag
if @tid=null begin --当@tid不存在时就插入新纪录
insert into tag (Tag,chaXunN,chaXunZuiJinN) values (@tag,0,0)
set @tid=@@IDENTITY
end

上面的sql是我一个存储过程的一部分代码,我想问一个问题,就是我根据输入的@tag去查询tag这个表的tid字段,但记录不存在时,@tid返回的是一个什么值,是null么?我现在的

if @tid=null begin
.....

好像是不对的。报错了。

谁可以帮我一下

豆腐欣欣的主页 豆腐欣欣 | 初学一级 | 园豆:76
提问于:2011-11-25 11:41
< >
分享
最佳答案
0

没有赋值过就是null

if @tid is null begin

收获园豆:10
ChatinCode | 老鸟四级 |园豆:2272 | 2011-11-25 11:48

if @tid =null 是 false的

ChatinCode | 园豆:2272 (老鸟四级) | 2011-11-25 11:51
其他回答(2)
0

这样你试试。@tid=tag.Tid 换成@tid=count(tag.Tid),判断的时候就是看@tid是不是等于0.

不过这个时候就最好把@tid换个名字了。

LCM | 园豆:6876 (大侠五级) | 2011-11-25 11:50

谢谢你的帮助,你的方法是我最早使用过的,但是因为我后面还要使用到tag.Tid这个值,所以用count()会比较麻烦。

支持(0) 反对(0) 豆腐欣欣 | 园豆:76 (初学一级) | 2011-11-25 12:31
0

@tid is null

或者你先给@tid赋一个不可能的值

然后再判断

死白的man | 园豆:2135 (老鸟四级) | 2011-11-25 12:27

谢谢你,问题已经解决了

支持(0) 反对(0) 豆腐欣欣 | 园豆:76 (初学一级) | 2011-11-25 12:32
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册