1 / 32

Seminar Datenbankanwendung für Architekten neunter Termin

Seminar Datenbankanwendung für Architekten neunter Termin. Tagesprogramm. Entwurfslehre: Übertragen von ER-Schemata in Relationenschemata Access Formulare. Schritte beim Erstellen von Relationenschemata. Übertragen der Entitätstypen in Relationenschemata

peggy
Download Presentation

Seminar Datenbankanwendung für Architekten neunter Termin

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Seminar Datenbankanwendungfür Architektenneunter 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. nummer vorname name Person Ü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 : 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 RelationenschemataSchritt 1: Entitätstypen zu Relationenschemata ID Bezeichnung Position 1 n umfasst Lager Lagereinheit Kapazität m Bezeichnung Anzahl 1 enthält Größe Produkt PNummer Preis kaufBei n Fertigprodukt Komponente 1 n m bestehtAus 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. nummer vorname name Person Student Assistent matrikelNummer personalNummer Ü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 ) Hinweis: Fremdschlüssel auf eine Tabelle schreibe ich hier als Domäne in der Form Tabelle.attributname

  8. nummer vorname name Person Student Assistent matrikelNummer personalNummer Ü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 ) Hinweis: In diesem Fall sollte ein zusätzliches Attribut den Typ bezeichen

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

  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. bereich nummer Abteilung 1 bezeichnung gehörtZu seitWann n Person nummer vorname name Ü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 )

  12. Übung: Übertragung des folgenden ER-Schemas in RelationenschemataSchritt 3: starke 1:n Beziehungen ID Bezeichnung Position 1 n umfasst Lager Lagereinheit Kapazität m Bezeichnung Anzahl 1 enthält Größe Produkt PNummer Preis kaufBei n Fertigprodukt Komponente 1 n m bestehtAus 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 RelationenschemataSchritt 4: schwache 1:n Beziehungen ID Bezeichnung Position 1 n umfasst Lager Lagereinheit Kapazität m Bezeichnung Anzahl 1 enthält Größe Produkt PNummer Preis kaufBei n Fertigprodukt Komponente 1 n m bestehtAus 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. Professor persNr 1 DienstZimmer 1 Raum raumNr Ü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, )

  18. Professor persNr 1 DienstZimmer 1 Raum raumNr Ü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 )

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

  20. Teilnehmer nummer n anwesend mitarbeit m Termin datum Ü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 )

  21. vorname m Person nachname n kennt istFreund 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 )

  22. Übung: Übertragung des folgenden ER-Schemas in RelationenschemataSchritt 5: n:m Beziehungen ID Bezeichnung Position 1 n umfasst Lager Lagereinheit Kapazität m Bezeichnung Anzahl 1 enthält Größe Produkt PNummer Preis kaufBei n Fertigprodukt Komponente 1 n m bestehtAus 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 Überblickgrau 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 und Texten mit Feldern und Graphiken und Knöpfen 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 Formular Datenbank 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

More Related