Karakterek és binárisok (byte-ok) tárolására alkalmas típusok:

Ezeknél a típusoknál érdemes odafigyelni a bennük tárolt adatok karakter kódolására. pl.: magyar szöveget szeretnénk tárolni egy Latin1-es kódolású mezőben, nagy esélyünk van az ékezeteink elvesztésére. ([CHARACTER SET charset_name] [COLLATE collation_name] )

BINARY

Bináris adatok tárolására szolgáló típus, hasonló mint CHAR típus. MySQL 4.1.2 változattól használható.

VARBINARY

Hasonlóságot mutat a VARCHAR típussal, de itt bináris adatot tartalmazhat. A MySQL 4.1.2. verziójától elérhető.

BLOB

A BLOB típusba 65.535 (2^16 – 1) bájt tárolását teszi lehetővé.

LONGBLOB

Maximális hosszúság 4,294,967,295 vagy 4GB (2^32 – 1) bájt. MySQL 3.23. nagyobb verzióban használható.

MEDIUMBLOB

16,777,215 (224 – 1) byte-ot tartalmazhat.

TINYBLOB

255 (2^8 – 1) bájt tárolására alkalmas típus.

ENUM

Felsorolás ENUM(‘value1′,’value2′,…). 65535 értéket tartalmazhat, de a felsorolásból csak 1 értéket vehet fel.

SET

A SET típus karakter halmaz takar, bármennyi értéket felvehet, egyszerre a felsorolt elemek közül csak 64 lehet. SET(‘value1′,’value2′,…)

CHAR(N)

0-255 karaktert tartalmazhat.

VARCHAR(M)

Változó hosszúságú karakter tárolására alkalmas típus. 0-65535 karakter

TINYTEXT

255 (2^8 – 1) karaktert tárolhatunk ezen a típuson.

TEXT

65,535 (2^16 – 1) karakter tárolására alkalmas típus.

MEDIUMTEXT

Szöveg tárolására alkalmaz típus. A maximális tárolható karakter 16,777,215 vagy 4GB ( 2^24 – 1).

LONGTEXT

Nagyméretű szöveg tárolására alkalmaz típus. A maximális tárolható karakter 4,294,967,295 ( 2^32 – 1)

Dátum- és idő típusok.

Dátum formátumoknál nekünk kell gondoskodni a megfelelő formátumról és a tartományok nagyságáról (év, hónapok, napok száma). Az SQL adatbázis csak részlegesen ellenőrzi ezeket az adatokat. Érdemes odafigyelnünk a megfelelő formátum kiválasztására is, mivel ezzel is erőforrást takaríthatunk meg. (a mai lemez áraknál?) A DATE típus 4 byte-on tárolódik míg a DATETIME 8 byte-on Fontos a dátum formátum helyes megválasztása nehogy kifussunk az időből :-) .

DATE

A date típusban elfogadott intervallum és formátum 1000-01-01 – 9999-12-31 (YYYY-MM-DD; ÉÉÉÉ-HH-NN).

DATETIME

Idő és dátum formátum egyben (Data + Time típusok összevonása) (ÉÉÉÉ-HH-NN ÓÓ-PP-MM; YYYY-MM-DD HH:MM:SS). Elfogadott intervallum 1000-01-01 00:00:00 – 9999-12-31 23:59:59-ig terjedhet.

TIMESTAMP

DATA és DATATIME formátumokkal nagy hasonlóságot mutat, a különbség a formátumban rejlik. Elfogadott intervallum ami ennél a résznél nagyon fontos: 1970-01-01 00:00:00 Epoc-tól 2037-ig. Formátumok YYYYMMDDHHMMSS, YYMMDDHHMMSS, YYYYMMDD, vagy YYMMDD, láthatjuk hogy a számokat elválasztó jelek hiányoznak (ÉÉÉÉHHNNÓÓPPMM, ÉÉHHNNÓÓPPMM, ÉÉÉÉHHNN, vagy ÉÉHHNN). Az egyik leghasznosabb dátum kezelő típus, viszont a 2037-es végső dátum miatt kicsit visszás érzéseket kelt benne.

TIME

Időpontot tárolhatunk a típusban (HH:MM:SS; ÓÓ:PP:MM) formátumban. Intervallum -838:59:59 – 838:59:59-ig terjedhet

YEAR(2|4)

Évet tárolhatunk benne 2 vagy 4 karakter hosszúságban (YY, YYYY; ÉÉ; ÉÉÉÉ). A karakter hosszúság függvényében tárolhatunk benne évet. 2 karakterben 1970 – 2069. 4 karakterben 1901 – 2155, és 0000 közötti vehet fel értéket.

Szám jellegű adattípusok, (Numerikus)

BIT

MySQL verzió > 4.1.0 Bitek tárolására alkalmas típus, szinonimája a TINYINT(1) típusnak

TINYINT

Nagyon kicsi egész szám (integer) típus tárolására alkalmas.
Előjel használata esetén -128 és 127 közé eső értéket vehet fel. Ha nem használunk előjelet akkor 0 és 255 közötti egész számot tartalmazhat. (TINYINT 1 – 0,1 TRUE | FALSE BOOLEAN)


BOOL, BOOLEAN

Logikai típus értéke Igaz (true=1) vagy hamis (false=0) érték lehet. MySQL 4.1.0 verziótól használható. Szinonimája a TINYINT (1) – nek.

SMALLINT

A small integer típusban előjel használatával -32768-tol 32767-ig, míg előjel nélkül 0 és 65535 közötti (egész szám) számértéket tartalmazhat.

MEDIUMINT

A medium-sized integer előjel használatával -8388608-tol 8388607-ig, míg előjel nélkül 0 és 16777215 közötti (egész szám) számértéket tartalmazhat.

INT, INTEGER

A normál méretű integer előjel használatával -2147483648-tol 2147483647-ig, míg előjel nélkül 0 és 4294967295 közötti (egész szám) számértéket tartalmazhat.

BIGINT

A nagyméretű integer előjel használatával -9223372036854775808-tol 9223372036854775807-ig, míg előjel nélkül 0 és 18446744073709551615 közötti (egész szám) számértéket tartalmazhat.

FLOAT (M,D)

Lebegőpontos (single-precision) szám elfogadott értékek -3.402823466E+38 -tól -1.175494351E-38-ig és 0, valamint 1.175494351E-38 – 3.402823466E+38-ig. Ábrázolási hosszúság (M) és a tizedes jegyek száma (D). (M,D megadása nem kötelező)

DOUBLE (M,D)

A (double-precision) lebegőpontos számtípus tulajdonságaiban hasonlít a FLOAT típusra csak az értékhatárok, a pontosság mértéke és az elfogadott intervallum változik. -1.7976931348623157E+308-tól -2.2250738585072014E-308, 0, és 2.2250738585072014E-308-tól 1.7976931348623157E+308-ig.

DECIMAL (M,D)

Karakterként tárolt lebegőpontos szám, tömörítetlen lebegőpontos szám (unpacked fixed-point). Az elfogadott legnagyobb értékeke azonosak a DOUBLE-nél olvashatóval. (M=ábrázolási hosszúság,D=tizedesjegyek száma) megadása kötelező.

Lebegőpontos számokkal való műveletnél figyelni kell arra, hogy a számítástechnika gyenge pontjára tévedtünk. Az adatbázisunk megtervezésénél érdemes tisztában lenni az adattípusokkal és a bennük tárolható értékekkel.

hasonló bejegyzés:

  1. JavaScript 4. – műveletek változókkal