I databasutveckling är en beständig objektidentifierare (POID) en unik identifierare för en post i en tabell som används som primärnyckel. Viktiga egenskaper hos POID:er är att de inte innehåller affärsinformation och vanligtvis inte exporteras eller på annat sätt görs synliga för användare av data; som sådan har en POID många av egenskaperna hos en surrogatnyckel . Huvudsyftet med en POID är att fungera som en primärnyckel i tabellen där den är definierad och tillåta att den hänvisas till som en främmande nyckel i andra tabeller. Eftersom POIDs, som surrogatnycklar, inte innehåller affärsinformation, är de immuna mot förändringar i formen eller värdet av affärsdata.
PostgreSQL använder ett fält som heter OID, som har en fördefinierad OID-typ, som en beständig objektidentifierare . Dess representation är ett fyra-byte heltal [1] , för vilket ytterligare operatorer definieras. Dess användning var obligatorisk i tabeller före version 7.2.8, och den används också för att identifiera ett antal systemstrukturer. Men på grund av fyra-byte representationen av OID i PostgeSQL, är det inte längre lämpligt för att säkerställa unika datareferenser i moderna stora databaser eller till och med separata tabeller [1] .