Interesting question, but when i execute bit modified this script, i receive other error:
declare
@decimal decimal(18,6),
@bit bit,
@float float,
@integer int,
@money money
select IsNull(@decimal, '')
select isnull(@bit, '')
select isnull(@integer, '')
select isnull(@money, '')
select isnull(@float, '')
So error was next:
Msg 257, Level 16, State 3, Line 11
Implicit conversion from data type varchar to money is not allowed. Use the CONVERT function to run this query.
I responded to this question as script will fail for SELECT IsNULL(@money, ''), but my answer is wrong 🙁