<sub class="descriptionSection">08-10-2024 08:35:am // #Relationales-DBS // [[DBMS Begriffe]]</sub> ____ Ein Relationales DBS hat immer auch Entitäten. ## Was sind Entitäten Eine Entität kann sich eigentlich so vorgestellt werden wie einheitliche Daten (also Datensätze) die immer gleich sind und zusammen gespeichert werden können. Diese können dann mit anderen Entitäten relations haben. Quasi ist eine Entität ein Datatype: ```typescript type Human = { "name": string, "coffe": boolean, "tea": boolean } ``` Der einzige unterschied zu (vor allem Typescript types) ist das ein Mensch **immer diese drei eigenschaften haben muss** auch wenn in einem Feld nichts steht. ## Entitätsmengen Entitätsmengen beschreiben die summe aller entitäten von einem Typ. Also wenn wir das Beispiel von oben nehmen, können wir sagen das die zusammenfassung "Humans" wäre. Diese Entitätsmengen werden oft als Tabellen zusammen gefasst in relationalen Datenbanken. ## Entitätsbeziehungen Entitätsmengen können (müssen aber nicht) beziehungen haben zu anderen Entitätsmengen. Wenn wir das Beispiel oben erweitern um einen typ Adresse: ```typescript type Adress = { "streetName": string, "housenumber": number, "postalcode": number } ``` Dann könnte jetzt ein Mensch eine beziehung zu einer Addresse haben **muss er aber nicht**: ![[Pasted image 20241008084149.png]] ## Definieren von Tabellen ohne ein ER Diagramm (Mengenschreibweise) Man kann eine sehr vereinfachte version eines ER diagramms auch definieren in dem man nach diesem Schema aufschreibt, welche Tabellen und welche Columns, etc. man haben möchte: ```text TABELLENNAME:{[spalte1: integer, spalte2: andererWert, etc...]} TABELLENNAME2:{[spalte1: integer, etc.]} ``` ## Berechnen der maximal möglichen Datensätze Man kann die Maximal möglichen Datensätze feststellen in dem man die Formel: $ MengeR \subseteq * dom(A1) * dom(A2) * dom(A3) $ Beispiel: ```text demoData:{[id:byte, anzahl: byte]} ``` $ -> demo \subseteq byte*byte -> demo \subseteq dom(256)*dom(256) $ Darausfolgt das es $256*256$ Möglichkeiten an datensätzen für diese Tabelle gibt ### Domänen einer Tabelle Eine Tabelle kann mehrere "Domänenen" haben. Diese "Domänen" sind die Menge an unterschiedlichen Werten pro Spalte. Wenn man also eine Spalte vom Typ "Byte" hat, dann ist die Domäne "256", da maximal 256 verschiedene Werte möglich sind.