Disons que vous avez une application qui a un champ booléen dans sa User
table appelé Inactive
.
Y a-t-il quelque chose de fondamentalement mauvais à simplement stocker false comme nul? Si oui, pouvez-vous s'il vous plaît expliquer quel devrait être le côté négatif? J'ai discuté de cela avec quelqu'un il y a quelques mois et nous avons tous deux convenu que cela ne devrait pas avoir d'importance tant que vous le faites de manière cohérente dans l'application / la base de données. Récemment, quelqu'un que je connais a insisté sur le fait que "vrai" true
ou false
devrait être utilisé, mais ils n'ont pas vraiment expliqué pourquoi.
SELECT * FROM foo WHERE bar = FALSE
ne donne pas les résultats que vous attendez.
Null is a special marker used in Structured Query Language (SQL) to indicate that a data value does not exist in the database
c'est la sagesse acceptée et vous ne devriez pas redéfinir ce que signifie Null dans votre application. Ce sera déroutant pour tous les autres utilisateurs de votre code.