sql >> Databasteknik >  >> RDS >> PostgreSQL

Få standardserievärde efter INSERT inuti PL/pgSQL

Använd RETURNING klausul. Du måste spara resultatet någonstans i PL/pgSQL - med en bifogad INTO ..

INSERT INTO simpleTalbe (name,money) values('momo',1000)
RETURNING id
INTO _my_id_variable;

_my_id_variable måste ha deklarerats med en matchande datatyp.

Relaterat:

  • PostgreSQL nästa värde för sekvenserna?

Beroende på vad du planerar att göra med det finns det ofta en bättre lösning med ren SQL. Exempel:

  • Kombinera INSERT-satser i en datamodifierande CTE med ett CASE-uttryck
  • PostgreSQL multi INSERT...RETURNERAR med flera kolumner


  1. Finns det ett sätt att hämta autoinkrement-ID från ett förberett uttalande

  2. Kontrollera Constraint Calling en funktion Oracle SQL-utvecklare

  3. Importera InnoDB-partitioner i MariaDB 10.0/10.1

  4. Skalningslösningar för MySQL (replikering, klustring)