Tabulka (databáze)

V relačních databázích (RDB) – a zejména těch založených na SQL – je tabulka množinou datových prvků (buněk), která je uspořádána, definována a uložena jako vodorovné řádky a svislé sloupce, kde každá položka může být jednoznačně identifikována popiskem nebo klíčem nebo jeho polohou ve vztahu k jiným položkám.

Tabulka má určený počet polí, ale může mít libovolný počet záznamů. Řádky uložené v tabulce jsou strukturálně ekvivalentní záznamům z plochých souborů v tom, že nesmí obsahovat opakující se pole. Většina databázových tabulek se skládá ze záhlaví a hlavní datové tabulky. Hlavní datová tabulka obsahuje aktuální strukturovaná data, což znamená, že v průniku každého řádku a sloupce je uložena hodnota. Záhlaví se skládá ze sady omezení: jedna sada pro celou tabulku a (potenciálně) jedna sada pro každý sloupec.

V nerelativních / hierarchických systémech je ekvivalentem tabulky soubor, obsahující záznamy (řádky) a pole (sloupce).

Na rozdíl od tabulkového procesoru nemůže tabulka databáze přijímat libovolné informace v žádné buňce a ani hodnoty nemohou být reprezentovány jako vzorce odkazující na jiné buňky. Datový typ každého pole je v rámci DBMS striktně definován jako součást návrhu konkrétní databáze.

Pokud jde o relační model databází, tabulka může být považována za pohodlnou reprezentaci relace, ale obě nejsou zaměnitelné. Například SQL tabulka může potenciálně obsahovat duplicitní řádky, zatímco pravdivý vztah nemůže obsahovat duplicitní n-tice (ekvivalent řádků); podobně reprezentace jako tabulka znamená konkrétní uspořádání řádků a sloupců, zatímco relace je explicitně neuspořádaná.

Stejně platná reprezentace relace je jako n-dimenzionální graf, kde n je počet atributů (sloupců tabulky). Například relace se 2 atributy a 3 hodnotami může být reprezentována jako tabulka se 2 sloupci a 3 řádky, nebo jako 2-dimenzionální graf se 3 body. Je zřejmé, že reprezentace tabulky a grafu jsou rovnocenné pouze tehdy, pokud pořadí řádků není významné a tabulka nemá duplicitní řádky.