2015-04-29 131 views
0

我有一個關於通過某個值創建存儲過程的問題,我編寫了過程,但隨後值包含點,所以他什麼都不返回。SQL Server存儲過程返回null

有我的代碼:

create procedure GetUserInformationByUsername 
    @username nvarchar(50) 
as 
    select 
     ISNULL(u.FirstName, 'Unknown') as [First Name], 
     ISNULL(u.LastName,'Unknown') as [Last Name], 
     ISNULL(u.Language,'Unknown') as [speak Language], 
     ISNULL(c.CountryName,'Unknown') as [Country Name] 
    from 
     UsersProfile u 
    join 
     Countries c on u.CountryID = c.CountryID 
    where 
     u.UserName = @username 
go 

@username是 「alex.a」 我想找到,

我要去哪裏錯了?

+0

你的意思是零記錄? –

回答

2

我假設你的意思是proc返回一個空的結果集。如果是這樣,有兩件事情可能發生。

  1. 你沒有用戶以用戶名= 「alex.a」

  2. 你的加入對國家表中沒有找到匹配的CountryID

我猜猜它是#2。