PostgreSQL: Unterschied zwischen den Versionen

aus GlossarWiki, der Glossar-Datenbank der Fachhochschule Augsburg
Zeile 42: Zeile 42:


=Quellen=
=Quellen=
* [http://www.postgresql.org/ PostgreSQL Hauptseite] Abfragedatum: 07. Juni 2008.
* [http://www.postgresql.org/ PostgreSQL]
* [http://sql-info.de/postgresql/FAQ_german.html Häufig gestellte Fragen (FAQ) zu PostgreSQL] Abfragedatum: 07. Juni 2008.
* [http://sql-info.de/postgresql/FAQ_german.html Häufig gestellte Fragen (FAQ) zu PostgreSQL]
* [http://pgsql.info/pg/wasistpg.php Was ist PostgreSQL?] Abfragedatum: 07. Juni 2008.
* [http://pgsql.info/pg/wasistpg.php Was ist PostgreSQL?]
* [http://de.wikipedia.org/wiki/PostgreSQL PostgreSQL - Wikipedia] Abfragedatum: 07. Juni 2008.
* [http://mmdb.hs-augsburg.de/medium/text/lehre/2009wise/mmdb/MMDB.pdf Skript von Wolfgang Kowarschick]
* [http://mmdb.hs-augsburg.de/medium/text/lehre/2009sose/mmdb/MMDB.pdf Skript von Prof. Dr. Kowarschick (S.106)]


[[Kategorie:Glossar]]
[[Kategorie:PostgreSQL]]

Version vom 2. Januar 2010, 17:44 Uhr

Definition

PostgreSQL ist ein objektrelationales Datenbankmanagementsystem (ORDBMS). Die Software und dessen kompletter Quellcode ist öffentlich verfügbar und darf ohne Lizenzierung benutzt werden. SQL92 und SQL99 Standards werden unterstützt und eine eigene Erweiterung wird angeboten.

Die Datenbank unterstützt die referentielle Integrität (u. a. Constraints, Fremdschlüssel) und verfügt über ein fortschrittliches Transaktionsmanagement, sowie die Definition von Triggern, gespeicherten Prozeduren (stored procedures) und Regel, mit denen Zugriffe auf Datenbankobjekte gesteuert werden können. Komplexe geschachtelte Abfragen mit Unterabfragen (subselects) können durchgeführt werden.

Die Software ist lauffähig auf jeder UNIX-kompatiblen Plattform, sowie auf Microsoft NT-basierten Betriebssystemen wie Windows 2000 SP4, XP und Server 2003 und bietet Schnittstellen zu vielen Programmiersprachen, wie z.B. C, C++, Java/JDBC, Tcl, PHP, Perl, Python, Ruby ,ODBC und .NET.

PostgreSQL basiert auf einem Client-Server-Modell, bei dem ein Serverprozess die Datenbankobjekte und Verbindungen verwaltet, die vom Client zum Server aufgebaut werden. Der Server bearbeitet die SQL-Anfragen, die vom Client gestellt werden und liefert diese zurück. Client und Server kommunizieren hierbei über eine TCP/IP Verbindung. Die Größe der Datenbank ist unbegrenzt und eine Tabelle kann bis zu 64 Terra-Byte groß werden. Diese Tabelle kann unbegrenzt viele Datensätze enthalten, lediglich die Anzahl der Spalten ist auf 1600 begrenzt, von denen jede Spalte Daten bis zu 1 Gigabyte aufnehmen kann.

PostgreSQL Syntax

SELECT

Allgemeine Form

Abgearbeitet wird solch eine SELECT-Anfrage nicht komplett von oben nach unten, die SELECT 'Einschränkung' in der ersten Zeile, wird erst nach der HAVING Klausel ausgeführt.

SELECT <Projektionsliste>
FROM <Relationen + Joins>
[WHERE <Bedingung>]
[GROUP BY <Gruppierungsattribute>]
[HAVING <Gruppenbedingung>]
[UNION | EXCEPT | INTERSECT SELECT . . .]
[ORDER BY <Sortierungsattribute>]

Beispiel

Inhalt aus der Tabelle auslesen

SELECT name FROM person WHERE id=1;

CREATE

Beispiel

Tabelle anlegen

CREATE TABLE person (id int, name varchar(50));

INSERT

Beispiel

Inhalt in die Tabelle schreiben

INSERT INTO person VALUES (1, 'David Backham');

Quellen