美文网首页
mySQL外键的运用

mySQL外键的运用

作者: dream_seeker | 来源:发表于2018-08-14 19:57 被阅读0次

什么是外键:外键是指引用另一个表中的一列或者多列,被引用的列应该具有主键约束或者唯一性约束。 外键用于建立和加强两个表数据之间的连接.

为表添加外键

ALTER TABLE 表名 ADD CONSTRAINT FK_ID(外键约束名称) foreign key(外键字段名) REFERENCES 主表(主键字段名)

也可以直接在创建变的时候添加外键 CREATE TABLE student( stu_id int NOT NULL PRIMARY KEY, stu_name varchar(32), cls_id int NOT NULL, CONSTRAINT FK_ID foreign key(外键字段名) REFERENCES 外表表名(主键名) )
添加外键约束说明 我们建立外键是为了保证数据的完整性和一致性,如果主键中的数据被删除或者修改,从表中对应的数据怎么处理? 正确的做法当然是从表中的数据也随之改变,否则数据库中会存在很多无意义的数据,当然mysql帮我们想到了 这些,我们在建立外键时添加 ON DELETE 或则 ON UPDATE字句来告诉数据库,避免垃圾数据的产生 CREATE TABLE student( stu_id int NOT NULL PRIMARY KEY, stu_name varchar(32), cls_id int NOT NULL, CONSTRAINT FK_ID foreign key(外键字段名) REFERENCES 外表表名(主键名) ON DELETE CASCADE )

添加外键:alter table classes add constraint FK_TDID foreign key(teacherid) references teachers(id) on delete cascade;
连结查询:
select 表名.列名 from 表名 inner join 表名 on 表名.外键 = 表名.主键
查询的结果为两个表匹配到的数据,把都存在的拿出来
外联结分左连结和右连结
左连结 把inner 改为 left 把左表的数据拿出来去匹配右表的数据,对于右表不存在的数据使用null填充。
查询 any 相当于or all 相当于and union是把两个select语句连结起来,结果不去重。


2018-08-14 19-56-19屏幕截图.png

连结查询:


2018-08-14 19-56-53屏幕截图.png

相关文章

  • mySQL外键的运用

    什么是外键:外键是指引用另一个表中的一列或者多列,被引用的列应该具有主键约束或者唯一性约束。 外键用于建立和加强两...

  • 09_MySQL多表 & JDBC

    MySQL多表 外键 主表主键和从表外键 ==(从表的外键引用主表的主键)== 从表的外键类型必须和主表的主键类型...

  • Mysql外键

    只有InnoDB存储引擎才支持外键 有两张表: 创建外键 方式1: 如上面创建表的语句: 方式2: 删除外键

  • mysql外键

    为已经添加好的数据表添加外键: 语法:alter table 表名 add constraint FK_ID fo...

  • MySQL - 外键

    一、定义 外键约束(FOREIGN KEY Constraint) ,用来维护从表(Child Table)和主表...

  • mysql的外键

    回顾数据库的主键 主键一般与auto_increment一起使用: 外键:foreign key插入记录时,字段值...

  • 设置外键,外键约束值的区别

    laravel 设置外键,并设置外键约束的方式 为联级删除 更新:在使用Navicat for mysql设计表时...

  • laravel 填充数据前用truncate清空有外键的表时报错

    原理就是在执行truncate之前告诉mysql取消所有外键约束检查,清空之后再恢复外键约束检查。 参见: htt...

  • mysql 添加外键约束错误 1215 Cannot add t

    mysql 添加外键约束 1215 Cannot add the foreign key constraint 1...

  • MySQL 外键应用

    1). MySQL 引擎 如果InnoDB状态不可用,可参考此文激活. 2). 创建主表 3). 创建从表 4)....

网友评论

      本文标题:mySQL外键的运用

      本文链接:https://www.haomeiwen.com/subject/jftbbftx.html