Dúvida PostgreSQL

9 respostas
Marcio_Nogueira

Como difino o campo id como sendo auto increment em uma tabela no postgre?

9 Respostas

F

serial.

francislon

Você diz que o tipo da variável é serial.

C

Bom dia

O PostgreSQL trabalha com sequence ao invés de auto_increment como no Mysql, então para que um campo seja incrementado, basta definir ele como SERIAL.

Até.

Marcio_Nogueira

Obrigado pelas dicas galera, consegui resolver. Porém tenho mais uma dúvida:
como faço para registrar o driver do postgresql no jdbc?

C

Boa tarde

Faça assim:

Obs: Só não esqueça de adicionar o jar no seu classpath.

Falou.

yorgan

Eu normalmente declaro uma SEQUENCE e atribuo à chave primária da tabela.
Faço isso pois foi a única forma que encontrei de recuperar a chave atribuída a linha logo após a sua inserção.

[]´s

Daniel

C

Boa tarde

Com esse select aqui, você consegue saber o id que foi atribuido ao registro:

select currval('nome_sequence')

Falou.

yorgan

Sim, isso mesmo…mas colocando uma coluna como SERIAL, como pode ser recuperada uma SEQUENCE? Ou qual o nome default atribuido a ela?

C

Boa tarde

No Postgresql ele coloca o seguinte nome:

Tabela:
tbl_cliente
Nome da coluna serial: id_cliente

Nome da Sequence atribuida: tbl_cliente_id_cliente_seq,

Isso na versão do postgresql 8.4, que é a versão utilizada aqui na empresa, para outras versões do banco não sei se ele segue esse mesmo padrão.

Falou.

Criado 1 de setembro de 2009
Ultima resposta 1 de set. de 2009
Respostas 9
Participantes 5