目录

1、数据库概述以及常见概念的理解

2、数据库分类

3、服务器(server) 

4、客户端(client) 

5、理解计算机的三个位面/层次

6、三个层次在数据库中的表现

7、关于SQL

8、SQL和Java语言的不同

9、OLTP与OLAP的区别

10、各类语言汇总

10.1  DDL语言(⭐⭐)

10.2  DML语言(⭐⭐⭐⭐⭐

10.3  DQL 语言

10.4  DCL 语言(⭐)


1、数据库概述以及常见概念的理解

存储数据用文件就可以了,为什么还要弄个数据库 ?
文件保存数据有以下几个缺点:
  • 文件的安全性问题
  • 文件不利于数据查询和管理
  • 文件不利于存储海量数据
  • 文件在程序中控制不方便
内存中的数据:断电后不保留
硬盘中的数据:持久化后的数据
需求出现:开发使用软件程序时,需要进行硬盘数据的管理
前提:硬盘中数据的管理要比内存中数据的管理复杂
导致:如果让程序员们完全自由地管理硬盘中的数据变得困难
所以:数据库管理软件就诞生了,由这些软件进行科学地、高效地管理硬盘中的数据
           作为数据库管理软件的用户(一般理解成程序员),可以直接通过该软件方便地使用数据

2、数据库分类

数据库(DBMS)大体可以分为 关系型数据库 非关系型数据库。
关系型数据库(Relational Database, RDBMS):
是指采用了关系模型来组织数据的数据库。 简单来说,关系模型指的就是二维表格模型,而一个
关系型数据库就是由二维表及其之间的联系所组成的一个数据组织。
基于标准的 SQL ,只是内部一些实现有区别。常用的关系型数据库如:
1. Oracle Database :甲骨文产品,适合大型项目,适用于做复杂的业务逻辑,如ERP OA 等企业信息系 统。收费。
2. MySQL:属于甲骨文,不适合做复杂的业务。开源的RDBMS
3. SQL Server :微软的产品,安装部署在 windows server 上,适用于中大型项目,收费。
非关系型数据库:
(了解)不规定基于 SQL 实现。现在更多是指 NoSQL 数据库,如:
1. 基于键值对( Key-Value ):如 memcached redis
2. 基于文档型:如 mongodb
3. 基于列族:如 hbase
4. 基于图型:如 neo4j
关系型数据库与非关系型数据库的 区别
注: OLTP On-Line Transaction Processing )是指联机事务处理, OLAP On-Line Analytical
Processing )是指联机分析处理。

3、服务器(server) 

特指一类,用来提供服务(service) 的软件/程序     —— Java中的对象
比如:我们这里的MySQL服务器,提供的是数据管理服务
现实中:开饭店、空调
服务器没有让你直接的接触到:饭店的厨师

4、客户端(client) 

中介软件         —— Java中引用
比如:服务员、遥控器

5、理解计算机的三个位面/层次

6、三个层次在数据库中的表现

7、关于SQL

SQL: Structure Query Language   结构化查询语言
组织了一种统一的语言,进行结构和数据的管理

8、SQL和Java语言的不同

SQL是一种声明式的语言,结果论语言             Java是一种过程式语言

例如:学生表里找出叫某某的同学

for (每一行 : 学生表) { if (行.姓名  满足 某某){ 结果.add(该行); } }       ——Java

SELECT * FROM 学生表 WHERE 姓名 = 某某 ;          ——SQL

表中的数据,无论是增删查改,基本单位是以“行/一条记录”为基本单位

9、OLTP与OLAP的区别

OLTP (on-line transaction processing) 联机事务处理——数据库的应用
发表文章、写个作业、批改作业、短期的对数据的一列动作、增删改(快)、技术方案不同
OLAP(On-Line Analytical Processing)联机分析处理——数据仓库的应用
2022年Java22班一共写了 多少作业,完成率多少        一次涉及到很多数据
CSDN 3月份用户活跃度比 2月份增上了多少               只查询,很少修改          技术方案不同                                                                                                     功能全,慢

10、各类语言汇总

10.1  DDL语言(⭐⭐)

DDL(Data Definition Language)语句: 数据定义语言 ,主要是进行定义/改变表的结构、数据类型、表之间的链接等操作。常用的语句关键字有 CREATE、DROP、ALTER 等。如下:

CREATE TABLE 表名(
列名 数据类型 约束信息,
id  int  not null,
name  varchar(50) ,
age  int,
when  datetime  // 年月日 时分秒   数据表示 "2022-04-07 12:23:56"
when  date   // 年月日
when  time   // 时分秒
when  timestamp  // 时间戳(从1970-01-01 经过的秒数)
);

ALTER TABLE 表名;
eg:ALTER TABLE 表名 ADD 列名 数据类型;(添加一个列)
    ALTER TABLE 表名 CHANGE 列名 新列名 新数据类型;(修改列名)
    ALTER TABLE 表名 DROP 列名;

DROP TABLE 表名;
DROP DATABASE 数据库名;

10.2  DML语言(⭐⭐⭐⭐⭐)

DML(Data Manipulation Language)语句: 数据操纵语言,主要是对数据进行增加、删除、修改操作。常用的语句关键字有 INSERT、UPDATE、DELETE 等。
INSERT INTO 表名 (字段1,字段2,...) values (某值,某值,...),(某值,某值,...);

UPDATE 表名 SET 列名=新值 WHERE 限定条件;

DELETE FROM 表名 WHERE 限定条件;

10.3  DQL 语言

DQL(Data Query Language)语句:数据查询语言,主要是对数据进行查询操作。常用关键字有 SELECT、FROM、WHERE 等。

SELECT 列名 FROM 表名 WHERE 限定条件;

10.4  DCL 语言(⭐)

DCL(Data Control Language)语句: 数据控制语言,主要是用来设置/更改数据库用户权限。常用关键字有 GRANT、REVOKE 等。
一般人员很少用到DCL语句。

GRANT (授权)

REVOKE (取消权限)

本小节完^_^

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐