Reputation: 1141
Below is part of a stored procedure that I have, it would be of great help if you can point me why is that even when @DefaultID
is null after executing the select statement it does not enter the if condition, is there are different method I have to follow to assign the value to @DefaultID
for it to be available for null checking.
Thank you in advance.
DECLARE @DefaultID varchar(25)
DECLARE @ISDefault varchar(1)
SELECT @DefaultID = (SELECT TABLE1.DEFID as DEFID
FROM TABLE1
WHERE TABLE1.ID = '123')
IF (@DefaultID = '')
SET @ISDefault = '1'
ELSE
SET @ISDefault = '0'
Upvotes: 8
Views: 54716
Reputation: 18629
Please check using
IF ISNULL(@DefaultID, '') = ''
instead of IF(@DefaultID = '')
I guess you are using MS Sql server.
Upvotes: 3
Reputation: 13496
IF(len(@DefaultID) > 0)
SET @ISDefault = '1'
ELSE
SET @ISDefault = '0'
Upvotes: 0
Reputation: 79929
Use
IF @DefaultID IS NULL
Instead of IF @DefaultID =''
NULL
and ''
are two different things.
Upvotes: 16