Microsoft Access 2013
Die Tabellen und Beziehungen
Lector dr. Boldeanu Dana-Maria
Datenbank erstellen
• Eine relationale Datenbank besteht aus ein oder mehrerenTabellen. Bei einer Auftragsverwaltung hätte man z.B.verschiedene Tabellen für Kunden, Produkt, Vertrage, uzw.
• Erstellen wir eine einfach Übungsdatenbank mit dreiTabellen
• Starten Sie Microsoft Access 2013
Start-> All Programs-> Microsoft Office
• Wählen Sie Leere Desktopdatenbank (Blank desktop database)
LeereDesktopdatenbank
Klicken Sie auf “Create (Erstellen)"
Objekte einer Access Datenbank
Design View
Die Tabellen
Access speichert Daten in Tabellen, die aus Spalten und Zeilenbestehen.
Für eine Tabelle zu anlegen man muss zuerst die Struktur (also dieNamen den Feldern, Felddatentypen und Eigenschaften) definierenund nacher die Daten eingeben. Die Daten können direkt eingeben(mittels der Tastatur) oder von einer andere Datenbank übernehmenund zwar:
• Das Kopieren einer Tabelle aus einer anderen Datenbank.
• Das Importieren der Daten. Access kann Daten aus Word, Excel oderFoxPro, dBase, Oracle, etc. importieren.
• Sie können Daten aus Access nach Excel, XML, Text, PDF Format, usw.exportieren.
Die Beschreibung der Struktur
Hier wird der Datentyp fuerdas Feld festgelegt
Und hier die zugehoerigenEigenschaften
Data Type
Input Mask Format
Die Indizes (Indexed)
• für Datensuche oder für Sortierung;
• für die relationale Verknüpfung.
Wenn man zwei Tabellen relational verknüpfenwill, benötigt man einen Primärschlüssel. DerPrimärschlüssel beschleunigt den Zugriff aufdie Daten. Man kann Primärschlüssel auseinem oder mehreren Feldernzusammensetzen (diese duerfen keineNullwerte enthalten und eindeutig sein!)
Bemerkung. Es ist sehr wichtig das vor demLaden der Daten, die Beziehungen zwischenden verschiedenen Tabellen definiert werden.
Tabellen verknüpfen
• Man kann alle Tabellen einer Datenbankunabhängig voneinander betrachten undbearbeiten. Diese Form der relationalenVerknüpfung findet in Abfragen, Formularenund Berichten statt.
• Mit der Definition einer Standardbeziehunginformiert man Access über die relationaleVerknüpfung zweier Tabellen.
• Standardbeziehungen haben keinen Einfluß aufdie Bearbeitung der Daten.
• Wenn man eine stärkere Bindung von Tabellenwünscht, dann muß man die referentielleIntegrität definieren.
Referentielle Integrität
• Ist sie erst einmal definiert, gewährleistet Access diereferentielle Integrität überall dort, wo Datenberarbeiten werden können (Tabellen, Formularen,Aktualisierungsabfragen).
• Es gibt drei Sorten von Bezihungen:
• 1:1 (z.B. Länder – Regierungschef) und
• 1:n (z.B. Länder – Städte)
• m:n (z.B. Länder – Internationale Organisationen)
Bei der 1:1 – Beziehung
• wird jeder Primärschlüssel der einen Tabelle mit demkorrespondierenden Primärschlüssel der anderen Tabelleverknüpft.
• man muß vor der Definition der Standardbeziehungsicherstellen, daß die Werte beider Primärschlüsselübereinstimmen.
• wenn man zwischen zwei Tabellen eine 1:1-Beziehungbildet, dann sollte man auf die RI verzichten.
(Die Definition der RI würde nämlich bewirken, daß dieEingabe des Primärschlüssels in die eine Tabelle nur dannmöglich wäre, wenn dieser in der anderen Tabelle bereitsexistierte!)
Bei der 1:N – Beziehung
• können jedem Datensatz der Mastertabelle mehrere Datensätzeder Detailtabelle zugeordnet werden.
• umgekehrt kann jeder Datensatz der Detailtabelle eindeutigeinem Datensatz der Mastertabelle zugeordnet werden. (z.B.:Kunden und Auftraege, Rechnungsköpfe undRechnungspositionen, Konto und Buchungen usw.)
• Die Voraussetzung für die Definition einer 1:N – Beziehung mitreferentieller Integrität ist:
• ein eindeutiger Primärschlüssel in der Mastertabelle und einmehrdeutiger Fremdschlüssel in der bezogenen Tabelle.
• Beide Schlüssel müssen vom gleichen Datentyp sein und diegleiche Feldgröße haben.
Source: http://www.it-zeugs.de/tutorial-access-2013-datenbank-fuer-einsteiger.html
Primärschlüssel in der Mastertabelle
Fremdschlüssel in der bezogenen Tabelle
Das Beziungen FensterRelationships
Microsoft Access 2013 Beispiel
• Erstellen Sie die folgende Tabellen und machen die Beziehungen.
• Einfügen zwei Datensätzen fuer jede Tabelle
TABELLENNAME: ARTIKELLISTE
Feldname(Field Name)
Felddatentyp (Data Type) Field Properties(Feldeigenschaften)
Artikel-Nr(Primaerschluessel)
Short Text Size: 5Input Mask: >L<CCCC
Artikelname Short Text (Kurzer Text) Size - 50
Nettopreis Number/Zahl IntegerValidation Rule Between 10 and 300
Lagerbestand Number/Zahl Integer>=0
Mindestbestand Yes/No
Web-Adresse Hyperlink
Abbildung Attachment
TABELLENNAME: KUNDENLISTE
Feldname (Field Name) Felddatentyp (Data Type) Field Properties(Feldeigenschaften)
Kunden-Nr(Primaerschluessel)
Short Text Field size: 8Input Mask: >LL000000
Kunden Name Short Text Field Size: 50
Rechtsform Short Text Field Size: 4Value List: AG; GmbH
Straße Short Text
PLZ Short Text Field size: 6Input Mask: 000000
Ort Short Text Field size: 25Default Value: Bukarest
Tel-Nr Short Text Field size: 17(9900)-00-0000000
E-mail Adresse Hyperlink
TABELLENNAME: BESTELLUNGEN
Feldname (Field Name) Felddatentyp (Data Type) Field Properties(Feldeigenschaften)
Bestellung-Nr(Primarschluessel)
Short Text Field size: 4Input Mask: >LL
Kunden-Nr(Fredmschluessel)
Lookup Wizard
Artikel-Nr(Fredmschluessel)
Lookup Wizard
Stueckzahl Number IntegerValidation Rule >0
Bestellungdatum Date/TimeFormat: Short Date
Table Properties:Validation Rule
[Lieferdatum]>=[Bestellungdatum]Lieferdatum
Das Fenster Beziehung