mysql如何添加一个表的外键

1:创建一个父表,主键作为子表的外键:

1 create table province(
2     pId int primary key auto_increment,
3     pName varchar(20)
4 );

2:创建子表,外键是父表的主键:

1 create table user(
2 userId int primary key auto_increment,
3 userName varchar(40),
4 pid int,
5 foreign key(pid) references province(pId)
6 );

给一张表添加外键,即给子表的外键添加主键的规则: 在子表声明一个字段pid int,用于作为子表的外键,foreign key(子表的外键字段) references 父表的表名(父表的主键的字段名);

3:当创建好数据表时添加外键约束:

alter table user add foreign key(pid) references province(pId);

alter table 子表的数据表名 add foreign key(子表的外键名称) references 父表的数据表名称(父表的主键名称);

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏MYSQL轻松学

Mysql聚集索引和非聚集索引

首先要明确一个概念,在聚集索引的世界里索引就是数据,在最后的叶子索引键保存着对应的数据行。 举个例子: 表TestNonclusteredIndex ID ...

3535
来自专栏Python爬虫实战

MySQL 从零开始:06 数据检索

在第四节《表的增删改查》中已经介绍了 select 查询记录的几种使用方法:查询所有行的所有列、查询指定行的所有列、查询所有行的指定列和查询指定行的指定列。本文...

852
来自专栏钟绍威的专栏

当子查询碰上NULLUNIONJOIN总结

情景: 现在有如图两个表,boy和girl,对应着Boy和Girl两个bean,有共同字段id、name,另外boy还有个外键grilfriend(指向girl...

1687
来自专栏深度学习之tensorflow实战篇

SQL中语句:UNION all与UNION 的用法与区别

UNION去重且排序 UNION ALL不去重不排序 UNION用的比较多union all是直接连接,取到得是所有值,记录可能有重复   union 是取唯...

34910
来自专栏雨过天晴

原 收集SQL语句统计每天、每月、每年的数

1002
来自专栏calmound

操作数据表中的记录

插入记录   语法:INSERT [INTO] [(tbl_name,...)] {VALUE|VALUE} ({expr|DEFAULT},...),(......

3197
来自专栏栗霖积跬步之旅

第四章:数据检索

表名:products 字段:product_id、product_name、product_price、vend_id(供应商) 1.检索单个列: SELEC...

17510
来自专栏抠抠空间

MySQL之单表查询

一、单表查询的语法 SELECT 字段1,字段2... FROM 表名 WHERE 条件 GROUP BY fiel...

2997
来自专栏李家的小酒馆

SQL基本语法

SQL 基本语法 表库操作 创建表 create table 表名( 字段名 类型(长度) 约束, 字段名 类型(长度)...

1790
来自专栏zcqshine's blog

mysql case when 多参数条件语法

42112

扫码关注云+社区