Co to jest schemat bazy danych?
Schemat bazy danych to sposób opisania struktury i relacji informacji, które będą wykorzystywane i przechowywane w bazie danych. Niektóre schematy są napisane w języku, który może być interpretowany przez oprogramowanie do zarządzania bazami danych (DBMS), podczas gdy inne są całkowicie abstrakcyjnymi diagramami. Podstawowymi elementami schematu bazy danych są encje i tabele. Jednostka to model danych dla obiektu w bazie danych, a tabela to przechowywana sekwencja wartości lub innych jednostek. Podobnie jak plan, można użyć dobrze zaprojektowanego schematu, aby zobaczyć dokładnie, jak zbudowana jest architektura bazy danych.
Schematy bazy danych są czasami konieczne, aby wyraźnie pokazać, w jaki sposób dane są przechowywane i jak odnoszą się do reszty bazy danych. Podmiot jest reprezentacją zbioru danych. Jak każda struktura danych, może mieć wiele pól. Jednak jednostki mają zwykle unikalne pole identyfikacyjne. Nazywa się to kluczem podstawowym.
Klucz podstawowy to link do tabeli. Klucz musi być unikalny wśród wszystkich innych elementów w tabeli. Przykładem może być numer klienta dla bazy danych, która śledzi zakupy w sklepie. Każda jednostka może mieć tylko jeden klucz podstawowy.
Podmioty mogą mieć także dowolną liczbę kluczy obcych. Klucz obcy jest najczęściej kluczem podstawowym innego podmiotu w innej tabeli. W powyższym przykładzie kluczem obcym może być numer zamówienia dla tego klienta.
W relacyjnych bazach danych klucze podstawowe i obce są używane do wyrażenia bardzo ważnej koncepcji relacji jeden do wielu. W podanym przykładzie klient może mieć wiele różnych zamówień i numerów zamówień. Odwrotna sytuacja nie jest prawdą, ponieważ zamówienie może mieć tylko jednego klienta. Relacje jeden do wielu są jednym z powodów, dla których schemat bazy danych jest konieczny.
Inny rodzaj relacji nazywa się wiele do wielu. Jest to przypadek, w którym jednostka może mieć nie tylko wiele relacji z jednym typem, ale także może być zawarta w wielu typach według innego typu. Przykładem tego jest sposób, w jaki dowolna liczba klientów może zamówić ten sam produkt. W tym samym czasie klient może zamówić dowolną liczbę produktów. Ta relacja wiele do wielu jest powszechna, ale wymaga specjalnego modelowania danych do pracy w schemacie bazy danych.
Chociaż istnieją pewne standardowe konwencje, które są przestrzegane podczas tworzenia schematu bazy danych, istnieje również wiele sposobów reprezentacji modeli danych. Dokładnie sposób, w jaki każdy obiekt schematu jest reprezentowany w abstrakcyjnym projekcie, zależy od modelisty danych. W niektórych sytuacjach system DBMS będzie w stanie zaakceptować schemat bazy danych zapisany w określony sposób i automatycznie zaimplementować część projektu.