Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Typ Enum Kontra Tinyint
Forum PHP.pl > Forum > Bazy danych > MySQL
chfast
Witam.
Chciałem zapytać ile pamięci zajmuje typ ENUM. Nigdzie nie moge tego znaleźć, a przez to nie wiem czy aby wstawić do bazy typ boolean lepiej używać ENUM czy 1-bajtowego typu TINYINT.
orson
witam ...

TINYINT ma 1 bajt ... nie ma mniejszej wartosci ... wiec jezeli zalezy ci na wielkosci to wlasnie to ... ENUM przechowuje wszystkie mozliwe do wyboru elementy w naglowku tabeli [mniej wiecej] w wierszach przechowywane sa tylko indexy kolejnych elementow z listy ... jako SMALLINT [65.xxx mozliwych indexow] ... wiec jezeli chodzi o miejsce to tinyint a jezeli chodzi o wygode to ENUM [mozna miec wiecje wartosci i wyglada to ladniej moim zdaniem] ... wiecej:
http://dev.mysql.com/doc/mysql/en/Numeric_types.html
http://dev.mysql.com/doc/mysql/en/ENUM.html

pozdrawiam
chfast
Cytat(orson @ 2004-09-06 14:08:25)
wiec jezeli chodzi o miejsce to tinyint a jezeli chodzi o wygode to ENUM [mozna miec wiecje wartosci i wyglada to ladniej moim zdaniem]

Może i ładniej ale baza nie jest do oglądania. Dzięki za pomoc.
spenalzo
ENUM ma taką zalete, że nawet jak sprobujesz wepchnąć tam inna wartość niż ustalone, to przyjmie wartość domyślną.
orson
Cytat(chfast @ 2004-09-06 20:29:31)
Może i ładniej ale baza nie jest do oglądania. Dzięki za pomoc.

witam ...

jak to nie do ogladania questionmark.gif w twoim przypadku robisz ENUM('true','false') i masz albo true albo false .... jak zrobisz TINYINT to masz 0 albo 1 ... wiec enum napewno wyglada lepiej przy "ogladaniu" bazy

pozdrawiam
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.