2012-09-09 4 views

Odpowiedz

16

Jeśli utworzyć tabelę jak wyżej,

Można użyć default w następujący sposób wstawić:

INSERT INTO Participant values(default); 

Check out SQLFIDDLE.

Innym sposobem, aby wstawić to:

INSERT INTO Participant values(NEXTVAL('Participant_id_seq')); 

CREATE TABLE stworzy niejawny sekwencję "Participant_id_seq" dla kolumny Serial "Participant.id"

Można uzyskać sekwencję dla tabeli, używając pg_get_serial_sequence funkcję w następujący sposób:.

pg_get_serial_sequence('Participant', 'id') 

To zajmie nową wartość z sekwencji przy użyciu NEXTVAL().

Check out SQLFIDDLE

+0

Dziękuję za szybką odpowiedź. Problem rozwiązany –

+1

Zaakceptuj odpowiedź, jeśli naprawdę pomaga .... –

+0

Najprostszym, najbardziej przenośnym i najczystszym sposobem jest użycie 'DEFAULT', jak pokazano powyżej; IMO, które powinno być pokazane przed podejściem nextval i preferowane. –