Posts Tagged ‘ symfony

Symfony + Doctrine + Postgres + Sequence com erro

Olá,

Hoje passei por um problema muito estranho com a Doctrine e o Postgres, quando eu estava configurando um projeto que vai usar como banco de dados o Postgres, até ai tudo ok, configuração de conexão, gerador de código etc.
Quando fui testar os Forms gerado pela doctrine percebi que quando eu estava inserindo un novo registro, a Doctrine gerava Doctrine_Sequence_Exception: on demand sequence “table_name_seq” could not be created.

Bom depois de quebrar a cabeça por muito tempo, levando em consideração (criação de novo banco, nova sequence etc) achei um post na net falando sobre tal bug na Doctrine com campos Serial do Postgres e uma possível solução. Testei e deu certo, então resolvi postar aqui para mais alguém que está com o mesmo erro.

O arquivo a ser alterado: /lib/plugins/sfDoctrinePlugin/lib/vendor/doctrine/Doctrine/Sequence/Pgsql.php

Na linha onde tem:

$sequenceName = $this->conn->quoteIdentifier($this->conn->formatter->getSequenceName($seqName), true);
$query = "SELECT NEXTVAL('" . $sequenceName . "')";

Substitua por:

//$sequenceName = $this->conn->quoteIdentifier($this->conn->formatter->getSequenceName($seqName), true);
$query = "SELECT NEXTVAL('" . $seqName . "')";

Fazendo isso vai funcionar perfeitamente, pelo menos aqui funcionou.

Bom espero que isso ajude mais alguém.