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

相关文章

php 随机记录mysql rand()造成CPU 100%的解决办法

百度查阅了一些资料,再结合自己的一些经验,采用以下解决办法: 复制代码 代码如下: $idlist=''; for($i=1;$i<=20;$i++){ if($i==1){ $i...

PHP中使用localhost连接Mysql不成功的解决方法

发现问题 昨天在帮同事编译安装Linux环境时,遇到一个问题: WEB服务器是apache,数据库是MySQL。 于是写了一个测试连接数据库的PHP页面: 复制代码 代码如下:$mysq...

php将csv文件导入到mysql数据库的方法

本文实例讲述了php将csv文件导入到mysql数据库的方法。分享给大家供大家参考。具体分析如下: 本程序实现数据导入原理是先把csv文件上传到服务器,然后再通过php的fopen与fg...

PHP中addslashes与mysql_escape_string的区别分析

本文实例分析了PHP中addslashes与mysql_escape_string的区别。分享给大家供大家参考,具体如下: 1.在插入数据时两者的意义基本一样.区别只在于addslash...

PHP+MySQL高并发加锁事务处理问题解决方法

本文实例讲述了PHP+MySQL高并发加锁事务处理问题解决方法。分享给大家供大家参考,具体如下: 1、背景: 现在有这样的需求,插入数据时,判断test表有无username为‘mraz...