PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Doctrine2 não define a sequência como padrão para a coluna id (postgres)


Do bem manual :

Eles sugerem AUTO para máxima portabilidade:
/**
 * @Id
 * @Column(type="integer", nullable=false)
 * @GeneratedValue
 */

Isso deve criar e conectar uma sequência para você. Uma alternativa seria pedir um serial coluna usando a IDENTITY estratégia:
/**
 * @Id
 * @Column(type="integer", nullable=false)
 * @GeneratedValue(strategy="IDENTITY")
 */

Este deve criar seu id coluna como tipo serial e o PostgreSQL criará a sequência e configurará o valor padrão para você.

A documentação indica que o que você está fazendo deve funcionar, mas a documentação geralmente fornece apenas uma versão simplificada da realidade.

Tente usar strategy="AUTO" . Se isso não funcionar, tente strategy="IDENTITY" .