首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带外键的Crreate表

带外键的Crreate表
EN

Stack Overflow用户
提问于 2015-07-26 03:19:14
回答 1查看 3.3K关注 0票数 0

我正在尝试在sql中创建一个表,但是当我从表COURSE中添加外键时,它会给我一个错误。用其他外键,有人能告诉我原因吗。

这是我的查询

代码语言:javascript
复制
CREATE TABLE ENROLL (
Stu_ID NUMBER NOT NULL,
Prog_ID VARCHAR2(20) NOT NULL,
Crs_ID NUMBER NOT NULL,
Crs_Sec_ID VARCHAR2(20) NOT NULL,
Enroll_Outcome CHAR(1) NOT NULL,
PRIMARY KEY(Stu_ID),
FOREIGN KEY(Stu_ID) REFERENCES STUDENT(Stu_ID),
FOREIGN KEY(Prog_ID) REFERENCES PROGRAMS(Prog_ID),
FOREIGN KEY (Crs_Sec_ID) REFERENCES COURSE_SECTION (Crs_Sec_ID),
FOREIGN KEY(Crs_ID) REFERENCES COURSE(Crs_ID));

这是输出

代码语言:javascript
复制
Error starting at line : 126 in command -
CREATE TABLE ENROLL (
Stu_ID NUMBER NOT NULL,
Prog_ID VARCHAR2(20) NOT NULL,
Crs_ID NUMBER NOT NULL,
Crs_Sec_ID VARCHAR2(20) NOT NULL,
Enroll_Outcome CHAR(1) NOT NULL,
PRIMARY KEY(Stu_ID),
FOREIGN KEY(Stu_ID) REFERENCES STUDENT(Stu_ID),
FOREIGN KEY(Prog_ID) REFERENCES PROGRAMS(Prog_ID),
FOREIGN KEY (Crs_Sec_ID) REFERENCES COURSE_SECTION (Crs_Sec_ID),
FOREIGN KEY(Crs_ID) REFERENCES COURSE(Crs_ID))
Error report -
SQL Error: ORA-02267: column type incompatible with referenced column type
02267. 00000 -  "column type incompatible with referenced column type"
*Cause:    The datatype of the referencing column is incompatible with the

同样,它与没有Crs_ID的所有其他外键一起运行良好。

EN

回答 1

Stack Overflow用户

发布于 2015-07-26 03:33:24

基本上所说的是登记表中的Couse ID和Couse表中的Couse ID是不兼容的。两列都应该具有相同的类型和属性( null),以便建立外键关系。

要检查的内容:

  • 它们是否都有相同的列类型(应该是编号)?
  • 两者都不支持null?
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31633308

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档