ORA-02270: 此列列表的唯一关键字或主键不匹配一些思路
admin
2023-04-23 14:02:55
0

查看两个表的结构

SQL> describe student;

Name         Type         Nullable Default Comments 

------------ ------------ -------- ------- -------- 

ID           NUMBER(10)                             

TEACHER_ID   NUMBER(10)   Y                         

STUDENT_NAME VARCHAR2(20) Y        '嗯嗯嗯'          

SAL          NUMBER(20)   Y                         

SEX          VARCHAR2(2)  Y                         


SQL> describe teacher;

Name         Type         Nullable Default Comments 

------------ ------------ -------- ------- -------- 

ID           NUMBER(10)   Y                         

TEACHER_NAME VARCHAR2(20) Y                         


查看两个表约束基本信息

SQL> select table_name,constraint_name,constraint_type,status from user_constraints where table_name='TEACHER';

TABLE_NAME                     CONSTRAINT_NAME                CONSTRAINT_TYPE STATUS

------------------------------ ------------------------------ --------------- --------

TEACHER                        TEACHER2                       P               DISABLED

TEACHER                        TEACHER                        C               ENABLED

TEACHER                        UQ_NAME                        U               ENABLED


SQL> select table_name,constraint_name,constraint_type,status from user_constraints where table_name='STUDENT';

TABLE_NAME                     CONSTRAINT_NAME                CONSTRAINT_TYPE STATUS

------------------------------ ------------------------------ --------------- --------

STUDENT                        CHK_STUDENT                    C               ENABLED

STUDENT                        PK_STUDENT                     P               ENABLED



查看约束建立那些列结构

SQL> select table_name,constraint_name,column_name from user_cons_columns where table_name='TEACHER';

TABLE_NAME                     CONSTRAINT_NAME                COLUMN_NAME

------------------------------ ------------------------------ ------------------------------------------------

TEACHER                        UQ_NAME                        TEACHER_NAME

TEACHER                        TEACHER2                       ID

TEACHER                        TEACHER                        ID


SQL> select table_name,constraint_name,column_name from user_cons_columns where table_name='STUDENT';

TABLE_NAME                     CONSTRAINT_NAME                COLUMN_NAME

------------------------------ ------------------------------ ------------------------------------------------

STUDENT                        PK_STUDENT                     ID

STUDENT                        CHK_STUDENT                    SAL

STUDENT                        CHK_STUDENT                    SEX


关联两个表的id号的时候报错(外键关联主键)

SQL> alter table student add constraint fk_student foreign key (TEACHER_ID) references teacher (ID);

alter table student add constraint fk_student foreign key (TEACHER_ID) references teacher (ID)

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


解决思路

1、查看绑定主键与外键数据类型不同(数据是否相同)

2、查看主键是否还有其他约束(外键貌似只能绑定主键),是否还有其他的检测约束等等

3、认真观察仔细,键值的状态是否开启!

本题总结

因为第一张表主键约束被关闭(约束状态红色标记),所以导致外键正常连接,小错误决成败。

解决步骤

SQL> alter table teacher modify constraint TEACHER2 ENABLE;

Table altered

SQL> alter table student add constraint fk_student foreign key (TEACHER_ID) references teacher (ID);

Table altered

关联成功!


上一篇:浅谈数据库约束

下一篇:Oracle 约束详解

相关内容

热门资讯

“台独”顽固分子沈伯洋参选台北... 【环球时报特约记者 陈立非】台湾今年年底举行“九合一”选举,国民党很早就确定由现任台北市市长蒋万安争...
伊拉克和巴基斯坦据称已分别同伊... 总台记者当地时间5月12日获悉,伊拉克和巴基斯坦已分别同伊朗签订协议,以从海湾地区运输石油和液化天然...
京沪高铁“涨价”,调价背后有何... 昨天(11日),京沪高铁发布公告称,决定对京沪高速线、合蚌高速线动车组列车公布票价进行优化调整,时速...
第三方样品A厂家生产支架样品测... 第三方样品A厂家生产支架样品测试实验报告 一、检测范围 本次检测对象为A厂家生产的XX型医用金属...
伊朗德黑兰地区发生4.6级地震 总台记者获悉,当地时间5月12日23时47分左右,伊朗德黑兰地区发生4.6级地震。震中位于德黑兰省和...
被科威特指控“武装渗透”布比延... 新华社科威特城/德黑兰5月12日电(记者尹炣 陈霄)科威特政府12日指认,伊朗伊斯兰革命卫队多名武装...
酒吧办护士制服派对被指低俗,当... 据媒体报道,5月12日国际护士节,浙江衢州有网友发帖称,当地APK·ELITE CLUB酒吧举办所谓...
珠海冠宇获得发明专利授权:“一... 证券之星消息,根据天眼查APP数据显示珠海冠宇(688772)新获得一项发明专利授权,专利名为“一种...
大华申请数据写入方法专利,提高... 国家知识产权局信息显示,浙江大华技术股份有限公司申请一项名为“数据写入方法、电子设备及计算机可读存储...
现在,赖清德更焦虑了 执笔/月半刀&宝刀刀&胡一刀5月13日,美国总统特朗普将开启访华行程。外界高度关注此次会晤中双方将如...