J'ai donc un tinyint
dans ma base de données où je stocke des valeurs de 0
a 2
.
D'après ce que j'ai compris, MySQL traite tout nombre non nul dans un fichier tinyint
comme vraie (dans ce cas 1
y 2
) et le 0
comme faux. Cependant, lorsque j'exécute une requête qui récupère certaines informations dans la table où se trouve l'élément tinyint
la rangée est true
, il ne fonctionne que pour les lignes qui ont 1
comme valeur. En d'autres termes, les lignes qui ont 2
en tant que valeur ne sont pas considérées comme true
par la requête (et le 0
est considéré comme false
). L'interrogation se présenterait sous la forme suivante :
SELECT data FROM table WHERE active=true
Où active
est de type tinyint
et les valeurs suivantes lui ont été attribuées précédemment 0
, 1
o 2
selon le cas.
Je suis assez novice en matière de MySQL, donc je ne sais pas s'il y a un détail qui m'échappe, mais je n'arrive pas à comprendre pourquoi les données demandées ne sont pas renvoyées pour les lignes dont la valeur est 2. Je vous invite à me faire part de vos remarques.