sql >> Databáze >  >> RDS >> PostgreSQL

lastInsertId nefunguje v Postgresql

PostgreSQL používá sekvence ke generování hodnot pro serial sloupce a serial sloupce jsou obecně to, co se používá pro "automatické zvyšování" sloupců v PostgreSQL. Sekvence mají názvy a jsou obecně nezávislé na jakékoli konkrétní tabulce, takže můžete mít jednu sekvenci generující jedinečná ID pro několik různých tabulek; název sekvence je to, co lastInsertId chce jako svůj argument:

Například PDO_PGSQL() vyžaduje, abyste jako name uvedli název sekvenčního objektu parametr.

Sekvenční objekt vytvořený PostgreSQL se automaticky jmenuje [table]_[column]_seq , Takže:

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


  1. Jsou v MySQL povoleny vnořené transakce?

  2. AKTUALIZACE SQL pro začátečníky

  3. Pochopení aliasů sloupců ve výběrovém dotazu na serveru SQL - SQL Server / výukový program TSQL, část 115

  4. PHP PDO:znaková sada, názvy sad?