在被引用表中没有与外键的引用列的列表匹配的主键或候选键的问题。请批教。谢谢!!

James_ht 2005-10-27 06:13:33
俩个表结构是这样
create table TABCLASS
(
CLASSID CHAR(4) not null,
STATE int not null,)
alter table TABCLASS
add constraint PK_CLASSID primary key (CLASSID,STATE)

create table TABPRODUCTFORCODE
(
FORCODE CHAR(15) not null,
MCLASSID CHAR(4) not null,
)
alter table TABPRODUCTFORCODE
add constraint PK_FORCODE1 primary key (FORCODE)

可是执行下面的语句出现错误.
alter table TabProductForCode
add constraint FK_TPFC_MclassID foreign key(MclassID)
references TabClass(ClassID)

提示如下:
在被引用表 'TabClass' 中没有与外键 'FK_TPFC_MclassID' 的引用列的列表匹配的主键或候选键。

请是这个要如何解决.是不是要修改TabClass表结构。谢谢!!
...全文
386 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
超叔csdn 2005-10-27
  • 打赏
  • 举报
回复
references后面的要关联另一个表的主键,因为在TabClass中,ClassID不是唯一的,所以你的语句有错.如果要实现可能需要改表结构.
比如再建一个表,里面只有一个字段:Classid,它可以是这两个表的外键!

17,380

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧