2013-04-08 67 views
1

我有该用户是否存在,如果用户不存在返回null返回电子邮件地址的标量函数。如何在SQL Server功能的情况下,检查空?

我需要从一个存储过程调用此函数和存储过程需要该用户是否存在返回的电子邮件地址和它应该返回“用户不存在”如果他不。

我面对的是怎样在一个功能的情况下检查空的问题?还是我看着这个错误的方式?下面给出了我正在寻找的代码片段。 IF EXISTS在这种情况下不起作用。任何帮助,将不胜感激。谢谢。

Alter procedure [dbo].[xalumniGetPrimaryEmailAddress] 
@login varchar(50) 
AS 

BEGIN 
IF EXISTS (select dbo.ZAlumniGetPrimaryAddress(@login)) 

    BEGIN 
     PRINT @login+' EXISTS' 
    END 
ELSE 
    BEGIN 
     PRINT @login+' DOES NOT EXIST' 
    END 
END 
GO 

回答

1
Alter procedure [dbo].[xalumniGetPrimaryEmailAddress] 
     @login varchar(50) 
     AS 

BEGIN 
IF dbo.ZAlumniGetPrimaryAddress(@login) is not null 

    BEGIN 
     PRINT @login+' EXISTS' 
    END 
     ELSE 
    BEGIN 
     PRINT @login+' DOES NOT EXIST' 
    END 
END 
GO 
+0

感谢那些完美地工作! – user2258032 2013-04-09 08:09:53

1

尝试:

IsNull(dbo.ZAlumniGetPrimaryAddress(@login), 'User does not exist') 

或者:

Coalesce(dbo.ZAlumniGetPrimaryAddress(@login), 'User does not exist') 

这是否帮助?

相关问题