Daten Bank. 5. Vorlesung. Dr. Karsten Tolle PRG2 SS 2012
|
|
- Linus Dressler
- vor 7 Jahren
- Abrufe
Transkript
1 Daten Bank 5. Vorlesung Dr. Karsten Tolle PRG2 SS 2012
2 4. Vorlesung SQL und SQL aus Programmen heraus (embedded und CLI) 1. Normalform Funktionale Abhängigkeiten und Schlüsselkandidaten Dr. Karsten Tolle PRG2 SS
3 vorrat (Teil Lager Menge Lageradresse) Waag Krugerstr Waag Brunnerstr. 105 Probleme: Redundanz Einfüge-Anomalie Lösch-Anomalie Lageradresse für jedes Teil im Lager redundant gespeichert Kein Lager ohne Teil einfügbar Lager ohne Teile würden gelöscht werden Dr. Karsten Tolle PRG2 SS
4 vorrat (Teil Lager Menge Lageradresse) Waag Krugerstr Waag Brunnerstr. 105 F = { Teil Lager Menge Lageradresse Lager Lageradresse } Fremdschlüssel Lösung: Zerlegung der Relation vorrat (Teil Lager Menge) lager (Lager Lageradresse) 1 Waag RMS 10 3 Krugerstr Brunnerstr. 105 Dr. Karsten Tolle PRG2 SS
5 Prim Ein Attribut A heißt primin R, wenn es in einem Schlüssel von R enthalten ist, sonst heiße es nicht prim. A ist prim X: X ist Schlüssel, A X Dr. Karsten Tolle PRG2 SS
6 volle funktionale Abhängigkeit Eine funktionale Abhängigkeit X Y heißt volle funktionale Abhängigkeit, wenn für keine Teilmenge X X, X Y gilt. Y heißt dann voll funktional abhängig von X. X Y voll funktional X X : X Y Dr. Karsten Tolle PRG2 SS
7 2. Normalform Ein RelationenschemaR ist in 2. Normalform (2NF), wenn es in 1NF ist und jedes nicht prime Attribut voll funktional von jedem Schlüssel von R abhängig ist. 2. NF A nicht prim Schlüssel A voll funktional Die 2. NFist verletzt, wenn ein Teil eines Schlüssels ein Nicht-Schlüsselattribut funktional bestimmt. Dr. Karsten Tolle PRG2 SS
8 Beispiel 1 vorrat (Teil Lager Menge Lageradresse) F = { Teil Lager Menge Lageradresse Lager Lageradresse } Waag Krugerstr Waag Brunnerstr. 105 vorrat (Teil Lager Menge lager (Lager Lageradresse) Waag Krugerstr Brunnerstr Dr. Karsten Tolle PRG2 SS
9 Beispiel 2 R = ABCD F = {AB CD, B D} B D verletzt 2. NF Zerlegung in: R1 = (ABC) mit F1 = {AB C} R2 = (BD) mit F2 = {B D} Dr. Karsten Tolle PRG2 SS
10 Vorgehen beim Prüfen auf NF (WICHTIG!!!) Ausgangspunkt: Relation R (mind. 1. NF) und Menge der FDs gegeben. 1. Welche Schlüssel gibt es? was sind die nicht primen Attribute! 2. Prüfe auf 2. NF (voll funktional abhängig von ALLEN Schlüsseln?) Dr. Karsten Tolle PRG2 SS
11 Fahrzeug ID Hersteller Zugel_Ges_Gew Führerschein ID HERSTELLER ZUGEL_GES_GEW FÜHRERSCHEIN 1 VW bis 3.5 B 2 MB bis 7.5 C1 3 MB bis 8.5 C 4 MAN bis 12 C 5 MB bis 12 C 6 VW bis 12 C F = { ID R, ZUGEL_GES_GEW FÜHRERSCHEIN} Dr. Karsten Tolle PRG2 SS
12 Trotzdem Probleme! ID HERSTELLER ZUGEL_GES_GEW FÜHRERSCHEIN 1 VW bis 3.5 B 2 MB bis 7.5 C1 3 MB bis 8.5 C 4 MAN bis 12 C 5 MB bis 12 C 6 VW bis 12 C Dr. Karsten Tolle PRG2 SS
13 Normalisierung ID HERSTELLER ZUGEL_GES_GEW FÜHRERSCHEIN 1 VW bis 3.5 B 2 MB bis 7.5 C1 3 MB bis 8.5 C 4 MAN bis 12 C 5 MB bis 12 C 6 VW bis 12 C F = { ID R, ZUGEL_GES_GEW FÜHRERSCHEIN} ID HERSTELLER ZUGEL_GES_GEW 1 VW bis MB bis MB bis MAN bis 12 5 MB bis 12 6 VW bis 12 ZUGEL_GES_GEW bis 3.5 bis 7.5 bis 8.5 bis 12 bis 12 bis 12 FÜHRERSCHEIN B C1 C C C C Dr. Karsten Tolle PRG2 SS
14 Normalformen Über die Normalformen(NF) werden Kriterien definiert, um Redundanzen und Anomalien zu verhindern. Es gibt: 1 NF 2 NF 3 NF BCNF 4 NF 5 NF 6 NF 1 NF 2 NF 3 NF Dr. Karsten Tolle PRG2 SS
15 Normalisierung/ Denormalisierung Normalisierung:Der Prozess des Aufspaltens von Relationen, um Anomalien/Redundanzen zu verhindern. Denormalisierung: Der Prozess des Zusammenlegens von Relationen, um Performanz zu gewinnen. Dr. Karsten Tolle PRG2 SS
16 seit Person (u:v) (w:x) lebt_in Ort AusweisNr. Name Vorname PLZ Ortsname Abhängig von u, v, w und x PERSON (AusweisNr., Name, Vorname) ORT (PLZ, Ortsname) LEBT_IN (AusweisNr., PLZ, seit) PERSON (AusweisNr., Name, Vorname) ORT(PLZ, Ortsname, AusweisNr., seit) PERSON (AusweisNr., Name, Vorname) ORT(PLZ, Ortsname) LEBT_IN (AusweisNr., PLZ, seit) PERSON (AusweisNr., Name, Vorname) ORT(PLZ, Ortsname) LEBT_IN (AusweisNr., PLZ, seit) PERSON (AusweisNr., Name, Vorname, PLZ, seit) Auto (3:5) (0:1) hat_räder Rad ORT(PLZ, Ortsname) KFZ-Kennzeichen Hersteller Fabr.-Nr. Breite PERSON_ORT (AusweisNr., Name, Vorname, PLZ, Ortsname, seit) PERSON_ORT (AusweisNr., Name, Vorname, PLZ, Ortsname, seit) Dr. Karsten Tolle PRG2 SS
17 Generalisierung ER rel. Modell Möglichkeit 1: KONTO (Kto.Nr., Kunde, Kto.Stand) GIROKONTO (Kto.Nr., Kunde, Kto.Stand, Kreditrahmen) SPARKONTO (Kto.Nr., Kunde, Kto.Stand, Zinssatz) Girokonto Kreditrahmen Kto.-Nr. Kunde Kto.Stand Konto Sparkonto Zinssatz Möglichkeit 2: KONTO (Kto.Nr., Kunde, Kto.Stand) GIROKONTO (Kto.Nr., Kreditrahmen) SPARKONTO (Kto.Nr., Zinssatz) Möglichkeit 3: KONTO (Kto.Nr., Kunde, Kto.Stand, Kreditrahmen, Zinssatz) Dr. Karsten Tolle PRG2 SS
18 rel. Modell ER???? Gegeben R(A, B, C) S (D, E) T (B, D, F) U (A, G) Was ist Entity-Typ, was Beziehungstyp? Bilden S und U zusammen ein Entity-Typ? Sind R.B und T.B überhaupt GLEICH? R und U könnten eine Generalisierung darstellen???? Dr. Karsten Tolle PRG2 SS
19 Tabellen Ansicht ER-Modell Dr. Karsten Tolle PRG2 SS
20 OO (ER) und rel. Modell Als Object-relational ImpedanceMismatch (auch objekt-relationale Unverträglichkeit genannt) bezeichnet man die Unverträglichkeit zwischen dem relationalem Datenmodell und dem objektorientieren Programmierparadigma. Unverträglichkeit bedeutet, dass die Abbildungen von dem einen ins andere Modell (und zurück) nicht eindeutig ohne Zusatzwissen möglich ist. Dr. Karsten Tolle PRG2 SS
21 (Fast) AlleWegeführennachRom. Prüfe die Anforderungen und denke an die Zukunft! Dr. Karsten Tolle PRG2 SS
22 Prinzipien des digitalen Speicherns I Ein Datensatz sollte offensichtlich/eindeutig und schnell mit dem Objekt, welches es repräsentiert, in Verbindung gebracht werden können. ISBN TITLE ISBN Number Dr. Karsten Tolle PRG2 SS
23 Prinzipien des digitalen Speicherns II Atomisierung der Daten teiledie Datenin ihre kleinste Einheit auf 1. Normalform ISBN AUTHORS TITLE Jeffrey Hoffer, Mary Prescott andfred McFadden ISBN TITLE ISBN AUTHORS Jeffrey Hoffer Mary Prescott Fred McFadden Dr. Karsten Tolle PRG2 SS
24 Prinzipien des digitalen Speicherns III ein weiteres Beispiel(aus der Realität). RULER Hadrian(Sabina) Bedeutet: Hadrian war der Prägeherr und prägte die Münze für(zu ehren von) Sabina. RULER COINED_FOR Hadrian Sabina Dr. Karsten Tolle PRG2 SS
25 Prinzipien des digitalen Speicherns IV HandhabungunsichererInformationen: RULER Hadrian??Nero Nero Bedeutung: nicht wirklich sicher/ abgeleitet aus anderen Informationen. RULER QUALIFICATION Hadrian uncertain Nero inferred Nero certain Dr. Karsten Tolle PRG2 SS
26 Prinzipien des digitalen Speicherns V Konsistenzin der NamensgebungfürTabellenund Attribute. coinlist metal_information ID CODE besser coin_list metal_information ID ID Dr. Karsten Tolle PRG2 SS
27 Prinzipien des digitalen Speicherns VI Ausnutzung der referenziellen Integrität wo immer möglich! Dr. Karsten Tolle PRG2 SS
28 Sicherheit Jahr für Jahr kosten Datenpannen Firmen mehr Geld. Quelle: Symantec
29 Datenlecks zum Stöbern Dr. Karsten Tolle PRG2 SS
30 3-Schicht Architektur Sicherheit Bild vom BSI IT-Grundschutz-Katalog: Dr. Karsten Tolle PRG2 SS
31 Benutzer und Rechte CREATE USER testidentified BY PASSWORD li720lhjlj2' erzeugt einen neuen Benutzer GRANT selecton star_trek.* TO test weist dem Benutzer test die select Rechte für alle Tabellen der DB star_trek zu REVOKE selecton star_trek.* fromtest nimmt ihm die Rechte wieder Siehe auch: Dr. Karsten Tolle PRG2 SS
32 Grant und Revoke Dr. Karsten Tolle PRG2 SS
33 Nutzung von Views Mitarbeiter Empno Vorname Nachname Gehalt 1 Ines Müller Fred Wagner Ingo Meyer Max Müller Jemand der die Vor-und Nachnamen der Mitarbeiter benötigt, würde z.b. die Select- Rechte an der Tabelle Mitarbeiter erhalten und so auch die Gehälter erfahren Dr. Karsten Tolle PRG2 SS
34 Nutzung von Views Mitarbeiter Empno Vorname Nachname Gehalt 1 Ines Müller Fred Wagner Ingo Meyer Max Müller CREATE VIEW Mitarbeiter_Namen AS select Vorname, Nachname from Mitarbeiter; Vorname Ines Fred Ingo Max Nachname Müller Wagner Meyer Müller Dr. Karsten Tolle PRG2 SS
35 Mitarbeiter Empno Vorname Nachname Gehalt 1 Ines Müller Fred Wagner Ingo Meyer Max Müller CREATE VIEW Mitarbeiter_Dept AS select m.empno, m.nachname, d.name as Abt from Mitarbeiter m, Abteilung d, Arbeitet_in a where m.empno = a.empno and a.depno = d.depno; Mitarbeiter_Dept Empno Nachname Abt Abteilung Depno Name Head 1 Finanzen 2 2 Einkauf 1 3 HR 1 Arbeitet_in Empno Depno Mitarbeiter_Dept 1 Müller Einkauf 1 Müller HR 2 Wagner Finanzen 3 Meyer HR Dr. Karsten Tolle PRG2 4 SS 2012 Müller Einkauf 35
36 Absichern am Bsp. MySQL keine Standard Benutzer z.b. root mysql> RENAME USER root TO new_user; show databases nicht unterstützen Netzwerkzugang nur erlauben, wenn nötig Firewall installieren Siehe auch: Dr. Karsten Tolle PRG2 SS
37 SQL Injection (böswilliges) Einschleusen oder Verändern von SQL-Befehlen an die Datenbank durch den Benutzer.
38 Web Related Vulnerabilities 2011 (commercial applications) Dr. Karsten Tolle PRG2 SS Application Security Trends Report März CENZIC
39 Mögliche Gefahren Zusätzliche Bedingungen einzufügen: Eingabe: 1 or id > 1 or name like % select * from mytable where id = 1 or id > 1 or name like %?? Daten der Tabelle können ausgespäht werden. Dr. Karsten Tolle PRG2 SS
40 Mögliche Gefahren Zusätzliche Statements einzufügen: Eingabe: 1; drop mytable # select * from mytable where id = 1; drop mytable #?? Direkter Schaden an der Datenbank, eventuell Ausfall der Applikation. Dr. Karsten Tolle PRG2 SS
41 Was möglich ist hängt ab von DBMS Erlaubt es mehrere SQL-Statements gleichzeitig auszuführen? Welche Zeichen werden als Kommentare interpretiert? (z.b.: --oder #) Verbindungsart / Programmiersprache JDBC, ODBC,??? Dr. Karsten Tolle PRG2 SS
42 Gegenmaßnahmen DB-Verbindung nur mit den Rechten, die nötig sind aufbauen! (siehe GRANT und REVOKE) Nutzungvon Prepared Statements (in Java) Nutzung von statischem SQL, z.b. SQLJ Möglichst wenig Informationen über die Datenbank nach außen geben! z.b. bei Fehlermeldungen Eingaben auf Sonderzeichen und ungültige Werte prüfen(möglichstzurückweisen!) Anwendungdiesbezüglichtesten(testenlassen) Dr. Karsten Tolle PRG2 SS
43 GegenmaßnahmenPHP Positivlisten Methode wurde eingegeben was man erwartet? Negativlisten Methode Ablehnung von Schlüsselwörtern Gegebene Funktion in PHP: mysql_real_escape_string() Sie Maskiert alle Zeichen mit denen man aus den Anführungszeichen ausbrechen kann. Kombination aller 3 ist die sicherste Variante. Siehe auch: Dr. Karsten Tolle PRG2 SS
44 Literaturhinweise Handling Java Web Application Input, Part 1 von Stephen Enright Advanced SQL Injection In SQL Server Applications von Chris Anley (more) Dr. Karsten Tolle PRG2 SS
Daten Bank. 5. Vorlesung. Dr. Karsten Tolle PRG2 SS 2013
Daten Bank 5. Vorlesung Dr. Karsten Tolle PRG2 SS 2013 4. Vorlesung 1. Normalform Funktionale Abhängigkeiten und Schlüsselkandidaten Dr. Karsten Tolle PRG2 SS 2013 2 vorrat (Teil Lager Menge Lageradresse)
MehrDaten Bank. 5. Vorlesung. Dr. Karsten Tolle PRG2 SS 2014
Daten Bank 5. Vorlesung Dr. Karsten Tolle PRG2 SS 2014 Klausur Bemerkungen: Man benötigt keine Übungspunkte um bei der Klausur teilnehmen zu dürfen! Die Online-Anmeldung auf der PRG2-Seite reicht nicht
MehrDaten Bank. 5. Vorlesung
Daten Bank 5. Vorlesung 4. VL von bis Person (0,n) lebt_in (0,n) Ort AusweisNr. Name Vorname PLZ Ortsname SQL: create insert select 1. Normalform Schlüssel und Funktionale Abhängigkeiten Dr. Karsten Tolle
MehrDaten Bank. 6. Vorlesung
Daten Bank 6. Vorlesung Prinzipien des digitalen Speicherns I Ein Datensatz sollte offensichtlich/eindeutig und schnell mit dem Objekt, welches es repräsentiert, in Verbindung gebracht werden können. ISBN
MehrTeil 2-7. Vorlesung. Modul: Programmierung B-PRG Grundlagen der Programmierung II
Teil 2-7. Vorlesung Modul: Programmierung B-PRG Grundlagen der Programmierung II Professur für Datenbanken und Informationssysteme Dr. Karsten Tolle tolle@dbis.cs.uni-frankfurt.de 1 seit Person (u:v) (w:x)
MehrIsolationsstufen für. Dr. Karsten Tolle Dienstag 31. Januar 2012
Isolationsstufen für Transaktionen / Sicherheit Dr. Karsten Tolle Dienstag 31. Januar 2012 Praxisbeispiel in Java Connection con = null; try { con = DriverManager.getConnection("jdbc:db2:sample"); } catch
MehrTeil 2-6. Vorlesung. Modul: Programmierung B-PRG Grundlagen der Programmierung II
Teil 2-6. Vorlesung Modul: Programmierung B-PRG Grundlagen der Programmierung II Professur für Datenbanken und Informationssysteme Dr. Karsten Tolle tolle@dbis.cs.uni-frankfurt.de 1 Schlüssel? PLZ ORT
MehrTransaktionen in der Praxis. Dr. Karsten Tolle
Transaktionen in der Praxis Dr. Karsten Tolle Praxisbeispiel in Java Connection con = null; try { con = DriverManager.getConnection("jdbc:db2:sample"); } catch (Exception e) { e.printstacktrace(); } con.setautocommit(false);
MehrTeil 2-6. Vorlesung. Modul: Programmierung B-PRG Grundlagen der Programmierung II
Teil 2-6. Vorlesung Modul: Programmierung B-PRG Grundlagen der Programmierung II Professur für Datenbanken und Informationssysteme Dr. Karsten Tolle tolle@dbis.cs.uni-frankfurt.de 1 Schlüssel? PLZ ORT
MehrBeziehungen. one-to-one. one-to-many. many-to-many. Beziehung. Beziehung. Beziehung. Beziehung. Relationales Datenmodell
Beziehungen one-to-one Entität_1 (0:1) (0:1) Beziehung Entität_2 Entität_1 (1:1) (1:1) Beziehung Entität_2 one-to-many Entität_1 (0:1) (0:n) Beziehung Entität_2 many-to-many Entität_1 (0:n) Beziehung (0:n)
MehrNormalformen. Was sind Kriterien eines guten Entwurfs? So wenig Redundanz wie möglich. Keine Einfüge-, Lösch-, Änderungsanomalien
Normalformen Was sind Kriterien eines guten Entwurfs? So wenig Redundanz wie möglich Keine Einfüge-, Lösch-, Änderungsanomalien IX-19 Erste und Zweite Normalform Beispiel: (nicht 1. Normalform) vorrat
MehrDaten Bank. 4. Vorlesung. Dr. Karsten Tolle PRG2 SS 2012
Daten Bank 4. Vorlesung Dr. Karsten Tolle PRG2 SS 2012 Beispiel Datum Buch verliehen an (0,1) (0,n) Entleiher BuchNr Titel Autor Nummer Name BUCH (BuchNr, Titel, Autor) ENTLEIHER (Nummer, Name) VERLIEHEN_AN(BuchNr,
MehrDaten Bank. 2. Vorlesung. Dr. Karsten Tolle PRG2 SS 2014
Daten Bank 2. Vorlesung Dr. Karsten Tolle PRG2 SS 2014 Letzte Vorlesung Grundbegriffe SQL create table insert select Dr. Karsten Tolle PRG2 SS 2014 2 Heute Übersicht Modellierung (ER-Diagramme) Entitäten
MehrGarten - Daten Bank. - survival pack -
Garten - Daten Bank - survival pack - Dr. Karsten Tolle PRG2 SS 2017 Inhalt heute Kurz: Motivation und Begriffe SQL (survival pack) create table (Tabelle erzeugen) insert into (Einfügen) select (Anfragen)
MehrFinalklausur zur Vorlesung Datenbanksysteme I Wintersemester 2003/2004 Prüfer: Prof. R. Bayer, Ph.D. Datum: Zeit: 16.
Finalklausur zur Vorlesung Datenbanksysteme I Wintersemester 2003/2004 Prüfer: Prof. R. Bayer, Ph.D. Datum: 13.02.2004 Zeit: 16. Uhr Hinweis: Die Bearbeitungszeit beträgt 90 Minuten. Bitte benutzen Sie
MehrDatenbanken. 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
MehrDesign Theorie für relationale Datenbanken
Design Theorie für relationale Datenbanken Design von relationalen Datenbanken alternativen Datenabhängigkeiten Normalisierung Ziel: automatisches Datenbankdesign IX-1 Schlechtes Datenbank Design Frage:
Mehrd.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
Kapitel 7 Normalformen und DB-Entwurf Kap. 7.1 Normalformen Theorie Funktionale Abhängigkeit: f X Y f als Relation, d.h. Menge von Paaren {(x,y)} x: Definitions-Stelle, y: Funktionswert f ist Funktion
MehrTag 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
MehrDatenbanken 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,
Mehrkonzeptionelles DB-Design
konzeptionelles DB-Design was ist das? Systemunabhängige Darstellung des Datenmodells Was ist bei allen möglichen Datenbanksystemen gleich --> Systemtheorie Informationen über Objekte (Dinge) mit Attributen
MehrTU 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. 10 Übung zur Vorlesung Grundlagen: Datenbanken im WS16/17 Harald Lang, Linnea Passing (gdb@in.tum.de)
Mehr105.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
MehrTag 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
MehrEs geht also um die sogenannte SQL- Data Definition Language.
In diesem Abschnitt werden wir uns die SQL Befehle ansehen, mit denen ein sogenanntes Datenbankschema angelegt, gepflegt und auch wieder gelöscht werden kann. Es geht also um die sogenannte SQL- Data Definition
MehrInhaltsverzeichnis. Lothar Piepmeyer. Grundkurs Datenbanksysteme. Von den Konzepten bis zur Anwendungsentwicklung ISBN:
Lothar Piepmeyer Grundkurs Datenbanksysteme Von den Konzepten bis zur Anwendungsentwicklung ISBN: 978-3-446-42354-1 Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-42354-1
MehrInhaltsverzeichnis. Vorwort Kapitel 1 Einleitung... 15
Vorwort..................................................... 13 Kapitel 1 Einleitung.......................................... 15 Kapitel 2 SQL der Standard relationaler Datenbanken... 19 2.1 Die Geschichte................................
MehrWiederholung VU Datenmodellierung
Wiederholung VU Datenmodellierung VU Datenbanksysteme Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Wintersemester
MehrInhaltsverzeichnis. Vorwort 13. Kapitel 1 Einleitung 15
Vorwort 13 Kapitel 1 Einleitung 15 Kapitel 2 SQL-der Standard relationaler Datenbanken... 19 2.1 Die Geschichte 19 2.2 Die Bestandteile 20 2.3 Die Verarbeitung einer SQL-Anweisung 22 2.4 Die Struktur von
Mehr3. Übungszettel (Musterlösung)
3. Übungszettel (Musterlösung) Einführung in Datenbanksysteme Datenbanken für die Bioinformatik Heinz Schweppe, Jürgen Broß, Katharina Hahn Übungsaufgaben 1. Aufgabe (DDL + Constraints) XX Punkte Die Tabellen
MehrDatenmodelle und Datenbanken 2
Datenmodelle und Datenbanken 2 Prof. N. Fuhr Institut für Informatik und Interaktive Systeme Arbeitsgruppe Informationssysteme 24. Februar 2005 Hinweise zur Bearbeitung Die Zeit läuft erst, wenn Sie alle
MehrSQL - Datenbankdesign - Aufbau
SQL - Datenbankdesign - Aufbau Kompakt-Intensiv-Training Unsere fünftägige ANSI SQL Schulung vermittelt Ihnen alle nötigen Kenntnisse zur Erstellung von Datenauswertungen und Programmierung wiederkehrender
MehrSQL 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-
MehrDatenbanktechnologie 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
MehrAuf einen Blick. Abfrage und Bearbeitung. Erstellen einer Datenbank. Komplexe Abfragen. Vorwort... 13
Auf einen Blick Vorwort... 13 Teil 1 Vorbereitung Kapitel 1 Einleitung... 17 Kapitel 2 SQL der Standard relationaler Datenbanken... 21 Kapitel 3 Die Beispieldatenbanken... 39 Teil 2 Abfrage und Bearbeitung
MehrRückblick: Datenbankentwurf
Rückblick: Datenbankentwurf Entity-Relationship-Modell für konzeptuellen Entwurf Entitytypen (entity types) (z.b. Studenten) Beziehungstypen (relationships) (z.b. hören) Attribute beschreiben Gegenstände
MehrTeil 2-5. Vorlesung. Modul: Programmierung B-PRG Grundlagen der Programmierung II
Teil 2-5. Vorlesung Modul: Programmierung B-PRG Professur für Datenbanken und Informationssysteme Dr. Karsten Tolle tolle@dbis.cs.uni-frankfurt.de 1 2 Fahrplan Heute: ER relationales Modell Nächste Woche:
MehrDatenschutz: Zugriffsrechte in SQL
12. Datenschutz: Zugriffsrechte in SQL 12-1 12. Datenschutz: Zugriffsrechte in SQL 12-2 Inhalt Datenschutz: Zugriffsrechte in SQL 1. Anforderungen, Allgemeines 2. Die SQL-Befehle GRANT und REVOKE 3. Sichten
MehrPRG2 Folien Zicari Teil 4 Einführung in Datenbanken SS 2007
Folien Zicari Teil 4 Einführung in Datenbanken SS 2007 Prof. Dott. Ing. Roberto Zicari Johann Wolfgang Goethe-Universität Frankfurt am Main Fachbereich Informatik und Mathematik IV-1 Relationales Datenmodell
MehrDieser Foliensatz darf frei verwendet werden unter der Bedingung, dass diese Titelfolie nicht entfernt wird.
Thomas Studer Relationale Datenbanken: Von den theoretischen Grundlagen zu Anwendungen mit PostgreSQL Springer, 2016 ISBN 978-3-662-46570-7 Dieser Foliensatz darf frei verwendet werden unter der Bedingung,
MehrAuf einen Blick. Abfrage und Bearbeitung. Erstellen einer Datenbank. Komplexe Abfragen. Vorwort 13
Auf einen Blick Vorwort 13 Teil 1 Vorbereitung Kapitel 1 Einleitung 17 Kapitel 2 SQL - der Standard relationaler Datenbanken 21 Kapitel 3 Die Beispieldatenbanken 39 Teil 2 Abfrage und Bearbeitung Kapitel
MehrDatenbanken (Übung 12)
Datenbanken (Übung 12) Prof. Dr.-Ing. Norbert Fuhr Dipl.-Inform. Thomas Beckers (tbeckers@is.inf.uni-due.de) Universität Duisburg-Essen Fachgebiet Informationssysteme 1. 2. Februar 2012 Dipl.-Inform. Thomas
MehrRelationale Datenbanken
Ramon A. Mata-Toledo, Pauline K. Cushman Relationale Datenbanken Schaum's Repetitorien Übersetzung aus dem Amerikanischen von G&U Technische Dokumentation GmbH Z Die Autoren 9 Vorwort 9 1 Ein Überblick
MehrErzeugung und Veränderung von Tabellen
Datenbanken - Objekte Erzeugung und Veränderung von Tabellen Objekt Tabelle View Sequence Index Synonym Basiseinheit zum Speichern; besteht aus Zeilen und Spalten; Logische Repräsentation; kann Teilmengen
MehrInformatik 10 Mar Datenbanken: RDM Normalisierung April 2014
Normalisierung Eine Datenbank gilt als konsistent, wenn sie bestimmten Kriterien, den sog. Integritätsbedingungen genügt. Die Integritätsbedingungen sollen also dafür sorgen, dass keine unkorrekten Daten
MehrUniversität Augsburg, Institut für Informatik WS 2007/2008 Prof. Dr. W. Kießling 18. Jan Dr. A. Huhn, M. Endres, T. Preisinger Übungsblatt 12
Universität Augsburg, Institut für Informatik WS 2007/2008 Prof Dr W Kießling 18 Jan 2008 Dr A Huhn, M Endres, T Preisinger Übungsblatt 12 Datenbanksysteme I Hinweis: Das vorliegende Übungsblatt besteht
MehrKapitel 3: Datenbanksysteme
LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2008 Kapitel 3: Datenbanksysteme Vorlesung:
MehrAbhängigkeiten und Normalisierung
Abhängigkeiten und Abhängigkeiten als Ursachen für Inkonsistenzen Der sprozess Normalformen (1NF, 2NF, 3NF) Seite 1 Abhängigkeiten Funktionale Abhängigkeit Ein Attribut bzw. eine Attributkombination A
MehrDatenbanken erstellen Liste von Datenbanken anzeigen Datenbanken löschen. MySQL 4, 5. Kapitel 06: Datenbanken. Marcel Noe
MySQL 4, 5 Kapitel 06: Datenbanken Gliederung 1 Datenbanken erstellen 2 3 Datenbanken erstellen CREATE DATABASE erstellt. Optional kann der Parameter IF NOT EXISTS die Datenbank bereits existiert.
MehrOracle 10g Einführung
Kurs Oracle 10g Einführung Teil 5 Einführung Timo Meyer Administration von Oracle-Datenbanken Timo Meyer Sommersemester 2006 Seite 1 von 16 Seite 1 von 16 Agenda 1 Tabellen und Views erstellen 2 Indizes
MehrMicrosoft Access 2010 SQL nutzen
Microsoft Access 2010 SQL nutzen Welche Bestellungen hat Kunde x aufgegeben? Welche Kunden haben noch nie bestellt? Wer hat welche Bestellungen von welchen Kunden aufgenommen? S(tructured)Q(uery)L(anguage)
MehrGruppe B Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit.
Gruppe B Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit. PRÜFUNG AUS DATENMODELLIERUNG (184.685) GRUPPE B 22.06.2012 Matrikelnr. Familienname
MehrSQL. SQL: Structured Query Language. Früherer Name: SEQUEL. Standardisierte Anfragesprache für relationale DBMS: SQL-89, SQL-92, SQL-99
SQL Früherer Name: SEQUEL SQL: Structured Query Language Standardisierte Anfragesprache für relationale DBMS: SQL-89, SQL-92, SQL-99 SQL ist eine deklarative Anfragesprache Teile von SQL Vier große Teile:
MehrDas relationale Datenmodell
Das relationale Datenmodell Konzepte Attribute, Relationenschemata, Datenbank-Schemata Konsistenzbedingungen Beispiel-Datenbank Seite 1 Einführung Zweck datenmäßige Darstellung von Objekten und Beziehungen
MehrRückblick: Relationales Modell
Rückblick: Relationales Modell Relationales Modell als vorherrschendes Datenmodell Relationen (Tabellen) besitzen Attribute (Spalten) mit Wertebereichen und beinhalten Tupel (Zeilen) Umsetzung eines konzeptuellen
MehrGruppe A Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit.
Gruppe A Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit. PRÜFUNG AUS DATENMODELLIERUNG (184.685) GRUPPE A MUSTERLÖSUNG 06.05.2014 Matrikelnr.
MehrDaten Bank. 2. Vorlesung. Dr. Karsten Tolle PRG2 SS 2015
Daten Bank 2. Vorlesung Dr. Karsten Tolle PRG2 SS 2015 Letzte Vorlesung Grundbegriffe SQL create table insert select Dr. Karsten Tolle PRG2 SS 2015 2 Heute Übersicht Modellierung (ER-Diagramme) Entitäten
MehrDatenbanken Unit 4: Das Relationale Modell & Datenintegrität
Datenbanken Unit 4: Das Relationale Modell & Datenintegrität 15. III. 2016 Outline 1 Organisatorisches 2 SQL 3 Relationale Algebra Notation 4 Datenintegrität Organisatorisches Erster Zwischentest: nach
MehrAufgabe 1) Übung 4: 1.2
Übung 4: Aufgabe 1) 1.2 Relation: Eine Relation besteht aus Attributen und Tupeln. Sie wird üblicherweise mit Hilfe einer Tabelle beschrieben, welche in zweidimensionaler Anordnung die Datenelemente erfasst.
MehrER-Modell, Normalisierung
ER-Modell Mit dem Entity-Relationship-Modell kann die grundlegende Tabellen- und Beziehungsstruktur einer Datenbank strukturiert entworfen und visualisiert werden. Das fertige ER-Modell kann dann ganz
MehrNormalformen: 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-
MehrInhalt. 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,
MehrDieser Foliensatz darf frei verwendet werden unter der Bedingung, dass diese Titelfolie nicht entfernt wird.
Thomas Studer Relationale Datenbanken: Von den theoretischen Grundlagen zu Anwendungen mit PostgreSQL Springer, 2016 ISBN 978-3-662-46570-7 Dieser Foliensatz darf frei verwendet werden unter der Bedingung,
MehrEntwurf von Relationalen Datenbanken (1) (mit dem Entity-Relationship-Modell)
In der Regel werden Diskursbereiche durch mehrere Relationen (Tabellen) abgebildet. Ziele: Entwurf von Relationalen Datenbanken (1) (mit dem Entity-Relationship-Modell) Vermeiden von Redundanz in Relationen
MehrDaniel Warner SQL. Das Praxisbuch. Mit 119 Abbildungen. Franzis
Daniel Warner SQL Das Praxisbuch Mit 119 Abbildungen Franzis Inhaltsverzeichnis Teil I - Einleitung 15 1 Einleitung 17 1.1 Zum Aufbau des Buchs 17 1.2 Hinweise zur Buch-CD 18 1.3 Typografische Konventionen
MehrWebbasierte Informationssysteme
SS 2004 Prof. Dr. Stefan Böttcher Universität Paderborn - SS 2004 - Prof. Dr. Stefan Böttcher Folie 1 Was ist eine relationale Datenbank? Menge von Relationen (=Tabellen) und Constraints (=Integritätsbedingungen)
Mehr10. Datenbank Design 1
1 Die Hauptaufgabe einer Datenbank besteht darin, Daten so lange zu speichern bis diese explizit überschrieben oder gelöscht werden. Also auch über das Ende (ev. sogar der Lebenszeit) einer Applikation
Mehr10. Datenbank- Design
10. Datenbank- Design Objektrelationale Abbildung 1 Eigenschaften einer Datenbank Persistenz Daten gehen bei Programmende nicht verloren Zuverlässigkeit Konsistenz, Integrität, Unversehrtheit, Effizienz
MehrMengenvergleiche: 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
MehrGrundlagen zu Datenbanken zu Beginn der Jgst. 13
Grundlagen zu Datenbanken zu Beginn der Jgst. 13 Bereits bei der Planung einer Datenbank muss der Datenbankentwickler darauf achten, Nachteile für das spätere System zu vermeiden. Die Strukturen müssen
MehrPRG-2 Musterlösung Blatt 9 SS Dies ist eine Musterlösung. Trotzdem können hier auch Fehler enthalten sein also keine Gewähr auf Korrektheit!
PRG-2 Musterlösung Blatt 9 SS 2015 Dies ist eine Musterlösung. Trotzdem können hier auch Fehler enthalten sein also keine Gewähr auf Korrektheit! Aufgabe 1 a) hatpraegeherr Praegeherr Amt Praegeherr_Person
MehrNormalisierung I. Ziele
Normalisierung I Lehr- und Forschungseinheit Datenbanken und Informationssysteme 1 Ziele Formale Ermittlung von Schlüsselkandidaten Funktionale Abhängigkeiten Normalformen Lehr- und Forschungseinheit Datenbanken
MehrKlausur Datenbanken II
Klausur Datenbanken II 8.3.2001 Name Vorname Semester Matrikelnr Aufgabe Punkte maximal 1 8 2 8 3 3 4 3 5 4 6 6 7 6 8 6 9 [Zusatz] [4] Summe 44 Punkte erreicht Bitte geben Sie die Lösungen möglichst direkt
MehrÜberblick Felix Naumann. Zugriffsrechte Zugriffsrechte erzeugen Zugriffsrechte prüfen Zugriffsrechte vergeben Zugriffsrechte entziehen
Datenbanksysteme I Zugriffskontrolle (kleiner Einschub) 18.1.2007 Felix Naumann Überblick 2 Zugriffsrechte Zugriffsrechte erzeugen Zugriffsrechte prüfen Zugriffsrechte vergeben Zugriffsrechte entziehen
Mehr4. Normalformen. Qualitätsanforderungen an Tabellen. Klassische Normalformen (1,. 2., 3.) Spezielle Normalformen
4. Normalformen Qualitätsanforderungen an Tabellen Klassische Normalformen (1,. 2., 3.) Spezielle Normalformen 79 Normalisierungsgründe Verständlicheres Datenmodell für Anwender und Entwickler Vermeidung
MehrAufgabe 1: Kanonische Überdeckung
Aufgabe 1: Kanonische Überdeckung Ist die kanonische Überdeckung F c einer Menge F von funktionalen Abhängigkeiten eindeutig? Begründen Sie Ihre Antwort. Die kanonische Überdeckung F c einer Menge F von
MehrRelationaler Datenbank-Entwurf. Kapitel 7: Normalformen. Schrittweises Vorgehen:
Ludwig Maximilians Universität München Institut für Informatik Lehr- und Forschungseinheit für Datenbanksysteme Skript zur Vorlesung Wintersemester 2003/2004 Abteilung für Datenbanksysteme 2002 Christian
MehrWirtschaftsinformatik 7a: Datenbanken. Hochschule für Wirtschaft und Recht SS 16 Dozent: R. Witte
Wirtschaftsinformatik 7a: Datenbanken Hochschule für Wirtschaft und Recht SS 16 Dozent: R. Witte Drei Gäste bezahlen nach einem gemeinsamen Abendessen eine Rechnung von 30 Euro, so dass jeder 10 Euro gibt.
MehrPostgreSQL unter Debian Linux
Einführung für PostgreSQL 7.4 unter Debian Linux (Stand 30.04.2008) von Moczon T. und Schönfeld A. Inhalt 1. Installation... 2 2. Anmelden als Benutzer postgres... 2 2.1 Anlegen eines neuen Benutzers...
MehrTU 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. 11 Hausaufgabe 1 Übung zur Vorlesung Grundlagen: Datenbanken im WS13/14 Henrik Mühe (muehe@in.tum.de)
MehrWir haben folgende Ausprägung der Relation Studenten:
Übungen Aufgabe Wir haben folgende Ausprägung der Relation Studenten: SID Name Email Age Note 2833 Jones jones@scs.ubbcluj.ro 9 9 2877 Smith smith@scs.ubbcluj.ro 2 8 2976 Jones jones@math.ubbcluj.ro 2
MehrSQL 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
MehrKapitel 11. Normalisierung
Kapitel 11 Normalisierung Ziel: Ziel und Idee der Normalisierung Anpassen an die Erfordernisse des Relationenmodells (1. Normalform) Vermeidung von Redundanz (weitere Normalformen) Keine Fehler (Anomalien)
MehrZerlegung einer Relation
Normalformen Normalisierung Normalformen definieren Qualitätskriterien (Vermeidung der Inkonsistenzen) Redundanz ist oft die Ursache von Schemata Probleme (keine FDs keine Redundanz) Normalisierung: Jede
MehrDieser Foliensatz darf frei verwendet werden unter der Bedingung, dass diese Titelfolie nicht entfernt wird.
Thomas Studer Relationale Datenbanken: Von den theoretischen Grundlagen zu Anwendungen mit PostgreSQL Springer, 2016 ISBN 978-3-662-46570-7 Dieser Foliensatz darf frei verwendet werden unter der Bedingung,
MehrIn diesem Abschnitt wollen wir uns mit der Architektur von Datenbank Managements Systemen beschäftigen.
1 In diesem Abschnitt wollen wir uns mit der Architektur von Datenbank Managements Systemen beschäftigen. Zunächst stellt sich die Frage: Warum soll ich mich mit der Architektur eines DBMS beschäftigen?
MehrDas 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
MehrDATENBANKEN 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.
Mehr9. Sicherheitsaspekte
9. Sicherheitsaspekte Motivation Datenbanken enthalten häufig sensible Daten (z.b. personenbezogene oder unternehmenskritische) Vielzahl verschiedener Benutzer hat Zugriff (z.b. Anwendungen, Mitarbeiter,
MehrDatenbanksysteme Teil 3 Indizes und Normalisierung. Stefan Maihack Dipl. Ing. (FH) Datum:
Datenbanksysteme Teil 3 Indizes und Normalisierung Stefan Maihack Dipl. Ing. (FH) Datum: 01.11.2005 1 MySQL - Normalisierung Durch die Normalisierung von Tabellen soll folgendes erreicht werden Redundanzfreie,
MehrInhaltsverzeichnis Vorwort zur vierten Auflage Vorwort zur dritten Auflage Vorwort zur zweiten Auflage Vorwort zur ersten Auflage Hinweise zur CD
Vorwort zur vierten Auflage 11 Vorwort zur dritten Auflage 13 Vorwort zur zweiten Auflage 15 Vorwort zur ersten Auflage 17 Hinweise zur CD 19 1 Datenbanken und Datenbanksysteme 21 1.1 Zentralisierung der
Mehr7. Ü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
MehrIn diesem Anschnitt geht es um die SQL Anweisungen, mit denen ich den Zugriff auf das Datenbankschema steuern kann.
In diesem Anschnitt geht es um die SQL Anweisungen, mit denen ich den Zugriff auf das Datenbankschema steuern kann. All diese Befehle werden unter dem Begriff SQL DLC Data Control Language zusammengefasst.
MehrDatenbanksysteme und Datenmodellierung
Datenbanksysteme und Datenmodellierung Begleitende Übung zur Vorlesung von Prof. Dr. Uwe H. Suhl Normalisierung (2) und Weihnachts-Special (Termin #08: 15.12.2004) Wintersemester 2004 / 2005 Freie Universität
MehrKapitel 1: Einführung 1.1 Datenbanken?
1. Einführung 1.1. Datenbanken? Seite 1 Kapitel 1: Einführung 1.1 Datenbanken? 1. Einführung 1.1. Datenbanken? Seite 2 Willkommen! Studierenden-Datenbank Hans Eifrig hat die Matrikelnummer 1223. Seine
MehrE-R-Modell zu Relationenschema
Raum: LF 230 Nächste Sitzung: 27./30. Oktober 2003 Aktuelle Informationen unter: http://www.is.informatik.uni-duisburg.de/teaching/lectures/dbp_ws03/index.html E-R-Modell zu Relationenschema Als zweiter
Mehr