一、数据库介绍
1.1 数据库概念
数据库:就是存放数据的仓库
数据库(DateBase DB )时长期存储在计算机内部有结构的、大量的、共享的数据集合
长期存储:持久存储
有结构:
- 类型:数据库不仅可以存放数据,而且存放的数据还是有类型的
- 关系:存储数据与数据之间的关系
大量:大多数数据库都是文件系统的,也就是说存储在数据库中的数据实际上就是存储在磁盘的文件中
共享:多个应用可以通过数据库实现数据的共享
1.2 关系型数据库和非关系型数据库
- 关系型数据库
关系型数据库,采用了关系模型来组织数据的存储,以行和列的形式存储数据并记录数据与数据之间的关系——将数据存储在表格中,通过建立表格与表格的关联来维护数据与数据之间的关系
eg:
学生信息——学生表
班级信息——班级表
- 非关系型数据库
非关系型数据库,采用键值对的模型来存储数据,只完成数据的记录,不会记录数据与数据之间的关系。
在非关系型数据库中基于其特定的存储结构来解决一些大数据应用的难题
NoSQL(Not only SQL )数据库来指代非关系型数据库
1.3 常见的数据库产品
关系型数据库
MySQL
- MariaDB
- Percona Server
PostgreSQL
Oracle
SQL Server
Access
Sybase
达梦数据库
非关系型数据库
面向检索的列式存储 Cdumn-Oriented
- HaBase (Hadoop子系统)
- BigTable (Google)
面向高并发的缓存存储 Key-Value
- Redis
- MemcacheDB
面向海量数据访问的文档存储 Document-Oriented
- MongoDB
- CouchDB
1.4 数据库术语
- 数据库(Database DB):存储数据的集合,提供数据存储的服务
- 数据(Data):实际上指的是描述事物的符号记录
- 数据库管理系统( Database Management System DBMS):数据库管理系统,是位于用户与操作系统之间的一层数据管理软件
- 数据库管理员(Database Anministrator DBA)负责数据库创建、使用及维护的专门人员
- 数据库系统(Database System DBS) 数据库系统管理员、数据库管理系统及数据库组成的整个单元
二、MySQL数据库环境配置
MySQL下载、安装、配置、卸载,安装DBMS、使用DBMS
教程:https://blog.csdn.net/weixin_43579015/article/details/117228159
三、MySQL的管理工具
Navicat Premium16
教程:https://blog.csdn.net/jppdss/article/details/127106356
四、MySQL逻辑结构
4.1 逻辑结构
4.1 记录
五、SQL 结构化查询语言
5.1 SQL概述
SQL(Structural Query Language)结构化查询语言,用于存取、查询、更新数据以及管理关系型数据库系统
5.1.1 SQL发展
SQL是在1981年由IBM公司推出,一经推出基于其简洁的语法在数据库中得到了广泛的应用,成为主流数据库的通用规范
SQL由ANSI组织确定规范
在不同的数据库产品中遵守SQL的通用规范,但是也对SQL有一些不同的改进,形成了一些数据库的专有指令
MySQL:limit
SOLServer top
Oracle:rownum
5.1.2 SQL分类
根据SQL指令完成的数据库操作的不同,可以将SQL指令分为四类:
DDL Data Definition Language 数据定义语言
- 用于完成对数据库对象(数据库、数据表、视图、索引等)的创建、删除、修改
DMLData Manipulation Language 数据操作/操纵语言
- 用于完成对数据表中的数据的添加、删除、修改操作
- 添加:将数据存储到数据表
- 删除:将数据从数据表移除
- 修改:对数据表中的数据进行修改
DQL Data Query Language 数据查询语言
- 用于将数据表中的数据查询出来
DCL Data Control Language 数据控制语言
- 用于完成事务管理等控制性操作
5.2 SQL基本语法
在MySQL Command Line Client或者navicat等工具中都可以编写SQL指令
- SQL指令不区分大小写
- 每条SQL表达式结束之后都以;结束
- SQL关键字之间以空格进行分隔
- SQL之间可以不限制换行(可以有空格的地方就可以有换行)
5.3 DDL-数据定义语言
5.3.1 DDL-数据库操作
使用DDL语句可以创建数据库、查询数据库、修改数据库、删除数据库
查询数据库
##显示当前mysq1中的数据库列表
show databases;
##显示指定名称的数据的创建的SQL指令
show create database ;
创建数据库
##创建数据库dbName:表示创建的数据库名称,可以自定义
create database ;
#创建数据库,当指定名称的数据库不存在时执行创建
create database if not exists ;
##在创建数据库的同时指定数据库的字符集(字符集:数据存储在数据库中采用的编码格式utf8gbk)
create database character set utf8;
修改数据库修改数据库引擎、字符集
##修改数据库的字符集
alter database character set utf8;utf8 gbk
删除数据库 删除数据库时会删除当前数据库中所有的数据表以及数据表中的数据
##删除数据库
drop database ;
##如果数据库存在则删除数据库
drop database is exists ;
5.3.2 DDL-数据表操作
创建数据表
数据表实际就是一个二维的表格,一个表格是由多列组成,表格中的每一类称之为表格的一个字段