MYSQL中约束及修改数据表

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: MYSQL中约束及修改数据表28:约束约束保证数据的完整性和一致性约束分为表级约束和列级约束约束类型包括:    NOT NULL(非空约束)    PRIMARY KEY(主键约束)    UNIQUE KEY(唯一约束)    DEFAULT(默认约束)    FOREIGN KEY(外键约束)...

MYSQL中约束及修改数据表

28:约束
约束保证数据的完整性和一致性
约束分为表级约束和列级约束
约束类型包括:
    NOT NULL(非空约束)
    PRIMARY KEY(主键约束)
    UNIQUE KEY(唯一约束)
    DEFAULT(默认约束)
    FOREIGN KEY(外键约束)


29:查看数据表的存储引擎
SHOW CREATE TABLE 数据表名;



30:删除表中的数据
DELETE FROM 数据表名 WHERE 条件;


31:外键约束的参照操作(外键约束的要求解析)
外键约束保证数据一致性,完整性,实现一对多或者一对一关系
(含有外键的表称为子表)
外键约束的要求
1:父表和子表必须使用相同的存储引擎,而且禁止使用临时表
2:数据表的存储引擎只能为InnoDB
3:外键列和参照列必须具有相似的数据类型,其中数字的长度或是否有符号位必须相同,而字符的长度则可以不同
4:外键列和参照列必须创建索引。如果外键列不存在索引的话,MYSQL将自动创建索引

 

32:查看是否存在索引
SHOW INDEXES FROM provinces;
以网格的形式显示索引    
SHOW INDEXES FROM provinces\G;    



33:外键约束的参照操作
CASCADE:从父表删除或者更新且自动删除或者更新子表中匹配的行
《在两表中插入记录,必须先在父表中插入记录》
SET NULL:从父表删除或者更新行,并且设置子表中的外键列为NULL,如果使用该选项,必须保证子表列没有指定NOT NULL
RESTRICT:拒绝对父表的删除或者更新操作
NO ACTION:标准sql的关键字,在my sql中与RESTRICT相同




删除表中的数据
DELETE FROM 数据表名 WHERE 条件;

34:表级约束和列级约束
对一个数据列建立的约束,称为列级约束《实际开发中多用》
对多个数据列建立的约束,称为表级约束
列级约束既可以在列定义时声明,也可以在列定义后声明,
表级约束只能在列定义后声明。

35:修改数据表(修改,删除)
添加单列
ALTER TABLE 数据表名 ADD 列名称 列定义 [FIRST] 指定列
添加单列(不可以指定位置)
...
删除列
ALTER TABLE 数据表名 DROP 列名;

 添加主键约束(只可以有一个)

 

添加唯一约束(可以添加多个)

 添加外键约束

 添加或者删除默认约束

 

删除主键约束


删除唯一约束

查看约束的名字
SHOW INDEXES FROM 数据表的名字;


删除外键约束

查看外键名称
SHOW CREATE TABLE 数据表名;



删除索引

 
修改列定义


修改列名称

修改数据表的名字

 

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
22天前
|
SQL 存储 关系型数据库
轻松入门MySQL:玩转数据表的增、删、改、查(4)
轻松入门MySQL:玩转数据表的增、删、改、查(4)
|
3月前
|
关系型数据库 MySQL 数据库
MySQL数据库——约束
MySQL数据库——约束
|
1月前
|
SQL 关系型数据库 MySQL
【MySQL 数据库】2、MySQL 的数据控制语言、函数和约束
【MySQL 数据库】2、MySQL 的数据控制语言、函数和约束
31 0
|
22天前
|
SQL 关系型数据库 MySQL
轻松入门MySQL:深入学习数据库表管理,创建、修改、约束、建议与性能优化(3)
轻松入门MySQL:深入学习数据库表管理,创建、修改、约束、建议与性能优化(3)
|
22天前
|
存储 关系型数据库 MySQL
MySQL数据库性能大揭秘:表设计优化的高效策略(优化数据类型、增加冗余字段、拆分表以及使用非空约束)
MySQL数据库性能大揭秘:表设计优化的高效策略(优化数据类型、增加冗余字段、拆分表以及使用非空约束)
|
4月前
|
SQL 关系型数据库 MySQL
MySQL 创建数据表
MySQL 创建数据表
|
1月前
|
存储 关系型数据库 MySQL
【mysql】—— 表的约束
【mysql】—— 表的约束
|
2月前
|
存储 关系型数据库 MySQL
MySQL技能完整学习列表5、数据库操作——3、索引(Indexing)——4、约束(Constraints)
MySQL技能完整学习列表5、数据库操作——3、索引(Indexing)——4、约束(Constraints)
38 0
|
2月前
|
存储 缓存 关系型数据库
Mysql专栏 - 缓冲池补充、数据页、表空间简述
Mysql专栏 - 缓冲池补充、数据页、表空间简述
25 0
|
3月前
|
存储 SQL 关系型数据库