|
SQL baze podataka - Sponzor: Baze-Podataka.net MySQL, MSSQL, Oracle, Access, ODBC. Ako imate problem brže i preciznije ćete dobiti odgovor ako priložite strukturu tabela ili skript koji kreira tabele i puni ih test podacima umesto što to problem opisujete samo rečima. Sponzor: Baze-Podataka.net - Blog o bazama podataka |
|
Alati teme | Način prikaza |
22. 01. 2006. | #11 |
Direktor Kombinata
Invented the damn thing
Datum učlanjenja: 07.06.2005
Poruke: 2.669
Hvala: 44
119 "Hvala" u 64 poruka
|
Ako u bazi koristiš Yes i No za bool onda u aplikaciji treba da imaš funkciju koja će ih prebacivati u odgovarajuću bool vrednost. Ne možeš da koristiš čak ni broj povezan sa vrednošću jer se oni povezuju od 1 pa naviše -> sirova vrednost će uvek vraćati true u uslovima.
Ne vidim nikakvu poentu u uvođenju nove komplikacije da bi se dobilo na čitljivosti sirovih podataka. ENUM('0', '1') => OK, ENUM('Yes', 'No') => not OK po mom mišljenju. PS: Dodavanjem nekog apstrakcionog sloja sva ova priča manje više pada u vodu jer se sam sloj brine o tipovima. Propel za skladištenje bool vrednosti koristi INT polje, ActiveRecord mapira TINYINT(1) sa bool tipom itd. Zbog ovoga i volim Propel i slične biblioteke: ako ti nisu potrebne max performanse možeš da prestaneš da se brineš o tome na koji način se sirovi podaci skladište. Bitno je da aplikacija dobije ono što si ti definisao...
__________________
activeCollab - Project Management and Collaboration Tool iz domaće kuhinje | area51.rs - Blog Poslednja izmena od Ilija Studen : 22. 01. 2006. u 13:21. |
22. 01. 2006. | #12 |
član
Certified
Datum učlanjenja: 07.08.2005
Poruke: 67
Hvala: 15
0 "Hvala" u 0 poruka
|
Ustvari, u mom slucaju postoje samo dve moguce vrednosti 0-false 1-true
a ovde sam procitao par stvari vezano za enum i tinyint http://groups.google.com/group/mailing.database.myodbc/...555d34c932c34728
__________________
Online prodavnica rukotvorina Poslednja izmena od adelante : 22. 01. 2006. u 13:27. |
22. 01. 2006. | #13 | |
Super Moderator
Invented the damn thing
Datum učlanjenja: 06.06.2005
Poruke: 2.371
Hvala: 370
701 "Hvala" u 194 poruka
|
Citat:
Evi ti primeri: gender enum('M','F'); domain_available('yes','no'); default_skin('blue','green','silver') ... Naravno, moze to i sa tinyint, stavis 0 muskarcima, 1 zenama (ili obrnuto) ali tako ne treba raditi. Ende. Uz sve to, prilikom outputa u nekom frontend-u dovoljno je odraditi recimo: PHP kôd:
PHP kôd:
|
|
22. 01. 2006. | #14 |
Direktor Kombinata
Invented the damn thing
Datum učlanjenja: 07.06.2005
Poruke: 2.669
Hvala: 44
119 "Hvala" u 64 poruka
|
Slažem se, ali ti primeri su znatno ređi u odnosu na klasični "flagove" (is_logged_on, is_empty, is_draft, is_active...) U suštini, to je moj problem: kad neko kaže bool ja mislim na flag, ne na meta podataka (kao pol sto si ti naveo).
Nemam ništa protiv ENUM kolona (tj. imao sam ranije, ali zato što nisam znao kako se stvarno vrednosti čuvaju u bazi). Čak nasuprot, njihovom upotrebom se rešava mnogo problema.
__________________
activeCollab - Project Management and Collaboration Tool iz domaće kuhinje | area51.rs - Blog Poslednja izmena od Ilija Studen : 22. 01. 2006. u 14:29. |
|
|
Slične teme | ||||
Tema | Početna poruka teme | Forum | Odgovori | Poslednja poruka |
Saveti oko MySQL tabela i ovaj put u letu :) narvno | martinluter | Sva početnička pitanja | 2 | 05. 06. 2009. 01:37 |
tabela-problem | mirko | Sva početnička pitanja | 6 | 03. 12. 2007. 13:47 |
MySQL: Više tabela, više baza ili? | Ilija Studen | SQL baze podataka - Sponzor: Baze-Podataka.net | 22 | 23. 10. 2007. 00:24 |
MySQL bezbednost i zastita tabela i baze | pele | Sva početnička pitanja | 5 | 01. 07. 2007. 22:46 |
Escape char iz mysql komandne linije. | Dragi Tata | SQL baze podataka - Sponzor: Baze-Podataka.net | 11 | 05. 08. 2006. 16:35 |