Oberfläche SQL. Menü SQL. Formular. Kapitel 1: Datenbank- Administrator (DBA) Anwendungs- Programmierer. Datenbank- Verwaltungssystem (DBMS)

Ähnliche Dokumente
Wiederholung VU Datenmodellierung

Relationale Datenbanken

Inhaltsverzeichnis. Vorwort Kapitel 1 Einleitung... 15

Auf einen Blick. Abfrage und Bearbeitung. Erstellen einer Datenbank. Komplexe Abfragen. Vorwort... 13

Inhaltsverzeichnis. Vorwort 13. Kapitel 1 Einleitung 15

Auf einen Blick. Abfrage und Bearbeitung. Erstellen einer Datenbank. Komplexe Abfragen. Vorwort 13

Daten-Definitionssprache (DDL) Bisher: Realwelt -> ERM -> Relationen-Modell -> normalisiertes Relationen-Modell. Jetzt: -> Formulierung in DDL

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER

Datenbanken. Zusammenfassung. Datenbanksysteme

Matthias Schubert. Datenbanken. Theorie, Entwurf und Programmierung relationaler Datenbanken. 2., überarbeitete Auflage. Teubner

d.h. zu Definitions-Stelle eindeutiger Funktionswert x X! y Y : (x,y) f umgekehrt: (x 1,y), (x 2,y) f ist o.k. X Y f(x) = y

Inhaltsverzeichnis Vorwort zur vierten Auflage Vorwort zur dritten Auflage Vorwort zur zweiten Auflage Vorwort zur ersten Auflage Hinweise zur CD

Die Anweisung create table

ISU 1. Ue_08/02_Datenbanken/SQL. 08 Datenbanken. Übung. SQL Einführung. Eckbert Jankowski.

Wirtschaftsinformatik 7a: Datenbanken. Hochschule für Wirtschaft und Recht SS 16 Dozent: R. Witte

Einführung in SQL. Sprachumfang: Indizes. Datensätzen. Zugriffsrechten

Nachtrag: Farben. Farbblindheit. (Light und Bartlein 2004)

Marcus Throll, Oliver Bartosch. Einstieg in SQL. Verstehen, einsetzen, nachschlagen. Galileo Press

Datenbanken. Seminararbeit. Einführung in das wissenschaftliche Arbeiten

Datenbanken Grundlagen und Design

Datenbanken SQL. Insert, Update, Delete, Drop. Krebs

Finalklausur zur Vorlesung Datenbanksysteme I Wintersemester 2003/2004 Prüfer: Prof. R. Bayer, Ph.D. Datum: Zeit: 16.

Relationales Datenbanksystem Oracle

Handout zur Unit Datenmodellierung Web-Technologien Datenmodellierung Prof. Dr. rer. nat. Nane Kratzke

Aufgabe 1: Integrität

Webbasierte Informationssysteme

Dipl.-Hdl., Dipl.-Kfm. ACCESS 2007

SQL structured query language

Bibliografische Informationen digitalisiert durch

Visualisierung in Informatik und Naturwissenschaften

SQL. Ziele. Grundlagen von SQL. Beziehung zur relationalen Algebra SELECT, FROM, WHERE. Joins ORDER BY. Aggregatfunktionen. dbis.

3 Query Language (QL) Einfachste Abfrage Ordnen Gruppieren... 7

Einleitung 19. Teil I Einführung in Datenbanksysteme 25. Kapitel 1 Wozu Datenbanksysteme da sind 27

Datenbanken Entity-Relationship-Modell und Datenbankentwurf 1. Andreas Heß Hochschule Furtwangen

Übung 01 Tabellen erstellen

Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin

Arbeiten mit ACCESS 2010

ACCESS SQL ACCESS SQL

Tabellen verknüpfen: Joins

Inhaltsverzeichnis. Lothar Piepmeyer. Grundkurs Datenbanksysteme. Von den Konzepten bis zur Anwendungsentwicklung ISBN:

Datenbank und Tabelle mit SQL erstellen

Microsoft Access 2010 SQL nutzen

Einführung in die Informatik II

SQL. SQL: Structured Query Language. Früherer Name: SEQUEL. Standardisierte Anfragesprache für relationale DBMS: SQL-89, SQL-92, SQL-99

Grundlagen zu Datenbanken zu Beginn der Jgst. 13

Kapitel 1: Wiederholungsfragen Grundlagen DBS

Datenbanken Unit 4: Das Relationale Modell & Datenintegrität

Es geht also im die SQL Data Manipulation Language.

ER-Modell, Normalisierung

Kapitel 3: Datenbanksysteme

Arbeiten mit ACCESS 2013

Labor 3 - Datenbank mit MySQL

Inhaltsverzeichnis. Inhalt. 1 Einführung in die Datenbanktechnologie

Daniel Warner SQL. Das Praxisbuch. Mit 119 Abbildungen. Franzis

Datenbanksysteme Kapitel 5: SQL Data Manipulation Language

Seminar 2. SQL - DML(Data Manipulation Language) und. DDL(Data Definition Language) Befehle.

Garten - Daten Bank. - survival pack -

Relationale Datenbanken in der Praxis

Mengenvergleiche: Alle Konten außer das, mit dem größten Saldo.

Abfragen (Queries, Subqueries)

Oracle 10g Einführung

SQL Tutorial. SQL - Tutorial SS 06. Hubert Baumgartner. INSO - Industrial Software

Relationale Datenbanken - Theorie und Praxis

OM Datenbanken. OM Datenbanken. 8.1 Was ist ein Datenbanksystem? Motivation

Microsoft Access Abfragen. Verknüpfung von Tabellen

Vorwort zur 5. Auflage Über den Autor... 16

Übung Datenbanken in der Praxis. Datenmodifikation mit SQL

SQL: statische Integrität

3. Grundlagen relationaler Datenbanksysteme

2.5 Relationale Algebra

Es geht also um die sogenannte SQL- Data Definition Language.

Dieter Staas Das Einsteigerseminar SQL

Abstraktionsschichten. Das Relationale Datenmodell

Kapitel 2: Das Relationale Modell

Datenbanksysteme 2013

105.3 SQL-Datenverwaltung

Access Grundkurs. M. Eng. Robert Maaßen

Referenzielle Integrität SQL

Datenbanksysteme Kapitel 5: SQL Data Manipulation Language

2 Datenbanksysteme, Datenbankanwendungen und Middleware... 45

Vorlesung: Relationale Datenbanksysteme

Microsoft Access Relationen. Anja Aue

Relationentheorie grundlegende Elemente

IV. Datenbankmanagement

Kapitel 2: Das Relationale Modell

SQL - Datenbankdesign - Aufbau

Inhaltsverzeichnis. Einleitung

SQL,Teil 1: CREATE, INSERT, UPDATE, DELETE, DROP

Übersicht der wichtigsten MySQL-Befehle

Medizininformatik Software Engineering

Datenbanken. Datenbanken. Grundlagen und Design. Grundlagen und Design. Frank. Geisler. 4. Auflage

Anwendungsentwicklung Datenbanken SQL. Stefan Goebel

7. Übung - Datenbanken

Datenadminstrator, Datenbankdesigner, Systemanalytiker (für die logische Sicht zuständig)

insert, update, delete Definition des Datenbankschemas select, from, where Rechteverwaltung, Transaktionskontrolle

konzeptionelles DB-Design

Transkript:

Kapitel 1: Begriffe: Datenbanksystem (DBS) Datenbank- Administrator (DBA) Datenbank- Verwaltungssystem (DBMS) Anwendungs- Programmierer Oberfläche SQL Menü SQL Formular Datenbank Daten (in Dateien) Query Language Processor Anwendungs- Programm End- Benutzer 1

Formulare bilden in EXES die Benutzeroberfläche für Datenbankzugriffe. Entitäten: Z.B. Mitarbeiter einer Firma. Daraus lässt sich eine Tabellen erzeugen. Ein Atribut einer Tabelle. Beziehungen: Tabellen welche aus z.b. zwei Tabellen entstehen. Relationen: Tabellen. Aus Entitäten und Beziehungen werden Tabellen. Persistente Daten: diese Daten bleiben erhalten. Integrierte Datenbank: Die Menge aller Daten ist logisch als Einheit in der Datenbank vorhanden. Shared Database: Eine Datenbank auf die mehrere Benutzer leichzeitig zugreifen können. Relationales Datenmodell: In einem relationalen Datenmodell wird der interessierende Realitätsauschnitt ausschließlich durch Tabellen (mathematisch: Relationen) dargestellt (modelliert). Gemeinsam genutzte Datenbank: Eine Datenbank auf die mehrere Benutzer zugreifen können. Datendefinitionssprache: Die Datenbankdefinitionssprache stellt Sprachelemente zur Verfügung mit deren Hilfe man Datenbankobjekte beschreiben kann, beispielsweise, um sie neu einzurichten oder zu löschen. Datenmanipulationssprache: Die Datenmanipulationssprache stellt Sprachelemente zur Verfügung, mit denen neue Datensätze, das Löschen und Verändern von Datensätzen sowie die Suche in Datenbanken beschrieben werden können. Relationsvariable: Eine Tabelle welche sich verändern lässt. Relationale Datenbank: Eine relationale Datenbank implementiert die Relationale Algebra von Codd. Sie enthält als Basis-Datenbankobjekte Relationen. Die Relationale Algebra ist eine mathematische Datenbanktheorie. Primärschlüssel: Ein Attribut welcher die Eindeutigkeit des Tupels garantiert. Datenwert: Element eines Tupels. Aus dem definierten Datenbereich. 2

Kapitel 2: ANSI/SPARC-Architektur Architektur eines Datenbanksystems: Externe Ebene: die Sicht der User. Konzeptuelle Ebene: Datenbanken als relationales Modell. Festlegung der Gesamtstruktur der Daten bezüglich sicherheits- und integritätsbedingungen. Interne Ebene: Kodierung Sortierung und Verteilung der Daten in der physischen Datenbank. Physikalische Speicherung der Daten. Verantwortlichkeiten und Ebenen: Ein Datenbanksystem ist als Client und Server aufgebaut. Server ist das Datenbank Manegementsystem. Server ist das Anwendungsprogramm welches zwischen Datenbank und Endbenutzer vermittelt und die Funktion des Datenbankservers in Anspruch nimmt. Häufig wird das Internett für Datenbankzugriffe benötigt. Konzeptuelles Datenmodel: Dieser Aspekt der Datenbank wird durch die Anzahl und Zusammenwirkung der Tabellen festgelegt. Wenn sich Tabellen Ändern, ändert sich die konzeptuelle Ebene. Externes Datenmodell: Abfragen der Datenbank. Internes Datenmodel: Indexstrukturen. 3

Aufgaben das Datenbankverwalters: 4

Kapitel 3: Drei Aspekte einer Datenbank: struktureller Aspekt: Alle Daten in Tabellen festgehalten. Integritätsaspekt: z.b. Prüfung von Eigenschaften. keine Doppelten Tupel. Löschanomalien Manipulationsaspekt: Tabellenoperationen. Aus Tabellen werden wieder Tabellen. Relationen sind Tabellen. Tabellen sind somit Variablen und ihr Inhalt Variablenwerte. SQL Anweisungen Abfrage mit Bedingung: restrict Lieferungen where Menge > 200 ~ SELECT LNr, TNr, Menge FROM Lieferungen WHERE Menge>200; Projektion. Eine Select Afrage. project Lieferanten over LName, Stadt ~ SELECT LName,Stadt FROM Lieferanten; Verbindung zweier Tabellen über ein gemeinsames Feld. Alle Felder werden Angezeigt. Ist keine where Klausel angegeben, wird über den Primärschlüssel selektiert. join Lieferanten and Teile over Stadt ~ SELECT LNr, LName, Status, TNr, TName, Farbe, Gewicht, Lieferanten.Stadt FROM Lieferanten INNER JOIN Teile ON Lieferanten.Stadt = Teile.Stadt; Synonym mit: SELECT * FROM Lieferanten INNER JOIN Teile ON Lieferanten.Stadt = Teile.Stadt; Weiteres Beispiel: join Lieferanten and Lieferungen over LNr SELECT Lieferanten.LNr, Lieferanten.LName, Lieferanten.Status, Lieferanten.Stadt, Lieferungen.TNr, Lieferungen.Menge FROM Lieferanten INNER JOIN Lieferungen ON Lieferanten.LNr = Lieferungen.LNr; 5

Ein Primärschlüssel muss zu einem Fremdschlüssel vorhanden sein. Wenn in einer Tabelle ein Fremdschlüssel verwendet wird. Eine Abfrage ist eine Operation. Ergebnis dieser Operation ist erneut eine Tabelle. Abfragen können wie virtuelle Relationen behandelt werden. SELECT Name, A-Leiter FROM [Mitarbeiter Abt. A] INNER JOIN Abteilung ON [Mitarbeiter Abt. A].Abteilung = Abteilung.Abt-Nr [Mitarbeiter Abt.A] ist eine bereits vorhandene Abfrage. Tabelle mit Hilfe von SQL erstellen. CREATE TABLE Lager ( Lagerbezeichnung CHAR(4), Stadt Char(20), PRIMARY KEY (Lagerbezeichnung) ) ; Schlüssel wird festgelegt. Abfrage mit Hilfe von SQL erstellen. CREATE VIEW Gute_Lieferanten AS SELECT LNr, LName, Status, Stadt FROM Lieferanten WHERE STATUS > 15 ; Lässt sich auch mit den EXES Assistenten erstellen. Tupel in eine Datenbank einfügen. INSERT-Anweisung INSERT INTO Weine ( Lagerstelle, Wein, Erzeuger, Jahrgang, Flaschenanzahl, Reifejahr) VALUES (53, Pinot Noir, Saintsbury, 1997, 6, 2001 ) ; Ändern eines Tupels UPDATE-Anweisung UPDATE Weine SET Flaschenanzahl = 4 WHERE Lagerstelle = 3 6

Datensatz oder Datenbank löschen. DELETE-Anweisung DELETE FROM Weine Nur Anzeigen eines oder mehrerer Tupel. SELECT-Anweisung Kenne ich bereits. Kapitel 4: 7

Entitäten: Eine Tabelle (Relation). Diese Datenbank enthält Eigenschaften. Beziehungen: Eine Tabelle (Relation) welche zwischen zwei Entitäten verknüpft. Auch diese kann eigene Eigenschaften besitzen. Eigenschaften: Die Inhalte einer Datenbank. Die Felder (Attribute). Beispiel Datenbank Männer und Frauen. Entitäten Beziehungsdiagramm. Aus diesem soll ein Relationales Datenmodel (Tabellen) werden. Verbale Formulierung des Entitäten-Beziehungs-Diagrammes. Entitäten: Tabelle Menschen Felder {Passnummer, Vorname, Nachname, Nationalität} Primärschlüssel Passnummer Fremdschlüssel keiner Tabelle Frauen Felder {Passnummer} Primärschlüssel Passnummer Fremdschlüssel keiner Tabelle Männer Felder {Passnummer} 8

Primärschlüssel Passnummer Fremdschlüssel keiner Beziehungen: Tabelle unverheiratet liiert Felder {Passnummer1, Passnummer2} Primärschlüssel {Partner1, Partner2} Fremdschlüssel { (Partner1, Menschen.Passnummer ), (Partner2, Menschen.Passnummer) } Tabelle verheiratet Felder {Frau, Mann, seit} Primärschlüssel {Frau, Mann} Fremdschlüssel { (Frau, Frauen.Passnummer ), (Mann, Männer.Passnummer) } Tabelle haben Kinder Felder {Frau, Mann, Anzahl} Primärschlüssel {Frau, Mann-Passnummer} Fremdschlüssel { (Frau, Frauen.Passnummer), (Mann, Männer.Passnummer) } Tabelle Frauen sind Menschen Felder {Frau, Passnummer } Primärschlüssel {Frau} Fremdschlüssel { (Frau, Frauen.Passnummer), (Passnummer (= Menschen.Passnummer) } Tabelle Männer sind Menschen Felder {Mann, Passnummer } Primärschlüssel {Mann} Fremdschlüssel { (Mann, Männer.Passnummer), (Passnummer, Menschen.Passnummer) } Kapitel 5: 9

Begiffe: Grad Relation Tupel Kardinalität Attribut Dimension Primärschlüssel Datenbereich Anzahl der Spalten Tabelle Zeile oder Datensatz Anzahl der Zeilen Spalte oder Feld Anzahl von Spalten eindeutige Kennung (für einen Datensatz) Menge von gültigen Werten Datentyp ist eine Menge von Werten. Eigene Datentypen mit SQL definieren. CREATE DOMAIN MeinDatentyp CHAR(10) ; Es gibt Tabellenoperationen wie CREATE TABLE, CREATE VIEW, ALTER TABLE, DROP Zwei Sorten von Relationsvariablen: Kapitel 6: 10

Mengenoperationen: Union Vereinigung. Alle Tupel aus z.b. zwei Relationen werden zusammengestellt. SQL: Select * from Lieferanten-A union select * from Lieferanten-B (Anstatt * -> Lieferanten-A.LNr, Lieferanten-A.Lname,... ) Difference Differenz :Alle Tupel welche in der ersten aber nicht in der zweiten Tabelle erscheinen. Tupel welche in beiden Tabellen erscheinen werden auch nicht dargestellt. SQL: Select * from Lieferanten-A except select * from Lieferanten-B Intersect Durchschnitt :Es werden nur die Tupel angezeigt welche in beiden Relationen vorhanden sind. SQL: Select * from Lieferanten-A intersect select * from Lieferanten-B Product Produkt: Diese Operation gibt alle Kombinationen der zwei Tabellen zurück. Tabelle 1.Tupelanzahl * Tabelle 2.Tupelanzahl. SQL: Select Lieferanten.LNr, Lieferanten.Lname, Lieferanten.Status, Lieferanten.Stadt as Lstadt, Teile.TNr, Teile.Tname, Teile.Farbe, Teile.Gewicht, Teile.Stadt as Tstadt from Lieferanten, Teile; Das as benennt nur das Attribut um. FROM Lieferanten, Teile; Spezielle Operationen: Restrict Selektion : Tupel durch die where Klausel selektieren. SQL: Select * from Teile where Teile.Farbe = ROT Project Projektion :nur z.b. zwei Attribute anzeigen. SQL: Select Teile.Tname, Teile.Farbe from Teile Divide Division Join Verbund :Zwei Datenbanken über ein Attribut verbinden. SQL: Select Lieferanten.LNr, Lieferanten.Lname, Lieferanten.Status, Lieferanten.Stadt, Teile.TNr, Teile.Tname, Teile.Farbe, Teile.Gewicht FROM Lieferanten INNER JOIN Teile WHERE Lieferanten.Stadt = Teile.Stadt Optimierung von Datenbank-Anfragen (relationalen Ausdrücken). Ein Anfragebaum visualisiert eine relationale Abfrage. Blätter -> Tabellen. Knoten -> algebraische Operationen. Selektionen möglichst früh durchführen. Projektionen auch früh durchführen. So werden die Datenmengen weiter verringert. Verbundoperatoren für zwei Tabellen sind zeitaufwendig. Deshalb sehr spät durchführen. 11

Kapitel 7: 1: Jedes Tupel aus einer Menge ist nur eine Entität auch der anderen Menge zugeordnet. c: Jedes Tupel ist eine oder keine Entität aus der anderer Menge zugeordnet. m: mehrere Entitäten zugeordnet. mc: kein, ein oder mehrere Entitäten zugeordnet. Zu Einteilung der Mächtigkeiten ist es sinnvoll von einer Entität über eine Beziehung zur einer Entität zu Denken. Rechteck: Entität Raute: Beziehung Gibt es eine 1:1 Beziehung zwischen Entitäten, können die Daten in einer gemeinsamen Tabelle dargestellt. 1:c, 1:m, 1:mc Beziehungen: In diesem Fall brauchen Beziehungen keine eigene Tabelle. In anderen Fällen benötigt man eine für die Beziehung eine eigene Tabelle. In diesem Beispiel werden nur zwei Tabellen für Beziehungen benötigt: -verheiratet, -unverheiratet liiert Entitäten werden alle drei benötigt. 12

Kapitel 8: Anomalien: Eine Tätigkeit hatt weitere Auswirkungen in der Datenbank. Funktionale Abhängigkeit: Über den Wert eines Feldes kann ich genau sagen welchen Wert ein anderes Feld haben muss. ANR ---------------- Thema Normalformen: Erste Normalform: Jedes Tupel enthält für jedes Attribut genau einen Wert. Zweite Normalform: (Aufspaltung in mehrere Relationen.) Erste NF + jedes nicht Schlüssel Attribut muss von einem Schlüsselattribut abhängen. Dritte Normalform: NF1 + NF2 + Alle Attribute hängen funktional ausschließlich von Schlüsselattributen ab. 13

Beispiel einer Tabelle ohne NF Form. 14

15

NF1: Eine Relation ist in der ersten Normalform (NF1), genau dann wenn jedes Tupel für jedes Attribut genau einen Wert enthält. Alle Werte müssen den Datentypen entsprechen, die für die Attribute festgelegt worden sind. Aufgabenübersicht (1NF) Einheit Tnr Thema Art Anr Aufgabe Gewicht E VI 1 Codds relationale Algebra S 1 Überblick hoch E VI 1 Codds relationale Algebra S 2 Mengenoperationen sehr hoch E VI 1 Codds relationale Algebra S 3 union hoch E VI 1 Codds relationale Algebra S 6 product hoch E VI 1 Codds relationale Algebra S 7 relationale Spezialoperationen sehr hoch E VI 1 Codds relationale Algebra S 8 restrict sehr hoch E VI 1 Codds relationale Algebra S 9 project sehr hoch E VI 1 Codds relationale Algebra S 10 join sehr hoch E VI 2 Relationale Ausdrücke S 11 Relationale Operationen erzeugen Relationen sehr hoch Berechnen von relationalen E VI 3 Ausdrücken S 12 Optimierung hoch E VI 3 Berechnen von relationalen Ausdrücken S 13 Relationale Umformungen hoch E VI 4 Codds relationale Algebra Ü 16 typkompatibel mittel E VI 4 Codds relationale Algebra Ü 18 join/product mittel E VI 5 Relationale Ausdrücke Ü 19 Abfragen mittel E VI 6 Codds relationale Algebra W 20 divide niedrig E VI 7 C.J. Date und A. Meier W 21 Relationale Algebra niedrig E VI 7 C.J. Date und A. Meier W 23 Optimierung niedrig E V 8 Struktureller Aspekt im Detail S 24 Ein Beispiel hoch E V 9 Datentypen S 25 Was sind Datentypen? hoch E V 9 Datentypen S 28 Definition von Datentypen in ACCESS hoch E V 9 Relationen und Relationsvariablen S 30 Mathematische Definition von Relationen sehr hoch E V 10 Struktureller Aspekt im Detail Ü 38 Datenanalyse, Datenbankentwurf mittel E V 10 Struktureller Aspekt im Detail Ü 39 SQL DDL und DML mittel 16

NF2: Eine Relation ist in der zweiten Normalform (NF2), genau dann wenn sie in der 1. NF vorliegt und jedes Nicht-Schlüssel-Attribut funktional voll von einem Schlüssel-Attribut abhängt. Themen (NF2) Thema Einheit Tnr Thema E VI 1 Codds relationale Algebra E VI 2 Relationale Ausdrücke E VI 3 Berechnen von relationalen Ausdrücken E VI 4 Codds relationale Algebra E VI 5 Relationale Ausdrücke E VI 6 Codds relationale Algebra E VI 7 C.J. Date und A. Meier E V 8 Struktureller Aspekt im Detail E V 9 Datentypen E V 10 Struktureller Aspekt im Detail Tnr Einheit Aufgaben (NF2) Anr Aufgabe Gewicht Tnr Art 1 Überblick hoch 1 S 2 Mengenoperationen sehr hoch 1 S 3 union hoch 1 S 6 product hoch 1 S 7 relationale Spezialoperationen sehr hoch 1 S 8 restrict sehr hoch 1 S 9 project sehr hoch 1 S 10 join sehr hoch 1 S 11 Relationale Operationen erzeugen Relationen sehr hoch 2 S 12 Optimierung hoch 3 S 13 Relationale Umformungen hoch 3 S 16 typkompatibel mittel 4 Ü 18 join/product mittel 4 Ü 19 Abfragen mittel 5 Ü 20 divide niedrig 6 W 21 Relationale Algebra niedrig 7 W 23 Optimierung niedrig 7 W 24 Ein Beispiel hoch 8 S 25 Was sind Datentypen? hoch 9 S 28 Definition von Datentypen in ACCESS hoch 9 S 30 Mathematische Definition von Relationen sehr hoch 9 S 38 Datenanalyse, Datenbankentwurf mittel 10 Ü 39 SQL DDL und DML mittel 10 Ü Art Gewicht Aufgabe Anr Tnr 17

BCNF: Eine Relation ist in der Boyce/Codd-Normalform (BCNF), genau dann wenn alle Attribute ausschließlich von Schlüsselattributen funktional abhängen. Aufgaben (BCNF) Anr Aufgabe Tnr Art 1 Überblick 1 S 2 Mengenoperationen 1 S 3 Union 1 S 6 Product 1 S 7 relationale Spezialoperationen 1 S 8 Restrict 1 S 9 Project 1 S 10 Join 1 S 11 Relationale Operationen erzeugen Relationen 2 S 12 Optimierung 3 S 13 Relationale Umformungen 3 S 16 Typkompatibel 4 Ü 18 join/product 4 Ü 19 Abfragen 5 Ü 20 Divide 6 W 21 Relationale Algebra 7 W 23 Optimierung 7 W 24 Ein Beispiel 8 S 25 Was sind Datentypen? 9 S 28 Definition von Datentypen in ACCESS 9 S 30 Mathematische Definition von Relationen 9 S 38 Datenanalyse, Datenbankentwurf 10 Ü 39 SQL DDL und DML 10 Ü Art Aufgabe Anr Tnr Themen (BCNF) Einheit Tnr Thema E VI 1 Codds relationale Algebra E VI 2 Relationale Ausdrücke E VI 3 Berechnen von relationalen Ausdrücken E VI 4 Codds relationale Algebra E VI 5 Relationale Ausdrücke E VI 6 Codds relationale Algebra E VI 7 C.J. Date und A. Meier E V 8 Struktureller Aspekt im Detail E V 9 Datentypen E V 10 Struktureller Aspekt im Detail Thema Tnr Einheit 18

Aufgabenarten (BCNF) Art S Gewicht sehr hoch Art Gewicht S hoch Ü mittel W niedrig Fremdschlüssel sind alle Attribute welche in anderen Relationen Primärschlüssel sind. Kapitel 9: Integrität von Typen: es geht um die Typen (Datenform) der Atribute. Integrität von Relationsvariablen: es geht um die Eigenschaften von Relationen (Tabellen). Integrität der Datenbank: Es geht um Beziehungen der Relationen (Tabellen) untereinander. Schlüsselkandidaten: Ein Schlüssel muss die Eindeutigkeit des Tupels garantieren. - Wenn Eintrag in der Spalte eindeutig. - Die Kombination zweier Spalten eindeutig ist. Schlüsselkandidat: möglicher Schlüssel einer Relation. Primärschlüssel: Der Schlüsselkandidat der repräsentativ für die Eindeutigkeit der Tupel der Relation ausgewählt wurde. Alternativschlüssel: Alle Schlüsselkandidaten die nicht Primärschlüssel sind. Fremdschlüssel: Attribute welche in einer anderen Relation Primärschlüssel sind. Referentielle Integrität mit Löschweitergabe / Aktualisierungsweitergabe. Problem: In einer Relation mit einem Primärschlüssel darf ein Tupel nicht gelöscht werden. Wird in einer Tabelle eine Abteilung gelöscht, sind in einer anderen Tabelle die Einträge ohne bezug. Entweder müssen diese auch gelöscht werden oder Aktualisiert. 19

Kapitel 10: Brute Force: Ein Algorithmus um eine Join-Operation zu realisieren. Indizes in EXES können Abfragen schneller machen. Indizierung bedeutet, dass Attributwerte als Zahlen gedeutet werden. Das macht ihre Abfrage schneller. In der Entwurfsansicht einer Abfrage kann man auch die Sortierung vorgeben. Abfrage wird langsammer. Durch ein Haschverfahren wird festgelegt an welcher Stelle ein Datensatz liegt. 20