外键关联的问题
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | CREATE TABLE t_teacher( id INT UNSIGNED PRIMARY KEY , tname VARCHAR (20) NOT NULL , course VARCHAR (10) NOT NULL ); CREATE TABLE t_student( id INT UNSIGNED PRIMARY KEY AUTO_INCREMENT, tname char (20) NOT NULL , book_acction VARCHAR (15) NOT NULL UNIQUE , book_password VARCHAR (15) NOT NULL , tname VARCHAR (20) NOT NULL , books VARCHAR (30), FOREIGN KEY (tname) REFERENCES t_teacher(tname) ); |
为什么这个使用外键约束关联不了呢?
19
收起
正在回答 回答被采纳积分+1
1回答
好帮手慕凡
2022-08-30 15:36:56
同学,你好!
1、外键关联的字段需要加上唯一索引UNIQUE
2、t_student中有两个tname
参考sql如下
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | CREATE TABLE t_teacher( id INT UNSIGNED PRIMARY KEY , tname VARCHAR (20) NOT NULL UNIQUE , course VARCHAR (10) NOT NULL ); CREATE TABLE t_student( id INT UNSIGNED PRIMARY KEY AUTO_INCREMENT, tname char (20) NOT NULL , book_acction VARCHAR (15) NOT NULL UNIQUE , book_password VARCHAR (15) NOT NULL , tname1 VARCHAR (20) NOT NULL , books VARCHAR (30), FOREIGN KEY (tname) REFERENCES t_teacher(tname) ); |
祝学习愉快~
Python全能工程师
- 参与学习 人
- 提交作业 16329 份
- 解答问题 4470 个
全新版本覆盖5大热门就业方向:Web全栈、爬虫、数据分析、软件测试、人工智能,零基础进击Python全能型工程师,从大厂挑人到我挑大厂,诱人薪资在前方!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧