138 张图带你 MySQL 入门(4)

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 138 张图带你 MySQL 入门(4)

DCL 语句


DCL 语句主要是管理数据库权限的时候使用,这类操作一般是 DBA 使用的,开发人员不会使用 DCL 语句。


关于帮助文档的使用


我们一般使用 MySQL 遇到不会的或者有疑问的东西经常要去查阅网上资料,甚至可能需要去查 MySQL 官发文档,这样会耗费大量的时间和精力。


下面教你一下在 MySQL 命令行就能直接查询资料的语句


按照层次查询


可以使用 ? contents 来查询所有可供查询的分类,如下所示


? contents;


image.png


我们输入


? Account Management


可以查询具体关于权限管理的命令


image.png


比如我们想了解一下数据类型


? Data Types


image.png


然后我们想了解一下 VARCHAR 的基本定义,可以直接使用


? VARCHAR


image.png


可以看到有关于 VARCHAR 数据类型的详细信息,然后在最下面还有 MySQL 的官方文档,方便我们快速查阅。


快速查阅


在实际应用过程中,如果要快速查询某个语法时,可以使用关键字进行快速查询,比如我们使用


? show


image.png


能够快速列出一些命令


比如我们想要查阅 database 的信息,使用


SHOW CREATE DATABASE cxuandb;


image.png


MySQL 数据类型


MySQL 提供很多种数据类型来对不同的常量、变量进行区分,MySQL 中的数据类型主要是 「数值类型、日期和时间类型、字符串类型」 选择合适的数据类型进行数据的存储非常重要,在实际开发过程中,选择合适的数据类型也能够提高 SQL 性能,所以有必要认识一下这些数据类型。


数值类型


MySQL 支持所有标准的 SQL 数据类型,这些数据类型包括严格数据类型的严格数值类型,这些数据类型有


  • INTEGER
  • SMALLINT
  • DECIMAL
  • NUMERIC。


近似数值数据类型 并不用严格按照指定的数据类型进行存储,这些有


  • FLOAT
  • REAL
  • DOUBLE PRECISION


还有经过扩展之后的数据类型,它们是


  • TINYINT
  • MEDIUMINT
  • BIGINT
  • BIT


其中 INT 是 INTEGER 的缩写,DEC 是 DECIMAL 的缩写。


下面是所有数据类型的汇总


image.png


整数


在整数类型中,按照取值范围和存储方式的不同,分为


image.png


  • TINYINT ,占用 1 字节
  • SMALLINT,占用 2 字节
  • MEDIUMINT,占用 3 字节
  • INT、INTEGER,占用 4 字节
  • BIGINT,占用 8 字节


五个数据类型,如果超出类型范围的操作,会发生错误提示,所以选择合适的数据类型非常重要。


还记得我们上面的建表语句么


我们一般会在 SQL 语句的数据类型后面加上指定长度来表示数据类型许可的范围,例如


int(7)


表示 int 类型的数据最大长度为 7,如果填充不满的话会自动填满,如果不指定 int 数据类型的长度的话,默认是 int(11)


我们创建一张表来演示一下


create table test1(aId int, bId int(5));

/ 然后我们查看一下表结构 /
desc test1;


image.png


整数类型一般配合 zerofill 来使用,顾名思义,就是用 0 进行填充,也就是数字位数不够的空间使用 0 进行填充。


分别修改 test1 表中的两个字段


alter table test1 modify aId int zerofill;
alter table test1 modify bId int(5) zerofill;


然后插入两条数据,执行查询操作


image.png


如上图所示,使用zerofill 可以在数字前面使用 0 来进行填充,那么如果宽度超过指定长度后会如何显示?我们来试验一下,向 aId 和 bId 分别插入超过字符限制的数字


image.png


会发现,aId 已经插进去了,bId 也插进去了,为什么 bId 显示的是 int(5) 却能够插入 7 位长度的数值呢?


所有的整数都有一个可选属性 UNSIGNED(无符号),如果需要在字段里面保存非负数或者是需要较大上限值时,可以使用此选项,它的取值范围是正常值的下限取 0 ,上限取原值的 2 倍。如果一个列为 zerofill ,会自动为该列添加 UNSIGNED 属性。


除此之外,整数还有一个类型就是 AUTO_INCREMENT,在需要产生唯一标识符或者顺序值时,可利用此属性,这个属性只用于整数字符。一个表中最多只有一个

AUTO_INCREMENT 属性,一般用于自增主键,而且 NOT NULL,并且是 PRIMARY KEYUNIQUE 的,主键必须保证唯一性而且不为空。






            </div>
相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
3月前
|
SQL 关系型数据库 MySQL
Mysql从入门到精通——Mysql知识点总结(基础篇)
Mysql从入门到精通——Mysql知识点总结(基础篇)
|
11月前
|
SQL 关系型数据库 MySQL
MySQL零基础详细讲解(基础部分)
MySQL是一种关系型数据库管理系统(RDBMS),广泛用于储存和管理大量结构化数据。它是一个开源的数据库系统,由瑞典公司MySQL AB开发,后被Sun Microsystems收购,随后又被Oracle收购。MySQL以其高性能、稳定性和可靠性而闻名,并且易于使用和管理。它适用于各种规模的应用程序,从个人网站到大型企业级系统。MySQL使用SQL(Structured Query Language,结构化查询语言)来管理和查询数据,支持多个操作系统,并提供了许多客户端和编程语言的接口。无论是用于开发Web应用程序、商业应用程序还是其他类型的应用程序,MySQL都是一个常用的选择。
61 0
MySQL零基础详细讲解(基础部分)
|
SQL Oracle 关系型数据库
138 张图带你 MySQL 入门(2)
138 张图带你 MySQL 入门(2)
96 0
138 张图带你 MySQL 入门(2)
|
存储 SQL 缓存
47 张图带你 MySQL 进阶!!!(一)
主要介绍了基本的 SQL 命令、数据类型和函数,在具备以上知识后,你就可以进行 MySQL 的开发工作了,但是如果要成为一个合格的开发人员,你还要具备一些更高级的技能,下面我们就来探讨一下 MySQL 都需要哪些高级的技能
131 0
47 张图带你 MySQL 进阶!!!(一)
|
存储 SQL 安全
138 张图带你 MySQL 入门(6)
138 张图带你 MySQL 入门(6)
65 0
138 张图带你 MySQL 入门(6)
|
SQL 关系型数据库 MySQL
138 张图带你 MySQL 入门(3)
138 张图带你 MySQL 入门(3)
76 0
138 张图带你 MySQL 入门(3)
|
SQL 关系型数据库 MySQL
138 张图带你 MySQL 入门(5)
138 张图带你 MySQL 入门(5)
75 0
138 张图带你 MySQL 入门(5)
|
SQL 存储 关系型数据库
138 张图带你 MySQL 入门(1)
138 张图带你 MySQL 入门(1)
118 0
138 张图带你 MySQL 入门(1)
|
存储 SQL 算法
47 张图带你 MySQL 进阶!!!(二)
主要介绍了基本的 SQL 命令、数据类型和函数,在具备以上知识后,你就可以进行 MySQL 的开发工作了,但是如果要成为一个合格的开发人员,你还要具备一些更高级的技能,下面我们就来探讨一下 MySQL 都需要哪些高级的技能
73 0
47 张图带你 MySQL 进阶!!!(二)
|
存储 SQL 关系型数据库
47 张图带你 MySQL 进阶!!!(三)
主要介绍了基本的 SQL 命令、数据类型和函数,在具备以上知识后,你就可以进行 MySQL 的开发工作了,但是如果要成为一个合格的开发人员,你还要具备一些更高级的技能,下面我们就来探讨一下 MySQL 都需要哪些高级的技能
80 0
47 张图带你 MySQL 进阶!!!(三)

推荐镜像

更多