1.1.1 数据库基本概念
·数据(Data)。
·数据库(DataBase)
·数据库管理系统(DBMS)。
·数据库系统(DBS)。
1.数据(Data)的定义
对客观事物的符号表示,如图形符号、数字、字母等,数据是数据库中存储的基本对象。
在日常生活中,人们直接用语言来描述事物;在计算机中,为了存储和处理这些事物,就要将事物的特征抽象出来组成一条记录来描述。
(1)数据的种类:文字、图形、图像、声音。
(2)数据的特点:数据与其语义是不可分的。
(3)数据举例。
·学生档案中的学生记录:(单光庆,男,1974,重庆,信息工程,1993)。
·数据的形式不能完全表达其内容。
·数据的解释。
语义:学生姓名、性别、出生年月、籍贯、所在系别、入学时间。
解释:单光庆是个大学生,1974年出生,重庆人,1993年考入信息工程学院。
2.数据库(Database,DB)的定义
数据库是“按照数据结构来组织、存储和管理数据的仓库”。J.Martin给数据库下了一个比较完整的定义:数据库是存储在一起的相关数据的集合,这些数据是结构化的,无有害的或不必要的冗余,并为多种应用服务。
3.数据库管理系统
(1)数据库管理系统(Database Management System,DBMS)是一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库,简称DBMS。关系型数据库管理系统称为RDBMS,R指Relation。
(2)DBMS的作用。对数据库进行统一管理和控制,以保证数据库的安全性和完整性。
(3)DBMS的主要功能。
① 数据定义功能。
·提供数据定义语言(DDL)。
·定义数据库中的数据对象。
② 数据操纵功能。
·提供数据操纵语言(DML)。
·操纵数据实现对数据库的基本操作:查询、插入、删除和修改。
③ 数据库的运行管理。
·保证数据的安全性、完整性。
·多用户对数据的并发使用。
·发生故障后的系统恢复。
④ 数据库的建立和维护功能(实用程序)。
·数据库数据批量装载。
·数据库转储。
·介质故障恢复。
·数据库的重组织。
·性能监视等。
4.数据库系统
数据库系统(Database System,DBS)是一个实际可运行的存储、维护和应用系统提供数据的软件系统。
数据库系统构成:DBMS;DB;应用软件;数据库管理员;用户。
1.1.2 数据库的发展史
数据库的发展史分为如下四个阶段:
(1)人工管理阶段。手工整理存储数据。
(2)文件系统阶段。使用磁盘文件来存储数据。
(3)数据库系统阶段。关系型数据库。
(4)高级数据库阶段。“关系-对象”型数据库。
当前数据库产品:(www.xing528.com)
·Oracle:甲骨文公司开发。
·DB2:BM公司开发。
·SQL Server:微软公司开发。
·Sybase:赛贝斯公司开发。
·MySQL:甲骨文公司开发。
1.1.3 数据库的类型
数据库的类型如下:
(1)纯文本数据库。纯文本数据库是只用空格符、制表符和换行符来分割信息的文本文件。适用于小型应用,对于大中型应用来说它存在诸多限制:
只能顺序访问,不能进行随机访问。
查找数据和数据关系或多用户同时访问进行写操作时非常困难。
(2)关系数据库。由于纯文本数据库存在诸多局限,因此人们开始研究数据模型,设计各种类型的使用方便的数据库。在数据库的发展史上,最具影响的数据库模型有:层次模型、网状模型和关系模型。其中,关系模型是目前应用最广泛和最有发展前途的一种数据模型,其数据结构简单,当前主流的数据库系统几乎都采用关系模型。
关系数据库中所谓的“关系”,实质上是一张二维表,如表1.1所示。
表1.1 课程表
作为数据库中最为重要的数据库对象,数据库表的设计过程并非一蹴而就,上述课程表根本无法满足“选课系统”的功能需求。
事实上,数据库表的设计过程并非如此简单,本章的重点就是讨论如何设计结构良好的数据库表。
1.1.4 数据库的优点
数据库的优点如下:
·数据按一定的数据模型组织、描述和储存。
·可为各种用户共享。
·冗余度较小,节省存储空间。
·易扩展,编写有关数据库应用程序。
1.1.5 关系数据库管理系统
• Oracle:应用广泛、功能强大,分布式数据库系统;“关系-对象”型数据库。
• MySQL:快捷、可靠;开源、免费、与PHP组成经典的LAMP组合。
• SQL Server:针对不同用户群体的五个特殊的版本;易用性好。
• DB2:应用于大型应用系统,具有较好的可伸缩性。
通过“数据库管理系统”,数据库用户可以轻松地实现对数据库容器中各种数据库对象的访问(增、删、改、查等操作),并可以轻松地完成数据库的维护工作(备份、恢复、修复等操作),如图1.1所示。
图1.1 用户通过DBMS访问数据库
数据库用户无法直接通过操作系统获取数据库文件中的具体内容;数据库管理系统通过调用操作系统的进程管理、内存管理、设备管理以及文件管理等服务,为数据库用户提供管理、控制数据库容器中各种数据库对象、数据库文件的接口,如图1.2所示。
图1.2 数据库管理系统调用操作系统的进程管理、内存管理、设备管理以及文件管理服务
常用的数据库模型如图1.3所示。基于“关系模型”的数据库管理系统称为关系数据库管理系统(RDBMS)。
图1.3 常用的数据库模型
随着关系数据库管理系统的日臻完善,目前关系数据库管理系统已占据主导地位,如图1.4所示。
图1.4 关系数据库管理系统占据市场份额
截至目前,MySQL已经成功逆袭,如表1.2所示。
表1.2 MySQL市场占据逆袭数据
MySQL逆袭原因如下:
第一,开源。MySQL源代码免费下载。
第二,简单。MySQL体积小,便于安装。
第三,性能优越。MySQL性能足够与商业数据库媲美。
第四,功能强大。MySQL提供的功能足够与商业数据库媲美。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。