Anomalien und Normalformen

Größe: px
Ab Seite anzeigen:

Download "Anomalien und Normalformen"

Transkript

1 Anomalien und Anomalien Funktionale Abhängigkeit und Schlüsselbegriff Prinzipiell mit DB-Entwurf fertig (und zufrieden). Aber... Gehen von einer schlechten Tabelle aus. Zeigen, was ist schlecht daran: Anomalien. Definieren exakt Schlüssel und Primärschlüssel. Transformieren eine schlechte Tabelle in gute Tabellen:. Ziel ist stets: Redundanz vermeiden, NULL vermeiden, wenige Tabellen. Anomalien und Anomalien Oft entstehen Tabellen quick and dirty (ungeplant) aus Zusammenstellung von Anwendungsdaten. Zettelsammlung von Comics, Freundinnen und verliehenen Comics in einer Tabelle zusammenfassen. FNr CNr Name Titel Serie Nr Autor AusleihD Zurück 1 3 Clark Kent s@metro.com V for Vendetta - - Alan Moore Nein 2 5 Lois Lane l@metro.com Neverending All-Star Superman 10 Grant Morrison Nein 3 - Selina Kyle s@gotham.net Bruce Wayne b@gotham.net Stadt Ohne Gnade Sin City 1 Frank Miller Ja The Highway Akira 1 Katsuhiro Otomo 1 2 Clark Kent s@metro.com Pursuit Akira 2 Katsuhiro Otomo Nein Erkennen, dass Comics, Freunde und Ausleihe miteinander vermischt sind: Probleme! DB, SS 12 May 7,

2 Anomalien und Anomalien Einfüge-Anomalie oder welche Probleme macht die Tabelle beim Einfügen von Daten (Create). Einfügen eines neuen Freundes in die Liste. Alle Comic- und Ausleih-Daten unbesetzt: NULL Werte in der DB. (etwa bei Selina Kyle ) FNr CNr Name Titel Serie Nr Autor AusleihD Zurück 3 - Selina Kyle s@gotham.net Einfügen eines neuen Comics in die Liste. Alle Freund- und Ausleih-Daten unbesetzt: NULL Werte in der DB. (etwa bei Akira: The Highway ) FNr CNr Name Titel Serie Nr Autor AusleihD Zurück The Highway Akira 1 Katsuhiro Otomo - - Insbesondere Primärschlüssel ( FNr, CNr ) durch NULL-Werte nicht mehr eindeutig. Muss vermieden werden. Anomalien und Anomalien Änderungs-Anomalie oder welche Probleme macht die Tabelle beim Ändern von Daten (Update). Clark Kent erhält neue -Adresse. Dann müssen an zwei Stellen in der Tabelle Änderungen vorgenommen werden. Fehleranfällig und kann zu Inkonsistenzen führen. Redundanzen vermeiden. DB, SS 12 May 7,

3 Anomalien und Anomalien Lösch-Anomalie oder welche Probleme macht die Tabelle beim Löschen von Daten (Delete). Wenn wir den Datensatz zu Sin City: Stadt ohne Gnade löschen, verlieren wir auch unseren Freund Bruce Wayne. Wenn wir den Datensatz zu Lois Lane löschen, verlieren wir auch den Comic All-Star Superman: Neverending. Das ist unerwünscht. Anomalien und Funktionale Abhängigkeit und Schlüsselbegriff Beispiel der schlechten Tabelle zeigten Probleme mit Abhängigkeiten in der Struktur einer Tabelle. Betrachten dies nun abstrakt. Gegeben sei eine Tabelle mit der Attributmenge T. T = {FNr, CNr, Name, , Titel, Serie, Nr, Autor, AusleihD, Zurück} Funkionale Abhängigkeit : Eine Menge von Attributen B T der Tabelle ist funktional abhängig von einer Menge von Attributen A T der Tabelle, wenn zu jeder konkreten Belegung der Attribute aus A nur maximal eine konkrete Belegung der Attribute aus B gehört: A B. Kenne ich für einen Datensatz die Attributwerte von A, dann weiss ich auch die Belegung der Werte von B. Trivial: T T, A A A T. DB, SS 12 May 7,

4 Anomalien und Funktionale Abhängigkeit und Schlüsselbegriff {FNr, Name} { } Studierendentabelle MatrNr Name Strasse PLZ Ort Studiengang Dann {MatrNr, Name, PLZ} {Strasse, Ort, , Studiengang} Offensichtlich lässt sich die Menge links noch verkleinern. Man könnte bspw. Name herausnehmen. (Und auch noch PLZ.) Volle funktionale Abhängigkeit : Eine Menge von Attributen B T der Tabelle ist voll funktional abhängig von einer Menge von Attributen A T, wenn A B und für jede echte Teilmenge A von A gilt A B. Suchen nach einer minimalen Menge von Attributen. {MatrNr} {Ort, Name, }, {FNr} {Name, } Anomalien und Funktionale Abhängigkeit und Schlüsselbegriff Schauen auf verkürzte Relation Student: { MatrNr : integer, Name : text, PLZ : integer, Ort : text } Wählen Attributmengen X = {MatrNr}, Y = {PLZ}, Z = {Ort}. Dann X Y Z transitive Abhängigkeit. Ortsname sicherlich nicht direkt vom Studenten abhängig. PLZ legt aber eindeutig Ort fest. Liegt aber nicht in der Grundmenge X : transitiv abhängig. Es genügt PLZ zu kennen, um auf Ort zu schliessen. Hinweis auf Zerlegung in zwei Tabellen/Relationen. (Kommt noch bei.) DB, SS 12 May 7,

5 Anomalien und Funktionale Abhängigkeit und Schlüsselbegriff Mit den neuen Begriffen nun klären, was ein Schlüssel einer Tabelle/Relation ist. Schlüssel : Sei T die Menge aller Attribute der Tabelle und sei S T eine weitere Attributmenge mit S T. Dann heißt S Schlüssel der Tabelle. Eindeutige Zuordnung eines Datensatzes aufgrund der Werte in der Attributmenge S. Keine Forderung der Minimalität. Damit T stets Schlüssel für Tabelle. Aber kein guter... Praxis interessiert an möglichst kleinem Schlüssel. Schlüsselkandidat : Sei T die Menge aller Attribute der Tabelle. Sei weiterhin S T eine Attributmenge, so dass T voll funktional abhängig ist von S. Dann heißt S Schlüsselkandidat der Tabelle. Und letztlich Primärschlüsel : ist ein willkürlich ausgewählter Schlüsselkandidat einer Tabelle. Beliebige minimale Menge von Attributen, die eindeutig auf Datensatz schliessen lässt. Häufig künstlicher Primärschlüssel durch Aufzählen. Aufteilung von T : Schlüsselattribute : Menge aller Attribute, die zu einem Schlüsselkandidaten gehören. Nichtschlüsselattribute : Menge aller Attribute, die zu keinem Schlüsselkandidaten gehören. Anomalien und Frage: Wie kann man schlecht strukturierte Tabelle in gute Tabellen umformen? Antwort: Schrittweise über erste, dann zweite und dann dritte bringen. Erzeugen neue Tabellen. helfen insbesondere, Redundanzen und NULL-Einträge zu vermeiden. 0NF 1NF 2NF 3NF BCNF 4NF 5NF 0NF: Nullte Normalform, Ausgangstabelle; 1NF, 2NF, 3NF: Erste, zweite, dritte Normalform; BCNF: Boyce-Codd-Normalform; 4NF, 5NF: Vierte, fünfte Normalform; DB, SS 12 May 7,

6 Anomalien und Nullte Normalform Unsere unnormalisierte Ausgangstabelle, wie sie aus der Anwendung herausfällt. Anomalien und Erste Normalform Ziel: Auflösen von mengenwertigen und strukturierten Attributen. Erste Normalform : liegt vor, wenn jeder Attributwert eine atomare, nicht weiter zerlegbare Dateneinheit ist. Vorgehensweise: Strukturierte Attribute werden in ihre atomare Unterattribute zerlegt und jedem wird eine Spalte zugeordnet. Mengenwertige Attribute werden in einer Spalte zusammengefasst. (Kann zu Redundanzen führen.) Jeder Datensatz wird durch einen Primärschlüssel eindeutig identifiziert. (Etwa durch neues Attribut id.) Unser Datenbankentwurf sollte eigentlich zu Tabellen in 1NF geführt haben, aber... DB, SS 12 May 7,

7 Anomalien und Strukturierte Attribute werden in ihre atomare Unterattribute zerlegt und jedem wird eine Spalte zugeordnet. Name Adresse Clark Kent 123, Metropolis, Daily-Planet-Road 1 s@metropolis.com Bruce Wayne 321, Gotham, Manor-Place 1 b@gotham.net Lois Lane 123, Metropolis, Main-Road 42 l@metropolis.com id Name PLZ Ort Strasse Nr 1 Clark Kent 123 Metropolis Daily-Planet-Road 1 s@metropolis.com 2 Bruce Wayne 321 Gotham Manor-Place 1 b@gotham.net 3 Lois Lane 123 Metropolis Main-Road 42 l@metropolis.com Hier sicherlich auch Name als Primärschlüssel möglich. Anomalien und Mengenwertige Attribute werden in einer Spalte zusammengefasst. (Kann zu Redundanzen führen.) Titel Serie Nr Autor1 Autor2 Schwarze Flamme B.U.A.P. 4 Mike Mignola John Arcudi Old Ghosts Watchmen 8 Alan Moore - Das Heiligtum von Gondwana Die Abenteuer von Blake und Mortimer 17 Yves Sente Andre Juillard In Heaven (Everything is Fine) #1 Spawn 8 Alan Moore - Titel Serie Nr Autor Schwarze Flamme B.U.A.P. 4 Mike Mignola Schwarze Flamme B.U.A.P. 4 John Arcudi Old Ghosts Watchmen 8 Alan Moore Das Heiligtum von Gondwana Blake und Mortimer 17 Yves Sente Das Heiligtum von Gondwana Blake und Mortimer 17 Andre Juillard In Heaven (Everything is Fine) #1 Spawn 8 Alan Moore Oder id als Primärschlüssel einführen. DB, SS 12 May 7,

8 Anomalien und Zweite Normalform Ziel: Verhindern der (einfachen) Einfüge-, Änderungs- und Lösch-Anomalien. Zweite Normalform : liegt vor, wenn Relation in 1NF ist und jedes Nichtschlüsselattribut voll funktional abhängig vom Primärschlüssel ist. Vorgehensweise: Entfernen der Spalten, die nicht voll funktional vom Primärschlüssel abhängen. Zusammenfassen der zu einem Schlüssel gehörenden entfernten Spalten in neuer Tabelle. Zusammen mit dem Schlüssel. Erzeugt neue Tabellen. Anomalien und Titel Serie Nr Autor Schwarze Flamme B.U.A.P. 4 Mike Mignola Schwarze Flamme B.U.A.P. 4 John Arcudi Old Ghosts Watchmen 8 Alan Moore Das Heiligtum von Gondwana Blake und Mortimer 17 Yves Sente Das Heiligtum von Gondwana Blake und Mortimer 17 Andre Juillard In Heaven (Everything is Fine) #1 Spawn 8 Alan Moore titelid Autor titelid Titel Serie Nr 1 Schwarze Flamme B.U.A.P. 4 2 Old Ghosts Watchmen 8 3 Das Heiligtum von Gondwana Blake und Mortimer 17 4 In Heaven (Everything is Fine) #1 Spawn 8 1 Mike Mignola 1 John Arcudi 2 Alan Moore 3 Yves Sente 3 Andre Juillard 4 Alan Moore Aber immer noch Redundanz. (Doppelter Eintrag Alan Moore.) Deshalb... DB, SS 12 May 7,

9 Anomalien und Zerlegen in drei Tabellen. Dritte Tabelle für Relation Autor schreibt Comic. Jeweils mit eigenem Primärschlüssel. titelid Titel Serie Nr 1 Schwarze Flamme B.U.A.P. 4 2 Old Ghosts Watchmen 8 3 Das Heiligtum von Gondwana Blake und Mortimer 17 4 In Heaven (Everything is Fine) #1 Spawn 8 Änderungen nur noch an einer Stelle notwendig. Löschen eines Comics löscht nicht den Autor. Einfügen von Comics und Autoren unabhängig möglich. autorid Autor 1 Mike Mignola 2 John Arcudi 3 Alan Moore 4 Yves Sente 5 Andre Juillard Aufgabe: Wie könnte man noch mit Serien umgehen? Beachte etwa autorid titelid Titel Serie Nr Autor1 Autor2 Old Ghosts Watchmen 8 Alan Moore - V for Vendetta - - Alan Moore - Anomalien und Dritte Normalform Ziel: Beseitigen von Abhängigkeiten zwischen Nichtschlüsselattributen. (Verhindern von transitiven Anomalien.) Dritte Normalform : liegt vor, wenn Relation in 2NF und jedes Nichtschlüsselattribut nicht transitiv abhängig vom Primärschlüssel ist. Vorgehensweise: Entfernen der Spalten, die transitiv vom Primärschlüssel abhängen. Zusammenfassen der zu einem Schlüssel gehörenden entfernten Spalten in neuer Tabelle. Zusammen mit dem Schlüssel. Erzeugt neue Tabellen. DB, SS 12 May 7,

10 Anomalien und MatrNr Name PLZ Ort Donald Duck 111 Entenhausen Bruce Wayne 200 Gotham Hellboy 666 DownUnder Wissen schon: MatrNr PLZ Ort transitiv abhängig. MatrNr Name PLZ PLZ Ort Donald Duck Bruce Wayne Hellboy Entenhausen 200 Gotham 666 DownUnder Anomalien und Weitere Boyce-Codd Normalform : liegt vor, wenn Relation in 3NF und alle voll funktionalen Abhängigkeiten vom Primärschlüssel ausgehen. Machen wir nicht. Und es gibt noch 4NF, 5NF. Machen wir auch nicht mehr. Meist genügt 3NF für gute Tabellen im Rechner. DB, SS 12 May 7,

11 Anomalien und 1NF verlangt nur atomare Attribute in der Tabelle. Werte einzeln abrufbar/abfragbar. 2NF verlangt 1NF und das Attribute vom gesamten Primärschlüssel abhängig. 3NF verlangt 2NF und das Nicht-Primärschlüssel-Attribute nicht transitiv abhängig. Ergebnis: Verminderung von Redundanz, Vermeidung von Inkonsistenz und Anomalien, Übersichtliche kleine Tabellen. Aber: Zuviele kleine Tabellen erschweren Überblick auf Miniwelt. Abfragen über mehrere Tabellen sehr aufwendig. SQL Allgemeines CREATE TABLE DROP TABLE ALTER TABLE Gute Tabellen sollen nun in eine DB auf den Rechner. Verwenden dazu DBMS SQLite. Verwenden Datenbanksprache SQL (structured query language). Grobe Aufteilung in vier Bereiche: DDL, DML, TCL, DCL. DB, SS 12 May 7,

12 SQL Allgemeines Müssen Tabellen erzeugen, lesen, verändern, löschen (CRUD). Müssen Datenätze erzeugen, lesen, verändern, löschen (CRUD). Neue Abfragesprache : SQL (structured query language). Aufgeteilt in: 1. Data Definition Language DDL Befehle, um Tabellen und verwandte Elemente zu erzeugen, zu ändern oder zu löschen: CREATE, ALTER, DROP Machen wir. 2. Data Manipulation Language DML Befehle, um Datensätze auszuwählen, zu erzeugen, zu ändern und zu löschen: SELECT, INSERT, UPDATE, DELETE Machen wir. 3. Transaction Control Language TCL Befehle, um DB-Manipulationen endgültig in die Datenbank zu übernehmen: COMMIT, ROLLBACK Machen wir nicht. 4. Data Control Language DCL Befehle zur Berechtigungsvergabe von Lese- und Schreibrechten: GRANT, REVOKE Machen wir nicht. SQL Allgemeines SQLite unterstützt nur ein Subset von SQL: ABORT ACTION ADD AFTER ALL ALTER ANALYZE AND AS ASC ATTACH AUTOINCREMENT BEFORE BEGIN BETWEEN BY CASCADE CASE CAST CHECK COLLATE COLUMN COMMIT CONFLICT CONSTRAINT CREATE CROSS CURRENT_DATE CURRENT_TIME CURRENT_TIMESTAMP DATABASE DEFAULT DEFERRABLE DEFERRED DELETE DESC DETACH DISTINCT DROP EACH ELSE END ESCAPE EXCEPT EXCLUSIVE EXISTS EXPLAIN FAIL FOR FOREIGN FROM FULL GLOB GROUP HAVING IF IGNORE IMMEDIATE IN INDEX INDEXED INITIALLY INNER INSERT INSTEAD INTERSECT INTO IS ISNULL JOIN KEY LEFT LIKE LIMIT MATCH NATURAL NO NOT NOTNULL NULL OF OFFSET ON OR ORDER OUTER PLAN PRAGMA PRIMARY QUERY RAISE REFERENCES REG- EXP REINDEX RELEASE RENAME REPLACE RESTRICT RIGHT ROLLBACK ROW SAVEPOINT SELECT SET TABLE TEMP TEMPORARY THEN TO TRANSACTION TRIGGER UNION UNIQUE UPDATE USING VACUUM VALUES VIEW VIRTUAL WHEN WHERE Reicht uns aber. Mehr in MySQL oder PostgreSQL. Schreibweisen: SQL-Befehle: alles in Großbuchstaben, Variablen: mit Kleinbuchstaben (siehe DB, SS 12 May 7,

13 SQL CREATE TABLE Erste Aufgabe: Erzeuge Tabellen. CREATE TABLE table_name ( column_name column_type [,...] table_name eindeutig innerhalb der Datenbank. column_name eindeutig innerhalb der Tabelle. *_name prinzipiell zusammensetzbar aus allen Zeichen auf der Tastatur. Groß- und Kleinschreibung wird nicht unterschieden! Leerzeichen einklammern in [] oder "". atable, Verkaeufer1, meine_wichtige_tabelle, [my $ table], "my $!? table" Aber! Einfache Namen verwenden. Werden häufig in Abfragen verwendet. Erzeugt nur Datenschema. Keine Einträge. (Später INSERT INTO.) SQL CREATE TABLE Spaltendatentyp column_type in SQLite: INTEGER: ganze Zahl, 1, -42 REAL: relle Zahl, 47.11, TEXT: Zeichenfolge, Hallo, Liebe Leute! BLOB: binäre Daten (binary large object). Andere SQL-Datentypen wie CHAR(n), VARCHAR(n),... werden darüber ersetzt. bsp = { bsp_id: integer, titel: text, wert: real } CREATE TABLE bsp ( bsp_id INTEGER, titel TEXT, wert REAL INSERT INTO bsp VALUES (1, Ein Titel, 0.0 DB, SS 12 May 7,

14 SQL CREATE TABLE Modifikationen: Erzwingen von nichtleeren Einträgen. CREATE TABLE table_name ( column_name column_type NOT NULL [,...] CREATE TABLE bsp ( bsp_id INTEGER NOT NULL, titel TEXT, wert REAL NOT NULL Einträge in die DB ohne Angabe von bsp_id und wert werden von dem DBMS abgelehnt. titel kann frei bleiben. SQL CREATE TABLE Modifikation: Vorgabe des Primärschlüssels. Oder CREATE TABLE table_name ( column_name column_type PRIMARY KEY [,...] CREATE TABLE table_name ( column_name column_type NOT NULL, [,...] PRIMARY KEY (column_name[,...]) PRIMARY KEY implizit NOT NULL. Legt Primärschlüssel fest. Garantiert Eindeutigkeit des Datensatzes. Weiterer Datensatz mit gleichem Primärschlüssel wird vom DBMS abgelehnt. DB, SS 12 May 7,

15 SQL CREATE TABLE MatrNr Name Fach VorlNr Titel SWS MatrNr VorlNr CREATE TABLE student ( MatrNr INTEGER PRIMARY KEY, Name TEXT NOT NULL, Fach TEXT CERATE TABLE vorlesung ( VorlNr INTEGER PRIMARY KEY, Titel TEXT NOT NULL, SWS INTEGER NOT NULL CERATE TABLE hoeren ( MatrNr INTEGER NOT NULL, VorlNr INTEGER NOT NULL, PRIMARY KEY (MatrNr, VorlNr), FOREIGN KEY (MatrNr) REFERENCES student(matrnr), FOREIGN KEY (VolrNr) REFERENCES vorlesung(vorlnr) SQL CREATE TABLE Modifikation: Vorgabe von Standardwerten. CREATE TABLE table_name ( column_name column_type DEFAULT value [,...] Belegt Eintrag mit Wert value, wenn kein Wert angegeben wurde. CREATE TABLE bsp ( bsp_id INTEGER PRIMARY KEY, titel TEXT DEFAULT Unbekannt, wert REAL NOT NULL INSERT INTO bsp (bsp_id, wert) VALUES (2, 2.0 DB, SS 12 May 7,

16 SQL CREATE TABLE SQL DROP TABLE Zweite Aufgabe: Lösche Tabelle. DROP TABLE table_name; Löscht gesamte Tabelle table_name. Modifikationen: DROP TABLE table_name CASCADE; Löscht alle Verweise in anderen Tabellen. DROP TABLE table_name RESTRICT; Verhindert löschen, wenn noch Verweise in anderen Tabellen. DB, SS 12 May 7,

17 DB, SS 12 May 7,

SQL. Allgemeines CREATE TABLE DROP TABLE ALTER TABLE INSERT INTO UPADTE DELETE SELECT

SQL. Allgemeines CREATE TABLE DROP TABLE ALTER TABLE INSERT INTO UPADTE DELETE SELECT Allgemeines DROP TABLE ALTER TABLE INSERT INTO UPADTE DELETE SELECT Gute Tabellen sollen nun in eine DB auf den Rechner. Verwenden dazu DBMS ite. Verwenden Datenbanksprache (structured query language).

Mehr

SQL für Trolle. mag.e. Dienstag, 10.2.2009. Qt-Seminar

SQL für Trolle. mag.e. Dienstag, 10.2.2009. Qt-Seminar Qt-Seminar Dienstag, 10.2.2009 SQL ist......die Abkürzung für Structured Query Language (früher sequel für Structured English Query Language )...ein ISO und ANSI Standard (aktuell SQL:2008)...eine Befehls-

Mehr

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER INHALTSVERZEICHNIS 1. Datenbanken 2. SQL 1.1 Sinn und Zweck 1.2 Definition 1.3 Modelle 1.4 Relationales Datenbankmodell 2.1 Definition 2.2 Befehle 3.

Mehr

Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin

Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin PhpMyAdmin = grafsches Tool zur Verwaltung von MySQL-Datenbanken Datenbanken erzeugen und löschen Tabellen und Spalten einfügen,

Mehr

SQL (Structured Query Language) Schemata Datentypen

SQL (Structured Query Language) Schemata Datentypen 2 SQL Sprachelemente Grundlegende Sprachelemente von SQL. 2.1 Übersicht Themen des Kapitels SQL Sprachelemente Themen des Kapitels SQL (Structured Query Language) Schemata Datentypen Im Kapitel SQL Sprachelemente

Mehr

Tag 4 Inhaltsverzeichnis

Tag 4 Inhaltsverzeichnis Tag 4 Inhaltsverzeichnis Normalformen Problem Formen (1-4) Weitere Formen Transaktionen Synchronisationsprobleme Überblick Autocommit Locking Savepoints Isolation levels Übungen RDB 4-1 Normalformen Problematik

Mehr

Tag 4 Inhaltsverzeichnis

Tag 4 Inhaltsverzeichnis Tag 4 Inhaltsverzeichnis Normalformen Problem Formen (1-4) Weitere Formen Transaktionen Synchronisationsprobleme Überblick Autocommit Locking Savepoints Isolation levels Übungen RDB 4-1 Normalformen Problematik

Mehr

7. Übung - Datenbanken

7. Übung - Datenbanken 7. Übung - Datenbanken Informatik I für Verkehrsingenieure Aufgaben inkl. Beispiellösungen 1. Aufgabe: DBS a Was ist die Kernaufgabe von Datenbanksystemen? b Beschreiben Sie kurz die Abstraktionsebenen

Mehr

Semantische Integrität (auch: Konsistenz) der in einer Datenbank gespeicherten Daten als wichtige Anforderung

Semantische Integrität (auch: Konsistenz) der in einer Datenbank gespeicherten Daten als wichtige Anforderung 6. Datenintegrität Motivation Semantische Integrität (auch: Konsistenz) der in einer Datenbank gespeicherten Daten als wichtige Anforderung nur sinnvolle Attributwerte (z.b. keine negativen Semester) Abhängigkeiten

Mehr

SQL Teil 2. SELECT Projektion Selektion Vereinigung, Schnitt, Differenz Verbund Komplexer SELECT-Ausdruck

SQL Teil 2. SELECT Projektion Selektion Vereinigung, Schnitt, Differenz Verbund Komplexer SELECT-Ausdruck SELECT Projektion Selektion Vereinigung, Schnitt, Differenz Verbund Fahren fort mit SQL Befehlen. Bilden Relationenalgebra auf SQL ab. So Umsetzung von Anfragen an die DB (bzw. Tabellen) möglich. SELECT

Mehr

Referentielle Integrität

Referentielle Integrität Datenintegrität Integitätsbedingungen Schlüssel Beziehungskardinalitäten Attributdomänen Inklusion bei Generalisierung statische Integritätsbedingungen Bedingungen an den Zustand der Datenbasis dynamische

Mehr

IV. Datenbankmanagement

IV. Datenbankmanagement Wirtschaftsinformatik 2 (PWIN) IV. Datenbankmanagement Kapitel 2: Datenmanipulationssprache SQL Wirtschaftsinformatik 2 (PWIN) SS 2009, Professur für Mobile Business & Multilateral Security 1 Agenda 1.

Mehr

Datenbanktechnologie mit praktischen Übungen in MySQL und PHP

Datenbanktechnologie mit praktischen Übungen in MySQL und PHP Datenbanktechnologie mit praktischen Übungen in MySQL und PHP Übung, Sommersemester 2013 22. April 2013 - MySQL Sebastian Cuy sebastian.cuy@uni-koeln.de Datenbanken Was sind eigentlich Datenbanken? Eine

Mehr

Referentielle Integrität

Referentielle Integrität Datenintegrität Integitätsbedingungen Schlüssel Beziehungskardinalitäten Attributdomänen Inklusion bei Generalisierung statische Integritätsbedingungen Bedingungen an den Zustand der Datenbasis dynamische

Mehr

Views in SQL. 2 Anlegen und Verwenden von Views 2

Views in SQL. 2 Anlegen und Verwenden von Views 2 Views in SQL Holger Jakobs bibjah@bg.bib.de, holger@jakobs.com 2010-07-15 Inhaltsverzeichnis 1 Wozu dienen Views? 1 2 Anlegen und Verwenden von Views 2 3 Schreibfähigkeit von Views 3 3.1 Views schreibfähig

Mehr

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

Nachtrag: Farben. Farbblindheit. (Light und Bartlein 2004) Nachtrag: Farben Farbblindheit (Light und Bartlein 2004) 1 Vorgeschlagene Farbskalen (Light and Bartlein 2004) Farbkodierung metrisch skalierter Daten Unterscheide: 1. Sequential Data (ohne Betonung der

Mehr

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D. TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D. Blatt Nr. 7 Übung zur Vorlesung Grundlagen: Datenbanken im WS13/14 Henrik Mühe (muehe@in.tum.de) http://www-db.in.tum.de/teaching/ws1314/dbsys/exercises/

Mehr

SQL. Fortgeschrittene Konzepte Auszug

SQL. Fortgeschrittene Konzepte Auszug SQL Fortgeschrittene Konzepte Auszug Levels SQL92 Unterteilung in 3 Levels Entry Level (i.w. SQL89) wird von nahezu allen DBS Herstellern unterstützt Intermediate Level Full Level SQL DML 2-2 SQL92 behebt

Mehr

SQL structured query language

SQL structured query language Umfangreiche Datenmengen werden üblicherweise in relationalen Datenbank-Systemen (RDBMS) gespeichert Logische Struktur der Datenbank wird mittels Entity/Realtionship-Diagrammen dargestellt structured query

Mehr

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

Mengenvergleiche: Alle Konten außer das, mit dem größten Saldo. Mengenvergleiche: Mehr Möglichkeiten als der in-operator bietet der θany und der θall-operator, also der Vergleich mit irgendeinem oder jedem Tupel der Unteranfrage. Alle Konten außer das, mit dem größten

Mehr

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

SQL Tutorial. SQL - Tutorial SS 06. Hubert Baumgartner. INSO - Industrial Software SQL Tutorial SQL - Tutorial SS 06 Hubert Baumgartner INSO - Industrial Software Institut für Rechnergestützte Automation Fakultät für Informatik Technische Universität Wien Inhalt des Tutorials 1 2 3 4

Mehr

mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 11. Juni 2007

mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 11. Juni 2007 6. Übung zur Vorlesung Datenbanken im Sommersemester 2007 mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 11. Juni 2007 Aufgabe 1: Rekursion Betrachten Sie die folgende Tabelle

Mehr

Informatik 12 Datenbanken SQL-Einführung

Informatik 12 Datenbanken SQL-Einführung Informatik 12 Datenbanken SQL-Einführung Gierhardt Vorbemerkungen Bisher haben wir Datenbanken nur über einzelne Tabellen kennen gelernt. Stehen mehrere Tabellen in gewissen Beziehungen zur Beschreibung

Mehr

Datenintegrität. Arten von Integritätsbedingungen. Statische Integritätsbedingungen. Referentielle Integrität. Integritätsbedingungen in SQL.

Datenintegrität. Arten von Integritätsbedingungen. Statische Integritätsbedingungen. Referentielle Integrität. Integritätsbedingungen in SQL. Datenintegrität Arten von Integritätsbedingungen Statische Integritätsbedingungen Referentielle Integrität Integritätsbedingungen in SQL Trigger 1 Datenintegrität Einschränkung der möglichen Datenbankzustände

Mehr

Praktische SQL-Befehle

Praktische SQL-Befehle Praktische SQL-Befehle Datenbanksysteme I WiSe 2018/2019 Todor Ivanov DB1 WS2018 1 Praktische SQL-Befehle Nested Selects Inserts Updates Views Triggers Constraints Functions Voraussetzung: Laptop + MySQL/

Mehr

Datenintegrität. Einschränkung der möglichen Datenbankzustände und -übergänge auf die in der Realität möglichen

Datenintegrität. Einschränkung der möglichen Datenbankzustände und -übergänge auf die in der Realität möglichen Datenintegrität Einschränkung der möglichen Datenbankzustände und -übergänge auf die in der Realität möglichen Formulierung von Integritätsbedingungen ist die wichtigste Aufgabe des DB-Administrators!

Mehr

Das SQL-Schlüsselwort ALL entspricht dem Allquantor der Prädikatenlogik

Das SQL-Schlüsselwort ALL entspricht dem Allquantor der Prädikatenlogik Beispielaufgaben Informationssysteme erstellt von Fabian Rump zur IS Vorlesung 2009/10 1 Multiple Choice Aussage richtig falsch Eine SQL-Abfrage beginnt immer mit dem Schlüsselwort SELECT Eine Datenbank

Mehr

Datenintegrität. Einschränkung der möglichen Datenbankzustände und -übergänge auf die in der Realität möglichen

Datenintegrität. Einschränkung der möglichen Datenbankzustände und -übergänge auf die in der Realität möglichen Datenintegrität Einschränkung der möglichen Datenbankzustände und -übergänge auf die in der Realität möglichen Formulierung von Integritätsbedingungen ist die wichtigste Aufgabe des DB-Administrators!

Mehr

Datenintegrität. Bisherige Integritätsbedingungen

Datenintegrität. Bisherige Integritätsbedingungen Datenintegrität Integitätsbedingungen chlüssel Beziehungskardinalitäten Attributdomänen Inklusion bei Generalisierung statische Bedingungen an den Zustand der Datenbasis dynamische Bedingungen an Zustandsübergänge

Mehr

Wiederholung VU Datenmodellierung

Wiederholung VU Datenmodellierung Wiederholung VU Datenmodellierung VU Datenbanksysteme Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Wintersemester

Mehr

Datenbanken: Datenintegrität. www.informatikzentrale.de

Datenbanken: Datenintegrität. www.informatikzentrale.de Datenbanken: Datenintegrität Definition "Datenkonsistenz" "in der Datenbankorganisation (...) die Korrektheit der gespeicherten Daten im Sinn einer widerspruchsfreien und vollständigen Abbildung der relevanten

Mehr

Wiederholung VU Datenmodellierung

Wiederholung VU Datenmodellierung Wiederholung VU Datenmodellierung VL Datenbanksysteme Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Wintersemester

Mehr

Klausur zur Vorlesung Datenbanken I im Wintersemester 2011/12

Klausur zur Vorlesung Datenbanken I im Wintersemester 2011/12 Prof. Dr. Lutz Wegner, Dipl.-Math. Kai Schweinsberg 21.03.2012 Klausur zur Vorlesung Datenbanken I im Wintersemester 2011/12 Name:... Vorname:... Matr.Nr.:... Studiengang:... Hinweis: Bearbeiten Sie alle

Mehr

Universität Duisburg-Essen Informationssysteme Prof. Dr.-Ing. N. Fuhr. Praktikum Datenbanken / DB2 Woche 8: Trigger, SQL-PL

Universität Duisburg-Essen Informationssysteme Prof. Dr.-Ing. N. Fuhr. Praktikum Datenbanken / DB2 Woche 8: Trigger, SQL-PL Betreuer: Sascha Kriewel, Tobias Tuttas Raum: LF 230 Bearbeitung: 26., 27. und 29. Juni 2006 Datum Team (Account) Vorbereitung Präsenz Aktuelle Informationen, Ansprechpartner und Material unter: http://www.is.inf.uni-due.de/courses/dbp_ss07/index.html

Mehr

Labor 3 - Datenbank mit MySQL

Labor 3 - Datenbank mit MySQL Labor 3 - Datenbank mit MySQL Hinweis: Dieses Labor entstand z.t. aus Scripten von Prof. Dr. U. Bannier. 1. Starten des MySQL-Systems MySQL ist ein unter www.mysql.com kostenlos erhältliches Datenbankmanagementsystem.

Mehr

Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 11.09.2009

Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 11.09.2009 Hochschule Darmstadt DATENBANKEN Fachbereich Informatik Praktikum 3 Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 11.09.2009 PL/SQL Programmierung Anwendung des Cursor Konzepts und Stored Procedures Und Trigger

Mehr

Whitepaper. Produkt: combit Relationship Manager. Datensatzhistorie mit dem SQL Server 2000 und 2005. combit GmbH Untere Laube 30 78462 Konstanz

Whitepaper. Produkt: combit Relationship Manager. Datensatzhistorie mit dem SQL Server 2000 und 2005. combit GmbH Untere Laube 30 78462 Konstanz combit GmbH Untere Laube 30 78462 Konstanz Whitepaper Produkt: combit Relationship Manager Datensatzhistorie mit dem SQL Server 2000 und 2005 Datensatzhistorie mit dem SQL Server 2000 und 2005-2 - Inhalt

Mehr

Referenzielle Integrität SQL

Referenzielle Integrität SQL Referenzielle Integrität in SQL aus Referential Integrity Is Important For Databases von Michael Blaha (Modelsoft Consulting Corp) VII-45 Referenzielle Integrität Definition: Referenzielle Integrität bedeutet

Mehr

Datenbanksysteme 2013

Datenbanksysteme 2013 Datenbanksysteme 2013 Kapitel 8: Datenintegrität Vorlesung vom 14.05.2013 Oliver Vornberger Institut für Informatik Universität Osnabrück Datenintegrität Statische Bedingung (jeder Zustand) Dynamische

Mehr

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

Seminar 2. SQL - DML(Data Manipulation Language) und. DDL(Data Definition Language) Befehle. Seminar 2 SQL - DML(Data Manipulation Language) und DDL(Data Definition Language) Befehle. DML Befehle Aggregatfunktionen - werden auf eine Menge von Tupeln angewendet - Verdichtung einzelner Tupeln yu

Mehr

SQL: statische Integrität

SQL: statische Integrität SQL: statische Integrität.1 SQL: statische Integrität Im allgemeinen sind nur solche Instanzen einer Datenbank erlaubt, deren Relationen die der Datenbank bekannten Integritätsbedingungen erfüllen. Integritätsbedingungen

Mehr

Beispiel 1: Filmdatenbank

Beispiel 1: Filmdatenbank Beispiel 1: Filmdatenbank Die Filmdatenbank hat drei Tabellen (ACTOR, MOVIE, PLAYED) Aufgabe 1: Erstelle mit Hilfe der SQL-DDL die drei Tabellen und die Datenbank (MOVIEDB) ACTOR (ActorID, Name, Birthday,

Mehr

Relationales Modell: SQL-DDL. SQL als Definitionssprache. 7. Datenbankdefinitionssprachen. Anforderungen an eine relationale DDL

Relationales Modell: SQL-DDL. SQL als Definitionssprache. 7. Datenbankdefinitionssprachen. Anforderungen an eine relationale DDL Relationales Modell: SQLDDL SQL als Definitionssprache SQLDDL umfaßt alle Klauseln von SQL, die mit Definition von Typen Wertebereichen Relationenschemata Integritätsbedingungen zu tun haben Externe Ebene

Mehr

Schnellübersichten. SQL Grundlagen und Datenbankdesign

Schnellübersichten. SQL Grundlagen und Datenbankdesign Schnellübersichten SQL Grundlagen und Datenbankdesign 5 Datenbanken 2 6 Tabellen erstellen und verwalten 3 7 Daten einfügen, aktualisieren, löschen 4 8 Einfache Datenabfragen 5 9 Schlüsselfelder und Indizes

Mehr

Kapitel 33. Der xml-datentyp. In diesem Kapitel: Der xml-datentyp 996 Abfragen aus xml-datentypen 1001 XML-Indizierung 1017 Zusammenfassung 1023

Kapitel 33. Der xml-datentyp. In diesem Kapitel: Der xml-datentyp 996 Abfragen aus xml-datentypen 1001 XML-Indizierung 1017 Zusammenfassung 1023 Kapitel 33 Der xml-datentyp In diesem Kapitel: Der xml-datentyp 996 Abfragen aus xml-datentypen 1001 XML-Indizierung 1017 Zusammenfassung 1023 995 996 Kapitel 33: Der xml-datentyp Eine der wichtigsten

Mehr

Inhalt. Ein Einführung in die Nutzung von SQL-Datenbanken am Beispiel Oracle. Daten und Tabellen - ein Beispiel. Daten und Tabellen - Normalisierung

Inhalt. Ein Einführung in die Nutzung von SQL-Datenbanken am Beispiel Oracle. Daten und Tabellen - ein Beispiel. Daten und Tabellen - Normalisierung Inhalt Ein Einführung in die Nutzung von SQL-Datenbanken am Beispiel Oracle Daten und Tabellen Normalisierung, Beziehungen, Datenmodell SQL - Structured Query Language Anlegen von Tabellen Datentypen (Spalten,

Mehr

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

Einführung in SQL. Sprachumfang: Indizes. Datensätzen. Zugriffsrechten Einführung in SQL Die Sprache SQL (Structured Query Language) ist eine Programmiersprache für relationale Datenbanksysteme, die auf dem ANSI-SQL-Standard beruht. SQL wird heute von fast jedem Datenbanksystem

Mehr

Integritätsbedingungen / Normalformen- Beispiel: Kontoführung

Integritätsbedingungen / Normalformen- Beispiel: Kontoführung Technische Universität München WS 2003/04, Fakultät für Informatik Datenbanksysteme I Prof. R. Bayer, Ph.D. Lösungsblatt 8 Dipl.-Inform. Michael Bauer Dr. Gabi Höfling 12.01. 2004 Integritätsbedingungen

Mehr

Übung Datenbanken in der Praxis. Datenmodifikation mit SQL

Übung Datenbanken in der Praxis. Datenmodifikation mit SQL Datenmodifikation mit SQL Folie 45 SQL - Datenmodifikation Einfügen INSERT INTO Relation [(Attribut, Attribut,...)] VALUES (Wert, Wert,...) INSERT INTO Relation [(Attribut, Attribut,...)] SFW-Anfrage Ändern

Mehr

Fakultät für Informatik & Wirtschaftsinformatik DB & IS II - SS 2015. Metadaten

Fakultät für Informatik & Wirtschaftsinformatik DB & IS II - SS 2015. Metadaten Fakultät für Informatik & Wirtschaftsinformatik Metadaten Metadaten sind Daten über Daten Data-Dictionary speichert Informationen über die Struktur der Daten, z.b.: Tabellen, Spalten, Datentypen Primär-

Mehr

Bibliografische Informationen digitalisiert durch http://d-nb.info/995021198

Bibliografische Informationen digitalisiert durch http://d-nb.info/995021198 Auf einen Blick 1 Einleitung 15 2 Datenbankentwurf 23 3 Datenbankdefinition 43 4 Datensätze einfügen (INSERT INTO) 95 5 Daten abfragen (SELECT) 99 6 Daten aus mehreren Tabellen abfragen (JOIN) 143 7 Unterabfragen

Mehr

Datumsangaben, enthält mindestens Jahr, Monat, Tag

Datumsangaben, enthält mindestens Jahr, Monat, Tag Datenbanken mit SQL Informatik - Sprenger Häufig wird mit Tabellenkalkulationen gearbeitet, obwohl der Einsatz von Datenbanken sinnvoller ist. Tabellenkalkulationen wie Microsoft Excel oder LibreOffice

Mehr

Uni Duisburg-Essen Fachgebiet Informationssysteme Prof. Dr. N. Fuhr

Uni Duisburg-Essen Fachgebiet Informationssysteme Prof. Dr. N. Fuhr Raum: LF 230 Bearbeitung: 9.-11. Mai 2005 Datum Gruppe Vorbereitung Präsenz Aktuelle Informationen unter: http://www.is.informatik.uni-duisburg.de/courses/dbp_ss03/ Tabellen in IBM DB2 Tabellen Eine relationale

Mehr

Aufbau des SELECT-Befehls. Im Folgenden werden zunächst Abfragen aus einer Tabelle vorgenommen.

Aufbau des SELECT-Befehls. Im Folgenden werden zunächst Abfragen aus einer Tabelle vorgenommen. Datenbankabfragen (Query) mit SQL (Structured Query Language) 1 Aufbau des SELECT-Befehls Im Folgenden werden zunächst Abfragen aus einer Tabelle vorgenommen. SQL-Syntax: SELECT spaltenliste FROM tabellenname

Mehr

Anwendungsentwicklung Datenbanken SQL. Stefan Goebel

Anwendungsentwicklung Datenbanken SQL. Stefan Goebel Anwendungsentwicklung Datenbanken SQL Stefan Goebel SQL Structured Query Language strukturierte Abfragesprache von ANSI und ISO standardisiert deklarativ bedeutet was statt wie SQL beschreibt, welche Daten

Mehr

SQL-Injection. Seite 1 / 16

SQL-Injection. Seite 1 / 16 SQL-Injection Seite 1 / 16 Allgemein: SQL (Structured Query Language) Datenbanksprache zur Definition von Datenstrukturen in Datenbanken Bearbeiten und Abfragen von Datensätzen Definition: SQL-Injection

Mehr

4.14.3 Bedingungen über Werte. 4.14.4 Statische Integrität. CHECK-Klausel

4.14.3 Bedingungen über Werte. 4.14.4 Statische Integrität. CHECK-Klausel 4.14.3 Bedingungen über Werte 4.14.4 Statische Integrität Zu jeder Tabelle werden typischerweise ein Primärschlüssel und möglicherweise weitere Schlüssel festgelegt (UNIQUE-Klausel). In jeder Instanz zu

Mehr

6. Datenintegrität. Integritätsbedingungen

6. Datenintegrität. Integritätsbedingungen 6. Integritätsbedingungen dienen zur Einschränkung der Datenbankzustände auf diejenigen, die es in der realen Welt tatsächlich gibt. sind aus dem erstellten Datenmodell ableitbar (semantisch) und können

Mehr

XAMPP-Systeme. Teil 3: My SQL. PGP II/05 MySQL

XAMPP-Systeme. Teil 3: My SQL. PGP II/05 MySQL XAMPP-Systeme Teil 3: My SQL Daten Eine Wesenseigenschaft von Menschen ist es, Informationen, in welcher Form sie auch immer auftreten, zu ordnen, zu klassifizieren und in strukturierter Form abzulegen.

Mehr

VO Datenmodellierung. Katrin Seyr

VO Datenmodellierung. Katrin Seyr Datenintegrität Datenintegrität VO Datenmodellierung Katrin Seyr Institut für Informationssysteme Technische Universität Wien Katrin Seyr Seite 1 Datenintegrität 1. Überblick Überblick 1 Überblick 2 Integritätsbedingungen

Mehr

Dynamisches SQL. Folien zum Datenbankpraktikum Wintersemester 2009/10 LMU München

Dynamisches SQL. Folien zum Datenbankpraktikum Wintersemester 2009/10 LMU München Kapitel 4 Dynamisches SQL Folien zum Datenbankpraktikum Wintersemester 2009/10 LMU München 2008 Thomas Bernecker, Tobias Emrich unter Verwendung der Folien des Datenbankpraktikums aus dem Wintersemester

Mehr

In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access. Die Grundlagen der Datenbanken.

In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access. Die Grundlagen der Datenbanken. In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access Die Grundlagen der Datenbanken kurspc15 Inhaltsverzeichnis Access... Fehler! Textmarke nicht

Mehr

SQL und MySQL. Kristian Köhntopp

SQL und MySQL. Kristian Köhntopp SQL und MySQL Kristian Köhntopp Wieso SQL? Datenbanken seit den frühen 1950er Jahren: Hierarchische Datenbanken Netzwerkdatenbanken Relationale Datenbanken = SQL Relational? 10 9 8 7 6 f(y) := y = x r(y)

Mehr

ISU 1. Ue_08/02_Datenbanken/SQL. 08 Datenbanken. Übung. SQL Einführung. Eckbert Jankowski. www.iit.tu-cottbus.de

ISU 1. Ue_08/02_Datenbanken/SQL. 08 Datenbanken. Übung. SQL Einführung. Eckbert Jankowski. www.iit.tu-cottbus.de 08 Datenbanken Übung SQL Einführung Eckbert Jankowski www.iit.tu-cottbus.de Datenmodell (Wiederholung, Zusammenfassung) Objekte und deren Eigenschaften definieren Beziehungen zwischen den Objekten erkennen/definieren

Mehr

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als

Mehr

Ein Ausflug zu ACCESS

Ein Ausflug zu ACCESS Ein Ausflug zu ACCESS Die folgenden Folien zeigen beispielhaft, wie man sein DB- Wissen auf ACCESS übertragen kann betrachtet wird ACCESS 2002, da gerade im Bereich der Nutzung von SQL hier einiges nachgearbeitet

Mehr

DBS ::: SERIE 5. Join Right Semi- Join Left Semi-Join Projektion Selektion Fremdschlüssel. Kreuzprodukt

DBS ::: SERIE 5. Join Right Semi- Join Left Semi-Join Projektion Selektion Fremdschlüssel. Kreuzprodukt DBS ::: SERIE 5 Die Relation produkt enthält Hersteller, Modellnummer und Produktgattung (pc, laptop oder drucker aller Produkte. Die Modellnummer ist (der Einfachheit halber eindeutig für alle Hersteller

Mehr

SQL-Befehlsliste. Vereinbarung über die Schreibweise

SQL-Befehlsliste. Vereinbarung über die Schreibweise Vereinbarung über die Schreibweise Schlüsselwort [optionale Elemente] Beschreibung Befehlsworte in SQL-Anweisungen werden in Großbuchstaben geschrieben mögliche, aber nicht zwingend erforderliche Teile

Mehr

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

SQL. DDL (Data Definition Language) Befehle und DML(Data Manipulation Language) SQL DDL (Data Definition Language) Befehle und DML(Data Manipulation Language) DML(Data Manipulation Language) SQL Abfragen Studenten MatrNr Name Vorname Email Age Gruppe 1234 Schmidt Hans schmidt@cs.ro

Mehr

Datenbanktechnologie mit praktischen Übungen in MySQL und PHP

Datenbanktechnologie mit praktischen Übungen in MySQL und PHP Datenbanktechnologie mit praktischen Übungen in MySQL und PHP Übung, Sommersemester 2013 29. April 2013 - MySQL 2 Sebastian Cuy sebastian.cuy@uni-koeln.de Aufgaben Anmerkungen Best practice: SQL Befehle

Mehr

Relationales Datenbanksystem Oracle

Relationales Datenbanksystem Oracle Relationales Datenbanksystem Oracle 1 Relationales Modell Im relationalen Modell wird ein relationales Datenbankschema wie folgt beschrieben: RS = R 1 X 1 SC 1... R n X n SC n SC a a : i=1...n X i B Information

Mehr

Normalformen: Sinn und Zweck

Normalformen: Sinn und Zweck Normalformen: Sinn und Zweck Redundanz und Inkonsistenz vermeiden Anomalien vermeiden Verlustlose Zerlegungen finden Abhängigkeiten bewaren NF2 und NF3 behandeln das Verhältnis zwischen Schlüsselund Nichtschlüssel-

Mehr

Unterabfragen (Subqueries)

Unterabfragen (Subqueries) Unterabfragen (Subqueries) Die kürzeste Formulierung ist folgende: SELECT Felderliste FROM Tabelle1 WHERE Tabelle1.Feldname Operator (SELECT Feldname FROM Tabelle2 WHERE Bedingung); wobei Tabelle1 und

Mehr

SEMINAR Modifikation für die Nutzung des Community Builders

SEMINAR Modifikation für die Nutzung des Community Builders 20.04.2010 SEMINAR Modifikation für die Nutzung des Community Builders Step by Step Anleitung ecktion SEMINAR Modifikation für die Nutzung des Community Builders Step by Step Anleitung Bevor Sie loslegen

Mehr

Hochschule Karlsruhe Technik und Wirtschaft- 10.7.2013. Anhänge: Fakultät für Informatik und Wirtschaftsinformatik SS 2013 Prof. Schmidt.

Hochschule Karlsruhe Technik und Wirtschaft- 10.7.2013. Anhänge: Fakultät für Informatik und Wirtschaftsinformatik SS 2013 Prof. Schmidt. Fakultät für Informatik und Wirtschaftsinformatik SS 2013 Datenbanken und Informationssysteme II Szenario: Projektverwaltung. Es gibt Projekte, Projektleiter, Mitarbeiter und ihre Zuordnung zu Projekten.

Mehr

Übersicht über Datenbanken

Übersicht über Datenbanken Übersicht über Datenbanken Vergleich zwischen normaler Datenorganisation und Datenbanken Definition einer Datenbank Beispiel (inkl. Zugriff) Der Datenbankadministrator Relationale Datenbanken Transaktionen

Mehr

105.3 SQL-Datenverwaltung

105.3 SQL-Datenverwaltung LPI-Zertifizierung 105.3 SQL-Datenverwaltung Copyright ( ) 2009 by Dr. W. Kicherer. This work is licensed under the Creative Commons Attribution-Noncommercial-Share Alike 2.0 Germany License. To view a

Mehr

1. Ziel des Datenbankentwurfs

1. Ziel des Datenbankentwurfs 1. Ziel des Datenbankentwurfs Ziel ist der Aufbau eines Modells eines Teilbereiches der wahrnehmbaren Realität und Abbildung dieses Bereichs in Form von Daten, so dass diese nach verschiedensten Kriterien

Mehr

5.3 Datenänderung/-zugriff mit SQL (DML)

5.3 Datenänderung/-zugriff mit SQL (DML) 5.3 Datenänderung/-zugriff mit SQL (DML) Hinweis: - DML-Anweisungen sind mengenorientiert - Mit einer Anweisungen kann mehr als ein Tupel eingefügt, geändert, gelöscht oder gelesen werden Benutzungs- und

Mehr

Datenbanksysteme I. Klausur zum Praktikum. Mehrere Professoren prüfen mit genau einem Beisitzer genau einen Studenten.

Datenbanksysteme I. Klausur zum Praktikum. Mehrere Professoren prüfen mit genau einem Beisitzer genau einen Studenten. Lehrstuhl für Datenbanken und Informationssysteme Wintersemester 1999/2000 Universität Augsburg, Institut für Informatik 25. Februar 2000 Prof. Dr. Werner Kießling A. Leubner, M. Wagner Datenbanksysteme

Mehr

Projektbericht Gruppe 12. Datenbanksysteme WS 05/ 06. Gruppe 12. Martin Tintel Tatjana Triebl. Seite 1 von 11

Projektbericht Gruppe 12. Datenbanksysteme WS 05/ 06. Gruppe 12. Martin Tintel Tatjana Triebl. Seite 1 von 11 Datenbanksysteme WS 05/ 06 Gruppe 12 Martin Tintel Tatjana Triebl Seite 1 von 11 Inhaltsverzeichnis Inhaltsverzeichnis... 2 1. Einleitung... 3 2. Datenbanken... 4 2.1. Oracle... 4 2.2. MySQL... 5 2.3 MS

Mehr

Software-Engineering Einführung

Software-Engineering Einführung Software-Engineering Einführung 7. Übung (04.12.2014) Dr. Gergely Varró, gergely.varro@es.tu-darmstadt.de Erhan Leblebici, erhan.leblebici@es.tu-darmstadt.de Tel.+49 6151 16 4388 ES Real-Time Systems Lab

Mehr

Grundlagen von SQL. Informatik 2, FS18. Dr. Hermann Lehner (Material von Dr. Markus Dahinden) Departement Informatik, ETH Zürich

Grundlagen von SQL. Informatik 2, FS18. Dr. Hermann Lehner (Material von Dr. Markus Dahinden) Departement Informatik, ETH Zürich Grundlagen von SQL Informatik 2, FS18 Dr. Hermann Lehner (Material von Dr. Markus Dahinden) Departement Informatik, ETH Zürich Markus Dahinden 13.05.18 1 Grundlagen von SQL (Structured Query Language)

Mehr

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem Fachbericht zum Thema: Anforderungen an ein Datenbanksystem von André Franken 1 Inhaltsverzeichnis 1 Inhaltsverzeichnis 1 2 Einführung 2 2.1 Gründe für den Einsatz von DB-Systemen 2 2.2 Definition: Datenbank

Mehr

5/14/18. Grundlagen von SQL. Grundlagen von SQL. Google, Facebook und Co. setzen auf SQL. Whatsapp

5/14/18. Grundlagen von SQL. Grundlagen von SQL. Google, Facebook und Co. setzen auf SQL. Whatsapp 5/14/18 Grundlagen von SQL (Structured Query Language) Datenbanksprache Befehle Datenbanken und Tabellen erstellen/verändern Daten manipulieren (eingeben, ändern, löschen) Datenbank durchsuchen (Queries

Mehr

Datenbanken. Zusammenfassung. Datenbanksysteme

Datenbanken. Zusammenfassung. Datenbanksysteme Zusammenfassung Datenbanksysteme Christian Moser Seite 1 vom 7 12.09.2002 Wichtige Begriffe Attribut Assoziation API Atomares Attribut Datenbasis DBMS Datenunabhängigkeit Datenbankmodell DDL DML DCL ER-Diagramm

Mehr

Datenbanken im WI-Unterricht mit

Datenbanken im WI-Unterricht mit Datenbanken im WI-Unterricht mit Inhaltsverzeichnis 1 ER-Modell - Entity Relationship Modell 1 1.1 Entitäten................................................. 2 1.2 Relationen................................................

Mehr

Einführung in SQL. 1. Grundlagen SQL. Structured Query Language. Viele Dialekte. Unterteilung: i. DDL (Data Definition Language)

Einführung in SQL. 1. Grundlagen SQL. Structured Query Language. Viele Dialekte. Unterteilung: i. DDL (Data Definition Language) Einführung in SQL 1. Grundlagen Structured Query Language Viele Dialekte Unterteilung: i. DDL (Data Definition Language) ii. iii. DML (Data Modifing Language) DRL (Data Retrival Language) 1/12 2. DDL Data

Mehr

Vielen Dank an Dennis Riehle für die Bereitstellung dieser Folien

Vielen Dank an Dennis Riehle für die Bereitstellung dieser Folien Vielen Dank an Dennis Riehle für die Bereitstellung dieser Folien 1.1 Definition Datenbank Ein Datenbanksystem (DBS) ist ein System zur elektronischen Datenverwaltung. Die wesentliche Aufgabe eines DBS

Mehr

Sructred Query Language

Sructred Query Language Sructred Query Language Michael Dienert 11. November 2010 Inhaltsverzeichnis 1 Ein kurzer Versionsüberblick 1 2 SQL-1 mit einigen Erweiterungen aus SQL-92 2 3 Eine Sprache zur Beschreibung anderer Sprachen

Mehr

Abfragen (Queries, Subqueries)

Abfragen (Queries, Subqueries) Abfragen (Queries, Subqueries) Grundstruktur einer SQL-Abfrage (reine Projektion) SELECT [DISTINCT] {* Spaltenname [[AS] Aliasname ] Ausdruck} * ; Beispiele 1. Auswahl aller Spalten SELECT * ; 2. Auswahl

Mehr

desk.modul : WaWi- Export

desk.modul : WaWi- Export desk.modul : WaWi- Export Die Schnittstelle besteht aus einem Programm, welches die Daten aus der OfficeLine ausliest und in eine XML-Datei exportiert. Die Schnittstelle ist als ein eigenständiges Programm

Mehr

Web-Technologien. Prof. Dr. rer. nat. Nane Kratzke SQL. Praktische Informatik und betriebliche Informationssysteme

Web-Technologien. Prof. Dr. rer. nat. Nane Kratzke SQL. Praktische Informatik und betriebliche Informationssysteme Handout zur Unit Web-Technologien SQL 1 Prof. Dr. rer. nat. Nane Kratzke Praktische Informatik und betriebliche Informationssysteme Raum: 17-0.10 Tel.: 0451 300 5549 Email: nane.kratzke@fh-luebeck.de (Praktische

Mehr

MySQL: Einfaches Rechnen. www.informatikzentrale.de

MySQL: Einfaches Rechnen. www.informatikzentrale.de MySQL: Einfaches Rechnen Vorweg: Der Merksatz Warum geht Herbert oft laufen? Vorweg: Der Merksatz Warum geht Herbert oft laufen?...... WHERE... GROUP BY... HAVING... ORDER BY... LIMIT Beispieldatenbank

Mehr

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank In den ersten beiden Abschnitten (rbanken1.pdf und rbanken2.pdf) haben wir uns mit am Ende mysql beschäftigt und kennengelernt, wie man

Mehr

Informatik für Ökonomen II: Datenintegrität. Prof. Dr. Carl-Christian Kanne

Informatik für Ökonomen II: Datenintegrität. Prof. Dr. Carl-Christian Kanne Informatik für Ökonomen II: Datenintegrität Prof. Dr. Carl-Christian Kanne 1 Konsistenzbedingungen DBMS soll logische Datenintegrität gewährleisten Beispiele für Integritätsbedingungen Schlüssel Beziehungskardinalitäten

Mehr

Arbeiten mit einem lokalen PostgreSQL-Server

Arbeiten mit einem lokalen PostgreSQL-Server Arbeiten mit einem lokalen PostgreSQL-Server Download für das Betriebssystem Windows PostgreSQL-Server und pgadmin: http://www.enterprisedb.com/products-servicestraining/pgdownload#windows pgadmin: http://www.pgadmin.org/download/windows.php

Mehr