Adat típusok

Milyen típusú adatokat tud az AtomDMP kezelni.

2022.09.16 — Posted by Webb & Flow


Az AtomDMP különböző típusú adatokat tud kezelni azért, hogy azokon hatékonyan lehessen keresni.

Az adatmodellezés során fontos ezeket jól meghatározni, mert a különböző típusú adatokon különböző műveleteket végezhetünk.

Szintén fontos, hogy bizonyos értékek kizárólag bizonyos adattípussal tárolhatók, illetve fordítva, az egyes adattípusok csak bizonyos formátumú értékeket tudnak tárolni.

Minden adat típusnak van egy speciális NULL értéke, ez általában azt jelenti, hogy még nem ismert a pontos értéke. Bizonyos műveleteknél a NULL érték az adott adat típus üres értékeként van kezelve.

String

Bármilyen szöveges érték tárolására alkalmas. Lehet benne tárolni számokat és dátum illetve idő értékeket is, de ezeken kizárólag a string-eken alkalmazható műveletekeket tudjuk végrehajtani.

Integer

Egész számokat tud tárolni.

A beállítandó értéknek szám formátumúnak kell lennie, azaz csak 0-9 közötti karaktereket tartalmazhat, illetve - karaktert, ha negatív számról van szó.

Az érték nem tartalmazhat ezres elválasztó karaktereket.

Real

Tizedes számokat tud tárolni. A tizedes számok digitális tárolásának módszerei miatt előfordulhat, hogy nem pontosan az az érték lesz tárolva, ami meg lett adva, hanem egy ahhoz nagyon közeli (például 0.333333333 helyett 0.333333334).

A beállítandó értéknek szám formátumúnak kell lennie, azaz csak 0-9 közötti karaktereket tartalmazhat és . (pont) vagy , (vessző) karaktert a tizedespont helyén, illetve - karaktert, ha negatív számról van szó.

Az érték nem tartalmazhat ezres elválasztó karaktereket.

Email

Speciális string típusú adat, ami kizárólag helyes formátumú email címet fogad el.

Általános szabályok:

  • tartalmaz egy név részt
  • amit egy @ karakter követ
  • amit egy domain név követ
    • a domain név minimum egy . (pont) karaktert tartalmaz
    • az első . (pont) karakter előtt minimum egy alfanumerikus karakter található
    • az utolsó . (pont) karakter után minimum kettő alfanumerikus karakter található

Domain

Speciális string típusú adat, ami kizárólag helyes formátumú domain neveket fogad el.

Általános szabályok:

  • a domain név minimum egy . (pont) karaktert tartalmaz
  • az első . (pont) karakter előtt minimum egy alfanumerikus karakter található
  • az utolsó . (pont) karakter után minimum kettő alfanumerikus karakter található

Date

Speciális string típusú adat, ami dátum típusú érték tárolására alkalmas.

A dátum mezők formátuma: ÉÉÉÉ-HH-NN (PHP: Y-m-d), ahol

  • ÉÉÉÉ: az év (pl: 2000)
  • HH: a hónap (pl: 01)
    • 01-12 közötti érték
  • NN: a nap (pl: 02)
    • 01-31 közötti érték
    • a maximális értéket a hónap, illetve az esetleges szökőév határozza meg

A beállítandó érték több különböző formátumban is érkezhet:

  • ÉÉÉÉ-HH-NN (PHP: Y-m-d)
  • ÉÉÉÉHHNN (PHP: Ymd)
  • UNIX időbélyeg (PHP: U)
    • ebben az esetben az időbélyegnek kizárólag a dátum rész lesz felhasználva
    • az időbélyeg UTC időzónában van értelmezve

Time

Speciális string típusú adat, ami idő típusú érték tárolására alkalmas.

Az idő mezők formátuma: ÓÓ:PP:MM (PHP: H:i:s), ahol

  • ÓÓ: az óra 24 órás formátumban (pl: 01)
    • 00-23 közötti érték
  • PP: a perc (pl: 02)
    • 00-59 közötti érték
  • MM: a másodperc (pl: 03)
    • 00-59 közötti érték

A beállítandó értéknek ugyanebben a formátumban kell érkeznie, és egy valós időt kell megadnia (például a 24:61:62 egyik összetevője sem helyes, így az érték sem az).

DateTime (timestamp)

Pontos dátum és idő tárolására alkalmaz típus.

A datetime mezők formátuma a W3C által javasolt, időzónát tartalmazó formátum ( https://www.w3.org/TR/NOTE-datetime ), azaz: ÉÉÉÉ-HH-NNTÓÓ:PP:MMZ (PHP: Y-m-dTH:i:sP), ahol:

  • ÉÉÉÉ: az év (pl: 2000)
  • HH: a hónap (pl: 01)
    • 01-12 közötti érték
  • NN: a nap (pl: 02)
    • 01-31 közötti érték
    • a maximális értéket a hónap, illetve az esetleges szökőév határozza meg
  • ÓÓ: az óra 24 órás formátumban (pl: 01)
    • 00-23 közötti érték
  • PP: a perc (pl: 02)
    • 00-59 közötti érték
  • MM: a másodperc (pl: 03)
    • 00-59 közötti érték
  • Z: az időzóna eltérése az UTC zónához képest (pl: +02:00 a magyar nyári idők esetén)

TSV

Struktúrált adat tárolására alkalmas típus. Egy TSV formátumú táblázatos adatot lehet benne tárolni. A struktúrát előre meg kell adni az adatmodellben.

A struktúra jellemzői:

  • oszlopok nevei
  • oszlopok típusai

A TSV értékben az első sor mindig a fejléc, ami az oszlopneveket tartalmazza, ezután minden egyéb sor egy-egy bejegyzés a táblázatban. Az oszlopoknak nem kell abban a sorrendben szerepelnie, mint ahogy előre meg lett adva.

A TSV-ben az egyes mezőknek a következő típusai lehetnek:

  • string
  • integer