Dr.Doom
2003-01-28, 15:08:23
Howdy,
in Tabellen habe ich mich bisher nicht um die fortlaufende Nummerierung von 'ID'-Spalten (zB 'user_id') gekümmert, da bisher einfach die von Postgres automatisch generierte 'OID' genügte.
Ich habe aber gelesen, dass bei einer Sicherung von Tabellen nicht mehr sichergestelt werden kann, dass eine OID eines Datensatzes in der Originaltabelle, der OID desselben Datensatzes in der Kopie gleichen muss (vgl Code-Absatz: Original - Kopie ).
Original Kopie Echte_Kopie
OID | blubb1 | ... OID | blubb1 | ... OID | blubb1 | ...
------------------ ------------------ ------------------
123 | text1 | 456 | text1 | 123 | text1 |
Es ist aber (natürlich) wichtig, dass eine OID, die in der Originaltabelle zum zB vierten Datensatz gehört, nach einer Sicherung der Tabelle, immer noch denselben Wert hat (vgl Code-Absatz: Original - Echte_Kopie).
1. Ist das Gelesene korrekt? Sind die OIDs nach einer Sicherung von Tabellen nicht mehr dieselben, wie in der Originaltabelle?
2. Falls korrekt: Kann man das irgendwie umgehen?
Falls das eh alles Mumpitz ist, was ich gemacht habe:
Wie kann ich anstelle einer OID, eine eigene 'ID' benutzen, die immer "einen weiteren, nicht bereits vorhandenen" Wert annimmt, wenn man einen Datensatz zur Tabelle hinzufügt, OHNE dass ich mich beim Hinzufügen/Entfernen von Datensätzen um den Wert der jeweiligen ID kümmern muss.
OID | id | blubb1 | blubb2 | ...
Ich möchte beim Hinzufügen in diese Tabelle nur (text1, text2) für die Blubb-Spalten eingeben, aber dennoch soll die 'id' immer einzigartig bleiben.
Puh, tjo, das wars.
in Tabellen habe ich mich bisher nicht um die fortlaufende Nummerierung von 'ID'-Spalten (zB 'user_id') gekümmert, da bisher einfach die von Postgres automatisch generierte 'OID' genügte.
Ich habe aber gelesen, dass bei einer Sicherung von Tabellen nicht mehr sichergestelt werden kann, dass eine OID eines Datensatzes in der Originaltabelle, der OID desselben Datensatzes in der Kopie gleichen muss (vgl Code-Absatz: Original - Kopie ).
Original Kopie Echte_Kopie
OID | blubb1 | ... OID | blubb1 | ... OID | blubb1 | ...
------------------ ------------------ ------------------
123 | text1 | 456 | text1 | 123 | text1 |
Es ist aber (natürlich) wichtig, dass eine OID, die in der Originaltabelle zum zB vierten Datensatz gehört, nach einer Sicherung der Tabelle, immer noch denselben Wert hat (vgl Code-Absatz: Original - Echte_Kopie).
1. Ist das Gelesene korrekt? Sind die OIDs nach einer Sicherung von Tabellen nicht mehr dieselben, wie in der Originaltabelle?
2. Falls korrekt: Kann man das irgendwie umgehen?
Falls das eh alles Mumpitz ist, was ich gemacht habe:
Wie kann ich anstelle einer OID, eine eigene 'ID' benutzen, die immer "einen weiteren, nicht bereits vorhandenen" Wert annimmt, wenn man einen Datensatz zur Tabelle hinzufügt, OHNE dass ich mich beim Hinzufügen/Entfernen von Datensätzen um den Wert der jeweiligen ID kümmern muss.
OID | id | blubb1 | blubb2 | ...
Ich möchte beim Hinzufügen in diese Tabelle nur (text1, text2) für die Blubb-Spalten eingeben, aber dennoch soll die 'id' immer einzigartig bleiben.
Puh, tjo, das wars.