WEB开发网
开发学院数据库Sybase sybase存储过程问题 阅读

sybase存储过程问题

 2008-03-27 15:09:14 来源:WEB开发网   
核心提示:问:SYBASE存储过程,为什么执行到这一句就不执行了select @nSerialNo = serialno from schedule where phonenum= @strPhoneNum and type = @nTypeif @@rowcount = 0begin...endelsebegin...end上

问:SYBASE存储过程,为什么执行到这一句就不执行了

select @nSerialNo = serialno from schedule where phonenum= @strPhoneNum and type = @nType
if @@rowcount = 0
begin
...
end
else
begin
...
end

上面的select结果是空记录集,存储过程一执行到空记录集,就会返回?

答:if exists(select @nSerialNo = serialno from schedule where phonenum= @strPhoneNum and type = @nType)这个语句的逻辑有点问题?

if exists 一般是用来确定是否存在类似的记录?你现在又要将存在的结果赋值?其实还不如写 if exists(select 1 from schedule where phonenum= @strPhoneNum and type = @nType)

确定是否存在这样的记录,在执行相应的处理。

Tags:sybase 存储 过程

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接