Datenbanken Einführung

Slides:



Advertisements
Ähnliche Präsentationen
Object Relational Mapping
Advertisements

Transaktionsverwaltung Beispiel einer typischen Transaktion in einer Bankanwendung: 1.Lese den Kontostand von A in die Variable a: read(A,a); 2.Reduziere.
Datenbankdesign mit ACCESS.
Datenbanken Beispiel: Musikverwaltungsdatenbank Daten: Musikstück
Datenbanken Einführung.
Folien 2-5, 7-8 © Prof. Dr. Manfred Rössle (FH Aalen)
spezielle Nutzersichten formale Ebene (deskriptive Regeln)
Transaktionsverwaltung Beispiel einer typischen Transaktion in einer Bankanwendung: 1.Lese den Kontostand von A in die Variable a: read(A,a); 2.Reduziere.
MS Office-Paket: Access
Kapitel 3: Das Relationenmodell
Datenbanken I (0,*) Produkt 3 Karczewski Datenbanken I.
Anfragesprachen – Dipl. Ing. Ulrich Borchert / FH Merseburg1/7 Datenbanken werden als Anhäufung von Werten eines Wertebereiches aufgefasst und Datenbankabfragen.
SQL als Abfragesprache
Datenbankdesign und Normalisierung
Daten bank St. Wiedemann.
Datenbankentwurf mit Hilfe des ER-Modells entwickeln
Datenbanken Christof Rumpf
Access 2000 Datenbanken.
Datenbanken Einführung Merkmale dateiorientierte Datenverwaltung
Datenintegrität Referentielle Integrität create table
Fachbereich Mathematik/Informatik Universität Osnabrück
1 Kapitel 12: Transaktionsverwaltung. 2 Transaktion Bündelung mehrerer Datenbankoperationen Mehrbenutzersynchronisation Recovery.
3.5.2 Fremdschlüssel/ Referentielle Integrität (1/9)
Synchronisation paralleler Transaktionen AIFB SS Konzept der Transaktion 4.2 Konzept der Transaktion (1/4) Eine Transaktion ist ein in sich geschlossener,
Betriebliche Informationssysteme Prof. Dr. Michael Löwe
Einführung und Überblick
Relationale Datenbankmodelle
... und alles was dazugehört
Integritätsbedingungen
Datenbanken?.
Einführung Access Einführung und Datenbankgrundbegriffe
Datenbank.
WS 2012/13 Datenbanksysteme Mi 15:15 – 16:45 R Vorlesung #11 Transaktionsverwaltung.
WS 2011/12 Datenbanksysteme Mi 15:15 – 16:45 R Vorlesung #10 Transaktionsverwaltung.
Vorlesung #4 Überführung des ER-Modells in das relationale Modell
WS 2013/14 Datenbanksysteme Do 17:00 – 18:30 R Vorlesung #7 SQL (Teil 4)
Allgemeines zu Datenbanken
(D.h. „Hallo MausFans!“ auf Japanisch).
DI (FH) DI Roland J. Graf MSc (GIS) U N I V E R S I T Ä T S L E H R G A N G Geographical Information Science & Systems UNIGIS.
Access Einführung in das Datenbank-Management-System Grundlagen.
Freiwillige Feuerwehr der Stadt Perg
Transaktion Huang Zhenhao FU Shuai.
Relationales Datenmodell und DDL
XML und Datenbanken © 2006 Markus Röder
verstehen planen bearbeiten
Normalisierungsprozess
Transaktionsverwaltung
Einführung Dateisystem <-> Datenbanksystem
Datenbanken Eine Einführung.
SS 2014 – IBB4B Datenmanagement Do 17:00 – 18:30 R Vorlesung #4 Überführung des ER-Modells in das relationale Modell.
Datenbanken als Kern bibliothekarischer Informationsvermittlung Vortrag auf der 3. Gemeinsamen Jahrestagung der Arbeitsgemeinschaft katholisch-theologischer.
Modellierung der Wirklichkeit
Dynamische Webseiten mit MySql und PHP
Transaktionsverwaltung Beispiel einer typischen Transaktion in einer Bankanwendung: 1.Lese den Kontostand von A in die Variable a: read(A,a); 2.Reduziere.
Datenbanken Maya Kindler 6c.
WS 2014/15 Datenbanksysteme Do 17:00 – 18:30 R Vorlesung #9 SQL Zusammenfassung.
SS 2015 – IBB4C Datenmanagement Fr 17:00 – 18:30 R Vorlesung #4 Überführung des ER-Modells in das relationale Modell.
Datenbanken Datenbank-Entwurf
Datenbanken erstellen mit PostgreSQL
Datenbanken abfragen mit SQL
Vom Konzept zur Datenbank
BHAK/BHAS 1 Salzburg KIDM 2ASBS Schuljahr 2004/05
15 Tabellen erstellen und Tabellenstruktur bearbeiten Grundlagen zu Tabellen l Tabelle l Enthält Daten zu einem bestimmten Thema l Beispiele:  Mitarbeiterdaten.
SQL Lutz KleinostendarpJOBELMANN-SCHULE Datendefinition Die Organisation einer Datenbank basiert auf einer Anzahl verschiedener Objekte. Diese können physikalischer.
SQL Basics Schulung –
Datenbanken Eine Einführung Kerstin Fröhlig, HHBK.
Von Wietlisbach, Lenzin und Winter
Datenbanksystem Von Anna und Robin.
Da·ten·bank /Dátenbank/ Substantiv, feminin [die]
Datenbanken Von Amed und Alicia.
 Präsentation transkript:

Datenbanken Einführung N. Nazar S. Baldes

Daten, Daten, Daten, ...

Speichern im Dateisystemen Anwendung 1 Anwendung 2 physikalische Datei 1 physikalische Datei 2

Speichern im Dateisystem Anwendung 1 Anwendung 2 Anwendung 3 ... physikalische Datei Frage: Welche Schwierigkeiten ergeben sich?

Grenzen der Datenverwaltung in Dateien Datenredundanz Daten werden mehrfach gespeichert, größerer Speicherverbrauch, evtl. Missdeutung der Daten usw.. Verletzung der Datenintegrität Datensätze die nicht fehlen dürfen, werden versehentlich gelöscht. Daten, die einen bestimmten Wert nicht annehmen dürfen, bekommen diese zugewiesen.. Mehrbenutzerprobleme Gleichzeitiges Editieren derselben Datei führt zu Anomalien (lost update). Verlust von Daten Versehentliche Änderungen der Daten sind nicht so einfach wieder rückgängig zu machen Sicherheitsprobleme Zugriffsrechte auf nur auf Dateien, nicht auf Datensätze.. Keine (optimierte) Anfragesprache Oft ist es notwendig, sehr flexibel und einfach, Daten aus unterschiedlichsten Gesichtspunkten abzurufen.

Architektur eines Datenbanksystems Server-Client

Architektur eines Datenbanksystems Datenbankmanagementsystem (DBMS) Anwendung 1 Anwendung 2 .... Datenbankmanagementsystem (DBMS) Daten Datenbanksystem

Datenbanksystem Ein Datenbanksystem besteht aus einem Datenbankmanagementsystem (DBMS): Ein Programm zur Verwaltung der Datenzugriffe (Transaktionsverwaltung). den eigentlichen Daten (-banken). DBMS ... Systemdaten Kundendaten Datenbanksystem 18.04.2017

Vorteile der Datenverwaltung in Datenbanken Keine Datenredundanz Daten werden nur einmal gespeichert. Dafür ist ein guter Datenbankentwurf vom Entwickler notwendig. Datenintegrität Unerlaubte Veränderungen der Daten durch den Benutzer werden durch das DBMS verhindert. Auflösung von Mehrbenutzerprobleme: Transaktionen Gleichzeitiges Verändern von Daten wird verhindert. Änderungen an den Daten werden nicht sofort ausgeführt (Commit). Aktionen rückgängig machen Einzelnen Aktionen können wieder rückgängig gemacht werden (Rollback). Rechtevergabe Anlegen von Benutzer mit detaillierten Rechten. SQL als Anfragesprache Strukturierte, standardisierte Sprache zum Auffinden und Bearbeiten von Datensätzen.

ACID-Eigenschaften von DBMS Atomicity: Ein Datenzugriff (Transaktion) ist (logisch) eine nicht weiter zerlegbare Einheit; die dadurch bewirkten Änderungen in der Datenbank werden entweder vollständig oder gar nicht vorgenommen (Alles-oder- nichts-Eigenschaft). Concistency: Der Datenbestand bleibt in einem gültigen Zustand (konsistent). Änderungen in der Datenbank sind stets konform mit den vorher definierten Integritätsbedingungen! Isolation: Transaktionen laufen ungestört von anderen Transaktionen ab. (Es können nicht die selben Daten von verschiedenen Transaktionen bearbeitet werden). Einbenutzerbetrieb. Durability: Wenn eine Transaktion erfolgreich ihr Ende erreicht hat (commit), dann sind alle von ihr verursachten Änderungen dauerhaft (persistent).

Bekannte DBMS Einige bekannte Datenbankmanagementsysteme (DBMS): DB2 - das kommerzielle DBMS der Firma IBM Microsoft Access - das kommerzielle DBMS von Microsoft für PCs Microsoft SQL Server - das kommerzielle DBMS von Microsoft für große Anwendungen MySQL - das kostenfreie Open-Source-DBMS von Sun (heute Oracle) vielfach auf Internet-Servern eingesetzt Oracle Database - das kommerzielle DBMS der Firma Oracle PostgreSQL - ein kostenfreies Open-Source-DBMS http://de.wikipedia.org/wiki/Liste_der_Datenbankmanagementsysteme

Relationelle Datenbanken

Logisches und physisches Datenmodell Das logische Datenmodell ist im Wesentlichen ein Format, das die zu speichernden Daten strukturiert. Beispiel: Sie wollen in einer Datenbank folgende Informationen abspeichern: Österreich hat den Ländercode AT. Die Hauptstadt von Österreich ist Wien. Die Fläche von Österreich beträgt 84. Ägypten hat den Ländercode ET. Die Hauptstadt von Ägypten ist Kairo. Die Fläche von Ägypten beträgt 1001. Deutschland hat den Ländercode DE. Die Hauptstadt ist von Deutschland ist Berlin. Die Fläche von Deutschland beträgt 357. Überlegen Sie sich eine Struktur (Format), mittels derer Sie die obigen Daten in einer Datenbank abspeichern könnten!

Logisches und physisches Datenmodell Code Name Hauptstadt Fläche AT Österreich Wien 84 ET Ägypten Kairo 1001 DE Deutschland Berlin 357 logisches Datenmodell Datenbank physisches Datenmodell 010011001001001101001010010010010 101001011001000100111001011000110

Relationen-Modell Code Name Hauptstadt Fläche AT Österreich Wien 84 ET Ägypten Kairo 1001 DE Deutschland Berlin 357 In relationalen Datenbanken werden die zu speichernden Daten in Form von Tabellen (Relationen) logisch strukturiert. Weitere Beispiele für logische Datenmodelle: Netzwerkmodell Hierarchische Datenmodell Objektorientierte Datenmodell Am weitesten verbreitet, mit etwa 80% Marktanteil, ist aber das Relationen-Modell!

Begriffe Eine relationale Datenbank besitzt eine oder mehrere Tabellen Tabellenname (Relationsname) Datenfeld (Attribut, Spalte) Land Code Name Hauptstadt Fläche AT Österreich Wien 84 ET Ägypten Kairo 1001 DE Deutschland Berlin 357 Tabellenformat (Relationenschema) Datensatz (Tupel, Zeile) Primärschlüssel (eindeutig)

Übung 1 In der Datenbank sollen zusätzlich zu den Informationen der Tabelle Land noch die unten stehenden Daten abgespeichert werden: Die Provinz Baden ist eine deutsche Provinz mit der Fläche 15. Die Provinz Lazio ist eine italienische Provinz mit der Fläche 17. Die Stadt Freiburg ist eine deutsche Stadt aus der Provinz Baden. Sie hat 192 Einwohner und liegt auf dem Breitengrad 47,59 und dem Längengrad 7,51. Die Stadt Berlin ist eine deutsche Stadt aus der Provinz Berlin mit einer Fläche von 0,9. Sie hat 3472 Einwohner und liegt auf dem Breitengrad 52,45 und dem Längengrad 13,2. Die Stadt Rom ist eine italienische Stadt, die in der Provinz Lazio liegt, 2546 Einwohner hat und auf dem Breitengrad 41,8 und dem Längengrad 12,6 liegt.

Übung 1 Eine Lösungsmöglichkeit Viele Informationen werden mehrfach (redundant) abgespeichert. Nachteile: erhöhter Speicherbedarf Schwierigkeiten bei Änderungen Beim Löschen einer Stadt oder Provinz gehen evt. auch Informationen über das jeweilige Land verloren. Code Name Hstadt Fläche Provinz PFläche Stadt SEinwohner LG BG DE Deutschland Berlin 357 Baden 15 FR 192 7,51 47,6 0,9 3472 52,4 13,2 IT Italien Rom 457 Lazio 17 2456 41,8 12,6

Zweite Lösungsmöglichkeit Übung 1 Zweite Lösungsmöglichkeit Land Code Name Fläche Hstadt DE Deutschland 357 Berlin IT Italien 457 Provinz Provinz PFläche Land Baden 15 DE Berlin 0,9 Lazio 17 IT Stadt Provinz Land Stadt SEinwohner LG BG Baden DE FR 192 7,51 47,6 Berlin 3472 52,4 13,2 Lazio IT Rom 2456 41,8 12,6

Primärschlüssel Code Name Hauptstadt Fläche AT Österreich Wien 84 ET Ägypten Kairo 1001 DE Deutschland Berlin 357 Der Primärschlüssel (primary key) ist eine Spalte in der Tabelle. Sie legt jeden Datensatz eindeutig fest. Der Primärschlüssel darf nicht leer sein und muss eindeutig sein, d.h. es gibt keine doppelten Werte (Constraint). Im Relationenmodell wird der Primärschlüssel unterstrichen. Der Primärschlüssel kann auch aus mehreren Spalten bestehen.

Fremdschlüssel und Referentielle Integrität Land Stadt Code Name Hauptstadt Fläche AT Österreich 84 ET Ägypten 1001 DE Deutschland 357 Id Name Einwohner 1 Wien 1793 2 Kairo 7947 3 Berlin 3472 1 2 3 Ein Fremdschlüssel (foreign key) ist eine Spalte in der Tabelle, die Werte von Primärschlüsseln anderer Tabellen besitzt. Dadurch wird eine Verbindung zwischen Tabellen hergestellt. Referentielle Integrität (foreign key constraint). Fremdschlüssel haben nur solche Werte, die in Primärschlüsseln anderer Tabellen vorkommen. Ein Primärschlüssel kann nicht gelöscht werden, falls er als Fremdschlüssel in einer anderen Tabelle noch auftaucht.

Quellen Ahmad Nessar Nazar: Unterrichtsunterlagen Michael Dienert: Unterrichtsunterlagen Wikipedia