Doména (databáze)

Stabilní verze byla zkontrolována 20. ledna 2019 . Existují neověřené změny v šablonách nebo .

Doména  v relačním datovém modelu je datový typ , tedy sada platných hodnot [1] .

Koncept datového typu je základní; každá hodnota, každá proměnná, každý parametr, každý čtený příkaz a zejména každý relační atribut je toho či onoho typu [2] .

Příkladem mohou být typy „integer“ (množina všech celých čísel), „string“ (množina všech řetězců), „číslo dílu“ (množina všech čísel dílů) atd. Když tedy řekneme, že atribut má relaci [1] [2] .

Analogicky s matematikou se datové typy dělí na skalární a neskalární . Hodnota neskalárního typu (neskalární hodnota) má mnoho uživatelsky viditelných komponent, zatímco hodnota skalárního typu (skalární hodnota) nikoli. Příklady neskalárního typu jsou typ vztahu a typ n-tice ; příkladem skalárního typu je celočíselný typ [2] .

Omezení implementace databázových systémů na počítačích vyžadují určité konvence v definici typů. Teoreticky je tedy typ INTEGER množina všech možných celých čísel, ale ve skutečnosti je INTEGER množina všech celých čísel, která mohou být reprezentována v příslušném počítačovém systému (protože samozřejmě existují taková celá čísla, která přesahují možnost reprezentace v libovolném počítačovém systému) [2] .

Je třeba rozlišovat mezi typem jako takovým (logický koncept) a formátem pro fyzickou reprezentaci hodnot tohoto typu v konkrétním počítačovém systému; typy jsou na úrovni logického modelu a fyzická reprezentace hodnot je na úrovni implementace [2] . Například operace definované pro typ "řetězec" nedávají smysl pro typ "číslo", i když čísla v konkrétní implementaci jsou fyzicky reprezentována řetězci. Hodnoty data jsou často fyzicky reprezentovány skutečným číslem , ale většina operací, které mají smysl pro typ čísla, nedává smysl pro typ data.

Relační datový model nepředepisuje povinnou podporu žádných předdefinovaných typů, s výjimkou logického typu (BOOLEAN), bez kterého se při provádění operací nelze obejít [3] . Obvykle je systémem podporována určitá množina typů (takové typy se nazývají základní, vestavěné nebo systémové), další typy může uživatel konstruovat (definovat) dodatečně (takové typy se nazývají uživatelem  definované typy ) [2] .

Poznámky

  1. 1 2 C. J. Datum. O logických rozdílech mezi typy, hodnotami a proměnnými // Datum v databázi: Spisy 2000-2006, Apress, 2006, ISBN 978-1-59059-746-0
  2. 1 2 3 4 5 6 Datum K. J., 2005 .
  3. C. J. Datum. Proč potřebujeme typ BOOLEAN // Datum v databázi: Spisy 2000-2006, Apress, 2006, ISBN 978-1-59059-746-0

Literatura