Citat:
Prema tome mislim da je enum('0','1') pravo resenje za tvoj problem.
|
ovo unosi dodatnu zabunu - enum vrednost '0' dobija interni index 1, a vrednost '1' interni index 2, dakle moze da unese zabunu ako slucajno izostavis ' ' oko broja pa vrednost postane index
. kao sto si i sam napisao, 0 je rezervisana za nepostojecu vrednost:
Citat:
If you insert an invalid value into an ENUM (that is, a string not present in the list of allowed values), the empty string is inserted instead as a special error value. This string can be distinguished from a “normal” empty string by the fact that this string has the numerical value 0. More about this later.
|
dakle, po meni, ako ti treba nesto najpribliznije true/false polju, tinyint je po meni dosta dobro resenje. enum i tinyint zauzimaju svaki po 1 bajt. mada, mene je enum uvek privlacio zbog jedne stvari - odredjeni mysql db frontends dozvoljavaju editovanje vrednosti enum polja tako sto naprave select box pa mozes da izaberes neku od validnih vrednosti.