将新表数据映射到现有表时出现问题

时间:2015-04-09 08:18:37

标签: database postgresql

我有一个如下的父表

CREATE TABLE "Tablename"
(
  "column1" integer,
  "column2" integer NOT NULL, 
  "column3" text, 
  "column4" integer,
  "column5" text, 
  "column6" integer,
  CONSTRAINT "Tablename_pkey" PRIMARY KEY ("column1"),
  CONSTRAINT uk_t1 UNIQUE ("column2")
);

所以在上表中,column2Unique& Not Null,这意味着主键? 我正在尝试将column2作为Foreign Key分配到另一个表中,但我收到如下错误

  

错误:没有唯一约束匹配给定表的引用表"表名"   SQL状态:42830

注意如果我将column2直接分配给Primary Key在父表中,那么我可以将其分配为子表中的Foreign Key。在这里,我无法做到这一点。我也需要帮助!

1 个答案:

答案 0 :(得分:1)

以下内容来自psql。你只是遇到语法问题吗?

CREATE TABLE foo 
 (column2 integer not null,
  FOREIGN KEY (column2) REFERENCES "Tablename"(column2)
);