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. |