一、数据存储的历史发展自从人类开启灵智以来,就学会了记录数据,比如远古人用石头在墙壁上画道道用来统计打回来的猎物数量,后来出现了甲骨文用来记录人类的文明发展,再如我们知道的古代人使用竹子,布等充当记录文字的工具。造纸术的发明,大大提高了人类文明的进步,使我们在数据记录和文明传播上更为方便快捷,近代计算机的发明,让我们的世界文明有了质的飞跃,开始进入科技时代。在数据存储上,数据库软件的出现,让我们少了很多在管理数据上的负担。
从数据管理的角度看,数据库技术到目前共经历了手工管理、文件系统和数据库系统三个阶段。
1、手工管理阶段是指计算机诞生的初期(即20世纪50年代后期之前),这个时期的计算机主要用于科学计算。从硬件看,没有磁盘等直接存取的存储设备;从软件看,没有操作系统和管理数据的软件,数据处理方式是批处理。具有以下特点
(1)数据不保存。只用于科学计算,如在计算某一课题时,将数据输入,用完后不保存原始数据,也不保存计算结果。(2)没有软件系统对数据进行统一管理。数据的逻辑结构,包括存储结构,存取方式和输入输出方式会随着数据的变化而 变化,数据与程序不具备一致性,无法统一管理。(3)数据不共享。数据是面向应用的,即使两个应用用到相同的数据,也必须各自定义,组织,数据无法共享。(4)数据不具有独立性。数据与应用密切相关,应用改变,数据也会跟着变化,因此没有独立性。
2、文件管理是指计算机不仅用于科学计算,而且还大量用于管理数据的阶段(从50年代后期到60年代中期)。在硬件方面,外存储器有了磁盘、磁鼓等存储设备。在软件方面,操作系统中已经有了专门用于管理数据的软件,称为文件系统。可以总结出以下特点
(1)数据以文件的形式可以长期保存。由于文件概念的引用,数据可以长期保留,因此可以经常对文件进行查询、修改、插 入和删除等反复操作。(2)由文件系统管理数据。操作系统提供了文件管理系统和访问文件的存取方法,程序和数据之间有了数据存取的接口,程 序可以通过文件名和数据打交道,不必再寻找数据的物理存放位置。(3)文件形式多样化。文件形式如由顺序文件,索引文件、链表文件等。(4)数据存取以记录为单位。
尽管文件系统有上述优点,但是,文件系统仍存在缺点,如
(1)数据共享性差,冗余度大(2)数据独立性差
3、数据库管理从60年代后期开始,进入数据库管理阶段。在这一阶段中,数据库中的数据不再是面向某个应用或某个程序,而是面向整个企业(组织)或整个应用的。数据库系统阶段的特点如下
(1)面向数据模型化。这个时期,数据库系统不仅可以描述数据本身,还可以描述数据之间的复杂关系。(2)较高的数据独立性。数据和程序彼此独立,数据存储结构的变化,尽量不影响用户的使用。(3)冗余度低。数据库系统中的重复数据被减少到最低程度,这样,在有限的存储空间内可以存放更多的数据并减少存取时 间。(4)数据由DBMS统一管理和控制。数据库系统具有数据的安全性,以防止数据的丢失和被非法使用;具有数据的完整性, 以保护数据的正确、有效和相容;具有数据的并发控制,避免并发程序之间的相互干扰;具有数据的恢复功能,在数据 库被破坏或数据不可靠时,系统有能力把数据库恢复到最近某个时刻的正确状态
二、数据库的相关概念1、数据库
英文名Database,简称DB。是按照某一特定的数据结构来组织、存储和管理数据的仓库。
2、数据库管理系统
英文名Database Management System,简称DBMS。是一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库。它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。它介于用户和数据库之间。用户通过DBMS来访问数据库中的数据。
三、表的概念1、数据表(table),是关系型数据库的基本存储结构。一个关系型数据库是由多个表组成的。2、数据表是二维的,它由纵向的列和横向的行组成。3、数据表的行(Row)是横排数据,也被称之为记录(Recond)。4、数据表的列(Column)是竖排数据,也被称之为字段(Field)。5、表与表之间也可能存在着关系。
例如一个有关学生信息的名为 students 的表中,每个列包含的是所有学生的某个特定类型的信息,比如“姓名”,而每行则包含了某个特定学生的所有信息:姓名、学号、专业,院校等等。
对于数据表来说,列的数目一般事先固定,各列之间可以由列名来识别;而行的数目可以随着时间,动态变化。每行通常都可以根据某个或某几个列中的数据来识别。
四、关系型数据库首先,我们需要了解一个名词“关系模型”的概念。所谓关系模型,就是指二维表格结构,即表的行与列的关系。比如设计教师信息的关系模型,就是一条记录表示一个教师的信息,而这条记录中每个字段表示这个教师的特定信息。教师(教师编号,姓名,年龄,性别,科目)。
关系型数据库,是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据;一个关系型数据库是由二维表及其之间的联系组成的一个数据组织。现实世界中的各种实体以及实体之间的各种联系,我们均可以使用关系模型来表示。
当前主流的关系型数据库有Oracle、DB2、Sybase、Microsoft SQL Server、Microsoft Access、MySQL等。
Oracle数据库,是著名的Oracle(甲骨文)公司旗下的数据库产品,是世界上第一个商品化的关系型数据库管理系统,采用标准SQL,支持多种数据类型,提供面向对象的数据支持,支持unix,windows,os/2等多种平台。目前最新版本oracle 12.2c。 DB2,是IBM公司的关系型数据库管理系统。有很多不同的版本,可以运行在从掌上产品到大型机不同的终端及其上。是oracle的主要竞争对手。 Sybase,是Sybase公司的数据库产品,2010年被SAP收购。 SQL Server,是微软旗下的产品,运行在windows NT服务器上。现在的应用领域越来越大。 Microsoft Office Access,是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点,是 Microsoft Office 的系统程序之一。 MySQL,是开放源码的小型数据库管理系统,最开始是瑞典的MySQLAB公司的产品,后来被Sun公司收购,在2009年4月20号Sun公司被Oracle收购。