【MySQL】数据库的基本操作

前言

今天这篇博客我们将介绍 MySQL 数据库的数据类型,数据库的简单操作,表的基础操作


1. 常用的数据类型

MySQL 数据库提供了很多数据类型,如数值(整数和浮点数)类型、字符串类型、日期和时间类型、二进制类型等等。我们重点介绍前三类常用类型


1.1 数值类型

数值类型分为整型和浮点型

数据类型字节数说明解释/范围(分为有符号和无符号)
TINYINT1非常小的整数-128~127 0~255
SMALLINT2较小的整数-32768~32767 0~65535
INT4标准整数-2147483648~2147483647 0~4294967295
BIGINT8大整数-9223372036854775808~9223372036854775807 0~18446744073709551615
FLOAT(M,D)4单精度浮点数M 指定小数总长度,D 指定小数点后的位数(会发生精度丢失)
DOUBLE(M,D)8双精度浮点数M 指定小数总长度,D 指定小数点后的位数(会发生精度丢失)
DECIMAL(M,D)M+2高精度浮点数同上,精度更高,但运算速度变慢,占用空间变大

补充:

  1. 尽量不要使用无符号类型。比如对于int类型可能存不下的数据,不要试着用 int unsigned 来存储,可能它也无法存下,所以应该转使用 bigint 类型
  2. 对于浮点数类型,它跟我们之前学的有一点不一样,在 MySQL 中我们可以框定好小数的位数和小数点后的位数。举个例子:double(3,1),这个类型表示小数的总位数是 3,小数点后的位数是 1,那 “99.5”,“10.0”,“20.3” 这些都是符合规则的;但如果存入的是 “6.2345” 这些非法数据,就会被四舍五入到 6.2,数据库里实际存储的值就是 6.2,这样就会造成精度丢失

1.2 字符串类型

数据类型字节数说明范围
CHAR(M)M固定长度0~255
VARCHAR(M)实际长度+1可变长度0~65535

补充:

  1. CHAR 类型一般需要预先定义字符串长度。如果不指定(M),则表示长度默认是1个字符

  2. VARCHAR 定义时, 必须指定长度 M,否则会报错;而且使用 VARCHAR 时需要额外的空间来存储字符串的实际长度(最多需要使用2个字节)

  3. 关于两者如何选择:

    • 如果数据长度几乎不变,或者变化很小,使用 CHAR 类型可以提高性能和存储效率
    • 如果数据长度变化较大,或者需要存储非常长的字符串,使用 VARCHAR 类型更为合适
    • 在索引操作中,CHAR 类型由于其固定长度的特性,可能会提供更好的性能

1.3 日期类型

数据类型字节数日期格式零值范围
YEAR1YYYY00001901~2155
DATE4YYYY-MM-DD0000-00-001000-01-01~9999-12-31
TIME3HH:MM:SS00:00:00-838:59:59~ 838:59:59
DATETIME8YYYY-MM-DD HH:MM:SS0000-00-00 00:00:001000-01-01 00:00:00~9999-12-31 23:59:59
TIMESTAMP4YYYY-MM-DD HH:MM:SS0000-00-00 00:00:001970-01-01 00:00:01~2038-01-19 03:14:07

对于以上三种数据类型,我们最常使用的就几种:

  1. 整数类型:INT,BIGINT
  2. 浮点数类型:DOUBLE,DECIMAL
  3. 字符串类型:VARCHAR
  4. 时间日期类型:DATETIME

当然,对于使用哪种类型,还是要看实际开发中的业务需求,使用合适的类型往往能起到更好的效果


操作的前情提要

  1. SQL 的所有语句都是要以英文分号结尾,中途可以换行,遇到分号才会算作执行结束

  2. SQL 是大小不写不敏感的,在展示语法格式的时候博主会使用大写,但在展示具体操作的时候博主会使用小写,方便大家阅读

  3. 注释格式:

   --        单行注释
   #         单行注释
   /* …… */  多行注释
  1. 如果数据库名或者表名或者字段名是关键字,则需要使用 ``
`ORDER` 

2. 数据库的操作

2.1 创建数据库

CREATE DATABASE [IF NOT EXISTS] 数据库名;
  • 这个 [ ] 里的内容是可选项,表示的是 “如果没有存在该数据库就创建,如果重名就不创建”
  • 大写的表示关键词

示例:

在这里插入图片描述

当我们要在数据库里使用中文时,得添加 utf8mb4 字符集,否则中文无法显示,语法格式如下:

CREATE DATABASE [IF NOT EXISTS] 数据库名 CHARACTER SET utf8mb4;

示例:

在这里插入图片描述


2.2 显示当前的数据库

SHOW DATABASES;

示例:

在这里插入图片描述

用红线划出来的四个数据库是系统自带的,剩下的就都是用户自己创建的


2.3 使用数据库

USE 数据库名;

示例:

在这里插入图片描述

我们想操作数据库之前必须先使用 USE 数据库名,指定我们想要操作哪个数据库,否则会报错

示例:

在这里插入图片描述


2.4 删除数据库

DROP DATABASE [IF EXISTS] 数据库名;
  • 这里的 [ ] 表示如果存在该数据库就删除
  • 删除数据库是一件非常危险的操作,删除之后里面的表和数据也会被一起删除,因此要谨慎再谨慎

示例:

在这里插入图片描述


3. 数据表的操作

当我们需要操作数据库中的表时,需要先使用数据库,也就是 USE 数据库名


3.1 创建表

CREATE TABLE 表名 (
	字段名 字段类型;
	字段名 字段类型;
	字段名 字段类型;
	......
);

我们可以在后面加上 comment 增加字段说明

示例:

create table student (
	id int,
	name varchar(20) comment '姓名',
	age int,
	password varchar(20) comment '密码'
);

在这里插入图片描述


3.2 查看表的结构

DESC 表名;

示例:

在这里插入图片描述

  • 一个表会有很多行,每一行也会有很多列,每一列就是一个字段
  • 关于索引、默认值等等我们在后面的博客中会一一介绍,暂时掌握怎么查看表的结构就 OK

3.3 删除表

DROP TABLE [IF EXISTS] 表名;

在这里插入图片描述

这样就把表给删除掉了,同样删除表的操作也是十分危险的,需要慎重


结语

今天我们简单介绍了一下 MySQL 的数据类型、数据库的基本操作、表的基本操作。我们需要重点掌握对表的操作,尤其是如何查询表中的数据,这部分内容我们会在下一篇博客中详细介绍,敬请期待吧~

希望大家能喜欢这篇文章,有总结不到位的地方还请多多谅解。若有纰漏,希望大佬们能够在私信或评论区指正,博主会及时改正,共同进步!

  • 29
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值