# Sortierte Liste in Datenbank speichern?



## Novanic (3. Jun 2009)

Hallo Leute,

ich suche nach einer Möglichkeit eine Sortierung bzw. eine sortierte Liste in die Datenbank zu speichern. Der Benutzer kann die Elemente einer Liste willkürlich in der GUI anordnen/sortieren und beim nächsten Programmstart soll die Liste in der gleichen Reihenfolge geladen werden. Klingt eigentlich ganz einfach, aber wie verwaltet man eine Sortierung von Elementen geschickt in der Datenbank? Ist das mit Bordmitteln von SQL oder Hibernate möglich oder gibt es zumindest Best-Practices? Ich möchte nur ungerne das Rad neu erfinden und eine ArrayList in SQL kodieren. 

Die Elemente werden bereits in einer eigenen Tabelle persistiert und besitzen einen künstlichen Schlüssel, aber wie merke ich mir jetzt die Position in der Liste? Würde man zu dem PK immer die aktuelle Position speichern, müsste man die Positionen ständig updaten, wenn ein Element z.B. entfernt wird. Das möchte ich natürlich nicht unbedingt manuell umsetzen...

Danke schonmal im Voraus.

Gruß Nova


----------



## SlaterB (3. Jun 2009)

du kannst nicht in der DB eine spezielle Information zu einem Datensatz speichern, ohne den Datensatz zu updaten 
abgesehen von einer separaten Tabelle mit ebenso vielen Einträgen,

die Information muss irgendwie rein, z.B. in einer Spalte position


----------



## Novanic (3. Jun 2009)

Hi,

das ist mir schon klar, dass die Verknüpfungen der Datensätze technisch modifiziert werden müssen, aber ich möchte mich nicht darum kümmern.  Nett wäre es wenn man z.B. eine View definieren könnte die, die laufende Nummer selbst pflegt.

Gruß Nova


----------



## Novanic (3. Jun 2009)

Ok, ich habs jetzt selbst gefunden.

Hibernate kann es. Mit List-Index kann man eine Spalte zum Speichern der Position in der List angeben. Den Rest erledigt Hibernate: 6.2.Collection mappings

Gruß Nova


----------

