只是一個簡單的例子:如果我想創建的Postgres,支持自動填充ID的表我運行該SQL:Doctrine2 doesen't順序設置爲默認的ID列(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
);
和我的學說將所有財產
class Person {
/**
* @Id
* @Column(type="integer", nullable=false)
* @GeneratedValue(strategy="SEQUENCE")
* @SequenceGenerator(sequenceName="person_id_seq", initialValue=1, allocationSize=100)
*/
private $id;
但是當我生成的SQL(PHP學說ORM:架構工具:創建--dump-SQL)我知道了:
CREATE TABLE person (
id INT NOT NULL,
name VARCHAR(100) NOT NULL
);
CREATE SEQUENCE person_id_seq INCREMENT BY 100 MINVALUE 1 START 1
但不要將其設置爲默認
\ d人
Column | Type | Modifiers
-------------------+--------------------------------+-----------
id | integer | not null
...
..
.
對於新手;在github上存在一個與此問題相關的新PR:https://github.com/doctrine/dbal/pull/669 – edigu 2014-10-28 14:04:11