MySQL删除外键、增加外键及删除主键、增加主键

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: MySQL删除外键、增加外键及删除主键、增加主键

一、MySQL删除外键

格式:

alter table 表名 drop foreign key 外键名;

表名就是有外键存在的那个表。


外键名可以通过查看表的创建信息得到。


查看表的创建信息格式:

show create table 表名;

二、MySQL增加外键

外键可以在修改表时添加,但是添加外键的前提是:


从表中外键列中的数据必须与主表中主键列中的数据一致或没有数据


给表增加外键格式:

alter  table  需要添加外键的表名  add  constraint  外键名 
foreign  key(本表字段列表)  references  主表名(字段列表);

在创建数据表时添加外键格式:

constraint  外键名  foreign  key(本表字段列表)  references  主表名  (主表字段列表);

注意:


1、外键字段的数据类型必须与父表中的主键类型一致


2、添加外键的数据表的存储引擎必须是InnoDB,否则即使添加外键成功,也不具有外键约束的作用。


3、一张表中不能出现同名外键


4、当外键字段中有值后,再添加外键时,已有的值必须在父类主键中,否则无法创建成功。

三、MySQL删除主键

格式:

alter table 表名 drop primary key;

四、MySQL增加主键

格式:

alter  table 表名  add  primary key(字段列表);

在创建数据表时添加主键格式:

字段名  数据类型  primary key;

注意:


1、一个数据表主键约束只能有一个。


2、主键的字段不允许空值。

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
3月前
|
NoSQL 关系型数据库 MySQL
MySQL主键与索引
MySQL主键与索引
58 1
|
3月前
|
存储 SQL 关系型数据库
高效访问数据的关键:解析MySQL主键自增长的运作机制!
高效访问数据的关键:解析MySQL主键自增长的运作机制!
|
4月前
|
存储 关系型数据库 MySQL
【面试】Mysql主键索引普通索引索引和唯一索引的区别是什么?
【面试】Mysql主键索引普通索引索引和唯一索引的区别是什么?
349 0
【面试】Mysql主键索引普通索引索引和唯一索引的区别是什么?
|
30天前
|
缓存 关系型数据库 MySQL
为啥MySQL官方不推荐使用uuid或者雪花id作为主键
为啥MySQL官方不推荐使用uuid或者雪花id作为主键
23 1
|
4月前
|
关系型数据库 MySQL
MySQL中数据插入与主键冲突解决方案
MySQL中数据插入与主键冲突解决方案
197 0
|
5月前
|
存储 关系型数据库 MySQL
MySQL中库/表/字段/主键/用户操作示例与详解
MySQL中库/表/字段/主键/用户操作示例与详解
111 0
|
6月前
|
XML Java 数据库连接
【MySQL用法】MyBatis 多对多 中间表插入数据,添加记录后获取主键ID
【MySQL用法】MyBatis 多对多 中间表插入数据,添加记录后获取主键ID
63 0
|
2月前
|
存储 关系型数据库 MySQL
用雪花 ID 和 UUID 做 MySQL 主键,可以吗?
用雪花 ID 和 UUID 做 MySQL 主键,可以吗?
33 0
用雪花 ID 和 UUID 做 MySQL 主键,可以吗?
|
3月前
|
存储 关系型数据库 MySQL
MySQL约束 【主键约束丨唯一约束丨非空约束丨外键级联】
MySQL约束 【主键约束丨唯一约束丨非空约束丨外键级联】
55 0
|
4月前
|
算法 数据库
MYSQL-mybatisplus的主键自增问题与@Tableld@TableField@TableLogic的学习
关于org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.laoyang.Mapper.BookMapper.deleteById问题