[thelist] Other ways to check for null
Matt Warden
mwarden at gmail.com
Mon Nov 14 12:34:45 CST 2005
On 11/14/05, Mark Rees <mrees at itsagoodprice.com> wrote:
> > if not isnull(rs("num_bedrooms")) or trim(rs("num_bedrooms")) <> "" then
> > response.write("<b>Bedrooms:</b> " & rs("num_bedrooms") &
> > "<br><br>"
> > end if
> >
>
> The logic is wrong here.
>
> You're basically saying (pseudocode):
>
> if rs("num_bedrooms") is not null or "" then...
>
> It can't be both those things, so it's always going to evaluate as true i.e.
> if it's null, then it's not ""
Just to clarify what Mark is saying:
if not isnull(rs("num_bedrooms")) or trim(rs("num_bedrooms")) <> "" then
is logically equivalent to:
if not (isnull(rs("num_bedrooms")) and trim(rs("num_bedrooms")) = "") then
i.e.:
if (not A or not B) then <==> if not (A and B) then
in this case it makes no sense because A and B cannot be true at the
same time. So, you're essentially saying:
if (not false) then <==> if (true) then
It should be clear now why it is always evaluating as true.
Nice catch, Mark.
--
Matt Warden
Miami University
Oxford, OH, USA
http://mattwarden.com
This email proudly and graciously contributes to entropy.
More information about the thelist
mailing list