ROWID entspricht in Postgres 9.2

8

Gibt es eine Möglichkeit, in Postgres Rowid von einem Datensatz zu bekommen?

In Oracle kann ich wie

verwenden %Vor%     
jobi88 31.01.2013, 13:05
quelle

3 Antworten

8

Ja, es gibt eine ctid-Spalte, die für rowid identisch ist. Aber ist nutzlos für dich. Rowid und Citd sind physische Zeile / Tupel-ID = & gt; Kann sich nach dem Umbau / Vakuum ändern.

Ссылка

    
iddqd 31.01.2013 13:28
quelle
1

Verwenden Sie eine Sequenz. Sie können 4 oder 8 Byte Werte wählen.

Ссылка

    
JohnMudd 13.04.2013 08:44
quelle
0

Fügen Sie Ihrer Tabelle eine eindeutige Spalte hinzu (name vielleicht rowid). Und verhindern Sie, dass Sie es ändern, indem Sie BEFORE UPDATE-Trigger erstellen, was eine Ausnahme auslöst, wenn jemand versucht, zu aktualisieren. Sie können diese Spalte mit der angegebenen Folge als @JohnMudd füllen.

    
Zaur Hajili 13.04.2017 12:30
quelle

Tags und Links