我从 Symfony2 和 Doctrine 开始。在设置 symfony 并创建我的新包之后,我坚持反转我的 postgre 数据库。它在第一个表中返回一个异常,内容如下:
[Doctrine\ORM\MappingMappingException]
Table tb_core_table has no primary key. Doctrine does not support reverse engineering from tables that don't have a primary key.
这是我在命令行执行的命令:
php app/console doctrine:mapping:convert yml ./src/ak/ProcessamentoBundle/Resources/config/doctrine --from-database --force
好的,现在我已经知道所有的表都必须有 pk 的所以学说可以与它们一起工作,这就是问题所在。我的“tb_core_table”有一个主键,但出于任何原因,学说忽略了它。
我缺少一些配置?为什么它可以找到主键?
这是我的表 DDL:
CREATE TABLE tb_core_table (
id_table integer NOT NULL,
id_aux_table integer NOT NULL,
no_table character varying(255),
st_table integer
);
CREATE SEQUENCE tb_core_table_id_table_seq
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;
ALTER TABLE ONLY tb_core_table
ADD CONSTRAINT tb_core_table_pkey PRIMARY KEY (id_table);