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: Access
Ü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 nummer vorname name 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 ID Bezeichnung Position 1 umfasst n Lager Lagereinheit Kapazität m Bezeichnung Anzahl 1 Größe enthält Produkt PNummer Preis n kaufBei Fertigprodukt Komponente n bestehtAus m 1 Händler Preis Anzahl HNummer

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 vorname name Student Assistent matrikelNummer personalNummer Person( nummer : Ganzzahl, vorname : Zeichenkette, name : Zeichenkette ) Student( nummer : Person.nummer, matrikelNummer : Ganzzahl Assistent( personalNummer : Ganzzahl 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 vorname name Student Assistent matrikelNummer personalNummer Person( nummer : Ganzzahl, istEin : Zeichenkette, vorname : Zeichenkette, name : Zeichenkette, matrikelNummer : Ganzzahl, personalNummer : Ganzzahl ) 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) ID Bezeichnung Position 1 umfasst n Lager Lagereinheit Kapazität m Bezeichnung Anzahl 1 Größe enthält Produkt PNummer Preis n kaufBei Fertigprodukt Komponente n bestehtAus m 1 Händler Preis Anzahl HNummer

10 Lösung Schritt 2 Schritt 1 Entitätstypen: Schritt 2 istEin-Beziehung:
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 nummer vorname name Abteilung gehörtZu bezeichnung bereich n 1 seitWann

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

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 nummer kunde datum Lieferschein 1 liefert anzahl n nummer LieferscheinPosition

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

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( persNr : Ganzzahl, name : Zeichenkette, dienstZimmer : Raum.raumNr ) Raum( raumNr : Ganzzahl, Professor DienstZimmer Raum 1 persNr raumNr

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( persNr : Ganzzahl, name : Zeichenkette, ) Raum( raumNr : Ganzzahl, dienstZimmerVon : Professor.persNr Professor DienstZimmer Raum 1 persNr raumNr

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 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. Teilnehmer anwesend Termin n m nummer datum mitarbeit Anwesend( wer : Teilnehmer.nummer, wann : Termin.datum, mitarbeit : Zeichenkette )

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. Person kennt n m vorname nachname istFreund Kennt( werVorN : Person.vorname, werNachN : Person.nachname, wenVorN : Person.vorname, wenNachN : Person.nachname, istFreund : Ja/Nein )

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

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 Graphiken und Knöpfen und
Unter - laren 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
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