Různé systémy správy databází definují schéma svým vlastním způsobem. To může vývojářům databází ztížit, aby přesně určili, co je schéma – zvláště při přepínání mezi různými DBMS.
Tento článek poskytuje definice používané třemi předními databázovými systémy.
MySQL
Dokumentace MySQL definuje schéma z koncepčního i fyzického hlediska.
Koncepční
Koncepčně je schéma množina vzájemně propojených databázových objektů, jako jsou tabulky, sloupce tabulek, datové typy sloupců, indexy, cizí klíče a tak dále. Tyto objekty jsou propojeny pomocí syntaxe SQL, protože sloupce tvoří tabulky, cizí klíče odkazují na tabulky a sloupce a tak dále. V ideálním případě jsou také logicky propojeny a spolupracují jako součást jednotné aplikace nebo flexibilního rámce. Například informační_schéma a schéma_výkonu databáze používají ve svých názvech „schéma“, aby zdůraznily úzké vztahy mezi tabulkami a sloupci, které obsahují.
Fyzické
Poté je zdůrazněno, že z fyzického hlediska neexistuje žádný rozdíl mezi schématy a databázemi:
V MySQL je fyzicky schéma je synonymem pro databázi . Můžete nahradit klíčové slovo
SCHEMA
místoDATABASE
v MySQL SQL syntaxi, například pomocíCREATE SCHEMA
místoCREATE DATABASE
.
Zdroj: „MySQL Glossary“. Referenční příručka MySQL 5.7. MySQL. Získáno 6. června 2016.
SQL Server
Glosář
Schéma databáze
Názvy tabulek, polí, datových typů a primárních a cizích klíčů databáze.
Zdroj: „Glosář“. Technická dokumentace SQL Server 2016. Microsoft Developer Network. Získáno 6. června 2016.
Technický článek SQL Server
Tento článek o schématech databázových objektů explicitně vykresluje rozdíl mezi uživatelem databáze a schématem (to je v rozporu s tím, jak Oracle definuje schémata – níže).
Schéma je samostatný jmenný prostor pro usnadnění oddělení, správy a vlastnictví databázových objektů.
a
Objekt vlastněný uživatelem databáze již není s tímto uživatelem svázán. Objekt nyní patří do schématu – kontejneru, který pojme mnoho databázových objektů.
a
Toto oddělení znamená, že objekty a schémata mohou být vytvořeny před přidáním uživatelů do databáze. To také znamená, že uživatel může být zrušen, aniž by bylo nutné konkrétně zahodit objekty vlastněné tímto uživatelem.
Zdroj: „Doporučené postupy pro SQL Server – Implementace schémat databázových objektů“. Článek Microsoft TechNet. Publikováno:listopad 2008. Staženo 6. června 2016.
Databáze Oracle
Systém schémat Oracle Database je zcela odlišný od ostatních systémů. Schéma Oracle je velmi svázáno s uživatelem databáze.
Schéma je sbírka logických struktur dat nebo objektů schématu. Schéma je vlastněno uživatelem databáze a má stejné jméno jako tento uživatel. Každý uživatel vlastní jedno schéma.
Oracle rozlišuje mezi objekty schématu a neschema objekty . Jinými slovy, některé databázové objekty nelze zahrnout do schématu.
Objekty schématu
V databázi Oracle objekty schématu zahrnují následující:
- Shluky
- Omezení
- Odkazy na databázi
- Spouštěče databáze
- Rozměry
- Externí knihovny procedur
- Tabulky uspořádané podle indexů
- Indexy
- Indexové typy
- Třídy Java, prostředky Java, zdroje Java
- Materializované pohledy
- Materializované protokoly zobrazení
- Modely těžby
- Tabulky objektů
- Typy objektů
- Zobrazení objektů
- Operátoři
- Balíčky
- Sekvence
- Uložené funkce, uložené procedury
- Synonyma
- Tabulky
- Zobrazení
Neschema objekty
V databázi Oracle jsou následující objekty neschema objekty :
- Kontexty
- Adresáře
- Vydání
- Body obnovení
- Role
- Vrácené segmenty
- Tabulkové prostory
- Uživatelé
Zdroj: „Objekty databáze“. Oracle Database Online Documentation 12c Release 1 (12.1). Centrum nápovědy Oracle. Získáno 6. června 2016.