前言
数据库是一类软件,有MySQL、Oracle、SQL Server、Redis等作为代表,通过数据库能够对数据进行管理和组织。在本系列中主要分析以MySQL为主的关系型数据库。
一、MySQL的基本结构
MySQL是C/S 结构的程序,即客户端-服务器。基于网络的方式进行通信,通过一个服务器接收由客户端发送的请求,并返回结果给客户端。服务器处理多个客户端发送来的请求
- 客户端(client):主动发起请求的一方。
- 服务器(Server):被动接受请求的一方。
- 请求(request):客户端给服务器发送的数据。
- 响应(response):服务器返回给客户端的数据。
MySQL是负责存储和管理数据的,基于成本和持久化存储的原因,它的数据存储在硬盘中。
二、MySQL的组成
MySQL的组成形式:数据库->数据表->行->列
- 在一个MySQL服务器上,可以有多个数据库;
- 每个数据库中可以有多个数据表;
- 每个数据表中可以有多个行;
- 每个行中可以有很多列。
三、数据库的简单使用
数据库操作
在安装了MySQL之后,登录进MySQL服务器中。由于服务器中有多个数据库,因此我们首先学习查看数据库。
命令行语句为show databases;
使用数据库之前需要创建所需要的数据库,命令行为
create database + 数据库名;
在创建数据库的时候,还可以指定字符集。命令行为“create database + 数据库名 charset 字符集”
此时可以再查询所有数据库,就可以看到新创建的数据库了。
删除数据库 命令行为
drop database 数据库名
一定要注意,数据库如果删了,那就是真的没了,是无法恢复过来的。使用和选中数据库
已经查看到数据库的列表了,接下来就是逐渐深入。即进入数据库的内部。
命令行为use 数据库名
在选中了数据库之后,接下来所进行的一系列操作都是针对该数据库的。
数据类型认知
在进入了对应数据库之后,接下来就是对该数据库中的表进行操作了。也是数据库中的核心操作。
首先数据库中保存的都是数据,而数据都是有数据类型的。下图引用“菜鸟教程”。
在数据类型中,int、float、double等数据类型与Java都是类似的,不再赘述。
数值类型
- float和double类型都存在小数,因此二者有更进阶的用法。
FLOAT(M,D) DOUBLE(M,D)
以float(3,1)为例,代表着数值小数长度为3,小数点后保留1位。DOUBLE同理。 - DECIMAL可以更加精确的存储小数,有着更高的精度。而相对应的付出的代价就是计算所花费的时间会更多。
字符串类型
在字符串中,最常用的就是varchar()类型,它属于可变长的字符串类型,其中填入的参数表示能存储的最大长度。
日期类型
在日期中,最常用的属于DATETIME,
数据库表操作
在了解完数据类型的前提后,接下来开始逐步对数据表进行操作。
前提是选中了对应的数据库!!!
- 列出当前数据库的所有表
使用的命令行为show tables;
在我使用的数据库(blog01)中,由于没有创建表,因此显示Empty。
2. 创建表
命令行为 create table 表名(列名 类型,列名 类型,……);
以学生表为例,与Java不同,表的列名应该在前面,而数据类型跟在后面。同样的,我们需要注意设计表名/列名时不能与SQL关键字重复。
查看表结构
命令行为desc 表名
删除表操作
命令行为 drop table 表名 删除操作一直是一个危险的操作,一旦执行之后是无法还原的。
上面的命令行是删除单个表,同样的我们可以将所有的表都删了。命令行为drop tables;
删除操作一定要十分慎重!!
总结
本文中简单介绍了数据库的基础操作,即对数据库、数据表进行的增删改查的基础操作。在下文中将对数据进行操作。