Menü

Einführung in SQL

Zurück | Ebene zurück

Allgemeines

Während man allgemein von SQL - Structured Query Language - spricht, bezeichnet Microsoft seinen erweiterten SQL-Sprachumfang mit Transaction-SQL.- kurz T-SQL. Die Datenbank-Abfragesprache SQL ist im Grundwortschatz normiert und erlaubt so die Anwendung der erworbenen Kenntnisse auf fast alle SQL-Datenbanken.

SQL ist eine mengenorientierte Sprache, mit der es möglich ist, Daten mit beliebigen Abhängigkeiten miteinander zu verbinden, auszuwerten und zu verändern und das mit sehr hoher Geschwindigkeit. Die Sprache ist so ausgelegt, dass sie auch von Nicht-Programmieren anwendbar ist.

Im Gegensatz zu Desktop-Datenbanken wie Access, Paradox, dBase, Btrieve, Flashfiler usw. ist ein SQL-Server darauf ausgelegt intern mit Mengen zu operieren. Die meisten Destop-Datenbanken verfügen zwar heute auch über eine sehr einfache SQL-Abfragesprache, arbeiten intern jedoch nach wie vor zeilenorientiert. Hierdurch wird die Anwendung von SQL-Abfragen auf solche Datenbanksysteme sehr langsam von statten gehen. 

Die weiteren Vorteile eines echten SQL-Server sind die Möglichkeit SQL-Programme im SQL-Server abzulegen und dort in kompilierter Form jederzeit auszuführen. Diese Programme nennt man Stored-Procedures. Ein SQL-Server arbeitet nicht nur mit den Tabellen, sondern auch mit Views sehr effizient. 

Tabellen sind die eigentlichen „Dateien“. So gibt es Tabellen in denen Adresse, Artikel, Rechnungen usw. gespeichert sind. Jede Tabelle hat für die gespeicherten Daten eine einheitliche Struktur.

Views sehen von außen aus wie Tabellen und können auch genau so benutzt werden, jedoch sind dies nur Ansichten auf Tabellen. Man verwendet Views um Daten in einer anderen, für ein Problem optimierteren Ansicht, zu bearbeiten. Views können Auszüge aus einer großen Tabelle darstellen, aber auch neue Kombinationen aus vorhandenen Tabellen bilden. Dies macht den SQL-Server zu einem äußerst flexiblen Datenlieferant.

Ein weitere Aspekt ist die Datensicherheit. Der SQL-Server kann so konfiguriert werden, dass ein Löschen, Anfügen oder Ändern eines Datensatzes bestimmten Regeln gehorchen muss. So kann zum Beispiel  definiert werden, dass ein Feldwert einen bestimmten Wertebereich nicht überschreiten darf, oder dass Daten nicht gelöscht werden dürfen, wenn diese noch von anderen Tabellen benutzt werden. Diese Regeln nennt man Contrains. EULANDA® macht hiervon sehr intensiven Gebrauch und schätzt so die Daten. 

Ein SQL-Server kann Berechtigungen verwalten. So ist es möglich Berechtigungen für Benutzer und Gruppen zu setzen und das bis auf Feldebene. Da die Berechtigungen im SQL-Server zentral verwaltet werden, kann auch kein unbefugter Benutzer über ODBC oder Programme wie Excel, Access usw.  an die Daten heran.

Zu guter letzt werden alle Aktionen vom SQL-Server überwacht - in sogenannten Transaktionen. Diese Transaktionen gewährleisten, dass Befehle, die aus mehreren Aktionen bestehen entweder komplett order gar nicht ausgeführt werden. Dies ist bei Buchungssystemen wie Lager usw. unumgänglich. Kann ein Datensatz aus einer Buchungskette nicht aktualisiert werden, aber andere wurden bereits von diesem Buchungsjob verändert, so macht der SQL-Server alle getätigten Änderungen rückgängig und meldet den Fehler.  Die Datenbank ist also immer konsistent.