mysql建立外键

yipeiwu_com6年前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列 当外键的值删除本表中对应的列筛除 当外键的值改变 本表中对应的列值改变。                                                

相关文章

mysql_fetch_assoc和mysql_fetch_row的功能加起来就是mysql_fetch_array

mysql_fetch_assoc只能用字段,就像mysql_fetch_array($result, MYSQL_ASSOC)结果一样。 mysql_fetch_row&nb...

PHP的mysqli_query参数MYSQLI_STORE_RESULT和MYSQLI_USE_RESULT的区别

虽然nosql变得流行,但是我感觉sql还是主流 今天在翻php manul的时候,发现mysqli 的查询可以传递一个有意思的参数 复制代码 代码如下: @mysqli_query($...

PHP中执行MYSQL事务解决数据写入不完整等情况

近来稍有时间研究了下MYSQL中的事务操作,在很多场合下很是适用,譬如在注册的时候需要初始化很多张关联表的时候,问答回复的时候需要至少同时操作两张表,这些都会在某些时候只能成功更新一张表...

mysql+php分页类(已测)

复制代码 代码如下:<?php       /*      mysql...

mysql5写入和读出乱码解决

我写的例子 复制代码 代码如下:<?  require("adodb/adodb.inc.php");  $conn=newadoconnection('mys...