Dátové typy a modifikátory
Dátové typy
Dáta obsiahuté v jednotlivých stĺpcoch tabuľky môžu byť rôzneho typu. K dispozícii sú jednotlivé typy pre celé a reálne čísla, pre textové reťazce, pre čas a dátum atď. Najpoužívanejšie typy sú:
| Dátový typ | Popis |
|---|---|
bigint |
celé číslo v rozsahu od -9 223 372 036 854 775 808 do 9 223 372 036 854 775 807 prípadne bez znamienka od 0 do 18 446 744 073 709 550 615 |
int |
celé číslo v rozsahu od -2 147 483 648 do 2 147 483 647 prípadne bez znamienka od 0 do 4 294 967 295 |
mediumint |
celé číslo v rozsahu od -8 388 608 do 8 388 607 prípadne bez znamienka od 0 do 16 777 215 |
smallint |
celé číslo v rozsahu od -32 768 do 32 767 prípadne bez znamienka od 0 do 65 535 |
tinyint |
celé číslo v rozsahu od -128 do 127 prípadne bez znamienka od 0 do 255 |
float |
číslo s pohyblivou rádovou čiarkou |
double(p,d) |
desatinné číslo s p platnými číslicami |
decimal(p,d) |
desatinné číslo s p platnými číslicami a s d desatinnými miestami |
char(n) |
textový reťazec - pole pevnej dĺžky (max. 255 znakov) |
varchar(n) |
textový reťazec - pole premenlivej dĺžky (max. 255 znakov) |
textblob |
pole premenlivej dĺžky pre ukladanie objemných binárnych dát (napr. grafiky, zvuku alebo dlhých textov), max. veľkosť je 65 535 |
money |
peňažná čiastka |
datetime |
údaj o čase a dátume vo formáte RRRR-MM-DD HH:MM:SS |
time |
údaj o čase vo formáte HH:MM:SS |
date |
údaj o dátume vo formáte RRRR-MM-DD |
Ďalšie dátové typy
Existujú aj ďalšie dátové typy:
Dátový typ ENUM
Dátový typ ENUM umožňuje pri definícii poľa definovať nejaký zoznam hodnôt s tým, že niektorá z hodnôt bude vybraná. Zoznam hodnôt predstavuje pole reťazcov.
Funkčne by sme mohli prirovnať typ ENUM k radio button, viz. obrázok.

Dátový typ SET
SET umožňuje vybrať žiadnu alebo viac možností zo zoznamu naraz. SET by sme mohli prirovnať ku výberu možností pomocou checkboxov. Dátový typ SET môže ponúkať k "označeniu" až 64 hodnôt.
Hodnota NULL
NULL nie je samostatný dátový typ a preto do tejto stránky presne povedané nepatrí, ale vyššie bola o nej zmienka, preto si o nej niečo povieme. NULL je zvlášna hodnota reprezentujúca stav "nezadané" alebo "neznáme". To či stĺpec smie alebo nesmie obsahovať hodnoty NULL sa dá definovať pri jeho vzniku. Hodnota NULL je dosť zvláštna. Napríklad výsledkom 1 + NULL nebude jedna ako by sme si mohli myslieť. Výraz by mal byť chápaný ako jedna plus neznáma hodnota a vyhodnotené ako neznáma hodnota. Podobne je na tom aj rovnosť NULL = NULL. Jedna hodnota NULL sa nikdy nerovná inej hodnote NULL, pretože sa jedná o dve neznáme hodnoty.
Modifikátory dátových polí
Sú to kľúčové slová, ktoré upravujú chovanie jednotlivých polí tabuľky.
| Názov modifikátoru | Popis | Použitie pri type poľa |
|---|---|---|
AUTO_INCREMENT |
Automatické vloženie jedinečného čísla zvýšeného o jednotku pri pridaní nového záznamu do tabuľky. | všetky typy int |
BINARY |
Umožňuje ukladanie textov ako binárnych reťazcov. Rozlišuje sa veľkosť písmen. | char, varchar |
DEFAULT |
Umožňuje zmeniť implicitnú hodnotu poľa. Východzia hodnota používaná v MySQL je NULL. |
všetky typy okrem text a blob |
NOT NULL |
Určuje, že pole musí obsahovať hodnotu. | všetky typy |
NULL |
Určuje, že pole môže obsahovať prázdnu hodnotu NULL. |
všetky typy |
PRIMARY KEY |
Pole, ktorého hodnota jedinečným spôsobom identifikuje každý záznam tabuľky. Nedovoľuje hodnotu NULL a musí mať jedinečný index. |
všetky typy |
UNIQUE |
Zaisťuje integritu entity kľúčom, ktorý nie je primárny. Nesmie obsahovať duplicitné hodnoty. | všetky typy |
UNSIGNED |
Definuje pole, do ktorého je možné ukladať len kladné čísla. Automaticky posunie interval povolených hodnôt pre daný typ do kladnej časovej osy. | číselné typy |
ZEROFILL |
Používa sa k zobrazeniu vedúcich núl pri číslach, ktoré vyžadujú určitý počet čísel. | číselné typy |

