Tabellen in Datenbanken: Unterschied zwischen den Versionen

Aus IV1
Hans4mido (Diskussion | Beiträge)
K Textersetzung - „http://sql.idv.edu“ durch „https://sql.idb.edu“
 
(17 dazwischenliegende Versionen von 6 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
<!--<yambe:breadcrumb>Datenbanken|Datenbanken</yambe:breadcrumb>-->
<div class='noprint'><yambe:breadcrumb>Datenbanken|Datenbanken</yambe:breadcrumb></div>
{{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.}}
{{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.}}


Zeile 7: Zeile 7:


== Das Wesen von Tabellen==
== Das Wesen von Tabellen==
Eine Tabelle ist eine strukturierte Sammlung von Daten über ein bestimmtes Objekt (Entität), wie im vorliegenden Beispiel über Kunden, Bücher oder deren Verlage. Die Anordnung der Daten in Tabellen folgt nicht grammatikalischen Regeln, wie dies einer losen Textform entspräche, sondern formalen Aspekten, die auf schnelle, gezielte Suchprozesse oder die erwähnte Freiheit von Redundanzen abzielen.
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 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 benötigten Informationen''' zu einem Buch, wie z. B. ''Buchnummer'', ''Verlagskurzbezeichnung'', ''Preis''...
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"
Zeile 45: Zeile 45:
|}
|}


== Merkmale oder Attribute: Die Spalten der Tabelle ==
== Die Domäne ==


Die Spalte einer Tabelle enthält die '''Ausprägungen eines Merkmals''' (z.B. alle Preise) aller in der Tabelle abgebildeten Entitäten (z.B. aller Bücher). Darin liegt auch die Begründung, dass die Merkmalsausprägungen (Preise) vom gleichen Datentyp sind.
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.
 
Die Menge aller möglichen (= zugelassenen) Ausprägungen eines Merkmals (z.B. Postleitzahlen Österreichs) bilden 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 Tabelle.


== Geforderte Eigenschaften einer 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 eindeutig sein. Das bedeutet, dass zu keinem Zeitpunkt zwei idente Datensätze in der Tabelle existieren dürfen.
* Eine Tabelle muss atomare Attribute 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 sortiert 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 Tabellen existieren Attribute (singulär oder in Kombination), welche für den gesamten Datensatz als eindeutiges Identifikationsmerkmal (Schlüsselattribut) dienen. Häufig sind dies (fortlaufende) Nummern (Buchnummer, Kundennummer, Matrikelnummer, usw.).
* 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 oder mehrere Datensätze '''suchen'''.
* Datensätze bzw. Teile (Felder) davon '''suchen'''.
* Einen Datensatz '''hinzufügen'''.
* Datensätze '''hinzufügen'''.
* Einen Datensatz '''ändern''' (meist sind nur einzelne Attribute betroffen).
* Datensätze oder Teile (Felder) davon '''ändern''' (meist sind nur einzelne Attribute betroffen).
* Einen Datensatz '''löschen'''.
* Datensätze '''löschen'''.
* Attribute einer Tabelle hinzufügen oder löschen
* Attribute einer Tabelle hinzufügen oder löschen.
* Neue Tabellen einer Datenbank hinzufügen
* Neue Tabellen einer Datenbank hinzufügen.
* Tabellen aus einer Datenbank löschen
* Tabellen aus einer Datenbank löschen.


Die im Rahmen der vorliegenden Dokumentation eingebetteten Operationen auf die real existierende Übungsdatenbank [http://sql.idv.edu] sind auf die Operation Suchen begrenzt.
Die im Rahmen der vorliegenden Dokumentation eingebetteten Operationen auf die real existierende Übungsdatenbank [https://sql.idb.edu] sind auf die Operation '''Suchen''' begrenzt.


== Zitiervorschlag ==
== Zitiervorschlag ==
''Mittendorfer'' in ''Pils'', Informationsverarbeitung I (27. 2. 2012), Tabellen in Datenbanken(mussswiki.idv.edu/iv1)
''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)