Datenbanken

Aus ProgrammingWiki
Archivierte Version vom 2010-01-02T14:05:47+00:00. Aktuelle Version

Inhaltsverzeichnis

Datenbanksprache SQL

Datenbank anlegen

Zuerst legen wir eine sehr einfache Datenbank an. Sie besteht aus nur einer Tabelle Student. Die allgemeine Form zur Erstellung einer Tabelle lautet:
CREATE TABLE Tabellenname (Attributname Datentyp,...);

Beispiel:
CREATE TABLE KUNDE (ID INTERGER, Nachname VARCHAR(50), Ort varchar(50));

Außerdem sollte man bedenken, dass die anzulegende Tabelle (oder eine gleichnamige andere) bereits existieren könnte. In diesem Fall soll die alte DB gelöscht werden.
DROP TABLE Tabellenname IF EXISTS;

<eval id="4b3e44514e418"> DROP TABLE Student IF EXISTS; CREATE TABLE Student </eval>

 (ID INTEGER, 
  Nachname varchar(50), 
  Vorname varchar(50), 
  PLZ varchar(6), 
  Ort varchar(50), 
  Strasse varchar(50));

Datensätze einfügen

Der nächste Schritt besteht darin, Datensätze in die Datenbank einzufügen:
INSERT INTO Tabellenname (Spaltenliste) VALUES (Werte);

Beispiel:
INSERT INTO KUNDE (ID, Nachname, Ort)) VALUES (10,'Meyer','Görlitz');

<eval id="4b3e44514ebe7"> INSERT INTO Student VALUES (0,'Müller','Franz','02826','Görlitz','Blumenstraße 5'); INSERT INTO Student VALUES (1,'Schmidt','Susi','02827','Görlitz','Bäckergaße 3'); INSERT INTO Student VALUES (2,'Adler','Anton','02763','Zittau','Berliner Straße 50'); INSERT INTO Student VALUES (3,'Bär','Bertha','02829','Markersdorf','Bahnhofstraße 3'); INSERT INTO Student VALUES (4,'Meyer','Ben','30001','Hannover','Sonnenblumenweg 4'); INSERT INTO Student VALUES (5,'Schulze','Sebastian','09001','Chemnitz','Kirchstrasse 43'); INSERT INTO Student VALUES (6,'Richter','Rudolf','02763','Zittau','Deckelweg 6'); INSERT INTO Student VALUES (7,'Wasser','Wilhelm','01067','Dresden','Bahnhofstraße 76'); </eval>

Datensätze abfragen

Um einzelne Datensätze gezielt zu selektieren, gibt es
SELECT * | Spaltenliste FROM Tabellenliste WHERE Ausdruck

Beispiele: 
SELECT * FROM Kunde WHERE Ort = 'Musterstadt';
SELECT Nachname, Vorname FROM Kunde,Student WHERE Ort = 'Musterstadt' AND Nachname='Schmidt';

<eval id="4b3e44514f3be"> SELECT * FROM Student; </eval>

Wir erweitern nun die Datenbank um eine weitere Tabelle, so dass die im folgenden angegebene Struktur entsteht. Erd.jpg

<eval id="4b3f52bae154f"> DROP TABLE Matrikel IF EXISTS; CREATE TABLE Matrikel(ID INTEGER, Bezeichnung VARCHAR(50)); INSERT INTO Matrikel VALUES (0,'Heilpädagogik'); INSERT INTO Matrikel VALUES (1,'Kommunikationspsychologie'); INSERT INTO Matrikel VALUES (2,'Informatik'); INSERT INTO Matrikel VALUES (3,'Kultur und Management'); INSERT INTO Matrikel VALUES (4,'Soziale Arbeit'); </eval>

Übungen

  • Schreiben Sie eine SQL-Abfrage, die alle Studenten aus der Stadt Görlitz anzeigt.

<eval id="4aba316215f14">Geben Sie hier Ihre Abfrage ein.</eval>

  • Überlegen Sie sich nun eine Abfrage, welche die beiden Tabellen Studiengang und Student miteinander verknüpft: Fragen Sie nach den Namen aller Informatik-Studis.

<eval id="4b3f52bae2105">Geben Sie hier Ihre Abfrage ein.</eval>

  • Erstellen Sie nun eine Tabelle Fahrzeug, welche eine ID, eine Nummernschild und eine Bezeichnung sowie einen Fremdschlüssel zu der Studenten-ID besitzt. Fügen Sie danach einige Datensätze ein und sehen Sie sich die Resultate selbst gestellter Anfragen an.

<eval id="4aba316218244">...</eval>