1、数据库概述以及常见概念的理解
存储数据用文件就可以了,为什么还要弄个数据库?
文件保存数据有以下几个缺点:
- 文件的安全性问题
- 文件不利于数据查询和管理
- 文件不利于存储海量数据
- 文件在程序中控制不方便
内存中的数据:断电后不保留
硬盘中的数据:持久化后的数据
需求出现:开发使用软件程序时,需要进行硬盘数据的管理
前提:硬盘中数据的管理要比内存中数据的管理复杂
导致:如果让程序员们完全自由地管理硬盘中的数据变得困难
所以:数据库管理软件就诞生了,由这些软件进行科学地、高效地管理硬盘中的数据
作为数据库管理软件的用户(一般理解成程序员),可以直接通过该软件方便地使用数据
**2、数据库分类 **
数据库(DBMS)大体可以分为 **关系型数据库 **和 非关系型数据库。
关系型数据库(Relational Database,
**RDBMS): **
是指采用了关系模型来组织数据的数据库。 简单来说,关系模型指的就是二维表格模型,而一个
关系型数据库就是由二维表及其之间的联系所组成的一个数据组织。
基于标准的SQL,只是内部一些实现有区别。常用的关系型数据库如:
Oracle Database
:甲骨文产品,适合大型项目,适用于做复杂的业务逻辑,如ERP、OA等企业信息系 统。收费。MySQL:属于甲骨文,不适合做复杂的业务。开源的RDBMS
。SQL Server:微软的产品,安装部署在windows server上,适用于中大型项目,收费。
**非关系型数据库: **
(了解)不规定基于SQL实现。现在更多是指NoSQL数据库,如:
基于键值对(Key-Value):如 memcached、redis
基于文档型:如 mongodb
基于列族:如 hbase
基于图型:如 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 (取消权限)
本小节完^_^
版权归原作者 王嘻嘻- 所有, 如有侵权,请联系我们删除。