数据库原理与实践(Access版)
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.3 常用数据库管理系统

1.3.1 IBM的DB2

1.DB2简介

DB2是IBM公司研制的一种关系型数据库系统,主要应用于大型应用系统。IBM在1983年发布了DATABASE 2(DB2)for MVS,DB2是成熟的商业数据库,在各个行业拥有众多的客户。目前越来越多的客户改变了原来单一数据库平台的策略而转向在其新应用中使用DB2。国内的主要软件开发商,如用友、金蝶、东软、中软、亚信、浪潮、北大青鸟等,都基于DB2开发其产品和应用。

2.DB2的主要特点

DB2具有以下基本特点:

① DB2具有较好的可伸缩性,可支持从大型机到单用户环境,应用于OS/2、Windows等平台上。

② DB2提供了高层次的数据利用性、完整性、安全性、可恢复性,以及小规模到大规模应用程序的执行能力,具有与平台无关的基本功能和SQL命令。

③ DB2采用数据分级技术,能够使大型机数据很方便地下载到局域网数据库服务器中,使得客户机/服务器用户和基于局域网的应用程序可以访问大型机数据,并使数据库本地化及远程连接透明化。

④ DB2具有很好的网络支持能力,每个子系统可以连接十几万个分布式用户,可同时激活上千个活动线程,对大型分布式应用系统尤为适用。

⑤ 它除了可以提供主流的OS/390和VM操作系统,以及中等规模的AS/400系统之外,IBM还提供了跨平台(包括基于UNIX的Linux,HP-UX,SunSolaris,以及SCO UnixWare;还有用于个人计算机的OS/2操作系统,以及微软的Windows 2000和其早期的系统)的DB2产品。

⑥ DB2数据库可以通过使用微软的开放数据库连接(ODBC)接口,Java数据库连接(JDBC)接口,或者CORBA接口代理被任何应用程序访问。

3.DB2 9.X

信息技术已进入面向服务架构的(Service-Oriented Architecture,SOA)时代。而实现SOA的核心是顺畅解决不同应用间数据交换的问题。可扩展标记语言(eXtensible Markup Language,XML)以其可扩展性、与平台无关性和层次结构等特性,成为构建SOA不同应用间进行数据交换的主流语言。而如何存储和管理几何量级的XML数据、直接支持原生XML文档成为SOA构建效率和质量的关键。在这种情况下,IBM公司于2006年发布了全面支持Original XML的DB2 9,DB2 9将传统的高性能、易用性与自描述、灵活的XML相结合,转变成为交互式、充满活力的数据服务器,从而将数据库领域带入XML时代。

新的DB2 9.X提供了与先前版本不同的体系结构。DB2 Universal Database for Linux、UNIX和Windows第一次提供了新的查询语言、新的存储技术、新的索引技术,以及支持XML数据及其固有层次结构的其他特性。但是,所有的DB2传统数据库管理特性仍然存在,包括对SQL和表结构的支持。新的XML技术使DB2成为“混合型”(即多种结构的)数据库管理系统(DBMS)。

1.3.2 Oracle

1.Oracle简介

Oracle(汉语译为“甲骨文”)是世界领先的信息管理软件开发商,Oracle的关系数据库是世界第一个支持SQL语言的数据库。Oracle定位于高端工作站,以及作为服务器的小型计算机,整个产品线包括数据库、服务器、企业商务应用程序以及应用程序开发和决策支持工具。Oracle数据库产品为大多数的大公司和大型网站使用。

2.Oracle的主要特点

Oracle具有以下基本特点。

(1)Oracle7.X以来引入了共享SQL和多线索服务器体系结构

新机制的引入减少了Oracle的资源占用,并增强了Oracle的能力,使之在低档软硬件平台上用较少的资源就可以支持更多的用户,而在高档平台上可以支持成百上千个用户。

(2)提供了基于角色(Role)分工的安全保密管理

基于角色(Role)分工的安全保密管理在数据库管理功能、完整性检查、安全性、一致性方面都有良好的表现。

(3)支持大量多媒体数据

Oracle支持大量多媒体数据如二进制图形、声音、动画及多维数据结构等。

(4)提供了与第三代高级语言的接口软件系列

接口软件系列能在C、C++等主流语言中嵌入SQL语句及过程化(PL/SQL)语句,完成对数据库的数据操纵。加上它有许多优秀的前台开发工具,如POWER BUILD、SQL∗FORMS、VISIA BASIC等,可以快速开发生成基于客户端PC平台的应用程序,并具有良好的移植性。

(5)提供了新的分布式数据库能力

可通过网络较方便地读/写远端数据库中的数据,并有对称复制的技术。

3.主要的Oracle软件

(1)Oracle电子商务套件(Oracle E-Business Suite)

Oracle电子商务套件是行业中第一个集成的基于互联网的商务应用套件,它将前台与后台运营中的关键业务流程自动化。Oracle电子商务套件能够使用户在实施业务应用时拥有很高的可选择性与灵活性,它的开放式基础架构与单一数据模型能够使用户在部署套件中的应用软件时拥有多种选择,既可以单独使用,也可以组成业务流。Oracle电子商务套件既可以用CD-ROM这种传统软件形式作为载体,也可以作为一种在线服务形式来提供给用户。

(2)Oracle10g

Oracle10g是业界第一个完整的、智能化的新一代Internet基础架构,Oracle10g电子商务平台实际上是指Oracle数据库10g、Oracle应用服务器10g和Oracle开发工具套件10g的完整集成。

Oracle数据库10g是第一套具有无限可伸缩性与高可用性,并可在集群环境中运行商业软件的互联网数据库,具有400多个领先的数据库功能,在集群技术、高可用性、商业智能、安全性、系统管理等方面都实现了新的突破。Oracle应用服务器10g是J2EE认证的、最轻、最快、最具伸缩性的应用服务器,可以提供企业门户软件、无线支持、高速缓存、轻量级J2EE引擎、商务智能、快速应用开发、应用与业务集成、Web服务等多种应用开发功能,形成完整的电子商务应用开发和部署环境。

(3)Oracle 11g

2007年推出数据库Oracle 11g是Oracle数据库的最新版本。其具有以下基本特性:

① 与无压缩格式下存储数据相比,新的Oracle数据压缩技术能够确保以较小的开销节省1/3以上的磁盘存储空间。

② 自动诊断知识库(Automatic Diagnostic Repository,ADR)是专门针对严重错误的知识库。该知识库基本上能够自动完成一些以往需要由数据库管理员手动完成的操作。

③ 提供了SPA(SQL性能分析器)。SPA是一个整体调整工具,管理员可以通过该工具在数据库上定义和重演(replay)一个典型的工作负载,之后管理员可以调节整体参数使数据库尽快达到最佳性能。由于获得了最优的初始参数,数据库管理员仅仅需要给定一个典型的负载,SPA就会根据历史记录来决定SQL的最终设置。

④ 提供AMM(自动内存管理)工具。AMM工具其实就是一种探测机制。实际上,Oracle 11g有很多随机访问存储池,当存储管理模式探测到某个存储池中已满时,它将整个随机存储器从一个区域分配到其他相对合适的区域。

1.3.3 Informix

Informix是IBM公司推出的关系数据库管理系统(RDBMS)。作为一个集成解决方案,它被定位为IBM在线事务处理(OLTP)旗舰级数据服务系统。Informix是一种大型的数据库管理系统,具有先进的技术、性能与可靠性,广泛的应用于政府、金融保险、邮政电信、制造及零售等重要行业或领域。

IBM对Informix和DB2都有长远的规划,两个数据库产品互相吸取对方的技术优势。在2005年早些时候,IBM推出了Informix Dynamic Server(IDS)第10版。目前最新版本的是IDS11(v11.5,代码名为Cheetah 2)。

Cheetah 2可支持客户运用IBM大型机系统提供的多种信息管理技巧,增强集群服务器环境的业务表现。因此IDS是业界第一款非大型机级数据服务器,无论地理位置远近或与备份数据中心站点间距离长短,它都能为集群数据中心提供低成本的持续数据可用性和灾难恢复能力。

IDS 11.5在原版基础上进行了多处改良,其领先的稳定性和交易性能得到了进一步的提升,可更好地支持用户减少所需的服务器的数量和成本。它允许客户以更少的硬件服务器管理相同数量的数据,因此大大降低了客户对软件许可、管理成本、能源和空间的需求。

基于以上特性,IDS也成为了众多细分市场上领先的集成数据服务器,这些市场包括零售、电信、政府/公共领域、旅游和娱乐等。全球有95%的电信公司均采用IDS支持本企业的数据管理。

1.3.4 Sybase

1.Sybase简介

Sybase是美国Sybase公司研制的一种关系型数据库系统,是一种典型的基于UNIX或Windows NT平台上客户—服务器环境下的大型数据库系统。Sybase提供了一套应用程序编程接口和库,可以与非Sybase数据源及服务器集成,允许在多个数据库之间复制数据,适于创建多层应用。

系统具有完备的触发器、存储过程、规则以及完整性定义,支持优化查询,具有较好的数据安全性。Sybase通常与SybaseSQLAnywhere用于客户—服务器环境,前者作为服务器数据库,后者为客户机数据库。该公司研制的开发工具PowerBuilder在我国大中型系统中具有广泛的应用。Sybase主要有三种版本,一是UNIX操作系统下运行的版本,二是Novell Netware环境下运行的版本,三是Windows NT环境下运行的版本。在UNIX操作系统下,目前广泛应用的为Sybase 10及Sybase 11 for SCO UNIX。

2.Sybase的主要特点

Sybase数据库具有以下基本特点。

(1)基于客户—服务器体系结构

一般的关系数据库都是基于主/从式模型的。在主/从式结构中,所有的应用都运行在一台机器上。用户只是通过终端发命令或简单地查看应用运行的结果。而在客户—服务器结构中,应用被分在了多台机器上运行。一台机器是另一个系统的客户,或是另外一些机器的服务器。这些机器通过局域网或广域网连接起来。

(2)是真正开放的数据库

由于采用了客户—服务器结构,应用被分在多台机器上运行。更进一步,运行在客户端的应用不必是Sybase公司的产品。对于一般的关系数据库,为了让其他语言编写的应用能够访问数据库提供了预编译。Sybase数据库,不只是简单地提供了预编译,而且公开了应用程序接口DB-LIB,鼓励第三方编写DB-LIB接口。由于开放的客户DB-LIB允许在不同的平台使用完全相同的调用,因而使得访问DB-LIB的应用程序很容易从一个平台向另一个平台移植。

3.Sybase数据库的组成

Sybase数据库主要由三部分组成。

(1)联机的关系数据库管理系统Sybase SQL Server

Sybase SQL Server完成数据库管理和维护的软件,起着数据管理、高速缓冲管理、事务管理的作用。

(2)一组前端工具Sybase SQL Toolset

Sybase SQL Toolset支持数据库应用系统的建立与开发。ISQL是与SQL Server进行交互的一种SQL句法分析器。ISQL接收用户发出的SQL语言,将其发送给SQL Server,并将结果以形式化的方式显示在用户的标准输出上。

DWB是数据工作台,是Sybase SQL Toolset的一个主要组成部分,它的作用在于使用户能够设置和管理SQL Server上的数据库,并且为用户提供一种对数据库的信息执行添加、更新和检索等操作的简便方法。在DWB中能完成ISQL的所有功能,而且,DWB是基于窗口和菜单的,因此操作比ISQL简单,是一种方便实用的数据库管理工具。

APT是Sybase客户软件部分的主要产品之一,也是从事实际应用开发的主要环境。APT工作台是用于建立应用程序的工具集,可以创建从非常简单到非常复杂的应用程序,它主要用于开发基于表格(Form)的应用。其用户界面采用窗口和菜单驱动方式,通过一系列的选择完成表格、菜单和处理的开发。

(3)Sybase Open Client/Open Server接口

Sybase Open Client/Open Server接口可把异构环境下其他厂商的应用软件和任何类型的数据连接在一起。通过Open Client的DB-LIB库,应用程序可以访问SQL Server。而通过Open Server的SERVER-LIB,应用程序可以访问其他数据库管理系统。

1.3.5 SQL Server

1.SQL Server简介

SQL Server是由Microsoft、Sybase和Ashton-Tate三家公司共同开发的一个关系数据库管理系统,于1988年推出了第一个OS/2版本。在Windows NT推出后,Microsoft公司将SQL Server移植到Windows NT操作系统上,专注于开发推广SQL Server的Windows NT版本。Sybase公司则较专注于SQL Server在UNIX操作系统上的应用。

2.SQL Server 2008

SQL Server 2008是一个重要的产品版本,它增加了许多新的特性和关键的改进,使得它成为迄今为止最强大最全面的SQL Server版本。

SQL Server 2008满足数据爆炸和下一代数据驱动应用程序的需求,提供了满足需求的解决方案,可以使用存储和管理多种数据类型,包括XML、E-mail、时间/日历、文档等,同时提供一个丰富的服务集合来与数据交互,包括搜索、查询、数据分析、报表、数据整合和同步功能等。

1.3.6 PostgreSQL

1.PostgreSQL简介

PostgreSQL是以美国加州大学伯克利分校计算机系开发的Postgres4.2为基础的对象关系型数据库管理系统(ORDBMS)。PostgreSQL是目前世界上最先进,功能最强大的自由数据库管理系统。它是目前支持平台最多的数据库管理系统之一,所支持的平台多达十几种,包括不同的系统,不同的硬件体系。

PostgreSQL支持大部分SQL标准并且提供了许多其他现代特性,如复杂查询、外键、触发器、视图、事务完整性、多版本并发控制等。同样,PostgreSQL可以通过增加新的数据类型、函数、操作符、聚集函数、索引方法、过程语言实现扩展。并且,任何人都可以以任何目的免费使用、修改和分发PostgreSQL。

2.PostgreSQL的主要特点

PostgreSQL可以说是最富特色的自由数据库管理系统,甚至我们也可以说是最强大的自由软件数据库管理系统。PostgreSQL的特性覆盖了SQL-2/SQL-92和SQL-3/SQL-99,其主要特点如下:

① 它提供了目前世界上最丰富的数据类型的支持,比如IP类型和几何类型等。

② 很长时间以来,PostgreSQL是唯一支持事务、子查询、多版本并行控制系统、数据完整性检查等特性的一种自由软件数据库管理系统。直到最近Inprise公司将InterBase,以及SAP等厂商将各自的专有软件开放为自由软件之后才打破了这个状态。

③ PostgreSQL拥有一支非常活跃的开发队伍,而且在许多黑客的努力下,PostgreSQL的质量日益提高。

④ 从技术角度来讲,PostgreSQL采用经典的C/S结构,支持丰富的客户端接口,几乎涵盖所有类型的数据库客户端接口。

1.3.7 MySQL

1.MySQL简介

MySQL是瑞典MySQLAB公司开发的一个小型关系型数据库管理系统。由于其体积小、速度快、成本低,尤其是开放源码这一特点,而被广泛地应用在Internet上的中小型网站中。与其他的大型数据库,如Oracle、DB2、SQL Server等相比,MySQL规模小、功能有限(MySQL Cluster的功能和效率都相对比较差)。但对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源码软件,因此可以大大降低成本。

目前,Internet上流行的网站构架方式是LAMP(Linux+Apache+MySQL+PHP),即使用Linux作为操作系统,Apache作为Web服务器,MySQL作为数据库,PHP作为服务器端脚本解释器。由于这四个软件都是自由或开放源码软件,所以使用LAMP方式可以用很低成本建立起一个稳定、免费的网站系统。

2.MySQL的主要特点

MySQL具有以下基本特点:

① 使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性;

② 支持AIX、FreeBSD、HP-UX、Linux、Mac OS、Novell Netware、OpenBSD、OS/2 Wrap、Solaris、Windows等多种操作系统;

③ 为多种编程语言提供了API,其中包括C、C++、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等;

④ 支持多线程,充分利用CPU资源;

⑤ 优化的SQL查询算法,有效地提高查询速度;

⑥ 既可作为一个单独的应用程序用在客户端服务器网络环境中,也可作为一个库嵌入到其他的软件中提供多语言支持;

⑦ 提供TCP/IP、ODBC和JDBC等多种数据库连接途径;

⑧ 提供用于管理、检查、优化数据库操作的管理工具;

⑨ 可以处理拥有上千万条记录的大型数据库。

1.3.8 Access数据库

1.Access简介

Access是微软公司推出的基于Windows的桌面关系数据库管理系统(RDBMS,即Relational Database Management System),是Office系列应用软件之一。它提供表、查询、窗体、报表、页、宏、模块7种用来建立数据库系统的对象;提供多种向导、生成器、模板,将数据存储、数据查询、界面设计、报表生成等操作规范化;为建立功能完善的数据库管理系统提供了方便,也使得普通用户不必编写代码,就可以完成大部分数据管理的任务。

2.Access的优、缺点

(1)Access的优点

① 存储方式单一

Access管理的对象有表、查询、窗体、报表、页、宏和模块,以上对象都存放在后缀为.mdb的数据库文件中,便于用户的操作和管理。

② 面向对象

Access是一个面向对象的开发工具,利用面向对象的方式将数据库系统中的各种功能对象化,将数据库管理的各种功能封装在各类对象中。通过对象的方法、属性完成数据库的操作和管理,极大地简化了用户的开发工作。

③ 界面友好、易操作

Access是一个可视化工具,其风格与Windows完全一样,直观方便。系统还提供了表生成器、查询生成器、报表设计器以及数据库向导、表向导、查询向导、窗体向导、报表向导等工具,使得操作简便,容易使用和掌握。

④ 集成环境、处理多种数据信息

Access基于Windows操作系统下的集成开发环境,该环境集成了各种向导和生成器工具,极大地提高了开发人员的工作效率,使建立数据库、创建表、设计用户界面、设计数据查询、报表打印等可以方便有序地进行。

⑤ 支持ODBC

Access支持ODBC(开发数据库互连,Open Data Base Connectivity),利用Access强大的DDE(动态数据交换)和OLE(对象的连接和嵌入)特性,可以在一个数据表中嵌入位图、声音、Excel表格、Word文档,还可以建立动态的数据库报表和窗体等。

(2)Access的缺点

Access是小型数据库,有它根本的局限性,在以下几种情况下数据库性能会急剧下降:

① 数据库过大。一般地,Access数据库大小达到50MB左右的时候,性能会急剧下降;

② 网站访问频繁。经常达到100人左右的在线人数时,性能会急剧下降;

③ 记录数过多。一般记录数达到10万条左右的时候,性能会急剧下降。

1.3.9 FoxPro数据库

Visual FoxPro(简称VFP)是Microsoft公司推出的数据库开发软件,用它来开发数据库,既简单又方便。Visual FoxPro源于美国Fox Software公司推出的数据库产品FoxBase,FoxPro是FoxBase的加强版,最高版本曾出过FoxPro 2.6。1992年,Fox Software公司被Microsoft收购,加以发展,使其可以在Windows上运行,并且更名为Visual FoxPro。

Visual FoxPro 6.0由微软公司于1998年在推出Windows 98操作系统时推出。它不仅提供了更多更好的设计器、向导、生成器及新类,并且使得客户—服务器结构数据库应用程序的设计更加方便简捷。Visual FoxPro目前最新的版本是9.0。2007年3月13日,微软公司向第三方开发者正式确认,Visual FoxPro 9.0将是微软的最后一款桌面数据库开发工具软件。