在使用mysql的外键约束时,很多人都会在创建外键时失败,究其原因,有以下四种:
1.创建外键时,你的存储引擎应该支持外键并且外表(含有外键的表)和从表(引用外键列的表)的列所使用的存储引擎应该相同
2.外表和从表的列必须同时都有相同类型的索引
3.外表和从表的列必须同时都有相同的数据类型
4.如果表中有数据的话,在创建外键时必须保证外键和所引用的列的值的对应关系。具体来说就是从表的值应该是外表列值的子集(不一定要求真子集),这也就要求如果在从表中插入新值时,该值必须在外表的外键列中
在使用mysql的外键约束时,很多人都会在创建外键时失败,究其原因,有以下四种:
1.创建外键时,你的存储引擎应该支持外键并且外表(含有外键的表)和从表(引用外键列的表)的列所使用的存储引擎应该相同
2.外表和从表的列必须同时都有相同类型的索引
3.外表和从表的列必须同时都有相同的数据类型
4.如果表中有数据的话,在创建外键时必须保证外键和所引用的列的值的对应关系。具体来说就是从表的值应该是外表列值的子集(不一定要求真子集),这也就要求如果在从表中插入新值时,该值必须在外表的外键列中