【发布时间】:2018-02-16 16:40:30
【问题描述】:
我正在尝试导入已经为另一个项目(不是 symfony 项目)创建的数据库,所以我可以在 symfony 项目中使用它。
验证有效 php bin/控制台原则:架构:验证 [映射] OK - 映射文件正确。 [数据库] OK - 数据库架构与映射文件同步。
但是当我让php bin/console doctrine:mapping:import AppBundle annotation 它返回时
在 MappingException.php 第 588 行: 无法使用复合主映射实体“Tprovincia” 键作为另一个实体“Tlocalidad#paiscod”的主键的一部分。
这是对这些表的配置
CREATE TABLE tprovincia
(
paiscod smallint NOT NULL, -- Código de país
procod smallint NOT NULL, -- Código de provincia
prodes character varying(100) NOT NULL, -- Nombre de provincia
prodesamp character varying(250) NOT NULL, -- Descripción ampliada de provincia
prousupro character varying(30) NOT NULL, -- Pro Usu Pro
profecpro timestamp without time zone NOT NULL, -- Pro Fec Pro
CONSTRAINT tprovincia_pkey PRIMARY KEY (paiscod, procod),
CONSTRAINT itprovincia1 FOREIGN KEY (paiscod)
REFERENCES tpais (paiscod) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION
)
WITH (
OIDS=FALSE
);
CREATE TABLE tlocalidad
(
paiscod smallint NOT NULL, -- Código de país
procod smallint NOT NULL, -- Código de provincia
loccod integer NOT NULL, -- Código de localidad
locdes character varying(100) NOT NULL, -- Descripción de localidad
loccodpos character(8) NOT NULL, -- Código postal localidad
locusupro character varying(30) NOT NULL, -- Loc Usu Pro
locfecpro timestamp without time zone NOT NULL, -- Loc Fec Pro
CONSTRAINT tlocalidad_pkey PRIMARY KEY (paiscod, procod, loccod),
CONSTRAINT itlocalidad1 FOREIGN KEY (paiscod, procod)
REFERENCES tprovincia (paiscod, procod) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION
)
WITH (
OIDS=FALSE
);
还有一点,数据库是一个 postgreSQL 数据库。 希望有人可以提供帮助。 谢谢!
【问题讨论】:
标签: php postgresql symfony doctrine-orm