Ein bit
speichert nur die Zahlen 0
und 1
(oder null
).
Ein boolean
speichert nur true
und false
(oder null
). Eine Zahl (0, 1) ist nicht ein boolescher Wert. Ein boolescher Wert kann überall in einem booleschen Ausdruck verwendet werden wird erwartet. So können Sie z. tun Sie dies:
where is_active
Eine Bit-Spalte muss mit etwas verglichen werden:
where a_bit_column = 0
(das Ergebnis von a_bit_column = 0
ist ein boolescher Wert)
Im Gegensatz zu dem, was einige DBMS denken, ist der Ausdruck where 0
oder where 1
ist nicht gültiger boolescher Ausdruck.