数据库的基础概念与方法
此部分了解一些基础的概念,理解了概念才能更好的操作,对吧!!!有错误还望大佬指出来哦。
一、基础概念(好好背哦)
数据(Data):描述事物的符号记录成为数据。数据有多种表现形式,可以是文本数据(数字、字母等),也可以是多媒体数据(视频、音频等)。
数据库(DataBase,DB):长期存储于计算机内的、有组织的、可共享的数据集合。
数据库管理系统(DataBase Management System,DBMS):位于操作系统与用户之间的一层数据管理软件,是数据库系统的核心。DBMS按照一定的数据模型科学地组织和存储数据,能够高效地获取数据,提供安全性和完整性等统一管理机制,能有效的管理和维护数据。
其主要功能包括以下5个:
1.数据定义:DBMS提供数据定义语言(Data Definition Language,DDL)。用户可通过DDL对数据库中的数据对象进行定义。
2. 数据操纵:DBMS提供数据操纵语言(Data Manipulation Language,DML)。使用DML能操纵数据,实现对数据库的基本操作。例如查询、删除、插入和修改等。
3. 数据库的建立与维护:数据库的建立和维护功能主要包括数据库初始数据的输入、转换、数据库的转储、恢复、数据库的重组织功能和性能监视、分析等。
4. 数据库的运行管理:数据库的建立、运用和维护等工作由DBMS统一管理、统一控制,以保证数据的安全性、完整性、多用户对数据的并发使用及发生故障后的系统恢复。
5. 提供方便、有效存取数据库信息的接口和工具:程序猿可通过程序开发工具与数据库接口编写数据库应用程序。数据库的管理员(DataBase Administrator,DBA)可通过相应的软件工具对数据库进行管理。
数据库系统(DataBase System,DBS):引入了数据库技术的计算机系统。一般简称为数据库。
一个完整的数据库系统包括数据库、支持数据库的硬件、数据库管理系统及相关软件、数据库管理员和用户。
数据库系统的特点:数据结构化、数据冗余度小、数据共享性好、数据独立性高、数据库保护。
1.数据结构化:这里所说的“整体”结构化,是指在数据库中的数据不再仅针对某个应用,而是面向全组织;不仅数据内部是结构化,而且整体式结构化,数据之间有联系。
2.数据冗余度小:DBS从整体和全局上看待和描述数据,数据不仅面向某个应用,而且面向全局应用,可大大减少数据冗余,节省存储空间。
3.数据共享性:因为数据是面向整体的,所以数据可以被多个用户、多个应用程序共享使用。
4数据独立性:数据独立性包括数据的物理独立性和逻辑独立性。
物理独立性是指数据在磁盘上的数据库中如何存储是由DBMS管理的,用户程序不需要了解,应用程序要处理的只是数据的逻辑结构,这样一来当数据的物理存储结构改变时,用户的程序不用改变。
逻辑独立性是指用户的应用程序与数据库的逻辑结构是相互独立的,也就是说,数据的逻辑结构改变了,用户程序也可以不改变。
5.数据库保护:DBMS具有对数据的统一管理和控制功能,主要包括数据的安全性、完整性、并发控制与故障恢复等。
数据库系统的结构:从数据库用户视图的视角来看,数据库系统通常采用三级模式结构,这是数据库管理系统内部的系统结构;若从数据库管理系统的角度来看,数据库系统的结构分为集中式结构、分布式结构、客户/服务器结构和并行结构,这是数据库系统的外部体系结构;若从数据库系统应用的角度来看,目前数据系统常见的结构有客户/服务器结构和浏览器/服务器结构,这是数据库系统整体的运行结构。
数据模型:数据特征的抽象表述。分为概念模型、逻辑模型和层次模型。
1.概念模型:用来描述现实世界的事物,与具体的计算机系统无关。通常在设计数据库时用于表示现实世界的各种事物及联系。典型的概念模型是实体联系(Entity-Relationship,E-R)模型。
实体指客官存在并可相互区别的事物,可以是实际的事物,也可以是抽象的概念。
属性是实体的某种特征,比如衣服的尺码。一个实体可以由多个属性描述,如衣服是白色、xl码。
联系指现实世界中事物内部的特征及各事物之间的关系,即实体各属性之间的联系。一般有一对一(1:1)、一对多(1:n)、多对多(m:n) 3种类型。
实体-联系图(E-R图):用来描述实体、属性、联系。实体用矩形表示,在框内写实体名;属性用椭圆形表示,圈内写属性名;联系用菱形表示,菱形内写联系名,并用直线与实体和属性相连,直线上写明联系的类型。
2.逻辑模型:DBMS所支持的数据模型。主要的逻辑模型有层次模型、网状模型、关系模型、面向对象模型。
层次模型:数据库系统最早使用的一种数据模型,其数据结构是一棵“有向树”,树的每一个结点对应一个记录集。特点是有且仅有一个结点没有父节点,称为根结点;其他结点有且仅有一个父结点。
网状模型:以网状结构表示实体与实体之间的联系。是层次模型的扩展,允许结点有多于一个父结点,并可以有一个以上的结点没有父结点。
关系模型:用二维表结构来表示实体及实体间联系的模型,并以二维表格的形式组织数据库中的数据。
面向对象模型:面向对象方法与数据库相结合所构成的数据模型称为面向对象模型。面向对象模型既是概念模型又是逻辑模型。
3.物理模型:用于描述数据在存储介质上的组织结构。不但由DBMS的设计决定,而且与操作系统、计算机硬件密切相关。
二、关系型数据库(应用最广泛的数据库)
关系型数据库以关系模型作为逻辑数据模型,采用关系作为数据的组织方式,具有较高的数据独立性,当数据的存储结构发生变化时,不会影响应用程序。
关系的数据结构就是二维表。
表(Table):也称为关系,由表名、构成表的各个列及若干行数据组成。每个表有一个唯一的表名,表中每一行数据描述一条记录。
列(Field):称作字段或属性。每一列表示实体的一个属性,具有相同的数据类型。
行(Row):表中的数据是按照行存储的,行也称为元祖(Tuple)或记录(Record)。表中的一行即为一个元祖,每行由若干字段值组成,每个字段值描述该对象的一个属性或特征。
关键字(Key):也称作码或主键,关键字是表中能够唯一确定一个元祖的属性或属性组。
候选键:如果一个表中具有多个能够唯一标识一个元祖的属性,则这些属性称为候选键。
外部关键字(Foreign Key):也称为外键。如果一个表的一个字段不是本表的主键或候选键,而是另外一个表的主键或候选键,则该字段称为外键。
域(Domain):属性的取值范围。
数据类型:限制该列中存储的数据。每个字段表示同一类信息,具有相同的数据类型。
关系数据库的基本性质:
1.每一项都必须是不可再分的数据项。
2.表的任意两条记录不能完全相同。
3.表中的每一列是同一数据类型,并且列的值来自相同的域。
4.不同行或列的顺序可以任意交换。
三、设计数据库的步骤
步骤:分为六个阶段。需求分析阶段、概念结构设计、逻辑结构设计、物理结构设计、数据库实施、数据库运维。
1、需求分析阶段:就是搞清楚用户的需求,涉及的数据、处理要求等等。是整个设计工作的基础。
2、概念结构设计:通过对用户需求数据的分析和综合,形成独立于具体的DBMS的概念模型。比如,画E-R图。
3、逻辑结构设计:把概念结构转换为某个DBMS所支持的数据模型,并进行优化。
4、物理结构设计:为逻辑数据模型选取一个最适合应用环境的物理结构。
5、数据库实施:根据逻辑结构和物理结构设计的结果建立数据库,编制与调试应用程序,组织数据入库,然后试试看能不能正常运行喽。
6、数据库运维:数据库运行期间,需要不断对其进行维护、调整、修改、评价。