Arbeiten mit ACCESS 2007

Werner Geers Arbeiten mit ACCESS 2007 Datenbanken mit • • • • • • Datenmodellierung Tabellen, Abfragen, Formularen und Berichten Beziehungen Makros ...
Author: Hede Breiner
3 downloads 0 Views 2MB Size
Werner Geers

Arbeiten mit ACCESS 2007 Datenbanken mit • • • • • •

Datenmodellierung Tabellen, Abfragen, Formularen und Berichten Beziehungen Makros Datenaustausch SQL – Structured Query Language

1. Auflage

Bestellnummer 61013

2

Vorwort Haben Sie Anregungen oder Kritikpunkte zu diesem Produkt? Dann senden Sie eine E-Mail an [email protected] Autoren und Verlag freuen sich auf Ihre Rückmeldung.

Vorwort Datenbanken gewinnen in Betrieben, Verwaltungen und Schulen eine immer größere Bedeutung. In diesem Buch werde theoretische Grundlagen über Datenbanken gelegt und der praktische Umgang mit dem Datenbanksystem Access 2007 vermittelt. •

Das Arbeitsbuch zu ACCESS 2007 ermöglicht es, Datenbanken handlungsorientiert im Unterricht einzusetzen. Es werden alle Inhalte zum Bereich Datenbank abgedeckt, die in vielen Rahmenlehrplänen angegeben werden.



Einen breiten Raum nimmt die Modellierung einer Datenbank mithilfe des EntityRelationship-Modells (ERM) ein. Außerdem wird die Normalisierung von Daten umfassend durchgeführt.



Die einzelnen Objekte einer Datenbank (Tabellen, Abfragen, Formulare, Berichte, Makros) werden eingehend beschrieben. Anhand von Übungen lässt sich das jeweils Erlernte vertiefen.



Der Datenaustausch zwischen Programmen führt dazu, dass Daten nur einmal erfasst und dann für unterschiedliche Zwecke genutzt werden. Anhand von Erklärungen, Beispielen und Übungen wird dieser Sachverhalt intensiv erarbeitet.



Relationale Datenbanken nutzen die Datenbanksprache SQL (Structured Query Language). Anhand von Erklärungen und vielen Beispielen wird die Nutzung der Datenbanksprache intensiv geübt. Damit werden Grundlagen gelegt, die es ermöglichen, andere relationale Datenbanken wie MySQL, Oracle usw. zu nutzen.

Neueste Informationen, eventuelle Änderungen und Ergänzungen, die sich beispielsweise durch Updates des Programms ergeben, können Sie über das Internet unter der folgenden Adresse abrufen: www.werner-geers.de

Papenburg, Frühjahr 2009

Werner Geers

www.bildungsverlag1.de Bildungsverlag EINS GmbH Sieglarer Straße 2, 53842 Troisdorf ISBN 978-3-427-61013-7 © Copyright 2009*: Bildungsverlag EINS GmbH, Troisdorf Das Werk und seine Teile sind urheberrechtlich geschützt. Jede Nutzung in anderen als den gesetzlich zugelassenen Fällen bedarf der vorherigen schriftlichen Einwilligung des Verlages. Hinweis zu § 52a UrhG: Weder das Werk noch seine Teile dürfen ohne eine solche Einwilligung eingescannt und in ein Netzwerk eingestellt werden. Dies gilt auch für Intranets von Schulen und sonstigen Bildungseinrichtungen.

Inhaltsverzeichnis

3

1

Datenmodellierung ............................................................................................. 7

1.1 1.2 1.3 1.4 1.4.1 1.4.2 1.4.3 1.4.4 1.4.5 1.4.6 1.4.7 1.5 1.6 1.6.1 1.6.2 1.6.3

Funktionen einer Datenbank – Datenbankkonzept ............................................................ 7 Datenmodelle ..................................................................................................................... 7 Relationale Datenbank ..................................................................................................... 16 Entity-Relationship-Modell (ERM) – semantisches Modell .............................................. 10 Begriff ............................................................................................................................... 10 Entität ............................................................................................................................... 10 Attribute ............................................................................................................................ 10 Entitätstyp......................................................................................................................... 11 Schlüsselfelder ................................................................................................................. 12 Relationship (Beziehungen) ............................................................................................. 15 Kardinalität ....................................................................................................................... 17 Beispiel für ein Entity-Relationship-Modell ....................................................................... 22 Normalisierung von Tabellen ........................................................................................... 22 Ziel der Normalisierung .................................................................................................... 22 Probleme der Datenerfassung (Nullte Normalform)......................................................... 22 Normalformen................................................................................................................... 23 Übungen ........................................................................................................................... 26

2

Aufbau einer Datenbank mit ACCESS 2007 ................................................... 27

2.1 2.2 2.3

Aufbau des Bildschirms .................................................................................................... 27 Arbeitsablauf mit einer Datenbank ................................................................................... 27 Navigationsbereich ........................................................................................................... 27

3

Anlegen der Datenbank Betrieb ...................................................................... 29

4

Tabellen ............................................................................................................. 31

4.1 4.2 4.3 4.4

Vorbemerkungen .............................................................................................................. 31 Datenfelder und Felddatentypen ...................................................................................... 31 Anlegen der Tabelle Lager ............................................................................................... 32 Eingabe von Daten in eine Tabelle .................................................................................. 34 Übungen ........................................................................................................................... 35

5

Grundlegende Arbeitsschritte ......................................................................... 36

5.1 5.2 5.3 5.4 5.5

Löschen einzelner und aller Datensätze .......................................................................... 36 Löschen einer Tabelle ...................................................................................................... 36 Löschen aller Daten eines bestimmten Datenfelds.......................................................... 37 Sortieren nach Datenfeldern ............................................................................................ 37 Suchen und Ersetzen von Daten ..................................................................................... 38

6

Tabellengestaltung ........................................................................................... 39

6.1 6.2 6.3 6.4 6.5 6.6 6.7 6.8 6.9 6.10 6.11 6.12

Einfügen von Datenfeldern............................................................................................... 39 Löschen von Datenfeldern ............................................................................................... 40 Ändern von Datenfeldname und/oder felddatentyp ......................................................... 41 Kopieren einer Tabelle ..................................................................................................... 42 Standardwerte .................................................................................................................. 42 Feldgröße ......................................................................................................................... 43 Eingabeformate ................................................................................................................ 44 Beschriftung ..................................................................................................................... 45 Erforderlichkeit einer Eingabe .......................................................................................... 45 Text-, Kombinations- und Listenfelder ............................................................................. 46 Gültigkeit und Gültigkeitsmeldungen................................................................................ 47 Indizes in Tabellen ........................................................................................................... 49

7

Aufbau weiterer Tabellen ................................................................................. 50

8

Formatieren von Daten .................................................................................... 52

4

Inhaltsverzeichnis

9

Formulare .......................................................................................................... 54

9.1 9.2 9.3 9.4 9.5 9.6 9.7 9.8 9.9 9.10 9.11

Vorbemerkungen .............................................................................................................. 54 Erstellung eines Formulars .............................................................................................. 54 Bearbeitung eines Formulars in der Layoutansicht.......................................................... 56 Formular mit mehreren Elementen .................................................................................. 59 Geteiltes Formular ............................................................................................................ 59 Pivot-Chart ....................................................................................................................... 60 Formularerstellung mit dem Formular-Assistenten .......................................................... 62 Eingabe von Daten mithilfe eines erstellten Formulars.................................................... 64 Löschen von Daten im Formular ...................................................................................... 65 Suchen von Daten im Formular ....................................................................................... 65 Ersetzen von Daten im Formular ..................................................................................... 66

10

Berichte I .......................................................................................................... 67

10.1 10.2 10.3

Vorbemerkungen .............................................................................................................. 67 Erstellung eines Berichts .................................................................................................. 67 Berichtserstellung mit dem Berichts-Assistenten ............................................................. 68

11

Filtern von Daten .............................................................................................. 69

11.1 11.2

Vorbemerkungen .............................................................................................................. 69 Auswahlfilter in Tabellen, Formularen und Berichten ...................................................... 69 Übungen ........................................................................................................................... 71

12

Abfragen ............................................................................................................ 72

12.1 12.2 12.3 12.3.1 12.3.2 12.3.3 12.4 12.5 12.6 12.7 12.8 12.9 12.10 12.11 12.12 12.13 12.14 12.15 12.16

Vorbemerkungen .............................................................................................................. 72 Arten von Abfragen .......................................................................................................... 72 Auswahlabfrage................................................................................................................ 73 Vorbemerkungen .............................................................................................................. 73 Syntax der Abfrage .......................................................................................................... 73 Ausdrücke ........................................................................................................................ 74 Erstellen einer Abfrage ..................................................................................................... 75 Aufrufen von Abfragen ..................................................................................................... 77 Möglichkeiten der Auswahlabfrage .................................................................................. 78 Parameterabfrage ............................................................................................................ 81 Auswahlabfragen mit Nicht-Null- und Nullwerten............................................................. 83 Anfügeabfrage .................................................................................................................. 84 Tabellenerstellungsabfrage .............................................................................................. 85 Löschabfrage.................................................................................................................... 85 Kreuztabellenabfrage ....................................................................................................... 87 Aktualisierungsabfragen ................................................................................................... 88 Gruppierung und Summenbildung usw. – Aggregatsfunktionen ..................................... 93 Suche nach Duplikaten .................................................................................................... 94 Berechnungen mithilfe des Ausdrucks-Generators ......................................................... 95 Übungen ........................................................................................................................... 97

13

Funktionen ........................................................................................................ 98

13.1 13.2 13.3 13.3.1 13.3.2 13.3.3 13.4 13.5 13.6

Arten von Funktionen ....................................................................................................... 98 Aufbau einer mathematischen Funktion (Ausdrucksgenerator)....................................... 99 Texte und Textfunktionen............................................................................................... 101 Vorbemerkungen ............................................................................................................ 101 Zusammenführen eines Textes...................................................................................... 101 Auswerten von Texten ................................................................................................... 102 Datumsfunktionen und Zeitberechnungen ..................................................................... 103 Finanzmathematische Funktionen ................................................................................. 104 Logik-Funktionen am Beispiel der WENN-Funktion....................................................... 105

Inhaltsverzeichnis

5

14

Beziehungen zwischen Tabellen ................................................................... 106

14.1 14.2 14.2.1 14.2.2 14.2.3 14.3 14.3.1 14.3.2 14.4 14.4.1 14.4.2 14.4.3 14.4.4 14.4.5 14.5 14.5.1 14.5.2 14.5.3 14.6 14.7 14.7.1 14.7.2 14.7.3 14.7.4 14.7.5 14.7.6 14.8 14.8.1 14.8.2 14.9

Grundsätzliche Erklärungen ........................................................................................... 106 1:1-Beziehung zwischen zwei Tabellen ......................................................................... 109 Erstellen einer Beziehung zwischen den Tabellen ........................................................ 100 Auswertung der Beziehung zwischen den Tabellen durch Abfragen ............................ 111 Bearbeiten der Beziehung zwischen den Tabellen ........................................................ 111 1:n-Beziehung zwischen zwei Tabellen ......................................................................... 112 Erstellen einer Beziehung zwischen den Tabellen ........................................................ 112 Auswertung der Beziehungen zwischen den Tabellen durch Abfragen ........................ 113 m:n-Beziehung zwischen Tabellen ................................................................................ 114 Grundlegende Vorbemerkungen .................................................................................... 114 Aufbau einer dritten Tabelle ........................................................................................... 114 Aufbau der Tabellen Lieferanten(M:N) und Lager(M:N) ................................................ 115 Erstellen einer Beziehung zwischen den Tabellen ........................................................ 116 Auswertung der Beziehungen zwischen den Tabellen durch Abfragen ........................ 117 m:n-Beziehung mit zusammengesetztem Primärschlüssel ........................................... 119 Vorbemerkungen ............................................................................................................ 119 Erstellung einer Tabelle zur Verknüpfung und Auswertung von Daten ......................... 119 Eingabe und Löschung eines Datensatzes .................................................................... 121 Suche nach Inkonsistenzen ........................................................................................... 122 Beziehungen mit referentieller Integrität ........................................................................ 124 Begriff ............................................................................................................................. 124 Aufbau der referentiellen Integrität ................................................................................. 124 Auswirkungen der referentiellen Integrität – Eingabe von Daten................................... 125 Auswirkungen der referentiellen Integrität – Löschung von Daten ................................ 126 Referentielle Integrität und Aktualisierungsweitergabe .................................................. 126 Referentielle Integrität und Löschweitergabe................................................................. 127 Gleichheits- und Inklusionsverknüpfung ....................................................................... 129 Gleichheitsverknüpfung (Inner-Join) .............................................................................. 129 Links- und Rechts-Inklusionsverknüpfung (Quter-Join) ................................................. 130 Verknüpfungen aufgrund einer Abfrage ......................................................................... 131 Übungen ......................................................................................................................... 132

15

Datenaustausch .............................................................................................. 133

15.1 15.2 15.3 15.4 15.5 15.5.1 15.5.2 15.5.3 15.5.4 15.6 15.6.1 15.6.2 15.6.3 15.6.4 15.6.5

Vorbemerkungen ............................................................................................................ 133 Datenexport von ACCESS in EXCEL ............................................................................ 133 Datenexport von ACCESS in andere Programme ......................................................... 135 Datenaustausch durch Kopieren und Einfügen ............................................................. 136 Serienbriefe .................................................................................................................... 137 Vorbemerkungen ............................................................................................................ 137 Serienbriefe mit ACCESS und Word für Windows......................................................... 137 Einfügen von Bedingungsfeldern – Überspringen von Datensätzen ............................. 141 Einfügen von Bedingungsfeldern – Ausgabe eines alternativen Textes........................ 142 Datenimport – Nutzung externer Daten ......................................................................... 143 Vorbemerkungen ............................................................................................................ 143 Datenaustausch durch Kopieren und Einfügen ............................................................. 143 Auslesen einer Access-Tabelle oder -Abfrage............................................................... 144 Einlesen von Texten ....................................................................................................... 146 Einlesen von Daten aus anderen Quellen ..................................................................... 149 Übungen ......................................................................................................................... 150

6

Inhaltsverzeichnis

16

Makros ............................................................................................................. 151

16.1 16.2 16.2.1 16.2.2 16.2.3 16.2.4 16.3

Vorbemerkungen ............................................................................................................ 151 Makro zur Datenausgabe ............................................................................................... 151 Vorbemerkungen ............................................................................................................ 151 Erstellen von Abfragen als Grundlage für die Arbeit mit einem Makro .......................... 151 Erstellen des Makros ...................................................................................................... 152 Ausführen des Makros ................................................................................................... 153 Makros mit Bedingungen ............................................................................................... 155

17

Formulare 2 – Möglichkeiten der Formulargestaltung ................................ 160

17.1 17.2 17.2.1 17.2.2 17.3 17.4 17.5

Vorbemerkungen ............................................................................................................ 160 Bearbeiten eines Formulars in der Entwurfsansicht ...................................................... 160 Erstellen und Bearbeiten eines Formulars ..................................................................... 160 Bearbeiten der Objekte eines Formulars ....................................................................... 161 Steuerelemente .............................................................................................................. 162 Formulare mit Befehlsschaltflächen ............................................................................... 163 Formulare mit einem Unterformular – Nutzung von Beziehungen................................. 167

18

Benutzeroberflächen ...................................................................................... 169

19 19.1 19.2 19.3 19.4

Tabellen mit Memofeldern und Grafiken ........................................................................ 173 Vorbemerkungen ............................................................................................................ 173 Erstellen einer Tabellenstruktur ..................................................................................... 173 Dateneingabe über ein Formular ................................................................................... 174 Anzeige von Objekten in einem Bericht ......................................................................... 177

20

Berichte II ........................................................................................................ 179

20.1 20.2 20.3

Berichte mit Berechnungen ............................................................................................ 179 Berichte mit Daten aus verschiedenen Tabellen ........................................................... 182 Berichte mit Gruppierungsebenen ................................................................................. 183 Übungen ......................................................................................................................... 184

21

SQL – Structured Query Language ............................................................... 185

21.1 21.2 21.2.1 21.2.2 21.3 21.4 21.5 21.5.1 21.5.2 21.5.3 21.5.3 21.6 21.6.1 21.6.2 21.6.3 21.7 21.7.1 21.7.1

Datenbanksprache ......................................................................................................... 185 SQL-Befehle ................................................................................................................... 185 Vorbemerkungen ............................................................................................................ 185 Datenbanksprache – Arten von Datenbankbefehlen ..................................................... 185 SQL-Syntaxdiagramm .................................................................................................... 187 SQL-Befehle in Access .................................................................................................. 188 Data Definition Language (DDL) .................................................................................... 190 CREATE TABLE – Erstellung einer Tabelle .................................................................. 190 CREATE TABLE – PRIMARY KEY – Tabelle mit Primärschlüssel .............................. 191 DROP TABLE – Löschen einer Tabelle ......................................................................... 192 ALTER TABLE – Änderung der Struktur einer Tabelle .................................................. 193 Data Manipulation Language (DML) .............................................................................. 195 INSERT INTO – Einfügen von Datensätzen .................................................................. 195 UPDATE – Aktualisierung von Daten............................................................................. 197 DELETE – Löschen von Datensätzen bzw. Datenfeldern ............................................. 199 Data Query Language (DQL) ......................................................................................... 201 SELECT – Auswählen und Projektion von Datensätzen ............................................... 201 UNION – JOINS – Datenauswertung aus verschiedenen Tabellen .............................. 215 Übungen ......................................................................................................................... 219 Zusammenfassende Übungen ....................................................................................... 220 Stichwortverzeichnis ...................................................................................................... 222

Funktio onen einer Datenbank k – Datenba ankkonzep pt

1

Datenmodellieru ung

1.1

Funktionen einer Datenbank D k – Datenb bankkonze ept

7

Datenba anken werd den genutzzt, um Date en über Pro odukte, Lie eferanten, K Kunden usw w. zu erfassen n und sinnvoll auszuw werten. Es muss gena au geplant werden, w welche Date en zu welchen n Zwecken benötigt we erden und damit d für be estimmte Zw wecke ausg gewertet we erden können. Kennzeichen einess guten Date enbankprog gramms ist jedoch auch h, dass durcch betrieblic ch bedingte Notwendigke N eiten späterr Änderunge en vorgenom mmen werden können, die es erlauben, zusätzlicche Daten zu z erfassen und zu vera arbeiten. Tro otzdem besteht die unb bedingte No otwendigkeit, eine Datenbank genau u zu planen n, damit sie auch späte eren Anford derungen ge erecht ntity-Relation nshipwird. Diie Modellierrung einer Datenbank wird in derr Regel nacch dem En Modell (ERM) ( vorge enommen. Hinweis s:

1.2

Grundssätzlich ist es e durchauss möglich, bei der Arb beit mit dem m Kapitel Aufbau einer Datenbank D mit ACCE ESS 2007 zu beginn nen und die theoretis schen Grundla agen nach Bedarf B oder danach zu behandeln.

Datenmodelle

Mithilfe von Datenb banken sollen Ausschn nitte aus de er realen Welt W abgebild det werden. Dies bedeute et, dass an nfallende Daten sachg gerecht abg gebildet we erden müsssen, um da anach optimal verarbeitet werden zu können. Der Abllauf der Mo odellierung und Erstellung einer Datenbankk wird norm malerweise in der nachfolg gend darge estellten Reihenfolge R erfolgen. Die einzelnen Schrittte werden kurz . Die theore angegeb ben und spä äter im Buch intensiv beschrieben b etischen Gru undlagen we erden später anhand a dess Aufbaus einer Datenbank mit dem Progrramm Acce ess in prakttische Ergebnisse umgese etzt. Begrifff

Bedeutung g

Seman ntisches Modelll

Objekte un nd Beziehun ngen der re ealen Welt werden im m semantisc chen Datenmode ell abstrakt beschrieben n. Zur visue ellen Untersttützung werrden semantisch he Datenm modelle z. B. mithilfe von Entitty-Relations ship. Modellen beschrieben b Beispiel: Autoren scchreiben Bü ücher. Dies se Bücher werden w von n einem Ve erlag herausgebracht. ng im Entity y-Relations ship-Modelll: Darstellun

8

Datenmodellierung

Logisches Modell

Das logische Datenmodell entspricht der konzeptionellen Erstellung einer Datenbank in Abhängigkeit von dem Datenbanksystem, welches später eingesetzt werden soll. In der Regel wird das relationale Datenbankmodell in der Praxis angewandt. Die im Entity-Relationship-Modell beschriebenen Objekte und Beziehungen werden in Form von Tabellen umgesetzt. Das Modell wird im nächsten Kapitel genauer beschrieben. Andere denkbare Modelle spielen in der Praxis keine Rolle und werden daher hier nicht beschrieben. Zur Verhinderung von Redundanzen (mehrfach vorhandene gleiche Daten) und Anomalien (Inkonsistenzen, nicht miteinander vereinbare Daten, widersprüchliche Daten) wird die Technik der Normalisierung eingesetzt. Sie wird später genau beschrieben.

Physisches Modell

Die Umsetzung des logischen Modells mithilfe der Datenbeschreibungssprache des Zielsystems (Data Description Language) wird als physisches Modell bezeichnet. Das Modell wird z. B. im Datenbankprogramm Access oder im Datenbankverwaltungssystem MySQL umgesetzt.

1.3

Relationale Datenbank

Von einer relationalen Datenbank spricht man, wenn Daten aus verschiedenen Tabellen miteinander verknüpft werden können, also beispielsweise bestimmte Artikel einem Lieferanten zugeordnet werden können. Dabei muss eine relationale Datenbank bestimmte Mindestanforderungen erfüllen: • Alle Informationen werden in Tabellen dargestellt. Grundlage der relationalen Datenbank ist die Tabelle oder „Relation“. Der Aufbau aller Datensätze in einer Tabelle muss gleich sein, die Datensätze müssen also aus denselben Datenfeldern (z. B. Artikel_Nr, Artikelart, Artikel_Bez, Bestand usw.) bestehen. • Eine Tabelle besteht aus Zeilen und Spalten. Jede Zeile enthält einen Datensatz (z. B. 1001, Schreibtisch, Gabriele, 5, usw.). Die Spalten der Tabelle enthalten ein einzelnes Datenfeld (z. B. 1001). In der Datenbanksprache werden die folgenden Begriffe benutzt: Begriff

Bedeutung

Relation

Zweidimensionale Tabelle mit bestimmter Anzahl von Zeilen und Spalten.

Attribut

Eigenschaften einer Spalte einer Tabelle, z. B. Artikel_Nr.

Attributwert

Ein Inhalt eines Datenfeldes, z. B. die Artikel_Nr 1000.

Tupel

Eine Zeile einer Tabelle und damit ein Datensatz in einer Tabelle, z. B. 1000, Schreibtisch, Gabriele, 5, 102.

Attribut (Datenfeld)

Attributwert

Tupel (Datensatz)

Relation (gesamter Inhalt der Tabelle)

Relationale Datenbank

9

• Die Daten müssen bearbeitet werden können: − Tabellen müssen über mindestens einem gemeinsamen Attribut (Feldnamen) verknüpft (in Beziehung gestellt) werden können. So muss beispielsweise über ein Datenfeld in einer Lagertabelle auf eine Lieferantentabelle zurückgegriffen werden können.

Bei der hier abgebildeten Beziehung ist es möglich, über eine Abfrage einem Artikel einen Lieferanten zuzuordnen. Andere Beziehungen erlauben es z. B., einem Artikel mehrere Lieferanten oder einem Lieferanten mehrere Artikel zuzuordnen. − Alle Daten müssen durch Selektion (Auswahl) in bestimmte Ergebnistabellen kopiert werden können. Dies wird in ACCESS über Abfragen realisiert.

Im abgebildeten Beispiel werden Daten aus zwei Tabellen, die miteinander verknüpft wurden, durch eine Abfrage zusammengeführt, sodass man sehen kann, welcher Artikel von welchem Lieferanten geliefert werden kann. Wird die Datenbank vernünftig aufgebaut, werden Datenredundanzen und Dateninkonsistenzen vermieden und die Datenintegrität gewahrt: Datenredundanz und Dateninkonsistenz

Mehrfache Einträge desselben Sachverhaltes in einer Datenbank nennt man Datenredundanzen. Beispielsweise ist es unlogisch, in einer Tabelle zu jedem Artikel den Lieferanten einzugeben. Liefert der Lieferant mehrere Artikel, müssten jedes Mal die Daten in allen Datensätzen geändert werden, wenn sich beispielsweise der Name (Firmenbezeichnung) des Lieferanten ändert. Bei der Datenänderung muss gewährleistet sein, dass alle betroffenen Eintragungen erfasst werden, ansonsten kommt es zur Dateninkonsistenz, also zu nicht mehr aktuellen Daten. Ein besonderes Problem ist gegeben, wenn in Tabellen unterschiedliche Daten desselben Sachverhalts entstehen. Dies muss unbedingt bei der Planung und der Arbeit mit einer Datenbank verhindert werden. Durch mehrfache Einträge werden außerdem Platzressourcen verschwendet. Die mehrfache Erfassung führt daneben zur Zeitverschwendung, etwa bei der Dateneingabe, da Lieferanten- und Artikeldaten nicht nur einmal erfasst würden.

Datenintegrität

Unter Datenintegrität versteht man die Genauigkeit von Daten und ihre Übereinstimmung mit der erwarteten Bedeutung, insbesondere nachdem sie übertragen oder verarbeitet wurden.

10

Dattenmodellie erung

1.4

Entity-Re elationship p-Modell (ERM) – se emantisch hes Modell

1.4.1

Begriff

Das Entity-Relatio onship-Mode ell (ERM), in selten nen Fällen auch alss GegenstandsBeziehu ungsmodell bezeichnet, bildet in der Regel die Grundlage für die Modellierung einer Datenba ank. In dem m Modell werden w Objjekte einer Datenbankk in sinnvo olle Beziehu ungen zueinan nder gesetztt. Das Mo odell beschreibt einen Auszug au us einer realen Welt. Beispielsweise werde en die Beziehu ungen zwiscchen einem m Autor und einem ode er mehreren n Büchern b beschrieben n oder die Bezziehung zw wischen ein nem oder mehreren m Lieferanten L zu einem oder meh hreren Artikeln im Lager eines e Untern nehmens. Die Bezziehungen zwischen den d einzeln nen Objekten werden durch Enttity-Relation nshipDiagram mme (ERD) oder ER-D Diagramme grafisch g darrgestellt. 1.4.2

Entität

Begriff:: Eine En ntität ist ein n eindeutig identifizierrbares Obje ekt oder ein n eindeutig identifizierrbarer Sachverhalt der rea alen Welt oder o der Vorrstellungswe elt. ele: Beispie , Kunden, Autoren, Entitäten können beispielswei b se Artikel, Lieferanten L A Bücher usw. sein. s Darstellung einer Entität: Entitäten werden in n einem Rechteck darg gestellt. Beispiiel:

1.4.3

Attribute

Begriff:: Durch Attribute werden w die e Eigensch haften eine er Entität spezifiziert, also gen nauer beschrie eben. Die einzelnen e E Eigenschafte en einer En ntität werden n für den be enötigten Zweck Z erfasst. el: Beispie Für den n Autor eine es Buches lassen sich z. B. eine Autor_Nr, A e Name, e ein ein Vorname e, ein Ort usw w. bestimme en. Darstellung einer Entität mitt Attributen n (bzw. Enttitätstypen): Attribute e werden alls Ellipse da argestellt. Sie S werden einer e Entitä ät zugeordne et. Schlüssselfelder we erden untersstrichen. Die e Bedeutun ng wird auf den d nächste en Seiten erklärt. Beispiiel:

11

Entity-R Relationship-Modell (ERM) ( – semantische es Modell 1.4.4

Entitätstyp p

Begriff:: Eine Me enge von Entitäten mit gleichen Attributen A wirrd als Entitä ätstyp bezeichnet. Zu einem e Entitätsttyp kann ess beliebig viele v Entitäte en geben. Dies D bedeuttet, dass alle Datensättze in einer Tabelle T einer Datenba ank identissch aufgeb baut sind und sein müssen. Durch D Entitätsttypen wird der Datenb bestand besschrieben. Der D Datenbestand wird d durch die Entitäten da argestellt. Beispie el 1: In einerr Tabelle einer e Daten nbank werden die Auttoren von Büchern B erffasst. Für jeden j Autor werden w diese elben Daten n, wie etwa der Name und u der Vorrname, erfa asst. Beispiiel 1: Entitättstyp

Entitätten (Erfassung in einer Tabelle eiiner Datenb bank)

201 1 Müller Gerhard Ringweg 11 1 202 2 Hansen Ludwig Hauptkanal re. 17 203 3 Brandt Heinrich Am A Wall 10 0

10301 Berliin 1 2 26871 Pape enburg 2 26112 Olde enburg

Beispie el 2: In einerr Tabelle einer e Daten nbank werden die Artikel erfasst. Für jeden n Artikel we erden dieselbe en Daten, wie w etwa die e Artikelart und u die Artikelbezeichn nung, erfassst. Beispiiel 2: Entitättstyp

Entitätten (Erfass sung in ein ner Tabelle einer Date enbank) 100 00 100 01 100 02 100 03

Schreibtissch Schreibtissch Schreibtissch Büroschrrank

Gab briele Mod dern Exkklusiv Eleg gant

5 10 20 12

800,00 € 456,00 € 1 1.250,00 € 2 2.400,00 €

1.365,00 € 735,00 € 1.848,00 € 3.190,00 €

12 1.4.5

Date enmodellie erung Schlüsselfelder

Zu den Schlüsselfe eldern gehö ören der Prrimär- und der Fremdsschlüssel. IIn der folge enden Tabelle werden die e beiden Be egriffe erklärrt. Außerde em werden verschiede ene Arten vo on Primärsc chlüsseln an ngegeben u und beschrieben. Schlüsssel können sich s von Natur aus anb bieten, sie kö önnen jedocch auch nacch den jewe eiligen Erforderrnissen künsstlich hinzug gefügt werden. Außerde em können die Schlüsssel aus meh hreren Attribute en bestehen n. Primärschlüssel Definittion

Alss Primärsch hlüssel wird d in einer re elationalen Datenbankk ein Daten nfeld in einer Tabe elle bezeich hnet, die jed den in diesser Tabelle gespeiche erten Datensatz ein ndeutig besschreibt. Au uch mehrere e Datenfeld der können n als Primärschlüsssel definiert werden. Ein n Schlüssel darf in eine er Tabelle nicht n mehrm mals vorkom mmen, da die eser daffür genutzt wird, um einen e bestimmten Dattensatz ausszuwählen und Bezziehungen zu z Datenfelldern anderrer Tabellen n herzustelle en. Im Normalfall wird als Priimärschlüss sel nur ein Datenfeld D vverwendet, z. z B. ein ne Artikelnummer oderr der Name e einer Person. Reichtt ein Daten nfeld zurr Klassifizie erung nichtt aus, könn nen weitere e Felder d dazugenomm men werden (z. B. Vorname, Geburtsd datum usw.). Man sprricht dann von ein nem kombinierten zussammenges setzten Primärschlüsssel oder auch a Verbundschlüssel.

Natürllicher Schlüs ssel

Alss natürlichen n Schlüssell bezeichne et man ein Attribut, A welcches durch den Enttitätstyp vorrgegeben isst. Ein natürliches Attriibut könnte beispielsweise die e Personalausweisnum mmer oder die ISBN-Nu ummer eines Buches sein.

urznotation: Ku Person (Perso onalausweissnummer, Name, N Vorn name, Gebu urtsdatum, …) … Mö ögliche Date en:

P Personalau sweisnumm mer N Name 178665 5456 Müllerr 145654 4789 Müllerr 167876 6543 Volkm mann

Vorname G V Geburtsdattum H Heinrich 15.11.1981 23.11.1987 H Heinrich 23.12.1983 H Hans

Niccht mögliche e Daten:

P Personalau sweisnumm mer N Name 178665 5456 Müllerr 178665 5456 Müllerr 167876 6543 Volkm mann

Vorname Geburtsdattum V H Heinrich 15.11.1 1981 H Heinrich 23.11.1 1987 H Hans 23.12.1 1983

13

Entity-R Relationship-Modell (ERM) ( – semantische es Modell Künstlicher Schlüs ssel

Zussätzlich zu den vorhandenen Attributen A w wird ein we eiteres Attrribut hin nzugefügt. Dabei D hande elt es sich z. z B. um eine Artikelnum mmer usw.

Arttikel (Artikel_ l_Nr, Artikellart, Artikelb bezeichnung g, Einkaufsp preis, …) Verbundschlüs ssel (zusam mmenge esetzter, kombiinierter)

Me ehrere Attrib bute bilden zusammen n den Schlü üssel. Dabe ei kann es sich z. B. B um die fo olgende Kom mbination handeln: h

Autor (Name, Vorname, Straße, S PLZ Z, Ort) Gru undsätzlich erscheint ein e solcher Schlüssel in der darg gestellten Form F jed doch nicht besonders b g geeignet, da a es auch Personen P geben kann,, die den n gleichen Namen N und d Vornamen n haben. Ein n Verbundsschlüssel in einer Tabelle T Ab bteilung_Mittarbeiter ergibt hingegen einen Sinn. Ein Mitarbeiter kann selbsttverständlich nicht zwe eimal in derselben Abteilung A b beschäftigt sein. s Wird dieselbe Ko ombination aus Abtteilungsnum mmer und Mitarbeiternu M ummer ein zweites z Mal eingegeben n, ist die es falsch und d muss verhindert werd den. Hingeg gen muss e es möglich sein, s dasss der Mitarrbeiter mehrreren Abteilu ungen zugeo ordnet wird..

Abteilung_Mita arbeiter (Ab bteilung_Nr, r, Mitarbeiter_Nr) Mö ögliche Kom mbinationen:

A Abteilung_N Nr

Mitarbeite er_Nr 3 3

000 10 10 001

Niccht mögliche e Kombinattionen:

A Abteilung_N Nr

Mitarbeite er_Nr 3 3

000 10 10 000

14 NichtSchlüsselAttribute

Datenmodellierung

Als Nicht-Schlüssel-Attribute werden alle Attribute bezeichnet, die nicht Schlüssel-Attribute (Primärschlüssel) sind.

Person (Personalausweisnummer, Name, Vorname, Geburtsdatum, …)

Fremdschlüssel Definition

Ein Fremdschlüssel ist ein Attribut in einer Relation (Tabelle), das in einer anderen Relation (Tabelle) als Primärschlüssel definiert wurde. Auf diese Art werden Beziehungen zwischen Tabellen hergestellt.

Artikel (Artikel_Nr, Artikelart, Artikelbezeichnung, Einkaufspreis, Lieferer_Nr) Lieferanten (Lieferer_Nr, Name1, Name2, Straße, …)

Entity-Relationship-Modell (ERM) – semantisches Modell 1.4.6

15

Relationship (Beziehungen)

Begriff: Ein Relationship (Beziehung) beschreibt die semantische Beziehung zwischen zwei Objekten. Um einen Sachverhalt darstellen zu können, sind oftmals mehrere Beziehungen zwischen den gegebenen Objekten notwendig. Beispiel 1: Ein Autor schreibt ein Buch. Darstellung: Beziehungen werden durch eine Raute dargestellt. Darstellung 1a:

Darstellung 1b:

Darstellung 1c: