日期:2014-05-18  浏览次数:20467 次

if exists是否只能接SQL语句
SET   @temp   =   (SELECT   ID   FROM   C#   WHERE   ...)
IF     EXISTS   (@temp)
  ...

以上语句调试错误,换成

IF     EXISTS(SELECT   ID   FROM   C#   WHERE   ...)
  ...

可以执行.

if   exists是否只能接SQL语句,不能接表达式?

------解决方案--------------------
--try
declare @temp int
SELECT @temp=ID FROM C# WHERE ...
IF EXISTS (select @temp)

--这样条件始终为真
------解决方案--------------------
你的错误在于第一条赋值语句,右边应该用字符串.改为
sET @temp = '(SELECT ID FROM C# WHERE ...) '
就行了