Tabellen in Datenbanken: Unterschied zwischen den Versionen

Aus IV1
K Textersetzung - „http://sql.idv.edu“ durch „https://sql.idb.edu“
 
(39 dazwischenliegende Versionen von 11 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
==Tabellen==
<div class='noprint'><yambe:breadcrumb>Datenbanken|Datenbanken</yambe:breadcrumb></div>
Eine Tabelle ist eine Sammlung von Daten zu einem bestimmten Thema, wie z.B. Bücher oder Lieferanten. Wenn Sie für jedes Thema eine separate Tabelle verwenden, vermeiden Sie doppelte Daten. Die Datensicherung wird dadurch effizienter und Fehler bei der Eingabe werden reduziert.
{{Kurzform|In diesem Lernschritt wird anhand eines Beispiels aus dem Datenbank-Lehrmodell "Buchhandel" auf die Bedeutung von Tabellen für die Modellierung von (relationalen) Datenbanken eingegangen.}}


In Tabellen sind Daten in '''Spalten (Feldern)''' und '''Zeilen (Datensätzen)''' organisiert. Jedes '''Feld''' in der Tabelle ''Buch'' enthält den '''selben Informationstyp''' für jedes Buch, wie z.B. den ''Buchpreis''. Jeder '''Datensatz''' in der Tabelle Buch enthält '''alle Informationen''' zu einem Buch, wie z.B. ''Buchnummer'', ''Verlagskurzbezeichnung'', ''Preis''...
 
__TOC__
 
 
== Das Wesen von Tabellen==
Eine Tabelle ist eine strukturierte Sammlung von Daten über gleichartige Objekte (Entität), wie im vorliegenden Datenbankbeispiel über Kunden, Bücher, Aufträge und Verlage. Die Anordnung der Daten in Tabellen folgt nicht grammatikalischen Regeln, wie dies einer losen Textform entspräche, sondern formalen Regeln, die auf schnelle, präzise Suchprozesse oder die einführend erwähnte Freiheit von Redundanzen abzielen.
 
Daten in Tabellen sind demnach in '''Spalten''' und '''Zeilen''' organisiert. Eine Zeile einer Tabelle entspricht einem Datensatz, der seinerseits ein verkürztes Abbild eines Objektes aus einer Menge gleichartiger Objekte (Objektklasse) repräsentiert. Eine Spalte enthält die Ausprägungen eines Merkmals aller in der Tabelle enthaltenen Objekte. Aus diesem Grunde sind die Inhalte einer Spalte vom gleichen Datentyp.


{| border="1"
{| border="1"
|+ Auszug aus der Tabelle ''Bücher''
|+ Auszug aus der Tabelle ''Buch''
|-
|-
! Buchnummer
! Buchnummer
Zeile 30: Zeile 37:
| 27,07
| 27,07
| oev
| oev
|-
|-
|-
| 15
| 15
Zeile 39: Zeile 45:
|}
|}


== Attribute: Die Spalten der Tabelle ==
== Die Domäne ==
 
Hier werden die für die Datenbank entscheidenden Eigenschaften eines Buches des Sortiments festgelegt.
 
== Domäne: Wertebereich eines Attributs ==


Elemente von Domänen müssen atomar sein, d.h. sie lassen sich nicht weiter in Dateneinheiten zerlegen. Eine Adresse ist nicht atomar, denn sie lässt sich in Ort, Postleitzahl, Straße und Hausnummer zerlegen - eine Zahl hingegen ist atomar.
Alle Elemente von Domänen müssen atomar sein, d. h. sie lassen sich nicht weiter in Dateneinheiten zerlegen. Die Personenbezeichnung: "Josef Maier" ist nicht atomar, sondern in den Vornamen "Josef" und Nachnamen "Maier" zerlegbar. Die Bezeichnung einer Person belegt somit zwei Spalten in der Zeile (oder füllt zwei Felder) in der Tabelle.
Zwei verschiedene Attribute können zur gleichen Domäne gehören.


== Geforderte Eigenschaften einer Tabelle ==
== Geforderte Eigenschaften einer Tabelle ==


* Eine Tabelle muss eindeutig sein. Das bedeutet, dass zu keinem Zeitpunkt zwei identische Datensätze in der Tabelle existieren dürfen. Sie enthält also nur einen Datensatz.
* Eine Tabelle muss eindeutig sein. Das bedeutet, dass zu keinem Zeitpunkt zwei idente Datensätze in der Tabelle existieren dürfen.
* Eine Tabelle muss atomare Attribute und Domänen aufweisen.  
* Eine Tabelle muss atomare Attribute aufweisen. Das bedeutet, dass keines der Attribute ohne Sinnverlust in weitere Teile zerlegbar sein darf.
* Die Datensätze sind zu jedem Zeitpunkt als unsortiert anzusehen.
* Die enthaltenen Datensätze sind zu jedem Zeitpunkt als unsortiert anzusehen.
* Die Attributreihenfolge ist zu keinem Zeitpunkt fest definiert.
* Die Attributreihenfolge ist zu keinem Zeitpunkt festgelegt.
* In jeder Tabelle existieren Attribute (singulär oder in Kombination), welche für den gesamten Datensatz als eindeutiges Identifikationsmerkmal (Schlüsselattribut) können. Häufig sind dies (fortlaufende) Nummern (Buchnummer, Kundennummer, Matrikelnummer, usw.).


== Operationen auf Tabellen ==
== Operationen auf Tabellen ==


* einen (leeren) Datensatz hinzufügen
* Datensätze bzw. Teile (Felder) davon '''suchen'''.
* einen Datensatz suchen
* Datensätze '''hinzufügen'''.
* Datenfelder ändern  
* Datensätze oder Teile (Felder) davon '''ändern''' (meist sind nur einzelne Attribute betroffen).
* einen Datensatz löschen
* Datensätze '''löschen'''.
* Attribute hinzufügen/löschen
* Attribute einer Tabelle hinzufügen oder löschen.
* Neue Tabellen einer Datenbank hinzufügen.
* Tabellen aus einer Datenbank löschen.
 
Die im Rahmen der vorliegenden Dokumentation eingebetteten Operationen auf die real existierende Übungsdatenbank [https://sql.idb.edu] sind auf die Operation '''Suchen''' begrenzt.


Die im Rahmen der vorliegenden Dokumentation eingebetteten Operationen auf eine real existierende Datenbank zu Übungszwecken sind auf die Operation Suchen begrenzt.
== Zitiervorschlag ==
''Mittendorfer'' in ''Höller'', Informationsverarbeitung I, Tabellen in Datenbanken (mussswiki.idb.edu/iv1)

Aktuelle Version vom 1. Oktober 2018, 14:10 Uhr

<yambe:breadcrumb>Datenbanken|Datenbanken</yambe:breadcrumb>
In diesem Lernschritt wird anhand eines Beispiels aus dem Datenbank-Lehrmodell "Buchhandel" auf die Bedeutung von Tabellen für die Modellierung von (relationalen) Datenbanken eingegangen.



Das Wesen von Tabellen

Eine Tabelle ist eine strukturierte Sammlung von Daten über gleichartige Objekte (Entität), wie im vorliegenden Datenbankbeispiel über Kunden, Bücher, Aufträge und Verlage. Die Anordnung der Daten in Tabellen folgt nicht grammatikalischen Regeln, wie dies einer losen Textform entspräche, sondern formalen Regeln, die auf schnelle, präzise Suchprozesse oder die einführend erwähnte Freiheit von Redundanzen abzielen.

Daten in Tabellen sind demnach in Spalten und Zeilen organisiert. Eine Zeile einer Tabelle entspricht einem Datensatz, der seinerseits ein verkürztes Abbild eines Objektes aus einer Menge gleichartiger Objekte (Objektklasse) repräsentiert. Eine Spalte enthält die Ausprägungen eines Merkmals aller in der Tabelle enthaltenen Objekte. Aus diesem Grunde sind die Inhalte einer Spalte vom gleichen Datentyp.

Auszug aus der Tabelle Buch
Buchnummer Autor Buchtitel Buchpreis Verlagskürzel
12 Hronicek u.a. Elektrotechnik-Fachkunde 30,86 oev
13 Arge Metalltechnik-Grundband 27,07 oev
14 Arge Fachkunde für Tischler 2 27,07 oev
15 Oberleitner Gitarrenschule Band 2 9,00 hoe

Die Domäne

Alle Elemente von Domänen müssen atomar sein, d. h. sie lassen sich nicht weiter in Dateneinheiten zerlegen. Die Personenbezeichnung: "Josef Maier" ist nicht atomar, sondern in den Vornamen "Josef" und Nachnamen "Maier" zerlegbar. Die Bezeichnung einer Person belegt somit zwei Spalten in der Zeile (oder füllt zwei Felder) in der Tabelle.

Geforderte Eigenschaften einer Tabelle

  • Eine Tabelle muss eindeutig sein. Das bedeutet, dass zu keinem Zeitpunkt zwei idente Datensätze in der Tabelle existieren dürfen.
  • Eine Tabelle muss atomare Attribute aufweisen. Das bedeutet, dass keines der Attribute ohne Sinnverlust in weitere Teile zerlegbar sein darf.
  • Die enthaltenen Datensätze sind zu jedem Zeitpunkt als unsortiert anzusehen.
  • Die Attributreihenfolge ist zu keinem Zeitpunkt festgelegt.
  • In jeder Tabelle existieren Attribute (singulär oder in Kombination), welche für den gesamten Datensatz als eindeutiges Identifikationsmerkmal (Schlüsselattribut) können. Häufig sind dies (fortlaufende) Nummern (Buchnummer, Kundennummer, Matrikelnummer, usw.).

Operationen auf Tabellen

  • Datensätze bzw. Teile (Felder) davon suchen.
  • Datensätze hinzufügen.
  • Datensätze oder Teile (Felder) davon ändern (meist sind nur einzelne Attribute betroffen).
  • Datensätze löschen.
  • Attribute einer Tabelle hinzufügen oder löschen.
  • Neue Tabellen einer Datenbank hinzufügen.
  • Tabellen aus einer Datenbank löschen.

Die im Rahmen der vorliegenden Dokumentation eingebetteten Operationen auf die real existierende Übungsdatenbank [1] sind auf die Operation Suchen begrenzt.

Zitiervorschlag

Mittendorfer in Höller, Informationsverarbeitung I, Tabellen in Datenbanken (mussswiki.idb.edu/iv1)