Damit eine Webseite gut läuft und die SQL-Abfragen auch schnell durchgeführt werden können, muss eine professionelle Datenbankerstellung erfolgen, denn ohne eine professionelle Datenbankerstellung wird die Webseite – Projekt, nicht wirklich erfolgreich werden und bei den ersten großen Traffic auch nicht mehr reibungslos laufen.
Bei einer Datenbankerstellung muss ein korrekter Datenbankentwurf erfolgen, denn nur so und nicht anders kann eine Datenbankerstellung erfolgreich sein:
Die Phasen der Datenbankentwicklung:
Viele Internetnutzer werden regelmäßig mit dem Begriff „Datenbank“ konfrontiert und wissen nicht genau, was sie sich darunter vorstellen sollen. Eine Datenbank ist nichts weiter als eine tabellarische Auflistung oder vereinfacht gesagt eine elektronische Verwaltung von vielen Daten. Dies nennt sich ganz einfach Datenbank und wird im World Wide Web häufig genutzt. Beispielsweise nutzen Gewinnspielanbieter solche Datensätze der Teilnehmer, um sie für Werbung nutzen zu können.
Zur Datenbankerstellung gibt es viele Tools aus dem Web, die natürlich jedem Laien weiterhelfen, um das Verständnis für eine Datenbank zu ermöglichen. Meist besteht die Datenbankerstellung aus zwei Teilen. Einmal die Abspeicherung der Daten wie zum Beispiel Name, Adresse, Geburtsdatum sowie Telefonnummer. Diese Daten werden abgespeichert und das System, welches die Daten verwaltet nennt sich DBMS ein Datenbankmanagementsystem.
Auch die eingescannten Akten eines Anwalts, die auf dem Computer abgespeichert werden gelten als Datenbank. Sowie eine tabellarische Hausaufgabe für die Schule. Diese Dinge zu erstellen ist im Grunde genommen kinderleicht und muss entsprechend den eigenen Bedürfnissen angepasst werden. Die Daten können einfach auf einer Festplatte, Diskette oder sogar CD abgespeichert werden. Auch diese gelten als Datensätze, wo eigene Datenbanken abgespeichert werden.
Eine Datenbank ist eine Anhäufung von Informationen über ein bestimmtes Thema bzw. für einen definierten Zweck. Beispiele für wichtige Datenbanken sind Bücherverwaltungen, elektronisch gesteuerte Telefonbücher, Warendatenbanken oder Datenbanken für Gehaltsabrechnungen.
Generell wird von einem Datenbanksystem gesprochen, wenn die Sammlung der Daten wie auch das Verwaltungssystem genutzt werden. Unter der Verwaltung wird verstanden, wenn der Anwender definiert Daten erfasst und diese verwaltet, Suchen durchführt und Auswertungen erstellen kann. So wird eine Datenbank immer dann benötigt, um große Mengen an Daten einfach abspeichern zu können.
Die Bedeutung erkennt der Anwender zum Beispiel auf Internetseiten bei den verschiedenen Anbietern von Waren oder Schulungen.
Wie oft die Thematik Datenbank bei der täglichen Anwendung auftaucht, ist nicht verwunderlich. Egal welche Sprache die Anwender nutzen, es wird hier zwangsläufig ein bestimmtes Thema auftauchen. Wenn der Anwender eine Datenbank aufbaut, ist es zuerst wichtig, das jeweilige Projekt zu verstehen und dann die Struktur sinnvoll für die neue Datenbank auszuwerten. Dies ist für den Nutzer nicht besonders schwer. Datenbanken bzw. Datenbanksysteme dienen der strukturierten und der elektronischen Datenverwaltung. Die Software zur Verwaltung, die Datenbankmanagementsysteme, legen große Mengen an Daten effizient und folgerichtig ab und stellen dem Anwender, je nach Bedarf, die Daten in verschiedenen Teilmengen sowie in unterschiedlichen Formen zur Verfügung.
Ein wichtiges Beispiel ist eine Datenbank, welche hinter einer Anmeldung für Newsletter von Unternehmen liegt. Darin werden eingehende x E-Mail-Adressen und Namen in einer Tabelle hinterlegt und können vom Anwender als Excel-Tabelle weiterverarbeitet und exportiert werden. Komplexer sind allerdings die Datenstrukturen, die die Anwender zum Beispiel für weitere Kundendaten erheben und sie filtern möchten, zum Beispiel nach der jeweiligen Art des bezogenen Newsletters oder zu bestimmten Zeiten des Lifetime-Circles der Kunden.
Zur Verwaltung und zur Abfrage der Daten bieten die jeweiligen Datenbanksysteme eine spezielle Abfrage- bzw. Datenbanksprache an – die am meisten verwendete Sprache ist SQL.
Neben der reinen Verwaltung und der Ablage der Daten erfüllen jene Datenbankmanagementsysteme noch weitere bedeutende Aufgaben rund um die Daten. Hierzu gehören vor allem die Garantie der Datensicherheit. Datenbanksysteme stellen dem Anwender einen Datenbankserver bzw. ein Speichermedium zur Verfügung und speichern Zugriffsrechte und –raten von den einzelnen Anwendern. Jene Rechte können die Nutzer mithilfe vieler spezieller Tools spezifisch verwalten und anlegen. Zusätzlich legen Datenbankmanagementsysteme in regelmäßigen Abständen Backups an, um die Anwender vor einem Datenverlust zu bewahren.
Die Garantie der Datenkonsistenz ist ein weiterer Aspekt. Einerseits definieren die Datenbanken, welche Formate und Daten wie verändert werden können, wann und ob Duplikate erlaubt sind und welche genauen Daten wann aus der Datenbank wieder gelöscht werden können, ohne dass die Logik der weiteren Daten behindert wird. Andererseits stellt das Datenbanksystem sicher, dass die Datensätze nicht zugleich von mehreren Anwendern verändert werden können bzw. mit welchem Vorrang welche Datenabfrage behandelt wird. In jenen Bereich fällt zugleich die Verwaltung bzw. die Sicherstellung der Mehrnutzerfähigkeit der Datenbank.
Die Datenbank muss über wenigstens ein ihr zugewiesenes Nutzerkonto verfügen. Ansonsten kann nicht auf eine Datenbank bzw. die Daten zugegriffen werden. Einen Datenbanknutzer können die Anwender während der Erstellung der Datenbank festlegen. Hierzu müssen diese das entsprechende Kontrollkästchen bei Datenbanknutzer aktivieren. Zugleich können diese später einen Nutzer auswählen, zum Beispiel wenn die Nutzer eines der vorhandenen Nutzerkonten verwenden möchten. Um dem Datenbankbenutzer den Zugriff auf die Datenbanken zu gewähren, müssen die Anwender die Option festlegen, dass der Benutzer Zugriff auf alle Datenbanken in dem ausgewählten Abonnement hat.
Falls die Anwender über die passenden Berechtigungen verfügen, können diese die Zugriffssteuerungsregeln für einen Datenbanknutzer allein festlegen. Dies erfolgt über die spezifischen Zugriffsregeln.
Die Datenbankmanagementsysteme strukturieren die Daten und die jeweiligen Beziehungen zueinander in verschiedenen Datenbankmodellen. In Abhängigkeit vom Modell werden verschiedene Schemata benutzt:
Der Begriff SQL bezieht sich auf das Wort „query“, was zu „Abfrage“ bedeutet, und wird im generellen Sprachgebrauch als Abkürzung für „Structured Query Language“ bzw. für strukturierte Abfragesprache benutzt. SQL ist eine besonders weit verbreitete Datenbanksprache, welche nicht nur der Abfrage der Daten, sondern ebenfalls zur Definition der Struktur der Daten in relationalen Datenbanken dient sowie das Bearbeiten, Löschen und Einfügen von Daten erlaubt. Weil diese Sprache auf der relationalen Algebra fundiert und recht logisch sowie einfach aufgebaut ist, ist diese Abfragesprache einfach zu erlernen und wird von fast jedem System unterstützt. So können die Anwender mithilfe von SQL zum Beispiel einfache Abfragen schreiben, gezielt einzelne Tabellenspalten anlaufen, nach spezifischen
Werten suchen und das Format bzw. den Inhalt ändern, bestimmte Tabellenwerte ausschließen, sortieren oder filtern und beliebige Bereiche gruppieren und verketten.
Die Erstellung der Datenbank ist ein bedeutender Meilenstein in der Entwicklung der Datenbanken, da einerseits die Grundlagen für eine Datenbank gelegt werden und andererseits auch die künftige Struktur für die Anwendung der Datenbank definiert werden muss. Wichtig ist dabei die Frage, wie ein Datenbankmodell entworfen und im Anschluss die Datenbank erstellt wird. Der Prozess des Entwurfs der Datenbank wird meistens in drei Schritten ausgeführt. Hier wird zwischen dem logischen, physischen und konzeptionellen Datenbankentwurf unterschieden. In manchen Fällen werden Zwischenschritte bei der Erstellung einer Datenbank eingelegt, da hierzu meistens Rücksprache mit den einzelnen Fachbereichen eines Unternehmens notwendig ist. In Abhängigkeit von der Größe des Datenbankprojekts kann der Datenbankentwurf eine gewisse Zeit andauern.
Der konzeptionelle Entwurf einer Datenbank beschreibt die Struktur der Daten, die Beziehungen, die Semantik sowie die Integritätsbedingungen in einem Modell. Der Entwurf spiegelt den Inhalt der Datenbank wider und wird als deklaratives Modell verstanden. Als Eingabe für einen konzeptionellen Entwurf dienen die Ergebnisse der Anforderung, die in den einzelnen Fachbereichen eines Unternehmens durchgeführt werden. Das bedeutendste Ziel eines konzeptionellen Datenbankentwurfs ist die Richtigkeit und die Lesbarkeit des Modells. Mithilfe dieses Modells werden die einzelnen Zusammenhänge der Nutzer modelliert. Hierbei wird auf Beschränkungen seitens der Durchführbarkeit keine Rücksicht genommen, um eine „klare Sicht der Dinge“ zu formen. Die Verwendung von grafisch orientierten Technologien, wie Unified Modeling Language (UML) oder Entity Relationship Modelle können eine Basis für die weiteren Phasen des Entwurfs in dem Entwicklungsprozess sein.
Der logische Entwurf einer Datenbank ist die Abbildung eines konzeptionellen Entwurfs auf ein konkretes System. Hierbei kann ein logisches Datenmodell in verschiedene zwei Arten unterteilt werden, als systemabhängiges und systemunabhängiges Modell. Ein logisches Datenmodell ist immer systemunabhängig, wenn mit genauen Regeln zur Abbildung gearbeitet wird, welche nur abhängig vom benutzen Modell sind. Das Ergebnis ist hierbei ein Datenmodell, welches lediglich auf eine Datenbank mit demselben Modell zu übertragen ist. Ein systemabhängiges Datenmodell nutzt spezifische Funktionen einer Datenbank. Das Ergebnis hierbei ist eine bestimmte Menge an DDL-Skripten in der jeweiligen Sprache der einzelnen Datenbank. Als Eingabe dient der konzeptionelle Entwurf einer Datenbank aus der vorherigen Phase des Entwurfs. Die Ausgabe ist ebenfalls ein logischer Entwurf der Datenbank, welcher die Effizienz und die Richtigkeit des konzeptionellen Entwurfs der Datenbank widerspiegelt.
Der physische Entwurf einer Datenbank bildet den logischen Entwurf auf Grundlage der Zugriffspfade und Speichertechnologie auf das jeweilige Datenbanksystem, ab. Beim physischen Entwurf stehen bestimmte Aspekte wie Anforderungen an die Performance, zum Beispiel die Speichernutzung, das Antwortzeitverhalten und der Durchsatz der Daten, im Vordergrund. Durch die Techniken der Optimierung im physischen Entwurf, wie Replikation, Denormalisierung oder die Verwendung von Indizes, wird versucht eine Vergrößerung der Performance zu erreichen. Das Ergebnis ist der physische Entwurf der Datenbank, welcher nur für eine spezielle Datenbank gedacht ist.
Bei den Adressen gibt es die ID als der Primärschlüssel der Tabelle. In jener Spalte enthaltene Werte dürfen lediglich ein einziges Mal in der Datenbank vorkommen. Duplikate sind daher nicht erlaubt. Ein weiterer Primärschlüssel muss entsprechend gesetzt werden. Die ursprüngliche Bedeutung eines Primärschlüssels kommt immer dann zum Tragen, wenn der Anwender zwei Tabellen in Beziehung setzt. Was bei der Verbindung in einer Tabelle der Primärschlüssel ist, ist in einer weiteren Tabelle der Fremdschlüssel. Dieser Schlüssel enthält denselben Wert wie der Primärschlüssel, kann allerdings mehrfach vorkommen, was von der Beziehungsart abhängt. So kann dieser einmal, niemals aber mehrfach vorkommen.
Ein Feld in der Datenbank ist der Fachbegriff für die Bezeichnung einer Spalte in einer Datenbanktabelle. So charakterisiert jedes Feld durch einen Namen und dem Datentyp, welcher beschreibt, von welcher Art die jeweilige Information ist, welche in der Zelle einer Tabelle eingetragen wird. Dies kann ein Text, eine Zahl, ein Bild oder eine Datei sein.
Um ein bestimmtes Feld in einer Datenbank zu erstellen, klicken die Anwender die Datenbank auf der Seite oder in der Blocknavigation an. Dann gelangen die auf die Ansichtenseite der Datenbank. Auf dieser Seite der Datenbank klicken diese dann auf den Reiter Felder oder klicken im Bereich der Blockeinstellungen auf Datenbankadministration und dann auf Felder. Dann erscheint eine Seite, auf welcher alle Felder gelistet sind und auf der die Nutzer neue Felder hinzufügen und schon vorhandene Felder sortieren, löschen oder bearbeiten können.
Im Menü „Neues Feld“ wählen die Anwender den gewünschten Datentyp für das neu erstellte Feld aus. Dann geben die Nutzer dem Feld einen Namen und eine Feldbeschreibung. Welche anderen Einstellungen vorgenommen werden können, hängt vom Datentyp dieses Feldes ab.
Es gibt generell verschiedene Datentypen für die Felder in der Datenbank. Dies sind:
Zugleich können die Nutzer eine oder mehrere Checkboxen für die Mehrfachauswahl hinzufügen. Dabei repräsentiert jede Zeile in der Textbox eine spezifische Checkbox. Jener Text, den die Anwender hier eingeben, wird neben der Checkbox angezeigt und repräsentiert im Anschluss auch den Wert, zum Beispiel „gültig“ für etwas ungültig oder gültig sein kann. Das Wort erscheint direkt neben der Checkbox des Datenbankeintrages und dann bei Ansicht, wenn jener Wert gewählt worden ist. Wenn die Anwender sicherstellen wollen, dass die Datenbanknutzer nur eine Option aus verschiedenen wählen, dann nutzen diese stattdessen eine einfache Auswahl.
Die Mehrfachauswahl kann zum Beispiel in Filmdatenbanken verwendet werden, wenn die Anwender aus Komödie, Horror oder Western wählen möchten und diese zugleich die Möglichkeit zur Verfügung stellen, dass eine Verbindung möglich ist. Der Typ Menü bzw. Mehrfachauswahl stellt dieselbe Funktionalität dar, aber ein Klicken auf verschiedene Checkboxen ist für viele Anwender der intuitivere Weg.