Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Seminar Datenbankanwendung für Architekten neunter Termin.

Ähnliche Präsentationen


Präsentation zum Thema: "Seminar Datenbankanwendung für Architekten neunter Termin."—  Präsentation transkript:

1 Seminar Datenbankanwendung für Architekten neunter Termin

2 Tagesprogramm Entwurfslehre: –Übertragen von ER-Schemata in Relationenschemata Access –Formulare

3 Schritte beim Erstellen von Relationenschemata Übertragen der Entitätstypen in Relationenschemata Übertragen der ist-Ein Beziehungen Übertragen der starken 1:n Beziehungstypen Übertragen der schwachen 1:n Beziehungstypen Übertragen der 1:1 Beziehungstypen Übertragen der n:m Beziehungstypen

4 Übertragen der Entitätstypen Für jeden Entitätstyp ein eigenes Relationenschema erstellen Attribute übernehmen, geeignete Domänen festlegen Primärschlüssel geeignet wählen Person nummervornamename Person( nummer : Ganzzahl, vorname : Zeichenkette, name : Zeichenkette ) Tip: In Java ist es üblich, Klassennamen (entspricht Tabellennamen) mit Grossbuch- staben und Attributnamen mit Kleinbuchstaben zu beginnen.

5 Übung: Übertragung des folgenden ER-Schemas in Relationenschemata Schritt 1: Entitätstypen zu Relationenschemata Lager Lagereinheit umfasst enthält Produkt KomponenteFertigprodukt Händler bestehtAus kaufBei 1n m 1 nm n 1 Position Anzahl Kapazität Bezeichnung Anzahl PNummer HNummer Preis ID Größe

6 Lösung Schritt 1 Schritt 1 Entitätstypen: Lager( id:Ganzzahl, bezeichnung:Text ) Lagereinheit( position:Ganzzahl, kapazität:Zahl ) Produkt( pnummer:Ganzzahl, größe:Zahl, bezeichnung:Text ) Fertigprodukt( preis:Währung ) Komponente() Händler( hnummer:Ganzzahl )

7 Übertragen der Ist-Ein Beziehungstypen Zwei Alternativen sind abzuwägen: –Für jeden Entitätstyp wird ein eigenes Relationenschema erstellt –Nur für den Supertyp wird ein eigenes Relationenschema erstellt Person( nummer : Ganzzahl, vorname : Zeichenkette, name : Zeichenkette ) Student( nummer : Person.nummer, matrikelNummer : Ganzzahl ) Assistent( nummer : Person.nummer, personalNummer : Ganzzahl ) Person nummervornamename StudentAssistent matrikelNummerpersonalNummer Hinweis: Fremdschlüssel auf eine Tabelle schreibe ich hier als Domäne in der Form Tabelle.attributname

8 Übertragen der Ist-Ein Beziehungstypen Es gibt zwei Alternativen, die abzuwägen sind: –Für jeden Entitätstyp wird ein eigenes Relationenschema erstellt –Nur für den Supertyp wird ein eigenes Relationenschema erstellt Person( nummer : Ganzzahl, istEin : Zeichenkette, vorname : Zeichenkette, name : Zeichenkette, matrikelNummer : Ganzzahl, personalNummer : Ganzzahl ) Person nummervornamename StudentAssistent matrikelNummerpersonalNummer Hinweis: In diesem Fall sollte ein zusätzliches Attribut den Typ bezeichen

9 Übung: Übertragung des folgenden ER-Schemas in Relationenschemata Schritt 2: istEin: Generalisierung - Spezialisierung (mit mehreren Relationen) Lager Lagereinheit umfasst enthält Produkt KomponenteFertigprodukt Händler bestehtAus kaufBei 1n m 1 nm n 1 Position Anzahl Kapazität Bezeichnung Anzahl PNummer HNummer Preis ID Größe

10 Lösung Schritt 2 Schritt 1 Entitätstypen: Lager( id:Ganzzahl, bezeichnung:Text ) Lagereinheit( position:Ganzzahl, kapazität:Zahl ) Produkt( pnummer:Ganzzahl, größe:Zahl, bezeichnung:Text ) Händler( hnummer:Ganzzahl ) Schritt 2 istEin-Beziehung: Fertigprodukt( pnummer:Produkt.pnummer, preis:Währung ) Komponente( pnummer:Produkt.pnummer )

11 Übertragen der starken 1:n Beziehungstypen Übernehmen aller Schlüsselattibute des Entitätstyps auf der 1- Seite als Fremdschlüssel im Entitätstyp der n-Seite. Attribute des Beziehungstyps werden im Entitätstyp auf der n- Seite übernommen. Person( nummer : Ganzzahl, vorname : Zeichenkette, name : Zeichenkette, gehZuBer : Abteilung.bereich, gehZuNr : Abteilung.nummer, seitWann : Datum ) Person nummervornamename Abteilung gehörtZu nummer bezeichnung bereich n 1 seitWann

12 Übung: Übertragung des folgenden ER-Schemas in Relationenschemata Schritt 3: starke 1:n Beziehungen Lager Lagereinheit umfasst enthält Produkt KomponenteFertigprodukt Händler bestehtAus kaufBei 1n m 1 nm n 1 Position Anzahl Kapazität Bezeichnung Anzahl PNummer HNummer Preis ID Größe

13 Lösung Schritt 3 Schritt 1 und 2 Entitätstypen, istEin-Beziehung: Lager( id : Ganzzahl, bezeichnung : Text ) Produkt( pnummer : Ganzzahl, größe : Zahl, bezeichnung : Text ) Fertigprodukt( pnummer : Ganzzahl, preis : Währung ) Händler( hnummer : Ganzzahl ) Schritt 3 starke 1:n-Beziehung: Lagereinheit( position : Ganzzahl, kapazität : Zahl, enthält : Produkt.pnummer, enthältAnzahl : Zahl ) Komponente( pnummer : Produkt.pnummer, kaufBei : Händler.hnummer, preis : Währung )

14 Übertragen der schwachen 1:n Beziehungstypen Übernehmen aller Schlüsselattibute des Entitätstyps auf der 1- Seite als Fremd- und Teilschlüssel im Entitätstyp der n-Seite. Attribute des Beziehungstyps werden im Entitätstyp auf der n- Seite übernommen. Lieferschein( nummer : Ganzzahl, kunde : Nummer, datum : Datum ) LieferscheinPosition( lieferschein : Lieferschein.nummer, nummer : Ganzzahl, anzahl : Ganzzahl ) Lieferschein nummerkundedatum LieferscheinPosition liefert anzahl nummer 1 n

15 Übung: Übertragung des folgenden ER-Schemas in Relationenschemata Schritt 4: schwache 1:n Beziehungen Lager Lagereinheit umfasst enthält Produkt KomponenteFertigprodukt Händler bestehtAus kaufBei 1n m 1 nm n 1 Position Anzahl Kapazität Bezeichnung Anzahl PNummer HNummer Preis ID Größe

16 Lösung Schritt 4 Schritt 1 bis 3 Entitätstypen, istEin, 1:n stark Lager( id : Ganzzahl, bezeichnung : Text ) Produkt( pnummer : Ganzzahl, größe : Zahl, bezeichnung : Text ) Fertigprodukt( pnummer : Ganzzahl, preis : Währung ) Händler( hnummer : Ganzzahl ) Komponente( pnummer : Produkt.pnummer, kaufBei : Händler.hnummer, preis : Währung ) Schritt 4 schwache 1:n-Beziehung: Lagereinheit( umfasstVon:Lager.id, position : Ganzzahl, kapazität : Zahl, enthält : Produkt.pnummer, enthältAnzahl : Zahl )

17 Übertragen der 1:1 Beziehungstypen Auch hier gibt es zwei Alternativen: –Modellieren als 1:n Beziehungstyp –Modellieren als n:1 Beziehungstyp –gewählt wird die Alternative mit geringerem Aufwand Professor DienstZimmer Raum 1 1 persNr raumNr Professor( persNr : Ganzzahl, name : Zeichenkette, dienstZimmer : Raum.raumNr ) Raum( raumNr : Ganzzahl, )

18 Übertragen der 1:1 Beziehungstypen Auch hier gibt es zwei Alternativen: –Modellieren als 1:n Beziehungstyp –Modellieren als n:1 Beziehungstyp –gewählt wird die Alternative mit geringerem Aufwand Professor DienstZimmer Raum 1 1 persNr raumNr Professor( persNr : Ganzzahl, name : Zeichenkette, ) Raum( raumNr : Ganzzahl, dienstZimmerVon : Professor.persNr )

19 Übertragen der 1:1 Beziehungstypen (ohne Übung) Auch hier gibt es zwei Alternativen: –Modellieren als 1:n Beziehungstyp –Modellieren als n:1 Beziehungstyp –gewählt wird die Alternative mit geringerem Aufwand hier: Jeder Professor hat ein Dienstzimmer aber nicht jeder Raum ist Dienstzinner eines Professors. Professor DienstZimmer Raum 1 1 persNr raumNr Professor( persNr : Ganzzahl, name : Zeichenkette, dienstZimmer : Raum.raumNr ) Raum( raumNr : Ganzzahl, )

20 Übertragen der n:m Beziehungstypen Dieser Beziehungstyp erfordert eine eigene Tabelle Alle Schlüsselattribute aller an der Beziehung beteiligten Entitätstypen werden als Schlüssel des Beziehungstyps übernommen. mehrstellige n:m:k-Beziehungen werden in naheliegender Weise behandelt. Anwesend( wer : Teilnehmer.nummer, wann : Termin.datum, mitarbeit : Zeichenkette ) Teilnehmer anwesend Termin n m nummer datum mitarbeit

21 Achtung bei reflexiven n:m Beziehungstypen! Ist ein Entitätstyp mehrfach an einer n:m Beziehung beteiligt, dann werden auch die Schlüsselattribute entsprechend mehrfach übernommen. Kennt( werVorN : Person.vorname, werNachN : Person.nachname, wenVorN : Person.vorname, wenNachN : Person.nachname, istFreund : Ja/Nein ) Person kennt n m vorname nachname istFreund

22 Übung: Übertragung des folgenden ER-Schemas in Relationenschemata Schritt 5: n:m Beziehungen Lager Lagereinheit umfasst enthält Produkt KomponenteFertigprodukt Händler bestehtAus kaufBei 1n m 1 nm n 1 Position Anzahl Kapazität Bezeichnung Anzahl PNummer HNummer Preis ID Größe

23 Lösung Schritt 5 Schritt 1 bis 4 Entitätstypen, istEin, alle 1:n Lager( id : Ganzzahl, bezeichnung : Text ) Produkt( pnummer : Ganzzahl, größe : Zahl, bezeichnung : Text ) Fertigprodukt( pnummer : Ganzzahl, preis : Währung ) Händler( hnummer : Ganzzahl ) Komponente( pnummer : Produkt.pnummer, kaufBei : Händler.hnummer, preis : Währung ) Lagereinheit(lager:Lager.id, position : Ganzzahl, kapazität : Zahl, enthält : Produkt.pnummer, enthältAnzahl : Zahl ) Schritt 5 n:m-Beziehungstyp BestehtAus( fProdukt : Fertigprodukt.pnummer, komponente : Komponente.pnummer, Anzahl : Zahl )

24 Lösungsschritte im Überblick grau bedeutet: In diesem Schritt noch unfertig Schritt 1 Entitätstypen: Lager(id:Ganzzahl, bezeichnung:Text) Lagereinheit(position:Ganzzahl, kapazität:Zahl) Produkt(pnummer:Ganzzahl, größe:Zahl, bezeichnung:Text) Fertigprodukt(preis:Währung) Komponente() Händler(hnummer:Ganzzahl) Schritt 2 IstEin-Beziehung Fertigprodukt(pnummer:Produkt.pnummer, preis:Währung) Komponente(pnummer:Produkt.pnummer) Schritt 3 starke 1:n-Beziehung Lagereinheit(position:Ganzzahl, kapazität:Zahl, enthält:Produkt.pnummer, enthältAnzahl:Zahl) Komponente(pnummer:Produkt.pnummer,kaufBei:Händler.hnummer, preis:Währung) Schritt 4 schwache 1:n-Beziehung Lagereinheit(lager:Lager.id, position:Ganzzahl, kapazität:Zahl enthält:Produkt.pnummer, enthältAnzahl:Zahl) Schritt 5 n:m-Beziehung BestehtAus(produkt:Produkt.pnummer, komponente:Komponente.pnummer, Anzahl:Zahl)

25 Teil 2 Formulare mit Feldern und Texten und Knöpfen undformu- Unter - laren und Graphiken und, und, und …

26 Zweck der Formulare Darstellung der Daten für den Benutzer –auch: Verbergen gewisser Daten vor dem Benutzer Bedienung der Datenbank durch den Benutzer –z.B. Dateneingabe bildet also die Schnittstelle Benutzer - Datenbank Datenbank Formular Benutzer

27 Klassen von Formularen bei Access Einzelformular –Stellt immer nur genau einen Datensatz dar: Endlosformular –Untereinander "verklebte" Einzelformulare –z.B. Adressetiketten für Serienbriefe Datenblattformular –Darstellung der Daten in Tabellenform

28 Erstellen von Einzelformularen Objekte - Formulare Klick auf "Neu" (oben) und dann "Entwurfsansicht" oder "Erstellt ein Formular in der Entwurfsansicht" Das kleine Quadrat in der rechten oberen Ecke markieren… Datenherkunft: Tabelle oder Abfrage

29 Steuerelemente Dienen der Darstellung der Daten und der Entgegennahme von Benutzereingaben –genau eine Komponente hat dazu den Focus Kleine rechteckige Komponenten, die in das Formular eingebettet werden können –Auswahl mit der Toolbox Beispiele: –Bezeichner (unveränderlliche Texte) –Textfelder (Textein- und Ausgabe) –Knöpfe (Auslösen von Aktionen) –Unterformulare (Darstellung detaillierter Information) –OLE (Eingebettete Dokumente)

30 gemeinsame Übung Gemeinsam Fertigstellen unserer Anwesenheitsliste –Automatische Formulare erstellen Mit Formulareigenschaften "spielen" –Datenherkunft –Verknüpfung mit Unterformularen –Elemente der Toolbox OLE-Daten –Graphiken: Grössenanpassung: Zoomen –Direkt einsetzbare ActiveX Controls (mit Value-Eigenschaft) Date and Time-Picker (mit/ohne CheckBox) Kalender evtl. Datenblatt als Navigationssteuerelement

31 Unterformulare Unterformular Steuerelement Unterformular Verknüpfung von-nach (n:1) Achtung bei mehreren Unterformularen mit gleichnamigen Attributen (Fehler in Access: geht nicht)

32 Ereignisse und Visual Basic Ereignisse –Knopf drücken –Maus bewegen –Datensatz auswählen Ereignisprozeduren: –Was passiert wenn … ? Wichtige Ereignisse: Current und Click –Current: Auswahl eines Datensatzes mit Unterformular –Click bei Knöpfen Experimente mit Wizard Datensatzknöpfe: –neu Einfügen –eintragen –löschen


Herunterladen ppt "Seminar Datenbankanwendung für Architekten neunter Termin."

Ähnliche Präsentationen


Google-Anzeigen