Mysql 设置foreign key 目的是什么? foreign key 很重要吗?不设置可以不 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 1、foreign key是为了约束与主表之间的数据一致性,避免垃圾数据的产生,2、当然可以不设置,只要程序逻辑是正确的就行。 MYSQL 外键定义 建立外键的前提: 本表的列必须与外键类型相同(外键必须是外表主键)。 外键作用: 使两张表形成关联,外键只能引用外表中的列的值! 指定主键关键字: foreign key(列名) 引用外键关键字: references <外键表名>(外键列名) 事件触发限制: on delete和on update , 可设参数cascade(跟随外键改动), restrict(限制外表中的外键改动),set Null(设空值),set Default(设默认值),[默认]no action 例如: outTable表 主键 id 类型 int 创建含有外键的表: create table temp( id int, name char(20), foreign key(id) references outTable(id) on delete cascade on update cascade); 说明:把id列 设为外键 参照外表outTable的id列 当外键的值删除 本表中对应的列筛除 当外键的值改变 本表中对应的列值改变。 除了可以用 constraint table1FK foreign key(外键)reference table2(主键)设置外键,还可以其他方式设置吗? mysql外键问题 求sql 选择性的触发器 请问怎么测试SQL的执行效率? 如何告诉获得mysql数据库中记录的行数 感觉人生的尽头了,实在是太难了,做不出来,不想在IT混了 PHP+MYSQL高手请进!!!!!!急,救命呀!!!!! 请问,如何在windows上安装MYSQL-FRONT? mysql CAPI存储过程输出参数 一个access表一万条记录,想转到Mysql下(Mysql在Linux下)用什么方法和什么语言来做好? 求助一条sql。大家帮忙看看。 mysql派生表不能命名?
2、当然可以不设置,只要程序逻辑是正确的就行。
建立外键的前提: 本表的列必须与外键类型相同(外键必须是外表主键)。 外键作用: 使两张表形成关联,外键只能引用外表中的列的值! 指定主键关键字: foreign key(列名) 引用外键关键字: references <外键表名>(外键列名) 事件触发限制: on delete和on update , 可设参数cascade(跟随外键改动), restrict(限制外表中的外键改动),set Null(设空值),set Default(设默认值),[默认]no action 例如: outTable表 主键 id 类型 int 创建含有外键的表:
create table temp(
id int,
name char(20),
foreign key(id) references outTable(id) on delete cascade on update cascade); 说明:把id列 设为外键 参照外表outTable的id列 当外键的值删除 本表中对应的列筛除 当外键的值改变 本表中对应的列值改变。