Bit se převede automaticky na \x00 nebo \x01

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
tttpapi
Člen | 100
+
0
-

Ahoj,

pokud si v databázi nastavím, abych měl datový typ jako BIT,
tak se mi v aplikaci převede na \x00 nebo \x01 a nefunguje mi pak jednoduché testování
if ($promenna) ... else ...

Nejde to porovnávat ani na 0 vs 1.

Jde někde této konverzi zabránit?

Díky.

Databáze MySQL
Nette 2.1.4
A používám Nette database.

Editoval tttpapi (11. 8. 2014 13:26)

matto
Člen | 55
+
0
-

na boolean pouzi tinyint a mas po probleme

tttpapi
Člen | 100
+
0
-

matto napsal(a):

na boolean pouzi tinyint a mas po probleme

To je pravda, ale problém to neřeší, pouze obchází.
A tinyint je větší než bit. (Mně tuto řešení samozřejmě stačí a i jsem si ho sám použil, ale chtěl bych vědět, jak se to dá dělat správně)

Jan Endel
Člen | 1016
+
+2
-

Správně se použije tinyint.

David Grudl
Nette Core | 8235
+
0
-

K žádné konverzi nedochází, BIT(1) je prostě \x00 nebo \x01, viz dokumentace MySQL.