MySQL数据库的基础:逻辑集合数据库与表的基础操作

本篇会加入个人的所谓鱼式疯言

❤️❤️❤️鱼式疯言:❤️❤️❤️此疯言非彼疯言

而是理解过并总结出来通俗易懂的大白话,

小编会尽可能的在每个概念后插入鱼式疯言,帮助大家理解的.

🤭🤭🤭可能说的不是那么严谨.但小编初心是能让更多人能接受我们这个概念 !!!

前言

在上一篇中,我们先如何学习数据库的 方法论 展开了激励的讨论, 而从本篇文章开始。小编将带着小伙伴们一起上满满的干货 ,本篇文章的目标主要是掌握对于 数据库 这个 逻辑集合 的 理解和基本的使用的重点详解 💖 💖 💖 💖

目录

  1. 数据库的基本操作

  2. 常用的数据类型

  3. 表的操作

一. 数据库的基本操作

在讲解数据库之前,小编在这里得解释一个概念

就是我们之前谈到的像 MySQLOracle 这样的 数据库 ,本质上来说他们都是一种 软件

而我们今天的谈及的 数据库 ,本质上是在数据库软件上 组织数据 的一种 "数据集合"

而我们要操作这些数据库,就需要用到我们 MySQL 中的 SQL 语句 , 来进行对 数据库数据库的表数据库的各种组成的属性 进行操作。

1. 查看当前数据库

<1>. SQL语句

sql 复制代码
show databases;

<2>. 语句分析

就像这样,我们的 SQL 语句, 是每执行完 一条语句 ,就会出现 一个对应结果

这和我们的 学过的 C语言 , Java这样的编程语言 ,画风是完全不相同的,他们是需要多条语句联合去搭配,才能实现我们的功能,但我们的 SQL 却不用

show 就是我们 查看当前数据库 的关键标志,

<3>. 注意事项 :

  1. 在我们 SQL 中,是 不区分大小写的 , 如果小伙伴们有这样
sql 复制代码
SHOW DATABASES ;

这样子也是可以的, 但小编是习惯来会用小写 SQL 的来 书写和讲解
2. 还有一点要注意的是,我们的 SQL每一个关键字(单词) 之间用 空格隔开 ,当我们 输完一个SQL 语句时, 必须用 英文的分号 结束

鱼式疯言

补充

  1. 像我们学过的 C语言Java 这样的编程语言一样, ; 一般为一条语句的 结束标志
  2. 这里还要注意咯,我们的 database 后面是要带上 s

2. 创建数据库

<1>. SQL 语句

sql 复制代码
create database [if not exists] 数据库名  charset utf8;

<2>. 语句分析

首先创建 数据库 用到的第一个 关键性的关键字 就是我们的 create + database 来创建
然后 [] 是 默认可写可不写的, 如果没写,当该 数据库存在 时,就会 报错, 如果 写了就不会
最后那个 charset 就是 指定特定字符集 的关键字, 那么什么是字符集呢 ? ? ?
字符集 本质上就是一种编码方案, 是用来识别不同语言文字(中文,英文,韩文,日文...) 一种特点的规则 。

我们需要指定 utf8 这样的字符集 来识别我们可能要用到的中文等... 多种表示的语言文字

像上面这样就是我们创建数据库的基本操作

而还有一些细枝末节的,是有些复杂,不常用, 几乎在面试不会出现的,小编在这里就不介绍了,感兴趣的小伙伴可以自己去了解哦

<3>. 注意事项

这里创建数据库名不能和 关键字重复,例如

就会报错

鱼式疯言

小细节说明

  1. 这是创建数据库成功的提示信息。其中 1 row affected 代表的含义就是 1行收影响

() 中代表的就是我们 执行了多少秒 的含义

  1. 这里小编最想要讲解的就是我们的 set 这个含义并不是平常理解的 设置 ,还是 "集合" 的含义.
    就像我们 Java的数据结构 的,也有 HashSetTreeSet 这两个类,同时也代表 集合 的含义

而我们的集合有两大特性:

1) 无序

2) 唯一

3. 使用(指定)数据库

<1>. SQL语句

sql 复制代码
use  数据库名;

<2>. 语句分析

使用数据库的标志关键字就是我们的 use

当我们使用数据库 后, 就可以对当前使用的数据库 进行相对应的 数据表 操作(下篇文章重点讲解)

关于数据表,我们是这样梳理的

数据库: 数据表: 数据列: 数据行: 一个个数据
所以我们才称为 MySQL 是一种 关系型数据库

<3>. 注意事项

  1. 必须是在已有的数据库下使用该 数据库

否则就会提示这样的报错消息,代表数据库不存在。

4. 删除数据库

<1>. SQL语句

sql 复制代码
drop database  [if exists] 数据库名 ;

<2>. 语句分析

  1. drop + database 是 删除数据库 的标志关键字
  2. [] 是默认可写可不写的,当数据库不存在式,如果 删除该数据库就会报错 ,加上就不会 。

<3>. 注意事项

数据库的删除 是一种 危险操作 ,当小伙伴用 drop database 语句时 , 一定要慎重再慎重 哦,

可以设想下,如果我们删除的是 银行的数据库 ,那后果可是 不堪设想 的 。

二. 常用的数据类型

我们 学过的 C语言Java 都用各自的 数据类型 ,而我们的 MySQL 同样也不会落后, 今天小编将带着小伙伴们讲解常用的 数据类型 .

1. 整型和浮点型

对于整型来说,我们一般使用 int 类型即可,如果 数据很大,换成 bigint 也无妨

小编在这里重点想说明的是 double(M,D)decimal(M,D) 的区别

首先: M 代表 长度,D代表 小数点 后的位数
举个栗子: 34.76 ==> M = 4 , D = 2
但是 decimal 是相对于 double 更加精确的 浮点数 数据类型, 但是运行速度相对 更慢点

鱼式疯言

这里小编要说点小细节:

我们几乎都很少用 无符号整型 这样的 数据类型 ,所以小编在这里就没有说明了 ! ! !

2. 字符串类型

重点说明:

varchar(SIZE)char(SIZE) 的区别 :

varchar 和 char 的区别:

size 单位指的是: 字符

varchar 中的 size 代表是 最大长度,是实际长度 <= size ,就是说可以 变长变短 的一种 字符串类型
char 中的 size 中的代表 实际长度 , 也就是说 实际长度 = size , 无论存储的 小于 size 还是 等于 size 。(大于size是不允许的)

举个栗子 :

如果存储的是字符串 '1234'

varchar(20) ---> 实际存储的是 4个字符 的大小
char(20) ---> 实际存储的是 20 个字符 的大小

3. 日期类型

对于 日期的数据类型 ,小编推荐是使用最常用 datetime 就能解决日期类型。

这时小爱同学就有问题了,

我们学习了这些常用的数据类型有什么用呢 ?

主要是为了我们 数据表的结构 的创建而服务的,下面让小编细细道来 💖 💖 💖 💖

三. 数据表的操作

在说进行数据表操作之前, 有件很重要的前提必须和小伙伴们说下 🤔 🤔 🤔 🤔

前面我们提及过,由于我们的 数据表 是在 不同数据库 下的,所以当我们要操作某个表时,就必须使用对应数据库。

所以我们第一条 SQL 语句 ,就表现先用 use 数据库名 ;·指定数据库 ,才能使用我们的 数据表

1. 查看当前表

<1>. SQL语句

sql 复制代码
show tables ;

<2>. 语句分析

和我们查看当前数据库一样,只要把我们的 之前查看 数据库databases 改成 tables 即可 !!!

<3>. 注意事项

虽然这里只是把 databases 改成 tables , 但我们一定是在前面 要用 use 数据库名; 来指定当前 数据库

否则就会看到如下这样

2. 查看表结构

<1>. SQL语句

sql 复制代码
 desc  表名 ;

关于表结构的说明 :

这里说的 字段 本质上就是我们表中的 (其他的属性,小编在后面会 一 一 讲解哦)

<2>. 语句分析

查看表结构的 标识关键字 就是我们的 desc , 后面只需要接当前 数据库的表名 即可。

<3>. 注意事项

只有在当前数据库下已有的表才能用 classes , 而当前指定的 数据库不存在的表 ,用 desc 就会报错

2. 创建表

<1>. SQL语句

sql 复制代码
create table  表名 (列名1  数据类型1    [comment    注释], 
 列名2  数据类型2   [comment  注释] ..... );

<2>. 语句分析

建表的标识关键字就是 create table 后面 跟上表名() 进行建表操作 。
我们要注意的时, 每一个字段(列) 的数据类型是 不太一样 的,我们要根据 实际的场景 来选定合适的数据类型
建表的每一个字段(列) 之间是用 来隔开的, 当处于最后一个字段时, 我们就不需要用 直接用 ) ; 即可创建语句

<3>. 注意事项

当我们指定 特定的列 的时候,一定要 指定特点的长度 ,比如 varchar(SIZE)size 的 长度不可以太小,decimal(M,D) 中 , MD 的长度也不可以太小 。

鱼式疯言

[] 内是注释 (可写可不写),当我们需要给一些注释,用来后续的程序员来读我们的字段时,可以加上哦 💥 💥💥 💥

3. 删除表

<1>. SQL 语句

sql 复制代码
drop  table  [if exists ]   表名 ;

<2>. 语句分析

删除表 的标识关键字 drop table 后面 加上对应 表名 即可 。
[] 是可加可不加的,像我们 数据库删除表 一样 , 如果该表不存在,加上这个不会报错

<3>. 注意事项

删除表操作也是 非常危险 的操作,小伙伴一定要 三思而后行 哦 。
重要的比如 银行的数据表 是绝对 不能乱删 的哦 。

总结

在本篇文章中,主要学习了

  1. 操作数据库
  • 查看当前数据库
sql 复制代码
show  databases;
  • 创建数据库
sql 复制代码
create database [if not exists]  数据库名 ;
  • 指定数据库
sql 复制代码
use 数据库名;
  • 删除数据库
sql 复制代码
drop database [if exists]  数据库名 ;
  1. 常用数据类型
  • 整型类型

int , bigint

  • 字符串类型

char(size) 和 varchar(size)

  • 浮点数类型

double(M,D) 和 decimal (M,D)

  • 日期类型
sql 复制代码
  datetime
  1. 表操作
  • 查看当前表
sql 复制代码
show tables;
  • 查看表结构
sql 复制代码
desc 表名; 
  • 创建表
sql 复制代码
create table  表名 (列名1  数据类型1    [comment    注释], 
 列名2  数据类型2   [comment  注释] ..... );
  • [ ] 删除表
sql 复制代码
drop  table  [if exists ]   表名 ;

如果觉得小编写的还不错的咱可支持 三连 下 (定有回访哦) , 不妥当的咱请评论区 指正
希望我的文章能给各位宝子们带来哪怕一点点的收获就是 小编创作 的最大 动力 💖 💖 💖

相关推荐
南城花随雪。6 分钟前
硬盘(HDD)与固态硬盘(SSD)详细解读
数据库
儿时可乖了7 分钟前
使用 Java 操作 SQLite 数据库
java·数据库·sqlite
懒是一种态度9 分钟前
Golang 调用 mongodb 的函数
数据库·mongodb·golang
天海华兮11 分钟前
mysql 去重 补全 取出重复 变量 函数 和存储过程
数据库·mysql
gma9991 小时前
Etcd 框架
数据库·etcd
爱吃青椒不爱吃西红柿‍️1 小时前
华为ASP与CSP是什么?
服务器·前端·数据库
Yz98762 小时前
hive的存储格式
大数据·数据库·数据仓库·hive·hadoop·数据库开发
武子康2 小时前
大数据-231 离线数仓 - DWS 层、ADS 层的创建 Hive 执行脚本
java·大数据·数据仓库·hive·hadoop·mysql
黑色叉腰丶大魔王2 小时前
《MySQL 数据库备份与恢复》
mysql
苏-言2 小时前
Spring IOC实战指南:从零到一的构建过程
java·数据库·spring