. cascade方式在父表上update/delete记录时,同步update/delete掉子表的匹配记录 . set null方式在父表上update/delete记录时,将子表上匹配记录的列设为null要注意子表的外键列不能为not null . No action方式如果子表中有匹配的记录 ...
分类:
数据库 时间:
2017-03-31 12:06:20
阅读次数:
200
在Mysql中删除一张表或一条数据的时候,出现 [Err] 1451 -Cannot delete or update a parent row: a foreign key constraint fails (...) 这是因为MySQL中设置了foreign key关联,造成无法更新或删除数据。 ...
分类:
数据库 时间:
2017-03-16 18:35:02
阅读次数:
198
CREATE TABLE `l1` ( `nid` int(11) NOT NULL AUTO_INCREMENT, `user` char(10) NOT NULL, `pwd` char(10) NOT NULL, `s1_nid` int(11) NOT NULL, PRIMARY KEY (... ...
分类:
数据库 时间:
2017-02-13 16:52:44
阅读次数:
123
MySQL外键 1.什么是外键 表与表之间的特定关系。保持数据的完整性和一致性。 user用户表 Order订单表 1.1 删除用户、没有删除订单,数据就不一致 1.2 Order表中插入记录 外键控制:让用户不更新数据,或者是用户删除数据的时候,让订单同步也删除 2.外键的特点: 2.1查看是否存 ...
分类:
数据库 时间:
2017-02-06 21:03:10
阅读次数:
223
转载自:http://www.cppblog.com/wolf/articles/69089.html#Post 原文实在太精辟又形象,忍不住转载过来留下笔记,像作者致敬 在MySQL 3.23.44版本后,InnoDB引擎类型的表支持了外键约束。外键的使用条件:1.两个表必须是InnoDB表,My ...
分类:
数据库 时间:
2017-01-10 11:23:55
阅读次数:
304
外键的作用:外键具有保持数据完整性和一致性的机制。 ① 外键只能指向主表或本表的主键列或者unique② 外键的数据类型应该与它指向的列类型一致③ 外键的值:NULL 或者 指向列中存在的值 ##############准备############## 创建一个组表作为主表,命名为t_group: ...
分类:
数据库 时间:
2017-01-08 17:43:22
阅读次数:
283
有这样两条sql:inserttable_a(bId)value(1);--sql-1
updatetable_bsetb.xx=123whereb.id=1;--sql-2其中,table_a的字段bId是个外键;外键关联的正是table_b的id字段。在mysql上执行这两条数据时,sql-1会锁住sql-2.我们的系统中,为这一个锁,发生了不知道多少的锁等待,更引..
分类:
数据库 时间:
2016-12-05 23:43:46
阅读次数:
238
在MySQL 3.23.44版本后,InnoDB引擎类型的表支持了外键约束。外键的使用条件:1.两个表必须是InnoDB表,MyISAM表暂时不支持外键(据说以后的版本有可能支持,但至少目前不支持);2.外键列必须建立了索引,MySQL 4.1.2以后的版本在建立外键时会自动创建索引,但如果在较早的 ...
分类:
数据库 时间:
2016-11-10 14:09:21
阅读次数:
266
设置外键有两种方式,一种是在创建表的时候关联外键,另一种是给已经存在的表添加外键。具体操作如下:1、在创建表时的操作班级表(主表):createtabletb1(idINTPRIMARYKEYAUTO_INCREMENT,classnameVARCHAR(20)NOTNULL);用户表(子表):createtabletb2(idINTPRIMARYKEYAUTO..
分类:
数据库 时间:
2016-11-09 23:22:48
阅读次数:
193
1.1、MySQL中“键”和“索引”的定义相同,所以外键和主键一样也是索引的一种。不同的是MySQL会自动为所有表的主键进行索引,但是外键字段必须由用户进行明确的索引。用于外键关系的字段必须在所有的参照表中进行明确地索引,InnoDB不能自动地创建索引。 2.2、外键可以是一对一的,一个表的记录只能 ...
分类:
数据库 时间:
2016-10-19 03:12:33
阅读次数:
221