sql >> Databasteknik >  >> RDS >> PostgreSQL

lastInsertId fungerar inte i Postgresql

PostgreSQL använder sekvenser för att generera värden för serial kolumner och serial kolumner är i allmänhet vad som används för "auto-incrementing" kolumner i PostgreSQL. Sekvenser har namn och är i allmänhet oberoende av en viss tabell så du kan ha en sekvens som genererar unika ID:n för flera olika tabeller; sekvensnamnet är vad lastInsertId vill ha som argument:

Till exempel PDO_PGSQL() kräver att du anger namnet på ett sekvensobjekt för namnet parameter.

Sekvensobjektet som skapats av PostgreSQL heter automatiskt [table]_[column]_seq , Så:

$id = $db->lastInsertId('tableName_columnName_seq');


  1. Fråga för att hitta och ta bort dubbletter av data från MYSql-tabellen

  2. Kan inte ansluta till lokal PostgreSQL

  3. Best Practices för PostgreSQL-säkerhet

  4. Grundläggande om tabelluttryck, del 3 – Härledda tabeller, optimeringsöverväganden