|
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 |
21. 01. 2006. | #1 |
član
Certified
Datum učlanjenja: 07.08.2005
Poruke: 67
Hvala: 15
0 "Hvala" u 0 poruka
|
MySql - char vs. other za što bolju optimizaciju tabela
Interesuje me koji je najbolji tip polja u tabli, koja će sadržati samo jedan karakter 0 ili 1, dali je char(2) dobro rešenje za toili ima bolje.
Treba mi što optimalnije rešenje za brzu pretragu velike baze podataka.
__________________
Online prodavnica rukotvorina |
21. 01. 2006. | #2 |
Direktor Kombinata
Invented the damn thing
Datum učlanjenja: 07.06.2005
Poruke: 2.669
Hvala: 44
119 "Hvala" u 64 poruka
|
__________________
activeCollab - Project Management and Collaboration Tool iz domaće kuhinje | area51.rs - Blog Poslednja izmena od Ilija Studen : 21. 01. 2006. u 11:49. |
21. 01. 2006. | #3 |
expert
Expert
|
a, mozda nesto pogresno kapiram, ali zasto ne ENUM?
__________________
|
21. 01. 2006. | #4 |
Direktor Kombinata
Invented the damn thing
Datum učlanjenja: 07.06.2005
Poruke: 2.669
Hvala: 44
119 "Hvala" u 64 poruka
|
ENUM je u suštini VARCHAR koji ima filter (tj. ne dozvoljava insertovanje nedefinisane vrednosti). Bolje je koristiti numeričke tipove i tipove fiksne širine gde je to moguće zbog performansi - manje prostora zauzimaju, indeksi su lakši itd.
__________________
activeCollab - Project Management and Collaboration Tool iz domaće kuhinje | area51.rs - Blog |
21. 01. 2006. | #5 | ||
Super Moderator
Invented the damn thing
Datum učlanjenja: 06.06.2005
Poruke: 2.371
Hvala: 370
701 "Hvala" u 194 poruka
|
Citat:
Citat:
|
||
21. 01. 2006. | #6 |
Nikola Denić
Sir Write-a-Lot
|
Ovo je bio lep odgovor za Iliju
__________________
Do not ask yourself what the world needs. Ask yourself what makes you come alive, and then go do that. Because what the world needs is people who have come alive |
22. 01. 2006. | #7 |
Ivan Dilber
Sir Write-a-Lot
|
prvo, kao sto Dinke rece, enum se pamti kao broj, koji se onda mapira u zadati skup vrednosti (slicno je recimo u pascalu), TAKO DA JE VRLO EFIKASAN, plus ima prednost nad tynyint i ostalima, sto ne mozes da upises bilo sta u njega...
postoji doduse u mysql i BOOLEAN tip, ali je on za sada obican tinyint, pa mozes bez problema da upises recimo 15 ili 23 u njega, sto je malo glupo...ali najavljeno je da ce se uskoro implementirati pravi bool, sto bi znacilo da prihvata samo 0/1, true/false, yes/no i sl... prednost ovog tipa je sto je on logicniji izbor od enum (kad neko pogleda bazu bice mu odmah jasno cemu sluzi polje) i sto ce u buducnosti moci da se lako prebaci da bude pravi bulijan, ili ako se menja baza, isto tako... drugo, rad sa poljima fixnih duzina je brzi samo ako su svi podaci u tabeli fixne duzine, jer je onda seek na neki n-ti record mnogo brzi, moze da se izracuna potreban offset u fajlu unapred kao n x velicina rekorda...cim imas jedno varijabilno polje u tabeli, ta prica pada u vodu... takodje ako su ostali podaci fixne duzine, mysql ce automatski da promeni svaki VARCHAR kraci od 3 u CHAR, tako da IMHO na kraju krajeva je prilicno svejedno jel ces da stavis varchar(1) ili tinyint ili enum...svi ce ti zauzeti po jedan byte, i svima ce pretraga po indexu da radi binarno i vrlo brzo...
__________________
Leadership is the art of getting people to want to do what you know must be done. |
22. 01. 2006. | #8 | ||
Boris
Grand Master
Datum učlanjenja: 01.12.2005
Lokacija: Novi Sad
Poruke: 775
Hvala: 5
156 "Hvala" u 2 poruka
|
Citat:
Citat:
__________________
"It’s important to have goals when you pet. Otherwise you’re just rubbing another mammal for no reason." - Scott Adams |
||
22. 01. 2006. | #9 |
Direktor Kombinata
Invented the damn thing
Datum učlanjenja: 07.06.2005
Poruke: 2.669
Hvala: 44
119 "Hvala" u 64 poruka
|
Hm, moja greška Negde sam pročitao da je ENUM u suštini VARCHAR. Kad i gde ne znam, ali je bilo dosta davno.
__________________
activeCollab - Project Management and Collaboration Tool iz domaće kuhinje | area51.rs - Blog Poslednja izmena od Ilija Studen : 22. 01. 2006. u 10:34. |
22. 01. 2006. | #10 | |
Super Moderator
Invented the damn thing
Datum učlanjenja: 06.06.2005
Poruke: 2.371
Hvala: 370
701 "Hvala" u 194 poruka
|
Citat:
|
|
|
|
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. 00:37 |
tabela-problem | mirko | Sva početnička pitanja | 6 | 03. 12. 2007. 12:47 |
MySQL: Više tabela, više baza ili? | Ilija Studen | SQL baze podataka - Sponzor: Baze-Podataka.net | 22 | 22. 10. 2007. 23:24 |
MySQL bezbednost i zastita tabela i baze | pele | Sva početnička pitanja | 5 | 01. 07. 2007. 21:46 |
Escape char iz mysql komandne linije. | Dragi Tata | SQL baze podataka - Sponzor: Baze-Podataka.net | 11 | 05. 08. 2006. 15:35 |