实体框架无法识别该列是主键的一部分

时间:2013-07-02 10:38:26

标签: entity-framework postgresql

我在postgresql中有两个表看起来有点像这样。

CREATE TABLE sailor
    id serial NOT NULL,
    boat_id integer NOT NULL,
    name character varying(256),
    CONSTRAINT sailor_id PRIMARY KEY (id)
    CONSTRAINT boat_id FOREIGN KEY (boat_id)
        REFERENCES boat (id) MATCH SIMPLE
        ON UPDTE CASCADE ON DELETE CASCADE

CREATE TABLE boat
    id serial NOT NULL,
    name character varying(256),
    CONSTRAINT boat_id PRIMARY KEY (id)

当我从数据库生成模型时,我得到错误“关系”boat_id“的列不属于关系初级侧表的键的一部分。关系被排除在外”。 我可能遗漏了一些明显的东西,但'船(id)'是主键。为什么我会收到此错误?

2 个答案:

答案 0 :(得分:1)

好的,所以我发现最可能的罪犯是数据库有一个外键约束,它与主键约束同名。

答案 1 :(得分:0)

当我尝试从数据库更新模型时,我有这个错误消息。问题是我有一个带有两个主键的表,而我只与这个主键之一建立关系。