qq_15907849 2015-05-27 06:53 采纳率: 75%
浏览 11566
已采纳

SQL 错误: ORA-02270: 此列列表的唯一关键字或主键不匹配

建表如下:create table jt(
Jno int primary key,
Jpassword int not null,
cname int,
Jphone int not null,
Jname varchar(10)
);
create table gt(
account int primary key,
password int not null,
Gname varchar(10),
Gphone int not null
);
create table student(
sno int primary key,
spassword int not null,
class varchar(20) not null,
sname varchar(10) not bull,
sex char,
age int,
home varchar(15),
sphone int not null,
Jno int,
Gname varchar(10)
foreign key (Jno) references jt(Jno),
foreign key (Gname) references gt(Gname)
);
建立外键时出现错误:SQL 错误: ORA-02270: 此列列表的唯一关键字或主键不匹配
02270. 00000 - "no matching unique or primary key for this column-list"
*Cause: A REFERENCES clause in a CREATE/ALTER TABLE statement
gives a column-list for which there is no matching unique or primary
key constraint in the referenced table.
*Action: Find the correct column names using the ALL_CONS_COLUMNS
catalog view

                这样改怎么解决啊?求教各位大牛了!
  • 写回答

3条回答

  • danielinbiti 2015-05-27 06:57
    关注

    gt表中gname不是主键,外键关联的必须是主键

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料