PART [email protected]数据库概述 (前方高能预警,大量文字原理 来袭 )
文章目录
二、 数据库
2.1.1 数据库概述和作用
数据库 Database 是指长期存储在计算机内,有组织的、可共享的数据集合。它可视为一个电子化的文件柜,用来存储电子文件,用户可以对文件中的数据进行查询、新增、更新、删除等操作。
2.1.2 数据库的特点
1)实现了数据独立性:
物理独立性和逻辑独立性
物理独立性:当数据的物理结构发生变化(包括存储结构、存取方式等)时,用户的应用程序不会改变
逻辑独立性:当数据的逻辑结构发生变化(包括新增的数据类型、改变数据间的联系等)时,用户的应用程序不会改变2)实现了数据共享
是指不用的用户能够在不同地方,使用不同计算机,通过不同数据库访问接口,读取数据时并且在同一时间、同一数据可以被多人使用。3)减少了数据冗余度
指减少大量重复数据4)实现了数据的集中控制
通过数据模型将分散的数据进行集中控制和管理5)维护了数据完整性
数据完整性是指数据的一致性、正确性、有效性和相容性。
a)数据的一致性:同一事物(如某个人)的相同属性(如性别、年龄)在数据库各表中应一致;
b)数据的有效性:在一定范围内有效。如,小学生入学年龄不能小于6岁,否则为无效数据;
c)数据的相容性:指同类数据的类型应该相容;
通过为数据库添加字段约束、记录约束和关系约束等来保持数据的完整性。6)提高了数据的可恢复性
数据库有自己的一套机制,当出现存储介质损伤、操作出现错误、系统自身故障无法读取或丢失时,可以及时发现和修复。
2.1.3 数据模型
1. 数据模型的概念(抽象)
数据模型 Data Model 是对现实世界数据的模拟和抽象,是数据库系统中用于提供信息表示和操作手段的形式框架。
2. 数据模型的类型
1)概念
数据模型:现实数据的概念化2)逻辑
数据模型:逻辑数据模型就是对概念数据模型的实化3)物理
数据模型:每一种物理数据模型对应一种逻辑数据模型
3.数据模型的三要素:数据结构(静态特征)、数据操作(动态特征)和完整性约束条件
1)数据结构
:数据结构是数据模型的基础。用于描述数据库对象的静态特征(包括数据的一些属性:数据类型、内容、性质及数据之间的联系等)2)数据操作
:用于描述数据库对象的动态特征。(包括增删改查等操作以及实现操作的语言)3)完整性约束条件
:主要描述数据结构内数据间的语法、词义、联系、数据之间的制约和依存关系。
4.数据库类型
1.层次型数据库 (了解)
其数据结构像一棵“有向树”,根节点在最上端,层次最高,子节点在下,逐层排列。
2.网状型数据库(了解)
网状结构表示实体与实体之间的多种复杂联系
3.关系型数据库(Mysql为关系型数据库)
关系模型数据库的层次结构可分为四级:数据库、表、记录、字段
1)数据库:
2)表:
3)记录:表中的一行作为一个记录(相当于数据)
4)字段:(也叫字段名)表中的一列作为一个字段(相当于属性)
2.2 数据库系统和数据库管理系统
2.2.1 概念
数据库系统 Database System简称DBS 通常由硬件、软件、数据库以及用户构成。1)硬件
:主机、存储器、显示器…2)软件
:应用程序、操作系统、数据库管理系统…3)数据库
:4)用户
:终端用户、程序开发人员、数据库管理人员…
数据库管理系统 Database Management System简称DBMS 是一种操作和管理数据库的大型软件,用于创建、使用和维护
数据库。
2.2.2 常见的关系型数据库管理系统
1)Oracle
即Oracle RDBMS,是甲骨文公司的一款关系型数据库管理系统
2)DB2
IBM公司出品的关系型数据库管理系统,具有较好的可伸缩性,可支持从大型机到单用户环境
3)SQL Server
2.2.3 产生与发展
1996年,MySQL 1.0诞生;
1996年10月,MySQL 3.11.1发布;
2005年10月,代表MySQL里程牌的版本诞生——MySQL 5.0;2009年4月20日,Oracle公司收购Sun公司;
2015年10月,MySQL 5.7 GA版本发布
2.2.4 SQL简介
结构化查询语言 Structued Query Language简称SQL是目前被广泛使用的关系型数据库标准语言,用于增删查改等操作。
SQL语句主要可分为以下4类:1)数据定义语句(DDL)
:负责定义数据结构与数据库对象的指令集。
常用语句关键字包括CREATE(创建数据库对象)、ALTER(修改)与DROP(删除)
2)数据操作语句(DML)
:负责访问数据库对象中数据的指令集,实现对数据库的基本操作。
常用关键字包括INSERT(添加)、UPDATE(修改)、DELETE(删除)和SELECT(查询)
3)数据控制语句(DCL)
:对数据库访问权进行控制的指令集,可以管理用户对数据表、预存程序、用户自定义函数等数据库对象的使用权限
常用关键字包括GRANT(授予语句权限)和REMOVE(收回权限)
4)事务处理语句
:代表一组不可分割的操作,要么全部执行、要么全部不执行
常用关键字包括BEGIN TRANSACTION(事务的开启)、COMMIT(提交)、ROLLBACK(回滚)