Einführung in SQL


Skript, 2003

12 Seiten


Leseprobe

Inhaltsverzeichnis

1. Einleitung

2. MySQL

3. Erstkontakt und Anlegen einer Beispieldatenbank

4. Tabellen
4.1 Tabellen anlegen
4.2 Tabellenstrukturen abändern

5. Schreibende SQL-Zugriffe
5.1 Neue Datensätze anlegen
5.2 Datensätze aktualisieren
5.3 Datensätze löschen

6. Lesende Zugriffe
6.1 Das SELECT-Konstrukt
6.2 Pattern Matching

7. Sonstiges

8. Literatur und Internet-Links

1. Einleitung

SQL (Structured Query Language), im amerikanischen IT-Slang „Seequul“ ausgesprochen ist eine nach ANSI standardisierte Abfragesprache für relationale Datenbanken. „Relational“ bedeutet hier grob dass Daten in Form von Tabellen gespeichert sind und diese Tabellen wiederum mittels Indizes untereinander verknüpft sind. Vertreter dieser Gattung sind z.B. Oracle, IBMs DB2 oder Borlands InterBase im kommerziellen und PostgreSQL oder MySQL im OpenSource-Umfeld. Demgegenüber stehen objektorientierte Datenbanken die sich aber am Markt noch nicht durchsetzen konnten.

All diese Hersteller haben im Laufe der Zeit den nach ANSI standardisierten Kernbereich von SQL um eigene Befehle, Konstrukte und Funktionen erweitert so dass die Datenbanken untereinander nur noch bedingt kompatible sind. MySQL hält sich weitestgehend an die vorgegebenen Standards und hat in der aktuellsten Version deutlich zu den hochpreisigen Konkurrenten aufgeholt: Transaktionen und Folge- Queries als Enterprise-Funktionen seien hier genannt.

Diese Einführung beschäftigt sich weniger mit den für die Administration einer Datenbank notwendigen Kenntnisse. Vielmehr soll es hier um den eigentlichen Benutzer, der Daten erheben und manipulieren möchte gehen.

Im Rahmen der Einführung eines SAMP1-gestützten Archivs auf der Webseite www.deutsche- aussenpolitik.de wurde es nötig für die Benutzer eine Anleitung zum Thema SQL zu erstellen. Dies geschieht hier am Beispiel der OpenSource-Datenbank MySQL. Die erwähnten Beispiele funktionieren - unter Umständen mit kleinen Abänderungen - aber auch mit anderen SQL-Datenbanken.

2. MySQL

MySQL funktioniert nach dem klassischen Client-Server-Prinzip: Auf Server-Seite wartet ein Daemon auf einem bestimmten TCP/IP-Port (Standard ist 3306, kann aber beliebig umgeschaltet werden) auf Anfragen. Diese werden an die Datenbank weitergegeben, ausgewertet und das Ergebnis wieder an den Client zurückgeschickt.

Der Client kann ein Anwendungs-Programm auf einem ganz anderen Rechner, aber auch ein unter Apache laufendes PHP-Script oder ein Shell-Programm sein.

Mittels der Treiber-Software „MyODBC“2 ist es sogar möglich mittels der Windows-ODBC-API von jeder beliebigen ODBC-fähigen Windows-Software auf die Datenbank zuzugreifen. So kann man z.B. in Access oder Excel mit der Datenbank arbeiten wie mit einer lokal vorhandenen Datei - nur dass die Daten in Wahrheit auf einem ganz anderem Rechner im Netz liegen, der User bemerkt das nicht einmal. Access ist in Wahrheit auch nichts anderes als eine auf SQL basierende relationale Datenbank.

Von den meisten Clients kann man direkte SQL-Befehle an die Datenbank absetzen. Die MySQL- Distribution bringt bereits einen einfachen Client für die Kommandozeile mit: Dieser soll im weiteren dieses Dokuments auch verwendet werden. Es spricht aber nichts dagegen „komfortablere“ Clients z.B. mit graphischer Benutzeroberfläche zu verwenden3 solange diese nur in der Lage sind pure SQL-Befehle an die Datenbank abzusetzen.

3. Erstkontakt und Anlegen einer Beispieldatenbank

Auf der Kommandozeile startet man den in der MySQL-Distribution enthaltenen Client4 mittels:

mysql -u dap -p

Wobei der Parameter u den Usernamen (in diesem Falle „dap“) entgegennimmt und -p den Client dazu veranlasst nach einem Passwort zu fragen (das schreib ich jetzt nicht hier rein ...).

Als nächstes wird eine Beispieldatenbank angelegt5:

create database spielwiese;

Damit wird eine Datenbank mit dem Namen „spielwiese“ angelegt. Generell gilt: Alle SQL- Kommandos werden mit einem Semikolon abgeschlossen. Wurde dieses nicht eingegeben erwartet der Client eine mehrzeilige Eingabe und schickt das Kommando erst ab wenn ein Semikolon abschließend eingegeben wurde. Zwischen Gross- und Kleinschreibung wird - im Gegensatz zur guten Unix-Tradition - nicht unterschieden.

4. Tabellen

4.1 Tabellen anlegen

Ein

use spielwiese;

veranlasst den Client in die gerade angelegte Datenbank zu wechseln und alle im Folgenden eingegebenen SQL-Kommandos in dieser auszuführen.

Da die Datenbank noch keinerlei Strukruren oder Daten enthält muss zunächst eine oder mehrere Tabelle(n) angelegt werden. Für die folgenden Beispiele reicht eine kleine Tabelle aus:

create table adressen (

zaehler bigint not null auto_increment primary key, nachname varchar(30),

vorname varchar(30), projekt varchar(30), email varchar(30));

Es wird eine Tabelle mit fünf Feldern angelegt: Das erste enthält einen automatischen Zähler, der von der Datenbank automatisch (auto_increment) bei jedem neuen Datensatz um 1 erhöht wird. Dieses Feld dient auch als „Primary key“ so dass jeder Eintrag in der Tabelle eindeutig über diese Zahl zu identifizieren ist. Es ist vom Typ bigint (gut für exakt 18446744073709551615 Einträge ;-) und darf

nicht leer (not null) sein. Aber wie gesagt, die Datenbank übernimmt die Verwaltung dieses Feldes, der User braucht sich erst einmal nicht mehr darum kümmern6.

Die folgenden 4 Felder sind alle vom Typ „varchar“ was einen beliebigen alphanumerischen Ausdruck bis zu der angegebenen maximalen Länge (hier 30 Zeichen) erlaubt7.

Will man den Inhalt des ein oder anderen Feldes aus der Tabelle ansprechen so ist was den Typ des Feldes anbelangt zwischen zwei Arten zu unterscheiden: Grob gesagt, zwischen Zahlen (mit denen man auch innerhalb der Datenbank rechnen kann) und alphanumerischen Feldern. Erstere werden ohne, letztere mit Anführungszeichen angesprochen.

Im Übrigen sieht man hier schön wie der Client auch mehrzeilige Ausdrücke zuläßt und erst nach dem abschliessendem Semikolon den Befehl als vollständig betrachtet und abschickt. Die Einrückungen dienen lediglich der besseren Lesbarkeit.

[...]


1 S olaris, A pache, M ySQL und P HP - in Anlehnung an das bekannte Akronym LAMP (L inux, ...)

2 http://www.mysql.com/downloads/api-myodbc.html

3 Eine Liste mit graphischen Clients finden Sie hier: http://www.mysql.com/downloads/mysqlcc.html

4 MySQL läuft nicht nur unter Unix-ähnlichen Systemen sondern auch auf Windows. Grundlage dieses Dokuments ist allerdings eine Unix-Installation. Unter Windows sind u.U. kleinere Änderungen in den Befehlen notwendig.

5 Das Anlegen einer Datenbank erfordert wetgehende Rechte innerhalb von MySQL. Sollten Sie diese nicht besitzen bitten Sie Ihren Administrator die Datenbank „spielwiese“ für Sie anzulegen und Ihnen die netsprechenden Schreibrechte zum Anlegen und Verändern von Tabellen zu geben.

Ende der Leseprobe aus 12 Seiten

Details

Titel
Einführung in SQL
Hochschule
Universität Trier  (www.deutsche-aussenpolitik.de)
Autor
Jahr
2003
Seiten
12
Katalognummer
V11145
ISBN (eBook)
9783638173858
Dateigröße
369 KB
Sprache
Deutsch
Anmerkungen
Dichter Text - einzeiliger Zeilenabstand.
Schlagworte
SQL, Einführung, Tutorial, MySQL
Arbeit zitieren
Thomas Zastrow (Autor), 2003, Einführung in SQL, München, GRIN Verlag, https://www.grin.com/document/11145

Kommentare

  • Noch keine Kommentare.
Im eBook lesen
Titel: Einführung in SQL



Ihre Arbeit hochladen

Ihre Hausarbeit / Abschlussarbeit:

- Publikation als eBook und Buch
- Hohes Honorar auf die Verkäufe
- Für Sie komplett kostenlos – mit ISBN
- Es dauert nur 5 Minuten
- Jede Arbeit findet Leser

Kostenlos Autor werden