/
Kartei Details
Karten | 62 |
---|---|
Sprache | Deutsch |
Kategorie | Informatik |
Stufe | Universität |
Erstellt / Aktualisiert | 02.02.2016 / 27.04.2024 |
Weblink |
https://card2brain.ch/box/datenbanken_3_semester
|
Einbinden |
<iframe src="https://card2brain.ch/box/datenbanken_3_semester/embed" width="780" height="150" scrolling="no" frameborder="0"></iframe>
|
Welche Aufgaben hat ein DBMS?
- Operationen: Eingabe neuer Daten, Ändern, Löschen und Suchen vorhandener Daten
- Datenunabhängigkeit: Anwendungsprogramme und Datenorganisation unabhängig voneinander (Änderung in der physischen Datenorganisation müssen ohne Änderung der Anwendungsprogramme möglich sein)
- Redundanzfreiheit
- Strukturierung (gezielte Suche nach Daten über bestimmte Suchkritierien, Sortierung nach Kategorien)
- Integrität / Konsistenzüberwachung (keine logischen Widersprüche)
- Koordination / Synchronisation paralleler Zugriffe
- Benutzersichten
- Rechteverwaltung und Zugriffskontrolle
- Datensicherung (und -wiederherstellung)
- Meta-Informationen
Was ist ein DBMS?
Ein Datenbankmanagementsystem umfasst die Gesamtheit an Programmen, die zum Aufbau, zur Nutzung und zur Verwaltung von Datenbanken notwendig ist. Es ermöglicht verschiedenen Benutzergruppen einen einfachen Zugang zu den gespeicherten Datenbeständen.
Woraus besteht ein Datenbanksystem DBS?
aus Datenbank(-en) und einem DBMS
Was ist eine Datenbank?
Sammlung von strukturierten, inhaltlich zusammengehörigen Daten
Erläutern Sie die Begriffe Datenelement, Datensatz und Datei.
Datenelement: kleinste logische Einheit, auf die zugegriffen wird (Zelle)
Datensatz: Gruppe von inhaltlich zusammengehörigigen Datenelementen, die verschiedene Eigenschaften desselben Phänomens beschreiben (Zeile)
Datei: Zusammenfassung logisch zusammenhängender, gleichartiger Datensätze
Welche 3 Ebenen enthält das ANSI/SPARC-Modell?
Externe Ebene:
- Benutzersicht auf Daten, z.B. Eingabemasken
- Anwender sieht nur in seinem externen Modell definierte Daten und Beziehungen
- Felder möglich, die im konzeptionellen Modell fehlen (z.B. berechnete Felder)
Konzeptionelle Ebene:
- Beschreibung, welche Daten in Datenbank gespeichert sind sowie deren Beziehungen
- Bezugspunkt für alle Anwendungen (anwendungsübergreifendes Datenmodell)
Interne Ebene
- physische Datenorganisation (wie und wo Daten gespeichert werden)
- wesentlicher Einfluss auf Systemleistung
Welche Vorteile bringt das ANSI/SPARC-Modell?
- Physische Datenunabhängigkeit: Änderungen an interner Darstellung ohne Berührung der konzeptionellen oder externen Ebene möglich
- Logische Datenunabhängigkeit: Änderungen an konzeptioneller Ebene ohne Berührung der Benutzersichten möglich
Beschreiben Sie die Phasen des Datenbankentwurfes.
1.) Anforderungsanalyse: Informationsbedarf
2.) Konzeptioneller Entwurf: Semantisches Modell, unabhängig von Eigenschaften des Ziel-Datenbanksystems, z.B. Entity-Relationship-Modell
3.) Logischer Entwurf: Modellierung unter Berücksichtigung der Anforderungen des Ziel-Datenbanksystems, z.B. Relationales Modell
4.) Physischer Entwurf: internes Datenmodell, datenbankinterne Aspekte, Überführung des logisches Modells in das DB-System
Erläutern Sie die Begriffe objektiver Informationsbedarf, subjektiver Informationsbedarf, Informationsangebot und Informationsnachfrage und gehen Sie auf die Zusammenhänge ein.
objektiver Informationsbedarf: Informationen, die zur Aufgabenerfüllung benötigt werden
subjektiver Informationsbedarf: Informationen, die dem Entscheidungsträger relevant erscheinen
Informationsnachfrage: subjektiver Bedarf wird (teilweise) artikuliert, Nachfrage kann Bedarf übersteigen
Informationsangebot: Gesamtheit der Infos, die Nachfrager zu einem bestimmten Zeitpunkt an einem bestimmten Ort zur Verfügung stehen
Schnittmenge aller vier Begriffe: Informationsstand
Objektiver Bedarf \ Informationsangebot: objektives Unterangebot
Informationsangebot \ Objektiver Bedarf: objektives Überangebot
Was wird unter subjektiven und objektiven Verfahren zur Informationsbedarfsanalyse verstanden?
Subjektiv: z.B. Fragebögen, Interviews, Wunschkataloge
Objektiv: Strategieanalyse, Prozessanalyse, Aufgabenanalyse
Was ist ein Modell?
- Abbildung eines Originals
- Verkürzung auf die relevant erscheinenden Eigenschaften des Originals: mehrere mögliche Modelle für das gleiche Original
- Zweckbezug
Erklären Sie den Begriff Entität.
- individuelles, identifizierbares Exemplar von Dingen der realen Welt
- beschrieben durch Eigenschaften
Bsp.: Kunde Meier (eine Zeile)
Erklären Sie den Begriff Entitätsmenge.
- Zusammenfassung von Entitäten mit gleichartigen Eigenschaften
Bsp.: alle Kunden
Erklären Sie den Begriff Attribut.
- Eigenschaft von alle Entitäten einer Entitätsmenge
- vorgegebener Wertebereich
Bsp.: Kundennummer, Name
Erklären Sie den Begriff Assoziation.
- relationship
- Zusammenfassung von gleichartigen Beziehungen zwischen Entitäten
- kann ebenfalls Attribute haben
- Bsp.: Kunde bestellt Bestellung
Wie werden Entitäten, Assoziationen, Attribute und Schlüssel im ER-Modell dargestellt?
Entität: Rechteck
Assoziation: Raute
Attribut: Ellipse
Schlüssel: Primärschlüssel durchgängig unterstrichen, Fremdschlüssel gestrichelt unterstrichen
Welche Kardinalitäten gibt es in der MC-Notation und wie sehen sie in der numerischen Notation aus?
1: (1,1) Beziehung zu genau einer Entität
C: (0,1) Beziehung zu keiner oder einer Entität
N: (1,n) Beziehung zu einer oder mehreren Entitäten
NC: (0,n) Beziehung zu keiner, einer oder mehreren Entitäten
Was ist eine Generalisierung?
- Assoziation, die eine Hierarchie beschreibt
- meistens eine ist-ein (is-a) Assoziation
- Attribute werden innerhalb der Hierarchie vererbt, weitere Attribute kommen hinzu
- übergeordnetes Element: Generalisierungstyp
- untergeordnete Elemente: Spezialisierungstypen
Was sind abhängige Entitätsmengen und wie werden sie dargestellt?
- Entität kann ohne Existenz einer anderen Entität nicht existieren
- Kennzeichnung durch doppelte Linien
- Beispiel: Gebäude und Räume - jedes Gebäude beinhaltet min. einen Raum und ohne ein Gebäude gibt es keine Räume
Was versteht man unter der Mächtigkeit und dem Grad einer Relation?
Mächtigkeit: Anzahl der Zeilen
Grad: Anzahl der Spalten
Welche Regeln/Grundsätze gibt es beim Relationalen Modell?
- Jede Zeile ist eindeutig
- Reihenfolge von Zeilen/Spalten ohne Bedeutung
- Bedeutung jeder Spalte durch Wertebereichsnamen gekennzeichnet
- Alle Einträge einer Spalte sind vom gleichen Typ
Welche Grundsätze gibt es für die Transformation von einem ER-Modell in Relationen?
- Vermeidung von redundanten Daten bei der Füllung der Tabellen
- Vermeidung von NULL-Werten
- möglichst minimale Anzahl an Tabellen (unter Berücksichtigung der ersten beiden Punkte)
Wie werden Entitäten und Beziehungen zwischen Entitäten transformiert?
- Entität: Tabelle
- Attribute: Spalten
- 1:1-Beziehung: Zusammenfassung der Attribute in einer Tabelle
- 1:n-Beziehung: 2 Tabellen, Primärschlüssel der übergeordneten Tabelle (Beziehung "1") ist als Fremdschlüssel in der anderen Tabelle
- m:n-Beziehung: 3 Tabellen, dritte Tabelle enthält Primärschlüssel der beiden anderen Tabellen und die Attribute der Assoziation
- C-Beziehungen: typisch ist Interpretation von C als NC und von NC als N
Welche beiden Modelle gibt es bei der Transformation von Generalisierungen/Spezialisierungen?
Partitionsmodell: Spezialisierungen und Generalisierung haben jeweils eigene Tabelle
- Vorteil: alle Entities in einer Tabelle abfragbar
- Nachteil: beim Anlegen neuer Entities stets mehrere Tabellen anzusprechen
Hausklassenmodell: nur Tabellen für die Spezialisierungen, diese enthalten jeweils auch Attribute des Generalisierungstyp
- Vorteil: bei neuer Entity nur eine Tabelle anzusprechen
- Nachteil: erschweren genereller Abfragen
Welche klassischen und speziellen Operationen können auf Tabellen ausgeführt werden?
klassisch: Vereinigung, Durchschnitt, Differenz
speziell: Selektion (Auswahl bestimmter Zeilen), Projektion (Auswahl bestimmter Spalten), kartesisches Produkt, Natural Join, Division
Was für Join-Operatoren gibt es und was bewirken sie?
(Theta-Join: kartesisches Produkt, auf Ergebnis wird dann Selektion ausgeführt)
Inner-Join (Equi-Join): Speziallfall des Theta-Joins, der nur "=" im Selektionsprädikat zulässt, mit Where können weitere Selektionskritieren angegeben werden
Cross-Join: kartesisches Produkt ohne Entfernung doppelter Datensätze
Natural-Join: kartesisches Produkt mit automatischer Entfernung doppelter Spalten, anschließende Selektion und Projektion
Outer-Joins: ermöglichen, Tupel in Ergebnis aufzunehmen, die im Natural-Join herausfallen, Varianten: full, left (alle Tupel aus der linken Relation, Spalten aus rechter Relation ggf. mit NULL aufgefüllt), right
Welche Gründe gibt es für die Normalisierung?
- verständlicheres Datenmodell für Anwender und Entwickler
- Vermeidung von Anomalien beim Einfügen, Löschen oder Ändern von Daten
- Eliminierung von Redundanzen
- robusteres Datenmodell gegenüber Änderungen oder Erweiterungen
Welche Nachteile kann die Normalisierung mit sich bringen?
- Verlust von Übersichtlichkeit beim Zerlegen des Modells in viele Einzelrelationen
- in Anwendung müssen Einzelrelationen erst wieder zusammengesetzt werden --> schlechtere Performance
Was ist ein Schlüsselkandidat?
Schlüssel mit minimaler Anzahl an Attributen
Definieren Sie funktionale Abhängigkeit und vollfunktionale Abhängigkeit.
X und Y sind Attribute oder Attributkombinationen
Y ist funktional abhängig von X, wenn Y aus X oder aus Teilen von X ermittelbar ist.
Y ist vollfunktional abhängig von X, wenn Y nur aus der gesamten Attributkombination X ermittelbar ist.
Im Falle eines einzelnen Attributs in X ist eine funktionale Abhängigkeit auch immer eine vollfunktionale Abhängigkeit.
Wann ist eine Relation in der ersten Normalform?
- nur atomare Werte (pro Zelle nur einen Wert)
- Bsp: Name: Müller, Rolle: Dozent, Technischer Support
1. NF:
Name: Müller, Rolle: Dozent
Name Müller, Rolle: Technischer Support
Wann ist eine Relation in der zweiten Normalform?
- wenn sie in der 1. NF ist
- jedes Nicht-Schlüssel-Attribut ist von jedem Schlüsselkandidaten vollfunktional abhängig
- dafür ggf. Zerlegung in mehrere Relationen
Wann ist eine Relation in der dritten Normalform?
- wenn sie in 2. NF ist
- keine funktionalen Abhängigkeiten zwischen Nicht-Schlüsselattributen, ggf. Aufteilung in mehrere Relationen
Welche Kategorien von SQL-Befehlen gibt es? Ordnen Sie ihnen die entsprechenden Schichten (extern, konzeptionell, intern) zu.
Externe Sicht
- DQL = Data Query Language (Select)
- DML = Data Manipulation Language (Insert, Update, Delete)
Konzeptionelle Ebene
- DDL = Data Definition Language (Create, Alter, Drop)
Interne Ebene
- DAL = Data Administration Language
Erklären Sie die Bedeutung folgender Operatoren: IN, UNION, INTERSECT und MINUS
IN: Wenn das Ergebnis einer Unterabfrage bereits als Ergebnismenge angegeben werden soll.
UNION: Vereinigung (oder), verbindet zwei Abfragen von vereinigungskonformen Tabellen
INTERSECT: Schnittmenge (und), verbindet zwei Abfragen von vereinigungskonformen Tabellen
MINUS: Differenz (ohne), verbindet zwei Abfragen von vereinigungskonformen Tabellen
Wie lautet die Auswertungsreihenfolge für ein SQL-Statement mit folgenden Operatoren?
SELECT * FROM table WHERE x = y GROUP BY x HAVING y < wert ORDER BY y
FROM --> WHERE --> GROUP BY --> HAVING --> ORDER BY --> SELECT
Wie wird ein Datensatz in eine Tabelle eingefügt, wenn man nicht für alle Attribute Werte hat?
INSERT INTO table (spalte1, spalte2, spalte5) VALUES (1, 'A', 2)
Wenn für alle Attribute Werte angegeben werden, kann die Auflistung der Spalten, die gefüllt werden sollen, entfallen.
Was sind Constraints?
- Bedingungen für konkrete Attributwerte, die bei jeder Manipulation überprüft werden
- möglich: Spalten- und Tabellen-Constraints
- Beispiele: Ausschließen von NULL-Werten, Wertebereichseinschränkung, Angabe von Default-Werten, Fremdschlüssel-Constraints
Wozu dienen Fremdschlüssel-Constraints und welche Angaben sind möglich?
- Definition von Reaktionen auf das Löschen oder Ändern von Datensätzen
- ON DELETE CASCADE: Löschvorgang in Primärtabelle --> Löschen der Datensätze in der referenzierenden Fremdschlüsseltabelle
- ON DELETE RESTRICT (Default): Löschvorgang in Primärtabelle nur möglich, wenn in Fremdschlüsseltabelle keine Referenz vorhanden ist
- ON DELETE SET NULL: Löschvorgang in Primärtabelle --> Setzen der Spalten der Datensätze in der referenzierenden Fremdschlüsseltabelle auf NULL
- ON DELETE SET DEFAULT
- entsprechend für UPDATE
Wofür dienen Sequences?
- automatisch generierte Zahlenabfolgen (in Oracle)
- zur auf- oder absteigenden Nummierung von Datensätzen
- mögliche Angaben: Increment by, Start with, Maxvalue / Nomaxvalue, Minvalue / Nominvalue, Cycle / Noncycle (ob nach Erreichen der Höchstgrenze neu begonnen werden soll)