Dátové typy sa používajú na vyjadrenie povahy údajov, ktoré môžu byť uložené v databázovej tabuľke. Napríklad v konkrétnom stĺpci tabuľky, ak chceme uložiť údaje typu reťazec, budeme musieť deklarovať typ údajov reťazca tohto stĺpca.
Dátové typy sú rozdelené do troch kategórií pre každú databázu.
- Reťazcové typy údajov
- Číselné typy údajov
- Dátum a čas Typy údajov
Typy údajov v databázach MySQL, SQL Server a Oracle
Typy údajov MySQL
Zoznam typov údajov používaných v databáze MySQL. Toto je založené na MySQL 8.0.
Typy údajov reťazca MySQL
CHAR(veľkosť) | Používa sa na určenie reťazca s pevnou dĺžkou, ktorý môže obsahovať čísla, písmená a špeciálne znaky. Jeho veľkosť môže byť 0 až 255 znakov. Predvolená hodnota je 1. |
VARCHAR(veľkosť) | Používa sa na určenie reťazca s premenlivou dĺžkou, ktorý môže obsahovať čísla, písmená a špeciálne znaky. Jeho veľkosť môže byť od 0 do 65535 znakov. |
BINARY (veľkosť) | Rovná sa CHAR(), ale ukladá binárne bajtové reťazce. Jeho parameter size určuje dĺžku stĺpca v bajtoch. Predvolená hodnota je 1. |
VARBINARY (veľkosť) | Rovná sa VARCHAR(), ale ukladá binárne bajtové reťazce. Jeho parameter size určuje maximálnu dĺžku stĺpca v bajtoch. |
TEXT (veľkosť) | Obsahuje reťazec, ktorý môže obsahovať maximálnu dĺžku 255 znakov. |
TINYTEXT | Obsahuje reťazec s maximálnou dĺžkou 255 znakov. |
MEDIUMTEXT | Drží strunu s maximálnou dĺžkou 16 777 215. |
LONGTEXT | Obsahuje reťazec s maximálnou dĺžkou 4 294 967 295 znakov. |
ENUM(hodnota1; hodnota2; hodnota3;...) | Používa sa, keď má reťazcový objekt iba jednu hodnotu zvolenú zo zoznamu možných hodnôt. Obsahuje 65535 hodnôt v zozname ENUM. Ak vložíte hodnotu, ktorá nie je v zozname, vloží sa prázdna hodnota. |
SET( hodnota1, hodnota2, hodnota3,....) | Používa sa na zadanie reťazca, ktorý môže mať 0 alebo viac hodnôt vybraných zo zoznamu možných hodnôt. V zozname SET môžete naraz zobraziť až 64 hodnôt. |
BLOB (veľkosť) | Používa sa pre BLOB (binárne veľké objekty). Pojme až 65 535 bajtov. |
Typy číselných údajov MySQL
BIT (veľkosť) | Používa sa pre typ bitovej hodnoty. Počet bitov na hodnotu je určený veľkosťou. Jeho veľkosť môže byť 1 až 64. Predvolená hodnota je 1. |
INT(veľkosť) | Používa sa pre celočíselné hodnoty. Jeho rozsah so znamienkom sa pohybuje od -2147483648 do 2147483647 a rozsah bez znamienka sa pohybuje od 0 do 4294967295. Parameter size určuje maximálnu šírku zobrazenia, ktorá je 255. |
INTEGER(veľkosť) | Rovná sa INT (veľkosť). |
FLOAT(veľkosť; d) | Používa sa na určenie čísla s pohyblivou rádovou čiarkou. Jeho parameter size udáva celkový počet číslic. Počet číslic za desatinnou čiarkou je určený pomocou d parameter. |
FLOAT(p) | Používa sa na určenie čísla s pohyblivou rádovou čiarkou. MySQL použil parameter p na určenie, či použiť FLOAT alebo DOUBLE. Ak je p medzi 0 až 24, typ údajov sa zmení na FLOAT (). Ak je p od 25 do 53, typ údajov sa zmení na DOUBLE(). |
DOUBLE (veľkosť; d) | Je to číslo normálnej veľkosti s pohyblivou rádovou čiarkou. Jeho parameter size udáva celkový počet číslic. Počet číslic za desatinnou čiarkou je určený parametrom d. |
DECIMAL(veľkosť, d) | Používa sa na určenie čísla pevného bodu. Jeho parameter size udáva celkový počet číslic. Počet číslic za desiatkovým parametrom je určený pomocou d parameter. Maximálna hodnota pre veľkosť je 65 a predvolená hodnota je 10. Maximálna hodnota pre d je 30 a predvolená hodnota je 0. |
DEC(veľkosť; d) | Rovná sa DECIMAL (veľkosť, d). |
BOOL | Používa sa na určenie boolovských hodnôt true a false. Nula sa považuje za nepravdivú a nenulové hodnoty sa považujú za pravdivé. |
Typy údajov dátumu a času MySQL
DÁTUM | Používa sa na určenie formátu dátumu RRRR-MM-DD. Jeho podporovaný rozsah je od '1000-01-01' do '9999-12-31'. |
DATETIME (fsp) | Používa sa na určenie kombinácie dátumu a času. Jeho formát je RRRR-MM-DD hh:mm:ss. Jeho podporovaný rozsah je od '1000-01-01 00:00:00' do 9999-12-31 23:59:59'. |
TIMESTAMP(fsp) | Používa sa na určenie časovej pečiatky. Jeho hodnota je uložená ako počet sekúnd od epochy Unixu ('1970-01-01 00:00:00' UTC). Jeho formát je RRRR-MM-DD hh:mm:ss. Jeho podporovaný rozsah je od '1970-01-01 00:00:01' UTC do '2038-01-09 03:14:07' UTC. |
TIME (fsp) | Používa sa na určenie formátu času. Jeho formát je hh:mm:ss. Jeho podporovaný rozsah je od '-838:59:59' do '838:59:59' |
ROK | Používa sa na určenie roku v štvorcifernom formáte. Povolené hodnoty v štvorcifernom formáte od 1901 do 2155 a 0000. |
Typy údajov servera SQL
Typ údajov reťazca SQL Server
char(n) | Ide o dátový typ reťazca znakov s pevnou šírkou. Jeho veľkosť môže byť až 8000 znakov. |
varchar(n) | Ide o dátový typ reťazca znakov s premenlivou šírkou. Jeho veľkosť môže byť až 8000 znakov. |
varchar(max) | Ide o dátové typy reťazca znakov s premenlivou šírkou. Jeho veľkosť môže byť až 1 073 741 824 znakov. |
text | Ide o dátový typ reťazca znakov s premenlivou šírkou. Jeho veľkosť môže byť až 2 GB textových dát. |
nchar | Ide o dátový typ reťazca Unicode s pevnou šírkou. Jeho veľkosť môže byť až 4000 znakov. |
nvarchar | Je to dátový typ reťazca Unicode s premenlivou šírkou. Jeho veľkosť môže byť až 4000 znakov. |
ntext | Je to dátový typ reťazca Unicode s premenlivou šírkou. Jeho veľkosť môže byť až 2 GB textových dát. |
binárne (n) | Je to dátový typ binárneho reťazca s pevnou šírkou. Jeho veľkosť môže byť až 8000 bajtov. |
varbinárne | Je to dátový typ Binary string s premennou šírkou. Jeho veľkosť môže byť až 8000 bajtov. |
obrázok | Je to tiež dátový typ binárneho reťazca s premennou šírkou. Jeho veľkosť môže byť až 2 GB. |
Číselné typy údajov servera SQL
trocha | Je to celé číslo, ktoré môže byť 0, 1 alebo null. |
tinyint | Umožňuje celé čísla od 0 do 255. |
Smallint | Umožňuje celé čísla medzi -32 768 a 32 767. |
Int | Umožňuje celé čísla medzi -2,147,483,648 a 2,147,483,647. |
bigint | Umožňuje celé čísla medzi -9,223,372,036,854,775,808 a 9,223,372,036,854,775,807. |
float(n) | Používa sa na špecifikáciu číselných údajov s pohyblivou presnosťou od -1,79E+308 do 1,79E+308. Parameter n označuje, či má pole obsahovať 4 alebo 8 bajtov. Predvolená hodnota n je 53. |
reálny | Ide o číselný údaj s pohyblivou presnosťou od -3,40E+38 do 3,40E+38. |
peniaze | Používa sa na špecifikáciu peňažných údajov od -922,337,233,685,477,5808 do 922,337,203,685,477,5807. |
Typ údajov dátumu a času servera SQL
Dátum Čas | Používa sa na určenie kombinácie dátumu a času. Podporuje rozsah od 1. januára 1753 do 31. decembra 9999 s presnosťou 3,33 milisekúnd. |
dátum a čas2 | Používa sa na určenie kombinácie dátumu a času. Podporuje rozsah od 1. januára 0001 do 31. decembra 9999 s presnosťou 100 nanosekúnd |
dátum | Používa sa len na uloženie dátumu. Podporuje rozsah od 1. januára 0001 do 31. decembra 9999 |
čas | Ukladá čas len s presnosťou 100 nanosekúnd |
časová značka | Ukladá jedinečné číslo, keď sa vytvorí alebo upraví nový riadok. Hodnota časovej pečiatky je založená na interných hodinách a nezodpovedá reálnemu času. Každá tabuľka môže obsahovať len premennú jednorazovej pečiatky. |
SQL Server Iné typy údajov
Sql_variant | Používa sa pre rôzne typy údajov okrem textu, časovej pečiatky a ntextu. Uchováva až 8000 bajtov dát. |
XML | Ukladá dáta vo formáte XML. Maximálne 2 GB. |
kurzor | Ukladá odkaz na kurzor používaný na operácie s databázou. |
tabuľky | Ukladá sadu výsledkov pre neskoršie spracovanie. |
jedinečný identifikátor | Ukladá GUID (globálne jedinečný identifikátor). |
Typy údajov Oracle
Dátové typy Oracle String
CHAR(veľkosť) | Používa sa na ukladanie znakových údajov v rámci preddefinovanej dĺžky. Môže byť uložená až do 2000 bajtov. |
NCHAR(veľkosť) | Používa sa na ukladanie údajov národných znakov v rámci preddefinovanej dĺžky. Môže byť uložená až do 2000 bajtov. |
VARCHAR2(veľkosť) | Používa sa na ukladanie údajov variabilného reťazca v rámci preddefinovanej dĺžky. Môže byť uložená až do veľkosti 4000 bajtov. |
VARCHAR(VEĽKOSŤ) | Je rovnaký ako VARCHAR2 (veľkosť). Môžete tiež použiť VARCHAR (veľkosť), ale odporúča sa použiť VARCHAR2 (veľkosť) |
NVARCHAR2 (veľkosť) | Používa sa na ukladanie údajov reťazca Unicode v rámci preddefinovanej dĺžky. Musíme zadať veľkosť dátového typu NVARCHAR2. Môže sa uložiť až do 4000 bajtov. |
Typy číselných údajov Oracle
NUMBER(p, s) | Obsahuje presnosť p a mierku s. Presnosť p sa môže pohybovať od 1 do 38 a mierka s sa môže pohybovať od -84 do 127. |
FLOAT(p) | Je to podtyp dátového typu NUMBER. Presnosť p sa môže pohybovať od 1 do 126. |
BINARY_FLOAT | Používa sa na binárnu presnosť (32-bit). Vyžaduje 5 bajtov vrátane bajtu dĺžky. |
BINARY_DOUBLE | Používa sa na dvojitú binárnu presnosť (64-bit). Vyžaduje 9 bajtov vrátane bajtu dĺžky. |
Oracle Date and Time Data Types
DÁTUM | Používa sa na uloženie platného formátu dátumu a času s pevnou dĺžkou. Jeho rozsah sa pohybuje od 1. januára 4712 pred Kristom do 31. decembra 9999 po Kr. |
ČASOVÁ ZNAČKA | Používa sa na uloženie platného dátumu vo formáte RRRR-MM-DD s časom hh:mm:ss. |
Typy údajov veľkých objektov Oracle (typy LOB)
BLOB | Používa sa na špecifikáciu neštruktúrovaných binárnych údajov. Jeho rozsah siaha až do 232-1 bajt alebo 4 GB. |
BFILE | Používa sa na ukladanie binárnych údajov do externého súboru. Jeho rozsah siaha až do 232-1 bajt alebo 4 GB. |
KLOB | Používa sa pre jednobajtové znakové údaje. Jeho rozsah siaha až do 232-1 bajt alebo 4 GB. |
NCLOB | Používa sa na špecifikovanie údajov jednobajtovej alebo viacbajtovej sady národných znakov (NCHAR) s pevnou dĺžkou. Jeho rozsah je do 232-1 bajt alebo 4 GB. |
RAW (veľkosť) | Používa sa na špecifikáciu nespracovaných binárnych údajov s premenlivou dĺžkou. Jeho rozsah je až 2000 bajtov na riadok. Musí byť uvedená jeho maximálna veľkosť. |
DLHÉ RAW | Používa sa na špecifikovanie nespracovaných binárnych údajov s premenlivou dĺžkou. Jeho rozsah do 231-1 bajt alebo 2 GB na riadok. |