在 SQL 中向我的表添加外键
Posted
技术标签:
【中文标题】在 SQL 中向我的表添加外键【英文标题】:Adding a foreign key to my table in SQL 【发布时间】:2013-12-07 21:19:41 【问题描述】:我有问题
create table REALESTATE (
reale_id integer,
agents_id integer not null,
listing_id integer not null,
primary key (reale_id)
);
*表已创建*
create table AGENTS (
agents_id integer,
agents_name char(10) not null,
agents_lname char(20) not null,
listing_id integer,
customer_id integer,
reale_id integer,
primary key (agents_id),
foreign key (customer_id) references AGENT (customer_id),
foreign key (reale_id) references REALESTATE (reale_id)
);
第 9 行的错误: ORA-00942: 表或视图不存在
create table CUSTOMER (
customer_id integer,
customer_name char(6) not null,
customer_lname char(15) not null,
agents_id integer,
primary key (customer_id),
foreign key (agents_id) references AGENTS (agents_id)
);
第 7 行出现错误:ORA-00942:表或视图不存在
【问题讨论】:
【参考方案1】:在代理的创建表中,您有这一行。
foreign key (customer_id) references AGENT (customer_id),
但是,表代理不存在。此时仅存在表房地产。这意味着没有创建表代理,这会导致表客户出现问题。
【讨论】:
【参考方案2】:表名是 AGENTS 而不是 AGENT。
将foreign key (customer_id) references AGENT (customer_id),
更改为foreign key (customer_id) references AGENTS
(customer_id),
【讨论】:
【参考方案3】:表 AGENTS
未创建,因为它引用了一个名为 AGENT
的表(请参阅缺少的 S
),该表不存在。由于AGENTS
的创建失败,您无法创建CUSTOMERS
,因为它还引用了AGENTS
,而该AGENTS
没有被创建(由于之前的错误)。
在表AGENTS
:使用references AGENTS (customer_id)
。
【讨论】:
以上是关于在 SQL 中向我的表添加外键的主要内容,如果未能解决你的问题,请参考以下文章
如何在 OnChangeText 中向我的组件 inputText 添加两个状态
在 Parse Server 中向我的数组添加唯一值(swift 3)
如何在我的视图控制器中向我的“全部删除”和“保存”按钮添加警报?