Unsere Datenschutzrichtlinie wird in Kürze aktualisiert. Bitte sehen Sie sich die Vorschau an.

Access: Abfragen mit SQL

Was ist SQL?

Testen Sie unsere 2019 Kurse

10 Tage kostenlos!

Jetzt testen Alle Abonnements anzeigen
SQL ist eine Abfragesprache für Datenbanken, welche in Access in einem leicht veränderten Dialekt eingesetzt wird. Hier geht es um die Anzeige oder Veränderung von Daten.

Transkript

Access ist nicht nur eine relationale Datenbank, also eine, die mit mehreren Tabellen arbeitet, die untereinander Beziehungen und Relationen haben, sondern Access ist auch eine Datenbank, die die Sprache SQL benutzt, und zwar am offensichtlichsten für Abfragen. Der Vorteil besteht darin, dass Sie, wenn es zu viele Daten werden und Access vielleicht irgendwann überfordert sein sollte, dass Sie dann für den Daten- und Abfrageteil auf eine andere SQL Datenbank ausweichen können. Secret server, MySQL und Ähnliche. Da gibt es sehr viele Großrechner-Datenbanken, die dann mit viel viel mehr Daten leicht umgehen können. Deswegen möchte ich einen besonderen Blick werfen auf das, was Abfragen mit SQL können. SQL selber, kann man unterschiedlich aussprechen. Ursprünglich stammt es von IBM und war eine Sprache, die SEQUEL hieß. Wegen Lizenzproblemen wurde die dann in SQL abgekürzt. Heutzutage wird das gerne so interpretiert, als sei es eine Abkürzung fürs Structured Query Language, also strukturierte Abfragesprache. Das kann man so lassen. Das beschreibt ungefähr das, was SQL macht. Allerdings gibt es drei verschiedene Formen von SQL. Hinter SQL steckt zum Beispiel die Data Manipulation Language, also DML. Das ist der Teil von SQL, der sich mit dem Ändern, Einfügen, Löschen und Lesen von Daten beschäftigt. Der zweite Teil ist die Data Definition Language. Diejenige, die in der Lage ist, zum Beispiel das Datenbankschema zu verändern, indem neue Tabellen angelegt werden oder bestehende mit neuen Feldern versehen werden. Und schließlich die Data Control Language, die sich mit der Rechteverwaltung und der Transaktionskontrolle beschäftigt. In diesem Video-Training soll es um die DML, die Data Manipulation Language gehen. Das ist das, was Sie in Access unter dem Stichwort Auswahlabfragen und Aktionsabfragen sehen. Also, das Lesen von Daten sind die Auswahlabfragen und die anderen sind zum Beispiel Ändern, Einfügen und Löschen. SQL selber ist eine Sprache, und zwar keine Programmiersprache, denn im wirklichen Sinne wird damit nicht programmiert, sondern eine Sprache, die beschreibt, was passieren soll. Eine sogenannte deskriptive Sprache. Das ist, wenn man länger mit SQL gearbeitet hat, irgendwann so selbstverständlich, dass ich diesen Unterschied einmal deutlich aufzeigen möchte. Angenommen, ich möchte in einer Abfrage alle Datensätze sehen, deren Ort beispielsweise entweder Hamburg oder Nürnberg oder so was ist. Dann würde ich das in SQL so formulieren: SELECT field name from Tabelle Test WHERE filed Ort LIKE und dann kommt dieses komische Sternchen b Fragezeichen rg. Das bedeutet, liebes Programm mach irgendwas, so dass ich den Feldnamen sehe, für den aus der Tabelle Test, der Ort so ähnlich ist wie b und dann irgendwas rg. Die Filter für Nürnberg und Hamburg würden das beispielsweise erfüllen. Was mir dabei wichtig ist, diese Anweisung beschreibt überhaupt nicht, wie es gemacht werden soll, sondern beschriebt nur, was zu tun ist. Das "wie" ist Sache des ausführenden Programms und kann ihm im Grunde egal sein. Eine deskriptive Sprache beschreibt das Ziel und nicht den Weg. Wenn Sie sich das Gegenstück einmal ansehen, in Access ist ja auch VBA, Visual Basic for Applications, enthalten. Das ist eine prozedurale Sprache. Da müssen Sie in einer Prozedur erklären, was genau zu tun ist. Der gleiche Wunsch, nach diesen Datensätzen aus Hamburg oder Nürnberg würde so formuliert werden: Sie müssen zuerst eine Tabellen- oder Abfragenvariable erfinden. Diese würde dann die passende Tabelle öffnen und dann schreiben Sie eine Schleife bis zum Ende dieser Datensätze, so dass jeder Datensatz einmal angeguckt wird, und wenn dort das Feld Ort beziehungsweise dessen Wert so ähnlich ist wie dieser Filter, dann in diesem Fall drucke ich das Feld Name aus. Und dann gehe ich zum nächsten Datensatz und mache so lange weiter bis ich alle Datensätze durchgelaufen bin. Das ist eine prozedurale Anweisung, bei der Sie jeden Schritt einzeln durchdenken und programmieren müssen. SQL ist also eine deskriptive Sprache, die nur sagt, was Sie haben wollen, im Gegensatz zu anderen richtigen, sag ich mal, Programmiersprachen, die auch dazu sagen müssen, wie das funktioniert. Und wenn ich immer von SQL spreche, dann muss ich nochmal dazu sagen, dass SQL nicht gleich SQL ist. Access-SQL beziehungsweise die dahinter liegende sogenannte Jet-Engine benutzt einen Dialekt, der sich ganz klein bisschen unterscheidet von dem offiziellen SQL. Sie haben es eben schon gesehen, die Anweisung in Access-SQL würde sich hier mit Sternchen und Fragezeichen lesen. Strenchen, für beliebig viele Zeichen, und das Fragezeichen für ein einziges. Das hat nicht zufällig eine Ähnlichkeit mit alten MS-DOS Anweisungen, wo das auch die entsprechenden wildcards Jokerzeichen waren. Das offizielle, das sogenannte ANSI-SQL, nämlich in Anlehnung an den ANSI Standard, das ist eine amerikanische Behörde, die für Standards zuständig ist, American National Standard Institute, nämlich ANSI. Das ANSI-SQL, das normierte SQL würde an dieser Stelle kein Sternchen benutzen, sondern ein Prozentzeichen, und kein Fragezeichen, sondern einen Unterstrich. Das muss Sie nicht beunruhigen. Innerhalb von Access benutzen Sie Ihre normale Schreibweise und falls Access die SQL Befehle an eine Großrechner-Datenbank weitergibt, die ANSI-SQL spricht, dann wird das automatisch übersetzt. Damit haben Sie so nichts zu tun. Also SQL ist eine deskriptive Sprache und Access-SQL hat ganz kleine Abweichungen vom Standard. Es werden auch ein paar Sachen gar nicht umgesetzt, aber im Großen und Ganzen sehen Sie ein komplettes SQL Packet, welches sowohl in einer grafischen Oberfläche in Access benutzt werden kann, als auch eben hier mit der wirklichen schreibenden Version, dass Sie die Anweisung selber schreiben. Und da haben Sie manchmal deutlich mehr Möglichkeiten und es hilft natürlich auch zu wissen, was im Hintergrund alles passiert.

Access: Abfragen mit SQL

Nutzen Sie die mächtige Abfragesprache SQL in Microsoft Access. Anhand einer Beispiel-Datenbank lernen Sie die Möglichkeiten und Finessen von SQL im Detail kennen.

3 Std. 14 min (64 Videos)
Derzeit sind keine Feedbacks vorhanden...
 

Dieses Training ist für alle Access-Versionen verwendbar. Das vermittelte SQL-Wissen lässt sich mit geringen Abweichungen auch für andere relationale Datenbanksysteme nutzen.

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!