Was ist eine Datendefinitionssprache?
Eine Datendefinitionssprache ist eine Computerprogrammierungs- oder Skriptsprache, die eine Datenstruktur definiert. Per Definition müssen diese Sprachen drei Dinge tun: Datenstrukturen erstellen, löschen und ändern. Was sie außerhalb dieser drei Bereiche tun, ist unerheblich, solange sie diese drei Aufgaben erfüllen. Jede Sprache kann eine Datendefinitionssprache sein, der Begriff wird jedoch am häufigsten für Schemata in SQL (Structured Query Language) und XML (Extensible Markup Language) verwendet.
Als der Begriff Datendefinitionssprache in Gebrauch kam, galt er für ein Modell der Konferenz für Datensystemsprachen (Codasyl). Der Prozess definierte zwei Hauptbereiche der Datenstrukturentwicklung: Die Datendefinitionssprache stellte die eigentliche Struktur der Datenbank dar, und die Datenmanipulationssprache definierte die Methoden zum Platzieren von Daten in der Struktur. Seitdem haben sich diese beiden Begriffe erweitert und zu Sammelbegriffen für die von ihnen abgedeckten Prozesse entwickelt.
Die allgemeinen Begriffe gelten jetzt für alle Sprachen, die ihre ursprünglichen Funktionen ausführen. Sowohl SQL als auch XML führen alle erforderlichen Aufgaben aus und bieten viele Funktionen, die im ursprünglichen Modell nicht vorhanden waren, weil sie noch nicht erfunden wurden. Andere Sprachen bieten diese Funktionen ebenfalls an. Sie werden nur viel seltener verwendet.
Um eine Datendefinitionssprache zu sein, muss die Sprache drei Funktionen bereitstellen. Die erste Hauptfunktion ist der Aufbau von Datenstrukturen; Im Grunde genommen handelt es sich hierbei um Tabellen, die bestimmte Informationsgruppen enthalten sollen. Sie erscheinen oft wie eine Tabellenkalkulation und enthalten Seiten mit Informationen, auf die verwiesen wird. Das Blatt enthält beispielsweise eine Liste der Kunden eines Unternehmens und eine Liste der verfügbaren Produkte oben. Das Blatt hätte eine Auflistung, wann diese Kunden einzelne Produkte unten auf dem Tischteil kauften.
Die nächste Hauptfunktion ist das Löschen von Datenstrukturen. Dies ist nicht dasselbe wie das Löschen einer gesamten Datenbank oder Datei. Es ist ein viel selektiverer Prozess. Möglicherweise wird eine bestimmte Informationsseite oder ein ganzer Teil eines mehrdimensionalen Arrays entfernt. In beiden Fällen müssen die Daten entfernt werden, ohne andere Datenstrukturen zu beeinflussen, auch wenn sie alle in derselben Datei gespeichert sind.
Die letzte Hauptfunktion ist die Änderung einer Datenstruktur. Dies ist eine breite Kategorie, die viele Situationen abdeckt. Zu einer Tabelle können Spalten hinzugefügt oder umbenannt werden, oder es muss eine gesamte Datenbank in zwei verschiedene Datenbanken aufgeteilt werden. In jedem Fall müssen sie so geändert werden, dass während des Vorgangs keine Informationen verloren gehen, zerstört oder erstellt werden. Dies verhindert, dass anomale Informationen in das Datensystem gelangen.