Sólo un ejemplo sencillo: si quiero crear una tabla con auto relleno id en postgres corro este SQL:Doctrine2 doesen't establece la secuencia por defecto para la columna de identidad (postgres)
CREATE SEQUENCE person_id_seq START 1;
CREATE TABLE person (
id integer PRIMARY KEY DEFAULT nextval('person_id_seq'),
name varchar(100) NOT NULL
);
y en la doctrina I establecer todas las propiedades
class Person {
/**
* @Id
* @Column(type="integer", nullable=false)
* @GeneratedValue(strategy="SEQUENCE")
* @SequenceGenerator(sequenceName="person_id_seq", initialValue=1, allocationSize=100)
*/
private $id;
pero cuando me genera SQL (PHP ORM de Doctrine: esquema-herramienta: crear --dump-SQL) lo tengo:
CREATE TABLE person (
id INT NOT NULL,
name VARCHAR(100) NOT NULL
);
CREATE SEQUENCE person_id_seq INCREMENT BY 100 MINVALUE 1 START 1
pero no la coloque a los valores de
\ d persona
Column | Type | Modifiers
-------------------+--------------------------------+-----------
id | integer | not null
...
..
.
Para los recién llegados; existe una nueva PR en github que se relaciona con este problema: https://github.com/doctrine/dbal/pull/669 – edigu