7.1. Entity-Types - Datenbank-Design |
![]() |
![]() |
Letztmalig dran rumgefummelt: 29.02.16 18:37:57 |
![]() |
Also kommen wir zurück zur Datenbank. Was
zeichnet eine Datenbank nach dem heutigen Verständnis aus? Also da wären unsere normalen Tabellen. Dann natürlich unsere Indizes. Bis zu diesem Punkt kann bereits FoxPro 2.x folgen. Nun kommen jedoch besondere Bestandteile dazu, die eine echte Datenbank ausmachen. Stored Procedures oder auch „gespeicherte Prozeduren“. Damit ist Programmcode gemeint, der Daten in spezieller Form manipulieren kann. Weiters gibt es da die Trigger, Rules und Defaults. Außerdem sollten spezielle Datentypen vorhanden sein, die das Speichern von Daten etwas transparenter machen. Nicht zu vergessen, die Referentielle Integrität und die Nullwerte. Auf alles obige mussten wir bisher verzichten, bzw. wussten bisher gar nicht, dass so etwas eventuell wichtig sein konnte. Von manchen Leuten wird gemunkelt, dass sie die Wörter nicht einmal kannten, bzw. aussprechen konnten. Aber um ehrlich zu sein. Bevor ich mit einer echten Datenbank zu tun hatte (und das ist nicht besonders lange her) konnte ich mit den Ausdrücken genauso wenig anfangen. |
||||||
![]() |
1. CREAT DATABASE 2. Stored Procedures 3. Trigger 4. Rules 5. Fehlererkennung und Fehlerbehebung in Datenbanken |
||||||
![]() |
|
||||||
![]() |
Quellen:
|
1. CREAT DATABASE | ![]() |
![]() |
![]() |
![]() |
WINDOWS-basierte DBMS bieten umfangreichen Komfort zum generieren der einzelnen möglichen Funktionen. Dabei ist im Funktionsumfang deutlich erkennbar jeweils nur ein Grundbestand garantiert. Immer geht es nach den Assistenten noch eine Script-Oberfläche. Mit dieser kann dann auf Basis standardisierter Konventionen, an welche sich die Programmierer mehr oder weniger gehalten haben, funktional in die Tiefe gegangen werden. | ||||||
![]() |
|
||||||
![]() |
2. Stored Procedures | ![]() |
![]() |
![]() |
![]() |
damit ist Programmcode gemeint, der Daten in ganz
bestimmter Form verändern kann. In der Welt der Großrechner und SQL-Datenbanken
wird dies durch die sogenannte SQL-Sprache erledigt. Eigentlich sollte die
SQL-Sprache eine Abfragesprache sein, die es auch der Oma von nebenan ermöglicht
Ihre Kuchenrezepte aus dem Datenhaufen herauszubekommen. Wer sich jedoch schon
einmal über die Sprache darüber gewagt hat, der wird bald erkennen, dass die
„Oma“ wohl eher das Kochbuch zur Hand nehmen wird, als sich aus einer Datenbank
Informationen zu holen. Ich persönlich bin froh, dass SQL ein etwas schwieriger Teil der EDV ist, ansonsten wäre ich ja arbeitslos. Vom Standpunkt eines Programmierers aus, schreibt man seine Programme lokal auf seinem Rechner und greift mit bestimmten Befehlen auf die Festplatte oder das Netzlaufwerk zu. Die Stored Procedures hingegen laufen sozusagen in der Datenbank ab und belasten somit nicht das eigene Programm. Dies hat besondere Vorteile. Als erstes ist das Schlagwort „Reuseable Code“ anzuführen. Wenn ich Programmcode zentral ablege, dann brauche ich ihn nur einmal schreiben und er steht jedem meiner Programme zur Verfügung. Außerdem muss ich dafür sorgen, dass der Code für alle Problemfälle gewappnet ist, dass heißt, dass man „ordentlich“ programmieren muss und sich keine Quick and Dirty´s leisten kann. |
![]() |
3. Trigger | ![]() |
![]() |
![]() |
![]() |
Die sinngemäße Übersetzung für Trigger wäre der
Abzugshebel einer Pistole. Genauso verhalten sich auch die Trigger, hinter denen
eine Stored Procedure stecken kann. Es bedeutet schlicht und einfach, dass ein
Ereignis eintritt und die Datenbank daraufhin einen Trigger „abfeuert“ der
wiederum mit einer Aktion auf das Ereignis reagiert. War das nicht ein toller
Satz ? Für den Laien erklärt bedeutet dieses, daß es drei verschiedene Ereignisse in der Datenbank gibt, die man abfangen kann. Datensatz Einfügen, Ändern und Löschen. Es wird alles auf diese drei Ereignisse zurückzuführen sein. Wenn nun eins dieser Ereignisse eintritt, dann kann die Datenbank automatisch weitere Aktionen starten. Als Beispiel wären da Löschoperationen oder ähnliches. |
![]() |
4. Rules | ![]() |
![]() |
![]() |
![]() |
In jeder Datenbank kann man ein Regelwerk
definieren, welches darauf achtet, dass keinerlei „Mülldaten“ in die
Tabellen gelangen. Wenn Sie definieren, dass ein bestimmtes Feld in einer Tabelle nicht geändert werden darf, dann wird sich die Datenbank mit Händen und Füßen wehren, dass Sie einen Datensatz eingeben, oder darauf ändern. Also das alte Verhalten des „Ich lege mal schnell 5 leere Datensätze an und schreibe die Daten später hinein“ können sie sich sofort aus dem Kopf schlagen. Wenn Sie eine Regel definiert haben, so müssen Sie die Regel zuerst löschen, wenn Sie diese brechen wollen. Und mal ehrlich, wer möchte sich vom Computer schon sagen lassen, was man tun darf und was nicht. Aber dazu später. |
![]() |
5. Defaults | ![]() |
![]() |
![]() |
![]() |
Wenn Sie zufällig in Deutschland wohnen und einen
Kundendatensatz eingeben, dann ist es wohl sinnvoll, wenn das
Länderkennzeichen mit einem „D“ vorbelegt ist. Wollten Sie dies bisher
erreichen, so mussten Sie dieses in jedem Programm hineinprogrammieren,
welches Datensätze in der Kundendatei anlegt. Defaults füllen die Felder bereits mit von Ihnen vorbestimmten Werten, wenn ein Datensatz neu angelegt wird und Sie diese Daten nicht explizit vorgeben. |
![]() |
![]() zur Hauptseite |
© Samuel-von-Pufendorf-Gymnasium Flöha | © Frank Rost am 7. Januar 2010 um 13.18 Uhr |
... dieser Text wurde nach den Regeln irgendeiner Rechtschreibreform verfasst - ich hab' irgendwann einmal beschlossen, an diesem Zirkus nicht mehr teilzunehmen ;-) „Dieses Land braucht eine Steuerreform, dieses Land braucht eine Rentenreform - wir schreiben Schiffahrt mit drei „f“!“ Diddi Hallervorden, dt. Komiker und Kabarettist |