mysql添加外键的方法有:在属性值后面直接添加;在sql语句末端添加;使用fk以及在建表后添加外键

相关学习推荐:mysql教程
mysql添加外键的4种方式
创建主表: 班级
CREATE TABLE class(cid INT PRIMARY KEY AUTO_INCREMENT,sname VARCHAR(15) NOT NULL)INSERT INTO class VALUES(NULL,'六年级一班')INSERT INTO class VALUES(NULL,'六年级二班')
第一种:在属性值后面直接添加
CREATE TABLE student(sid INT AUTO_INCREMENT,sname VARCHAR(10) NOT NULL,s_cid INT REFERENCES class(cid),PRIMARY KEY(sid));
//添加数据进行测试
INSERT INTO student VALUES(NULL,'王大锤',2)INSERT INTO student VALUES(NULL,'胡汉三',3) //约束不生效,原因待查INSERT INTO student VALUES(NULL,'卧槽',4) //不敢相信,在测试一次
这种方式,测试不知道为什么,居然添加进去了 WTF? 在网上百度无果,自学群无回复 暂时先搁置在这儿
第二种:2.在sql语句末端添加
法语写作助手
法语助手旗下的AI智能写作平台,支持语法、拼写自动纠错,一键改写、润色你的法语作文。
31 查看详情
CREATE TABLE student(sid INT AUTO_INCREMENT,sname VARCHAR(10),s_cid INT,PRIMARY KEY(sid),FOREIGN KEY (s_cid) REFERENCES class(cid));
//插入数据测试一下
INSERT INTO student VALUES(NULL,'王大锤',2)INSERT INTO student VALUES(NULL,'胡汉三',3) //约束生效 插入失败
外键约束生效
第三种:fk的使用
CREATE TABLE student(sid INT AUTO_INCREMENT,sname VARCHAR(10) NOT NULL,s_cid INT ,PRIMARY KEY(sid),CONSTRAINT fk_student_class FOREIGN KEY(s_cid) REFERENCES class(cid));
INSERT INTO student VALUES(NULL,'王大锤',2)INSERT INTO student VALUES(NULL,'胡汉三',3) //约束生效 插入失败
第四种:在建表后添加外键
CREATE TABLE student(sid INT AUTO_INCREMENT,sname VARCHAR(10) NOT NULL,s_cid INT ,PRIMARY KEY(sid));
//添加外键约束:
ALTER TABLE student ADD FOREIGN KEY (s_cid) REFERENCES class(cid);
//测试
INSERT INTO student VALUES(NULL,'王大锤',2)INSERT INTO student VALUES(NULL,'胡汉三',3) //约束生效 插入失败
以上就是mysql增加外键有哪些方法的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/369883.html
微信扫一扫
支付宝扫一扫