Serial
Em PostgreSQL, SERIAL
é um tipo de dado especial usado para criar uma coluna de identidade autoincremental. Ao usar o tipo de dado SERIAL
, você cria uma coluna que automaticamente gera valores únicos e sequenciais para cada nova linha inserida na tabela.
A coluna de SERIAL
é frequentemente usada como chave primária para garantir identificadores únicos para cada registro em uma tabela.
Aqui está um exemplo de como criar uma tabela com uma coluna SERIAL
:
CREATE TABLE exemplo_serial (
id SERIAL PRIMARY KEY,
nome VARCHAR(255)
);
Neste exemplo, a tabela exemplo_serial
tem uma coluna chamada id
do tipo SERIAL
. A palavra-chave SERIAL
é uma abreviação para um tipo de dado inteiro grande (BIGINT
) com uma sequência associada e uma restrição de chave primária.
Ao inserir dados na tabela, você não precisa fornecer um valor para a coluna id
. O PostgreSQL automaticamente gera um valor único e sequencial para essa coluna:
INSERT INTO exemplo_serial (nome) VALUES ('Exemplo 1');
INSERT INTO exemplo_serial (nome) VALUES ('Exemplo 2');
A coluna id
será automaticamente preenchida com valores únicos e crescentes à medida que você insere novas linhas na tabela. O PostgreSQL cuida da geração automática dos valores da coluna SERIAL
.
Além disso, é importante notar que a coluna SERIAL
também cria uma sequência associada. Se você deseja usar explicitamente essa sequência em outras partes do seu código SQL, você pode referenciá-la pelo nome da tabela e o nome da coluna, como exemplo_serial_id_seq
.
Por exemplo, para obter o próximo valor da sequência exemplo_serial_id_seq
, você pode fazer:
SELECT nextval('exemplo_serial_id_seq');
Isso retornará o próximo valor da sequência associada à coluna SERIAL
na tabela exemplo_serial
.