Databázový procesor
Název školy | Vyšší odborná škola obalové techniky a Střední škola, Štětí, příspěvková organizace | ||
Adresa školky | Kostelní 134, 411 08 Štětí | ||
IČ | 46773509 | ||
Název operačního programu | OP Vzdělávání pro konkurenceschopnost | ||
Registrační číslo | CZ.1.07/1.5.00/34.1006 | ||
Označení vzdělávacího materiálu | |||
Název tématické oblasti (sady) | Programové vybavení | ||
Název materiálu | Tabulky | ||
Anotace | |||
Autor | Jazyk | ||
Očekávaný výstup | |||
Klíčová slova | |||
Druh výukového zdroje | Věková skupina žáků | ||
Typ interakce | Ročník | ||
Speciální vzdělávací potřeby | žádné | ||
Zhotoveno, (datum/období) | Celková velikost |
Obsah
Návrhové zobrazení
Jak tabulky, tak dotazy, formuláře a sestavy se začínají tvořit v tzv. návrhovém zobrazení. (Sami si vyzkoušejte, jak funguje průvodce)
Návrhové zobrazení tabulky
Nejproblematičtější na celé databázi je návrh toho, jak budou data uložená. Pokud se v návrhu objeví později chyba - když už databáze obsahuje tisíce záznamů, jsou vytvořené dotazy, formuláře a sestavy - může být velmi pracné, návrh změnit.
My začneme prozatím pouze tím, že navrhneme strukturu jediné tabulky, která zatím nebude mít žádné vazby do jiných tabulek. Tabulku tvoří její sloupce. Těmi je vymezeno, jaká data bude tabulka obsahovat. Jednotlivé řádky tabulky jsou už pak jen záznamy, které se přidávají dle potřeby.
Sloupce tabulky
Každý sloupec má svůj název a datový typ.
Název tabulky
Název tabulky se obyčejně píše malými písmeny anglické abecedy a bez mezer. Chcete-li použít mezeru, nahraďte ji podtržítkem "_" Databázový procesor vám ale umožní do názvu tabulky vložit ledacos. Až později zabřehnete do jazyka SQL, možná, že si vzpomenete na první větu tohoto odstavce.
Název tabulky je obyčejně psán v množném čísle. Tzn. chceme-li vytvořit tabulku pro ukládání kontaktů, pojmenujeme ji "kontakty".
Datové typy
Datové typy, tak jako v programování zefektivňují ukládání dat, ale také umožňuji počítači s nimi vhodně zacházet. Při návrhu databáze je třeba uvažovat ve velkém. Databáze bude patrně fungovat nějaký ten rok, a za tu dobu se může nastřádat hodně dat (třeba i milióny záznamů).
Např. v jednom ze sloupců tabulky budeme ukládat výšku člověka s přesností na centimetry. Jde tedy o číselný (celočíselný) datový typ. Jenomže my si můžeme vybrat mezi TINYINT, SMALLINT, INT a BIGINT. Každý z uvedených typů dokáže uložit různě velké číslo.
TINYINT 0 .. 255
SMALLINT -32768 .. 32767
INT -2147483648 .. 2147483647
BIGINT -263 .. 263-1
Který zvolit? S ohledem na efektivitu místa při ukládání dat ten nejmenší možný. Může to být TINYINT? Kolik měřil nejvyšší člověk na planetě zemi? Číslo 255 stačit nebude, takže druhý přípustný typ je SMALLINT.
Proč se babrat s datovými typy? Nu proto, že datový typ SMALLINT zabere 2B (ať jde o číslo 0 nebo 32000). Kdybychom použili INT nebo BIGINT, tak stejné číslo zabere 4B nebo dokonce 8B u BIGINT.
Kolik žije v ČR lidí? Deset miliónů? Vynásobíme-li deset miliónu krát 2B a převedeme na MB, vyjde nám číslo kolem 19 MB. U BIGINT by toto číslo bylo už 76 MB. A to bereme v potaz pouze jeden sloupec z jedné tabulky. Sloupců a tabulek může být desítky.
Další příklady datový typů:
typ | význam |
INTEGER | celá čísla |
DOUBLE | desetinná čísla |
VARCHAR | alfanumerické znaky |
MEMO | alfanumerické znaky (objemný text) |
DATETIME | datum a čas |
Příklad
Vytvořme tabulku "kontakty" pro ukládání několika informací o našich kontaktech.
Cheme ukládat data jako:
jméno
příjmení
telefon
e-mail
datum narození
město, ve kterém žije
Pro většinu sloupců zvolíme patrně typ CHAR, resp. VARCHAR. Sloupci s datem narození se pak hodí typ DATE.
Při uložení tabulky se zobrazí varovný dialog, kde jsme upozorněni na to, že naše tabulka postrádá jednoznačný index nebo primární klíč. Prozatím zvolme možnost vytvoření primárního klíče. Později se k němu vrátíme.