Re: Datensatz an vorbestimmter Stelle einfuegen.

From: Nicolas Barbier <nicolas(dot)barbier(at)gmail(dot)com>
To: Guenther Boelter <gboelter(at)gmail(dot)com>
Cc: PostgreSQL <pgsql-de-allgemein(at)postgresql(dot)org>
Subject: Re: Datensatz an vorbestimmter Stelle einfuegen.
Date: 2014-02-03 14:48:19
Message-ID: CAP-rdTZOPDu+rq6o2SkAsPKDjSjbdVWxdtOcG7FfLQyaf22Xmg@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-de-allgemein

Am 3. Februar 2014 15:03 schrieb Guenther Boelter <gboelter(at)gmail(dot)com>:

> Gibt es unter PostgreSQL die Moeglichkeit einen Datensatz an einer
> bestimmten Stelle in die Datenbank (Tabelle) einzufuegen, also z. B. als
> 10. Datensatz wobei evtl. vorhandene Datensaetze dann entsprechend um 1
> nach hinten verschoben werden?
>
> Sinn und Zweck ist es, die Daten dann spaeter ohne weiteren Aufwand in
> eben genau in der Reihenfolge auch wieder auszugeben. Es geht hier bei
> der Ausgabe immer nur um wenige Datensaetze.

SQL-Datenbanken haben kein impliziertes Konzept der Reihenfolge der
Zeilen einer Tabelle. Wenn man die Zeilen in einer bestimmen
Reihenfolge zurückbekommen will, soll man das immer mit einer ORDER
BY-Klausel erzwingen. Diese ORDER BY-Klausel kann z. B. eine
„Index“-Spalte benutzen, die die Reihenfolge bestimmt.

Eine Zeile in der Mitte einfügen, macht man dann z. B. indem man die
„späteren“ Zeile verschiebt (also die Index-Werte eins erhöht) und die
neue Zeile „dazwischensteckt“ (also mit dem richtigen Index-Wert, der
nach der Verschiebung nicht mehr benutzt wird).

Grüße aus Belgien,

Nicolas

--
A. Because it breaks the logical sequence of discussion.
Q. Why is top posting bad?

In response to

Responses

Browse pgsql-de-allgemein by date

  From Date Subject
Next Message Gunnar "Nick" Bluth 2014-02-03 18:59:22 Re: Datensatz an vorbestimmter Stelle einfuegen.
Previous Message Michael Renner 2014-02-03 14:33:37 Re: Datensatz an vorbestimmter Stelle einfuegen - Nachfrage