数据库基础知识概述

来源:互联网 发布:java 单例模式 编辑:程序博客网 时间:2024/06/10 01:58

提到数据库,最先想到的就是数据了。

数据(Data)在大多数人头脑里第一反应就是数字。其实这是对数据一种传统和狭义的理解。数据种类很多,文本(text),图形(graph),图像(image),音频(audio),视频(video),学生的档案记录,货物运输情况等,这些都是数据。可以对数据作如下定义:描述事物的符号记录称为数据。文字、图形、图像、声音、语言等,都可以经过数字化后存入计算机。数据的表现形式还不能完全表达其内容,需经过解释,数据和关于数据的解释是不可分的。例如,93是一个数据,他可以指物品价格,成绩等等。数据的解释是指对数据含义的说明,数据的含义称为数据的语义,数据与其语义是不可分的。

数据库(DataBase,简称DB),顾名思义,就是存放数据的仓库。只不过这个仓库是在计算机存储设备上,而且数据是按一定格式存放的。严格的讲,数据库是长期储存在计算机内,有组织,可共享的大量数据的集合。数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。概括地讲,数据库数据具有永久存储有组织可共享三个基本特点。

数据库管理系统(DataBase Management System,DBMS)是系统软件,科学地组织和存储数据高效地获取和维护数据这些任务就是它完成的。它提供:


1.数据定义功能(提供数据定义语言Data Definition Language,DDL),用户通过它可以方便地对数据库中的数据对象进行定义。

2.数据组织、存储和管理DBMS要分类组织、存储和管理各种数据,包括数据字典、用户数据、数据的存取路径等。要确定以何种文件结构和存取方式在存储级上组织这些数据,如何实现数据之间的联系。数据组织和存储的基本目标是提高存储空间利用率和方便存取。提供多种存取方法(如索引查找、Hash查找、顺序查找)来提高存取效率。

3.数据操作功能,提供数据操作语言(Data Manipulation Language,DML),用户可用DML实现对数据库的基本操作,如查询,插入,修改,删除等。

4.数据库的事务管理和运行管理,数据库建立、运用和维护时由数据库管理系统统一管理、统一控制,以保证数据的安全性完整性多用户对数据的并发使用发生故障后的系统恢复

5.数据库的建立和维护功能,包括:数据库初始数据的输入、转换功能,数据库的转储、恢复功能,数据库的重组织功能和性能监视、分析功能等。

6.其它功能,包括:DBMS与网络中其他软件系统的通信功能;一个DBMS与另一个DBMS或文件系统的数据转换功能;异构数据库之间的互访和互操作功能等。


数据库系统(DataBase System,DBS) 数据库系统是指在计算机系统中引入数据库后的系统,一般由数据库数据库管理系统(及其开发工具)应用系统数据库管理员构成。应当指出的是,数据库的建立、使用和维护等工作只靠一个DBMS远远不够,还要有专门的人员来完成,这些人员被称为数据库管理员(DataBase Administrator,DBA)。在一般不混淆的情况下,常常把数据库系统简称为数据库


接下来我们讲讲数据管理技术的产生和发展。

数据管理大致分三个阶段,分别是人工管理阶段、文件系统阶段、数据库系统阶段。

上图很好的反应了数据管理三阶段的特点。

数据库系统有一个很大的特点那就是实现了整体数据的结构化。这也是数据库系统和文件系统的本质区别。所谓“整体”结构化是指在数据库中的数据不再仅仅针对某一个应用,而是面向全组织;不仅数据内部是结构化的,而且整体是结构化的,数据之间是具有联系的。例如学生文件,课程文件和学生选课文件是独立的3个文件,但实际上着3个文件的记录之间是有联系的,学生选课文件的学生编号必须是学生文件中某个学生的学号,课程编号也必须是课程文件中的某个编号。下图是更复杂的一个例子:


整体结构化要求我们在描述数据时不仅要描述数据本身,还要描述数据之间的联系。


数据库的共享性高,它的数据面向整个系统,因此数据可以被多个用户、多个应用共享使用。数据共享可以大大减少数据冗余,节约存储空间。数据共享还能避免数据之间的不相容性与不一致性

数据独立性高,包括数据的物理独立性和数据的逻辑独立性

物理独立性是指用户的应用程序与存储在磁盘上的数据库数据时相互独立的。也就是说,数据在磁盘上的数据库中怎样存储由DBMS管理,用户程序不需要了解,应用程序要处理的只是数据的逻辑结构,这样当数据的屋里存储改变时,应用程序不变。

逻辑独立性是指用户的应用程序与数据库的逻辑结构是相互独立的,也就是说,数据的逻辑结构改变了,用户程序也可以不变。

Ps:数据与程序的独立,把数据的定义从程序中分离出去,加上存取数据的方法又由DBMS负责提供,从而简化了应用程序的编制,大大减少了应用程序的维护和修改。


数据由DBMS统一管理和控制,提供以下几方面的数据控制功能:

1.数据的安全性保护。

2.数据的完整性检查

3.并发控制

4.数据库恢复


1 0
原创粉丝点击