c'est le bon comportement.
si vous définissez @item1
à une valeur l'expression ci-dessous sera vraie
IF (@item1 IS NOT NULL) OR (LEN(@item1) > 0)
Quoi qu'il en soit, dans SQL Server, il n'y a pas une telle fonction mais vous pouvez créer la vôtre :
CREATE FUNCTION dbo.IsNullOrEmpty(@x varchar(max)) returns bit as
BEGIN
IF @SomeVarcharParm IS NOT NULL AND LEN(@SomeVarcharParm) > 0
RETURN 0
ELSE
RETURN 1
END