Créé le 17/06/2008 , dern. modif. le 03/01/2019
En SQL, il ne faut pas croire que NULL est une valeur (cette remarque n'est pas forcément valable en programmation, tout dépend du langage). C'est un
état, un
statut. Celui-ci est soit nul, soit non nul et toutes les variables avec une valeur ont un état non nul.
Ainsi, pour tester qu'une valeur est ou n'est pas à NULL, il ne faut pas faire :
SELECT maDonnee FROM maTable WHERE maDonnee<>NULL
Mais :
SELECT maDonnee FROM maTable WHERE maDonnee IS NOT NULL
Un point d'illogisme
En SQL, on écrit :
UPDATE maTable SET maDonnee=NULL
Au lieu de :
UPDATE maTable SET maDonnee IS NULL
Attention à la condition
La condition NULL=NULL est toujours false.
Du coup, même si les champs A et B sont à NULL, on ne peut pas écrire que A=B.
Quillevere.net