Database Reference
In-Depth Information
2.2 Tag 1: Relationen, CRUD und Joins
Wir gehen zwar nicht davon aus, dass SieeinExpertefürrelationaleDaten-
banken sind, erwarten aber doch, dass Sie in der Vergangenheit mit ein oder
zwei Datenbanken in Berührung gekommen sind. Und die Chancen stehen
gut, dass diese Datenbank relational war. Wir wollen damit beginnen, eigene
Schemata zu erzeugen und mit Daten zu füllen. Danach sehen wir uns die
Abfrage von Werten an und zum Schluss das, was relationale Datenbanken
so besonders macht: den Join.
Wie die meisten Datenbanken, die wir hier behandeln, stellt Postgres einen
Backend-Server bereit, der die gesamte Arbeit erledigt, und eine Komman-
dozeilen-Shell, die die Verbindung mit dem laufenden Server herstellt. Der
Server kommuniziert standardmäßig über Port 5432, über den Sie mit der
psql -Shell die Verbindung herstellen können.
$ psql book
PostgreSQL gibt den Namen der Datenbank aus, gefolgt von einem Rauten-
symbol (als Administrator) bzw. einem Dollarzeichen (als normaler Benutzer).
Die Shell verfügt über eine integrierte Dokumentation, die an jeder Console
zur Verfügung steht. Die Eingabe von \h gibt Informationen zu SQL-Befehlen
aus und \? hilft bei psql -spezifischen Befehlen, namentlich denen, die mit
einem Backslash beginnen. Nutzungshinweise zu jedem SQL-Befehl können
Sie sich also wie folgt ausgeben lassen:
book= # \h CREATE INDEX
Command: CREATE INDEX
Description: define a new index
Syntax:
CREATE [ UNIQUE ] INDEX [ CONCURRENTLY ] [ name ] ON table [ USING method ]
( { column | ( expression)}[opclass ] [ ASC | DESC ] [ NULLS { FIRST | ...
[ WITH ( storage _ parameter = value [, ...])]
[ TABLESPACE tablespace ]
[ WHERE predicate ]
Bevor wir tiefer in Postgres einsteigen, sollten Sie sich mit diesem Tool ver-
traut machen. Es ist durchaus sinnvoll, sich ein paar gängige Befehle wie
SELECT oder CREATE TABLE anzusehen.
Einstieg in SQL
PostgreSQL folgt der SQL-Konvention, nach der Relationen als Tabellen (TA-
BLE s), Attribute als Spalten (COLUMN s) und Tupel als Zeilen ( ROW s) bezeichnet
werden. Der Konsistenz halber verwenden wir diese Terminologie, auch wenn
Ihnen die mathematischen Begriffe Relationen , Attribute und Tupel begegnen
Search WWH ::




Custom Search