PDA

Pogčedajte punu verziju : Boolean vrednost u bazi


Dušan Dželebdžić
19. 07. 2008., 15:49
MySQL ima mali milion tipova podataka, ali među njima nema booleana. Kada sam počinjao kao mlad i zelen developer, problem sam rešio tako što sam napravio jedno enum polje sa vrednostima 'axa' i 'jok'. Fast forward osam godina kasnije, kao nešto matoriji i manje zelen developer, još uvek radim to isto samo što su sada vrednosti 'y' i 'n'.

O ovome razmišljam svaki put kad kreiram novu bazu. Obično uradim onako kako sam uradio na prošlom projektu i zaboravim na dilemu, ali me stalno kopka da li postoji neki bolji način.

Šta kažete?

Nenad Vasić
19. 07. 2008., 16:45
tinyint(1) polje koje može da ima vrednost 1 (true) ili 0 (false) ?

Nemanja Avramović
19. 07. 2008., 16:45
U phpMyAdminu kad staviš BOOL on ga promeni u TINYINT(1) i onda je 1 true a 0 false

edit: Preteče me Nenad

ivanhoe
19. 07. 2008., 18:38
zapravo mysql ima Boolean tip podatka:

BOOL, BOOLEAN

These types are synonyms for TINYINT(1). The synonym BOOLEAN was added in MySQL 4.1.0. A value of zero is considered false. Non-zero values are considered true:


i mozes da pises i TRUE I FALSE, ne mora samo 0 i 1 (odnosno to je potpuno isto), mada u rezultatima uvek dobijes 0 ili 1 (sto opet nije problem jer php ima slicnu logiku)