复习之路如下所示,希望能帮助到需要的小伙伴,程序员之路,我们要互帮互助
一、为什么要学习数据库
二、数据库的相关概念
DBMS、DB、SQL
三、数据库存储数据的特点
四、初始MySQL
MySQL产品的介绍
MySQL产品的安装 ★
MySQL服务的启动和停止 ★
MySQL服务的登录和退出 ★
MySQL的常见命令和语法规范
五、DDL语言的学习
库和表的管理 √
常见数据类型介绍 √
常见约束 √
六、DML语言的学习 ★
插入语句
修改语句
删除语句
七、DQL语言的学习 ★
基础查询 ★
条件查询 ★
排序查询 ★
常见函数 ★
分组函数 ★
分组查询 ★
连接查询 ★
子查询 √
分页查询 ★
union联合查询 √
八、DCL语言的学习
事务和事务处理 √
用户权限管理 √
九、视图的讲解 √
十一、索引的讲解 √
十二、存储过程和函数
十三、流程控制结构
为什么要学习数据库
数据持久化可以使用文件存储,表格、csv存储等,但是
涉及到大量数据得时候检索、修改,却又、维护和管理都及其不方便
数据库的好处
1.持久化数据到本地
2.可以实现结构化存储、查询,方便数据得增删改查和管理
数据库相关概念(什么是数据库)
1、DB(Database):数据库<存储数据得仓库>, 保存数据的容器
2、DBMS(Database Managermentt System):数据库管理系统,
又称为数据库软件(产品),数据库是通过DBMS创建和操作得
容器,用于管理DB中的数据
常见得数据库管理系统:Mysql、Oracle、sql servcer等
3、SQL(Structured Query Language):结构化查询语言,
用于和DBMS通信的语言
- 不是某个特定的数据库供应商专有得语言,几乎所有
得DBMS都支持SQL
- 是一门简单易学得语言,可以对数据库进行复杂、高
级得操作
数据库存储数据的特点
1、将数据放到表中,表再放到库中
2、一个数据库中可以有多个表,每个表都有一个的名字,
用来标识自己。表名具有唯一性。
3、表具有一些特性,这些特性定义了数据在表中如何存
储,类似java中 “类”的设计。
4、表由列组成,我们也称为字段。所有表都是由一个或
多个列组成的,每一列类似java 中的”属性”
5、表中的数据是按行存储的,每一行类似于java中的“对象”。
MySQL产品的介绍和安装
MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司
开发,目前属于Oracle公司。
MySQL是一种关联数据库管理系统,将数据保存在不同的表
中,而不是将所有数据放在一个大仓库内,这样就增加了速
度并提高了灵活性。
- Mysql是开源的,所以你不需要支付额外的费用。
- Mysql是可以定制的,你可以修改源码来开发自己的Mysql系统。
- MySQL使用标准的SQL数据语言形式。
- Mysql可以允许于多个系统上,并且支持多种语言。这些编程语言
包括C、C++、Python、Java、Perl、PHP等。
- MySQL支持大型数据库,支持5000万条记录的数据仓库,32位
系统表文件最大可支持4GB,64位系统支持最大的表文件为8TB。
按照Windowns安装流程,安装mysql之后,就可以启动mysql,和连接mysql客户端
MySQL服务的启动和停止
方式一:计算机——右击管理——服务
方式二:通过管理员身份运行
net start 服务名(启动服务)
net stop 服务名(停止服务)
MySQL服务的登录和退出
通过windows自带的CMD客户端
登录:
mysql 【-h主机名 -P端口号 】-u用户名 -p密码
退出:
exit
或quit
或ctrl+C
注意: windowns下连接mysql客户端出现
’mysql’ 不是内部或外部命令,也不是可运行的程序 或批处理文件。提示进行如下步骤:
设置一下环境变量:
1.右击我的电脑——>属性——>高级系统设置——>环境变量
——>系统变量——>Path里添加"C:\Program Files\MySQL\
MySQL Server 5.7\bin"<就是mysql得安装目录>,实际上就
是mysql.exe的文件夹。添加完后,确定就好。
2.CMD运行,在次尝试连接mysql客户端
MySQL的常见命令
1.查看当前所有的数据库
show databases;
2.打开指定的库
use 库名
select database(); 查看当前所再得数据库
3.查看当前库的所有表
show tables;
4.查看其它库的所有表
show tables from 库名;
5.创建表
create table 表名(
列名 列类型,
列名 列类型,
.....
);
6.查看表结构
desc 表名;
7.查看数据库得创建语句
show create database 数据库名称
8.查看mysql的版本
方式一:登录到mysql服务端
select version();
方式二:没有登录到mysql服务端
mysql --version
或
mysql --V
MySQL的语法规范
1.不区分大小写,但建议关键字大写,表名、列名小写
2.每条命令用分号结尾或者\g
3.每条命令根据需要,可以进行缩进 或换行
4.字段得名称不要太长,不要包含空格
5.数据库中得字段名不要和数据库系统得某些关键字冲突
6.注释
单行注释:#注释文字
单行注释:-- 注释文字
多行注释:/* 注释文字 */
SQL的语言分类
DDL(Data Define Languge):数据定义语言
create、drop、alter,定义数据库
DML (Data Manipulate Language):数据操作语言
insert 、update、delete、select
- DQL(Data Query Language):数据查询语言
select
DCL(Data Control Language):数据库控制语言,
权限、事务等控制语句
- TCL(Transaction Control Language):事务控制语言
commit、rollback
DDL语句 库和表的管理
库的管理:
(1) 查看数据库
show databases;
(2) 创建库
create database 库名;
(3) 查看数据库得创建语句
show create database 库名;
(4) 切换数据库
use 库名;
(5) 查看当前所在得数据库
select database();
(6) 查看数据库下得table
show tables from 库名;
show tables;
(7) 删除库
drop database 库名;
表的管理、操作:
常数据类型
整型:
int 4字节、bigint 8字节
例如:
id int(8) => int(11)
int(M):指的是宽度,如果单独使用没有意义,需要配合使用
id int(8) zerofill unsigned: 1 -> 00000001
小数:
float,double
可以指定宽度和精度
double