我对外键有疑问。
当我想向创建的第二个表的主键进行引用的第一个表中添加外键时,它如何工作?
CREATE TABLE table1 ( name_id INT NOT NULL, team TEXT REFERENCES table2(team_id), PRIMARY KEY(name_id) ); CREATE TABLE table2 ( team_id INT NOT NULL, teamname TEXT, PRIMARY KEY(team_id) );
如果我尝试上面的代码,则会出现以下错误:
错误:关系“”不存在
提前致谢。
要么先创建第二个表。或使用alter table。也就是说,创建没有引用的第一个表,然后执行以下操作:
alter table
alter table table1 add constraint fk_table1_team foreign key (team_id) REFERENCES table2(team_id);
的声明为table1:
table1
CREATE TABLE table1 ( name_id INT NOT NULL, team_id INT, PRIMARY KEY(name_id) );
如果有整数,则表之间的引用应该在主键上,当然也不能在字符列上。