Erhard Künzel für Info 9. Klasse: © Erhard Künzel für digitale-schule-bayern.

Slides:



Advertisements
Ähnliche Präsentationen
Spielen “to play” Was spielst du?.
Advertisements

Erkennst du den Superheld? Wer kennt den Superheld?
Erhard Künzel für Info 9. Klasse: Digitale Schule Bayern© Erhard Künzel.
Meldungen von Gonorrhoe in Bayern (GeschKrG)
GEO Wissen, Nr. 26, Frau & Mann
Einsatz von SiSy in der Berufsausbildung
Indefinitpronomen.
Datenmodellierung - Aufbau einer Datenbank -
Buch S73ff (Informatik I, Oldenbourg-Verlag)
Datenbanken 13: Objekt-Klasse-Datenbank
Herrschaft über Land und Leute
Datenbanken 7: Schlüssel
Erhard Künzel für Info 9. Klasse: Digitale Schule Bayern© Erhard Künzel.
Erhard Künzel für Info 9. Klasse: Digitale Schule Bayern© Erhard Künzel.
Erhard Künzel für Info 9. Klasse: Digitale Schule Bayern© Erhard Künzel.
Erhard Künzel für Info 9. Klasse: Digitale Schule Bayern© Erhard Künzel.
Datenbanken 2: Die relationale Datentabelle
© Katharina Brachmann Bedingte Funktionen Oldenbourg S48ff
Herrschaft über Land und Leute
© Katharina Brachmann Normalformen Oldenbourg S137, Klett S117
- Die wichtigsten Wortarten im Überblick -
Erhard Künzel für Info 9. Klasse: digitale-schule-bayern.de © Erhard Künzel.
Datenbanken 10: Einfügen, Ändern, Löschen
Erhard Künzel für Info 9. Klasse: digitale-schule-bayern.de © Erhard Künzel.
Was ist eine Klasse?.
Erhard Künzel für Info 9. Klasse: Digitale Schule Bayern© Erhard Künzel.
Datenbanken 2: Einfache Aufgaben mit TabCalc
Erhard Künzel für Info 9. Klasse: Digitale Schule Bayern © Erhard Künzel.
Erhard Künzel für Info 9. Klasse: digitale-schule-bayern.de © Erhard Künzel.
Algorithmik Anweisungen (Buch S111)
Informationsdarstellung mit Multimediadokumenten
Informationsdarstellung mit Multimediadokumenten
Buch S70ff (Informatik I, Oldenbourg-Verlag)
Beziehungen zwischen Klassen
3.5.2 Fremdschlüssel/ Referentielle Integrität (1/9)
Präsentation.
Erhard Künzel für Info 9. Klasse:. Bezeichner für Bezüge Attribut Bezeichner Weitere Funktionen Mehrere Flüsse Drucken Digitale Schule Bayern© Erhard.
Platz für einen Titel Platz für einen (längeren) Untertitel.
Separable Prefix Verbs abfahrenankommeneinkaufeneinkaufengehenmitbringenmitkommenvorbeikommen.
Eine Tour durch … LehrerDialog.de Das soziale Netzwerk für Lehrerinnen und Lehrer.
Den Webauftritt optimal nutzen
Erhard Künzel für Info 9. Klasse: Digitale Schule Bayern© Erhard Künzel.
Mathematik - KARAOKE ...wer sprechen kann, der kann auch Mathe!!!
Kapitel 8 Erste Stufe. Was ist heute in? schwarze Jeans.
Erhard Künzel für Info 9. Klasse: Digitale Schule Bayern© Erhard Künzel.
können, wollen und mögen
Erhard Künzel für Info 9. Klasse: Digitale Schule Bayern© Erhard Künzel.
Humor 7 Viel Spaß!.
Comedison Inhalt rechtliche Aspekte ethisches Bewusstsein entwickeln Der Chef hört mit © 2010 Dirk Boehmer, Wolfgang Bossert Da habe ich doch einiges über.
Mathetest
Informatik Im WPI – Bereich.
Was ist eine Datenbank „MS Access“
„ Das Vier-Seiten-Modell“
Ü bersetzen KlamottenFragenVerbenAntworten
Scherzfragen.
Sabine geht auch weg.. Sabine geht auch weg. Sie stößt gegen einen Mann.
You need to use your mouse to see this presentation
Freunde.
Bellwork- Tag 35 Write the German word for the room, in which you would most likely find the furniture: 1. die Kommode 2. die Badewanne 3. das Bett.
Muster! gestreiftkariert glitzerndgepunktet
und du hast wieder mal nichts anderes zu tun, als am PC zu sitzen
A Workshop About this chapter General description Units Time Schedule
Stehendes Pendel Diplomarbeit 2006/2007.
Vorbereitung auf die Klassenarbeit 1
Gehe in Arbeitsplatz company Schuljahr 15/16 Klasse 6 Aufgaben Ganze umrechnen.

Veranstaltung: Datenbanken I Dozent: Ioannis Papakostas Belegarbeit 6 Online-Bestellung von Büchern Stefan Rüschenberg (Matrikel-Nr.: ) Sebastian.
 Präsentation transkript:

Erhard Künzel für Info 9. Klasse: © Erhard Künzel für digitale-schule-bayern

0 Realisierung von Beziehungen durch Fremdschlüssel 1 Konsistenzprobleme bei Fremdschlüsseln 2 Möglichkeiten, die das Datenbankmanagement- system bietet (Cascade...). © Erhard Künzel für digitale-schule-bayern

Eine dynamisch aufgebaute Seite Dahinter steckt sicher eine Datenbank © Erhard Künzel für digitale-schule-bayern Bildquelle: shop.hm.com

Wir interessieren uns für Sonderangebote Aber nicht nur für Männer © Erhard Künzel für digitale-schule-bayern Bildquelle: shop.hm.com

Stöbere ein wenig im Outlet Überlege dann, welche Datentabellen du anlegen würdest. Schreibe drei Klassen auf! © Erhard Künzel für digitale-schule-bayern Bildquelle: shop.hm.com

Herren … … Oberteile … … Unterteile … … Hemd … … Blazer … … © Erhard Künzel für digitale-schule-bayern Bildquelle: shop.hm.com

… … KUNDENTYP 1 <für braucht> n … … KATEGORIE … … ARTIKEL hat > n 1 <gehörtZu Herren … … Oberteile … … Unterteile … … Hemd … … Blazer … … © Erhard Künzel für digitale-schule-bayern

TID: 2 Damen Name: Damen … … KID: 17 Tops Name: Tops TID: 2 AID: 562 Trägertop Name: Trägertop KID: 17 TID Name … KUNDENTYP INT VARCHAR… 2 2 Damen KID Name INT VARCHAR 17 Tops TID INT 2 2 KATEGORIE AID Name … INT VARCHAR 562 Trägertop… KID INT 17 ARTIKEL Fehlerquelle: Der Fremdschlüssel hat den gleichen Datentyp wie der referenzierte Primärschlüssel! Ändern der TID ? Löschen dieses Datensatzes? © Erhard Künzel für digitale-schule-bayern Einfügen der Kategorie Tops wenn es den Kundentyp Damen noch nicht gibt?

CREATE TABLE Typ ( TID int NOT NULL AUTO_INCREMENT PRIMARY KEY, Name varchar(30) DEFAULT NULL ) ENGINE=InnoDB; CREATE TABLE Kategorie ( KID int NOT NULL AUTO_INCREMENT PRIMARY KEY, Name varchar(30) DEFAULT NULL, TID int, KEY (TID), CONSTRAINT FOREIGN KEY (TID) REFERENCES typ (TID) ON DELETE RESTRICT ON UPDATE RESTRICT ) ENGINE=InnoDB; © Erhard Künzel für digitale-schule-bayern

CREATE TABLE artikel ( AID int NOT NULL AUTO_INCREMENT PRIMARY KEY, Name varchar(30) DEFAULT NULL, KID int, KEY (KID), CONSTRAINT FOREIGN KEY (KID) REFERENCES kategorie (KID) ON DELETE RESTRICT ON UPDATE RESTRICT ) ENGINE=InnoDB; Füge mindestens drei Datensätze in jede Tabelle ein. Mache dann einen SQL-Dump damit du nach Löschen wieder deine Tabellen und Daten hast. © Erhard Künzel für digitale-schule-bayern

Versuche in Kundentyp und in Kategorie Datensätze zu löschen, auf die sich andere Datensätze mit Fremdschlüsseln beziehen. Statt ON DELETE RESTRICT probiere dann ON DELETE NO ACTION oder ON DELETE SET NULL oder ON DELETE CASCADE. Du solltest bei jeder Variante erst die Datentabellen mit dem SQL-Dump neu erstellen. © Erhard Künzel für digitale-schule-bayern

TID Name … KUNDENTYP 2 2 Damen KID Name 17 Tops TID 2 2 KATEGORIE AID Name … 562 Trägertop … KID 17 ARTIKEL 3 3 Herren 23 Hosen Sport Pulli … Jogginghose 25 © Erhard Künzel für digitale-schule-bayern

TID Name … KUNDENTYP 2 2 Damen KID Name 17 Tops TID 2 2 KATEGORIE AID Name … 562 Trägertop … KID 17 ARTIKEL 3 3 Herren 23 Hosen Sport Pulli … Jogginghose 25 Löschen dieses Datensatzes ist unmöglich Der könnte noch gelöscht werden Kann nicht in 4 geändert werden © Erhard Künzel für digitale-schule-bayern

KID Name 17 Tops TID 2 2 KATEGORIE AID Name … 562 Trägertop … KID 17 ARTIKEL 23 Hosen Sport Pulli … Jogginghose 25 Tops für ??? © Erhard Künzel für digitale-schule-bayern

KID Name 17 Tops TID NULL KATEGORIE AID Name … 562 Trägertop … KID 17 ARTIKEL 23 Hosen NULL 25 Sport NULL 693 Pulli … Jogginghose 25 SELECT * FROM KATEGORIE WHERE TID IS NULL SELECT * FROM KATEGORIE WHERE TID IS NULL © Erhard Künzel für digitale-schule-bayern

TID Name … KUNDENTYP KID Name TID KATEGORIE AID Name … KID ARTIKEL 3 3 Herren Damen gelöscht Alle referenzierten Kategorien weg! Auch alle referenzierten Artikel weg!

TID Name … KUNDENTYP 5 5 Damen KID Name 17 Tops TID 5 5 KATEGORIE AID Name … 562 Trägertop … KID 17 ARTIKEL 3 3 Herren 23 Hosen Sport Pulli … Jogginghose 25 © Erhard Künzel für digitale-schule-bayern Wenn man das ändert, … … dann ändert sich das automatisch!

Das Datenbankmanagementsystem überwacht Änderungen an Daten, auf die sich Fremdschlüssel beziehen. Bei Restrict erlaubt es Änderungen / Löschungen nicht (meist die beste Wahl). No Action ist selten sinnvoll. On Update Cascade kann sinnvoll sein, On Delete Cascade kann viel löschen (Programmierer feuern!). On Delete Set Null ist oft die beste Alternative zu On Delete Cascade. © Erhard Künzel für digitale-schule-bayern

Wir prüfen, wie bei Set-Angeboten (Hose + Top als 1:1-Beziehung zwischen Artikeln) die Fremdschlüssel behandelt werden sollten. Auf einer Bestellung stehen mehrere Artikel, ein Artikel kann auf mehreren Bestellungen stehen. Diese m:n-Beziehung sollst du untersuchen. Wo sind Fremdschlüssel? Was macht das System beim Löschen eines Artikels oder einer Bestellung bei Restrict oder Cascade? © Erhard Künzel für digitale-schule-bayern