外键约束的写法是【[CONSTRAINT ] FOREIGN KEY 字段名 [,字段名2,…]REFERENCES 主键列1 [,主键列2,…]】。

本文操作环境:windows10系统、mysql 5.7、thinkpad t490电脑。

MySQL 外键约束(FOREIGN KEY)是表的一个特殊字段,经常与主键约束一起使用。对于两个具有关联关系的表而言,相关联字段中主键所在的表就是主表(父表),外键所在的表就是从表(子表)。

在 CREATE TABLE 语句中,通过 FOREIGN KEY 关键字来指定外键,具体的语法格式如下:[CONSTRAINT ] FOREIGN KEY 字段名 [,字段名2,…]

REFERENCES 主键列1 [,主键列2,…]

举例:

创建 tb_dept1 的 SQL 语句和运行结果如下所示。mysql> CREATE TABLE tb_dept1

-> (

-> id INT(11) PRIMARY KEY,

-> name VARCHAR(22) NOT NULL,

-> location VARCHAR(50)

-> );

Query OK, 0 rows affected (0.37 sec)

创建数据表 tb_emp6,并在表 tb_emp6 上创建外键约束,让它的键 deptId 作为外键关联到表 tb_dept1 的主键 id,SQL 语句和运行结果如下所示。mysql> CREATE TABLE tb_emp6

-> (

-> id INT(11) PRIMARY KEY,

-> name VARCHAR(25),

-> deptId INT(11),

-> salary FLOAT,

-> CONSTRAINT fk_emp_dept1

-> FOREIGN KEY(deptId) REFERENCES tb_dept1(id)

-> );

Query OK, 0 rows affected (0.37 sec)

mysql> DESC tb_emp6;

+--------+-------------+------+-----+---------+-------+

| Field | Type | Null | Key | Default | Extra |

+--------+-------------+------+-----+---------+-------+

| id | int(11) | NO | PRI | NULL | |

| name | varchar(25) | YES | | NULL | |

| deptId | int(11) | YES | MUL | NULL | |

| salary | float | YES | | NULL | |

+--------+-------------+------+-----+---------+-------+

4 rows in set (1.33 sec)

外键表显示在html,外键约束怎么写相关推荐

  1. mysql添加数据不阻塞_主键表插入数据不提交,外键表插入数据被阻塞

    有客户和我说:他在含主外键的表中实验发现,在主表数据未提交,然后在外键表插入该数据数据时,出现外键表hang住现象.我开始以为是不同的会话,根据oracle数据库的一致性原则,应该新会话在外键表中不能 ...

  2. 数据库的主键表和外键表

    想写这个是因为自己刚好在尝试建一个数据库,而数据库的各个表之间的关系不是很清楚,没有形成一个整体的关系,所以就尝试着将数据库形成一个整理的关系表,我 敢说很多跟我一样的同学原来做课程设计,肯定就是随便 ...

  3. 解决无法删除表,提示被外键约束引用

    有时想删除某个表时,提示"无法删除对象 'Orders',因为该对象正由一个 FOREIGN KEY 约束引用",原因很简单不要急躁,它被其它表的外键引用了,所以无法删除,在此只需 ...

  4. mysql修改级联表数据_MySQL数据库 外键,级联, 修改表的操作

    1.外键: 用来建立两张表之间的关系 - 一对多 - 多对多 - 一对一 研究表与表之间的关系: 1.定义一张 员工部门表 id, name, gender, dep_name, dep_desc - ...

  5. Mysql数据库——数据表的优化、外键与三范式

    数据表优化 将商品信息表进行优化 1.创建商品种类表: create table if not exists goods_cates( id int unsigned primary key auto ...

  6. mysql支持UUID做外键_多表外键下将普通的id主键更新为uuid主键

    多表外键下将普通的id主键更新为uuid主键 2019-05-20 02:45:37 来源: 晴天小雨 0 摘要:在多表外键影响和保证数据不删除的前提下,借助Flask-sqlalchemy插件及SQ ...

  7. 怎么查看oracle数据库表的主键,Oracle中查看所有的表,用户表,列名,主键,外键...

    在Oracle中查看所有的表: select * from tab/dba_tables/dba_objects/cat; 看用户建立的表 : select table_name from user_ ...

  8. 解决删除从表,主表存在外键的问题

    2019独角兽企业重金招聘Python工程师标准>>> drop table `spring`.`city_inf`; Error 1217: Cannot delete or up ...

  9. oracle 同步 部份表,Oracle 同步表数据外键处理

    ORA-02266: 表中的唯一/主键被启用的外键引用 方法一: 在删除有父子表关系的表的数据时,我们都知道要先删除子表 再 删除父表数据,或者先取消外键 然后再删除. 昨天采用先删子表 ,再删父表, ...

最新文章

  1. c++11中智能指针的原理,使用,实现
  2. sendEmail实现邮件报警
  3. [Android Studio] Android Studio如何提示函数用法
  4. iphone分屏功能怎么用_iPhone上10个隐藏小技巧,怎么用怎么爽
  5. linux多线程访问共享资源,多个线程访问共享对象和数据
  6. python asyncio future_Python asyncio:yield from未用于future?
  7. Android Camera详解
  8. linux跑程序内存不够,linux 未跑程序 内存 cache使用过大(示例代码)
  9. 7月共处理钓鱼网站1921个:非CN域名达1911 个
  10. reactrouter监听路由变化_前端路由三种模式
  11. 学习vim: vim cheat sheet
  12. 学习python-day1
  13. 使用 软件 vscode 对比文件内容的方法
  14. 为什么大家越来越重视大数据的发展?
  15. lordPE转自http://blog.sina.com.cn/s/blog_6e8f83bc01014115.html
  16. xshell的注册码
  17. 基于MATLAB,应用SMOTE算法对小样本类进行过采样
  18. matlab 死区,MATLAB对AC/DC/AC电源的死区效应谐波仿真
  19. 项目实习(五)网络渗透实验
  20. 计算构成三角形的个数

热门文章

  1. linux下追踪函数调用堆栈
  2. 清风数学建模学习笔记——主成分分析(PCA)原理详解及案例分析
  3. C#将汉字转成汉语拼音
  4. 使用python网络爬虫爬取新浪新闻(一)
  5. Linux kernel中断子系统之(五):驱动申请中断API【转】
  6. 2011年政治经济学模拟试题一(附答案)
  7. 数据分析入门:初始数据埋点(二)
  8. APP——java——自动化环境搭建02——个人详细搭建——夜神模拟
  9. 洛谷P3203 弹飞绵羊
  10. 【PHP基础-9】Session机制详解及Session身份认证应用案例