- 数据库的基本概念
- MYSQL介绍
- MySQL安装配置
- SQL语言/语句操作mysql完成数据的存储+管理操作
1. 数据库基本概念
1.1 什么是数据库
- 数据库(DataBase)是按照数据结构来组织、存储和管理数据的仓库
- 数据库是一个数据的集合
- 其本质是一个文件系统,以文件的方式,将数据保存在电脑
1.2 为什么要使用数据库
数据存储方式的比较
- 内存
- 优点:速度快
- 缺点:不能够永久保存,数据是临时状态的
- 文件
- 优点:数据是可以永久保存的
- 缺点:使用IO流操作文件,不方便
- 数据库
- 优点:
- 数据可以永久保存
- 方便存储和管理数据
- 使用统一的方式操作数据库(SQL)
- 缺点:
- 占用资源
- 有些数据库需要付费
- 优点:
1.3 数据库与数据库管理系统
- 数据库(DB):指的是按照一定结构组织的数据集合,由存储数据的文件组成。
- 数据库管理系统(DBMS):是一款管理软件。
- 它用于对数据库进行统一管理和控制,以保证数据库的安全性和完整性。用户通过DBMS 访问数据库中的数据,数据库管理员也通过 DBMS 进行数据库的维护工作。DBMS允许多个应用程序或多个用户使用不同的方法,在同一时刻或不同时刻去建立、修改和询问数据库。
- Oracle 公司的 Oracle 和 MySQL
- IBM 公司的 DB2
- Microsoft公司的Access和SQL Server
- 它用于对数据库进行统一管理和控制,以保证数据库的安全性和完整性。用户通过DBMS 访问数据库中的数据,数据库管理员也通过 DBMS 进行数据库的维护工作。DBMS允许多个应用程序或多个用户使用不同的方法,在同一时刻或不同时刻去建立、修改和询问数据库。
1.4数据库分类
- 关系型数据库(RDB Relationship DataBase)
关系型数据库是创建在关系模型基础上的数据库
典型代表有:MySQL、Oracle、Microsoft SQLServer、Access、PostgreSQL、DB2等
- 非关系型数据库(NoSQL)
非关系型数据库也被称为 NoSQL数据库,NoSQL并不是某个具体数据库,它泛指所有非关系型数据库典型代表有:Hbase、MongoDB、CouchDB等
1.5 关系型数据库主要对象
对象示例:以excel为例对比,sheet就是excel中的对象
- 表
- 表是包含数据库中所有数据的数据库对象,由行和列组成,用于组织和存储数据
- 字段
- 表中每一列称为一个字段,字段有自己的属性,如字段类型、字段大小等。其中,字段类型是字段最重要的属性,它决定了字段能够存储哪种数据
- 索引
- 索引是一个单独的、物理的数据库结构。它是依赖于表建立,在数据库中使用索引,无须对整个表进行扫描就可以找到需要的数据
- 视图
- 视图是从一张或多张表中导出的表(也称虚拟表),是用户查看数据表中数据的一种方式
2.MySQL数据库
2.1 MySQL起源与发展历程
2.2 MySQL存储引擎
存储引擎是MySQL数据库的核心、心脏、发动机,它决定了数据如何存储,查询的时候如何搜索数据,索引如何创建等等
- 什么是存储引擎
- 存储引擎其实就是对于数据库文件的一种存取机制,如何实现存储数据,如何为存储的数据建立索引以及如何更新,查询数据等技术实现的方法。
- 常用存储引擎
InnoDB:
- 1.事务处理、回滚、崩溃修复能力和多版本并发控制
- 2.自增长AUTO INCREMENT
- 3.外键(FOREIGN KEY)
InnoDB的优势在于提供了良好的事务处理、崩溃修复能力和并发控制。缺点是读写效率较差,占用的数据空间相对较大。
MyISAM :
MyISAM的优势在于占用空间小,处理速度快。缺点是不支持事务的完整性和并发性。
Memory:
1.数据全部放在内存中
2.哈希索引
4.3 DDL操作数据库
4.3.1 创建数据库
- 创建制定名称数据库
sql
create database 数据库名;
- 创建指定名称数据库,并指定字符集
sql
create database 数据库名 character set 字符集;
4.3.2 查看/选择数据库
- 切换数据库
sql
use 数据库;
- 查看当前所使用的数据库
sql
select database();
- 查看mysql中有哪些数据库
sql
show databases;
- 查看数据库定义信息
sql
show create database db1;
4.3.3 修改数据库
- 修改数据库字符集
sql
alter database 数据库名 character set 字符集;
4.3.4 删除数据库
sql
drop database 数据库名;
4.4 DDL操作数据表
一个数据库中可以n个表,表中又有字段(列),在建表的时候就需要定义好字段(指定字段属性--->字段数据类型+字段长度等)
- 常用数据类型
- int 整型
- double 浮点型
- varchar 字符类型
- date 日期类型
4.4.1 创建表
sql
create table 表名(
字段名称1 字段类型(长度),
字段名称2 字段类型 注意:最后一列不加逗号
)
4.4.2 查看表
- 查看当前数据库中所有表名
- desc 表名;
sql
show table;
4.4.3 删除表
- 删除表(从数据库中永久删除某一张表)
sql
drop table 表名;
- 判断表是否存在,存在的话就删除,不存在就不执行删除
sql
drop table if exists 表名;
4.4.4修改表
- 修改表名
- 语法
sql
rename table 旧表名 to 新表名;