数据库应用需求与对象关系数据库

一 数据管理技术随着应用进步而迅速发展

应用的发展始终是数据管理技术进步的动力。或者说,应用发展与技术进步是互相推动、互相促进的。回顾数据管理领域的发展历史,正说明了这一点。

在五十年代后期到六十年代中期,数据管理功能主要由文件系统实现,只提供较为简单的数据存取功能,各个文件之间相互独立、互相不发生联系,系统对数据文件提供打开文件、关闭文件、从文件中读/写一个记录等操作。

但随着应用的发展,要求存储和管理有结构的数据,即不但管理数据本身,还管理数据间的联系,以便提供按照数据间的联系进行导航式的查询,从而大量的查询应用需求可以由系统(而不必通过应用程序)直接予以满足。于是在六十年代后期产生了数据库系统。

数据库系统管理的数据是有结构的,提供强有力的数据查询功能,并提供良好的数据共享性。当时,数据库系统大都采用层次数据模型或网状数据模型。随着数据管理技术的发展,在七十年代初,提出了关系数据理论,建立了关系数据方法,继而诞生了关系数据库系统。

关系数据库系统管理的数据,其结构较为简单,数据本身以二维表形式进行存储;表之间的数据联系通过一个表的码与另一个表的外码的连接来体现。关系数据库系统提供了强大的查询功能,提供了十分方便、易用的非过程化的查询语言(已形成关系数据库语言国际标准SQL),从而获得了极为广泛的应用,大大促进了商务数据处理应用的飞速发展。

随着像CAD、CASE、图像处理、GIS等新的应用领域的发展,以及传统应用领域中应用的深化(例如:需处理多媒体信息),要求数据管理软件管理复杂对象,模拟复杂对象的复杂行为(对数据施加较为复杂的操作)。于是,在八十年代中后期产生了面向对象数据库系统,把面向对象技术与数据库技术结合起来,利用类的设施来描述复杂对象,利用类中封装的方法来模拟对象的复杂行为,利用继承性来实现对象的结构和方法的重用。

面向对象数据库系统对一些特定应用领域(例如CAD等),较好地满足了其应用需求。但是,这种纯粹的面向对象数据库系统,并不支持SQL,在通用性方面失去了优势,其应用领域受到很大的局限。在面向对象技术与数据库技术相结合的过程中,基本上是沿着两种途径发展的:一种是建立纯粹的面向对象数据库管理系统(即OODBMS),这种途径往往是以一种面向对象语言为基础,增加数据库的功能,主要是支持持久对象和实现数据共享。

另一种途径是从传统的关系数据库加以扩展,增加面向对象特性,把面向对象技术与关系数据库相结合,建立对象-关系数据库管理系统(即ORDBMS),ORDBMS既支持已被广泛使用的SQL,具有良好的通用性,又具有面向对象特性,支持复杂对象和复杂对象的复杂行为。

正在制定的新的SQL国际标准(现称为SQL3)体现了ORDBMS的特征。ORDBMS适应了某些新应用领域的需要和传统应用领域深化发展的需要,因而近几年来,ORDBMS获得了快速的发展。

二.应用需求分类和数据管理软件

应用需求是数据库管理系统和其它数据管理软件发展的推动力。

不同的应用领域需要管理的数据类型、数据复杂程度不同;对数据所需进行的查询的复杂程度不同;对数据的其它操作处理,以及数据安全性、并发控制、故障恢复等的要求也不同。

没有一种万能的数据管理软件能够满足所有的应用需求,能够有效地为各个不同的应用领域服务。因此,受应用需求的驱动,多种多样的数据管理软件被研制出来,推向市场。

下面,我们以数据的复杂程度和查询要求的复杂程度为基本区分原则,将应用需求进行分类,并对适合于各类应用需求的数据管理软件进行讨论。

1.简单数据,简单查询———文件系统

我们以正文处理系统为例,描述这一类应用的需求。文字处理是办公室工作中必不可少的一项内容。常见的正文处理系统有Word、Framemaker、Word Perfect、vi等。它们的工作方式非常简单:使用者用名字打开文件,文件内容被拷贝到虚存中。在编辑正文时,更新虚存对象,对象被定期地保存到硬盘中。在结束正文处理时关闭文件,这时,虚存中的拷贝被存回到文件系统中。 上面描述的这种正文处理系统代表了一类可称为简单数据简单查询(或无查询要求)的应用需求。它的数据结构非常简单,仅仅是字符的序列;它的查询要求更为简单,仅仅是读文件和写文件。因此,对于此类应用,操作系统厂商提供的文件系统就足以满足其功能要求,并具有较高的性能。

时间: 2024-10-28 03:38:27

数据库应用需求与对象关系数据库的相关文章

J2EE与IBM对象-关系数据库

简介 数据库的选型应该是会为您带来商业优势的战略性决策.一旦做出决策,您 就必须充分利用该数据库服务器来实现这一优势.本文简要地介绍了 Java 2 Enterprise Environment(J2EE)环境,并讨论了 J2EE 开发中使用的面向对象方法(分析 .设计.实现),以及一些与对象持久性相关的问题,因为对象持久性与对象-关系数据库管 理系统(ORDBMS)的使用相关联. Web 体系结构背景 J2EE 包含几十个缩写词 ,每个均代表不同的概念.要理解这一复杂性,回顾一下 Web 体系

OpenLink Virtuoso 6.1.4发布 对象关系数据库引擎

OpenLink Virtuoso是一个可扩展.高性能的SQL-200n标准的对象http://www.aliyun.com/zixun/aggregation/22.html">关系数据库引擎.它提供SQL.XML和RDF的高级数据库管理.支持Virtuoso交互的包括:行业标准查询语言.协议.API,以及各种数据格式:ODBC.JDBC.OLE-DB.ADO.NET.XMLA.SQL.SPARQL.XQuery, SOAP.HTTP.WebDAV.SyncML.Atom .RSS.RD

sql2000备份的数据库还原到sql2005后,选择“数据库关系图”提示:此数据库没有有效所有者,因此无法安装数据库关系图支持对象的解决方法

sql2005|备份|对象|解决|数据|数据库  sql2000备份的数据库还原到sql2005后,选择"数据库关系图"提示:此数据库没有有效所有者,因此无法安装数据库关系图支持对象.若要继续,请首先使用"数据库属性"对话框的"文件"页或  ALTER  AUTHORIZATION  语句将数据库所有者设置为有效登录名,然后再添加数据库关系图支持对象.       解决方法如下: 1.设置兼容级别为90(2005为90)  USE  [maste

批量解密SQLSERVER数据库中的各种对象的工具dbForge SQL Decryptor

原文:批量解密SQLSERVER数据库中的各种对象的工具dbForge SQL Decryptor 批量解密SQLSERVER数据库中的各种对象的工具dbForge SQL Decryptor2.1.11 之前写过一篇文章,使用redgate公司的SQL PROMPT工具,但是不太方便 SQLPROMPT5.3对各种加密对象的解密测试 SQL2005解密已经被加密的存储过程 昨天ahdung 童鞋介绍了这个工具给我,非常感谢他 dbForge SQL Decryptor这个工具的软件公司是dev

SQL SERVER 属性OWNER不可用于数据库xxx。该对象可能没有此属性,也可能是访问权限不足而无法检索。

 今天遇到一个案例:右键单击数据库的属性时出现下面错误提示:         属性Owner不可用于数据库xxx,该对象可能没有此属性,也可能是访问权限不足而无法检索.    使用脚本查看该数据库的Owner时发现Owner为null.具体原因是因为该数据库的Owner是一个系统管理员的账号,由于该同事离职,接手的系统管理员将该账号清除了,所以出现上面错误.此时用下面脚本查询,就会发现该Owner为null值. SELECT  d.name ,         owner_sid ,      

js-删除循环从数据库输出的对应对象

问题描述 删除循环从数据库输出的对应对象 有foreach输出的对象,在每一个对象里配备一个删除按钮,如何实现点删除就删除按钮所在的对象.是数据库里的对 解决方案 注意修改category.getIDFiled() value="删除" onclick="window.open('del.jsp?id=${category.getIDFiled()}')" 解决方案二: 那个del方法,把id值传进去,然后调用后台方法删除 解决方案三: 每行数据都有自己的id,然后

重新编译数据库中的失效对象

原文整理自:http://www.51testing.com/?uid-16403-action-viewspace-itemid-98161:http://www.eygle.com/archives/2005/01/ecioaeaoeeeaoea.html 先看个帖子:http://www.itpub.net/thread-1112553-1-1.html 每次数据库做了升级(打各种数据库方面的补丁后,不是数据库本身的升级,是各种对象改变增加修改等,呵呵不,别误解)完了以后我都要查一下数据库

oracle数据库中的大对象1——永久性的

整理自丁俊老师plsql文档: 1.基本介绍 oracle和pl/sql都支持lob(large object)类型,用来存储大数量数据,如图像文件,声音文件等.oracle 10g r1 支持最大8 到128万一字节的数据存储,依赖于你的数据库的 block size. 在pl/sql中,可以声明的lob的类型变量如下: BFILE :二进制文件,存储在数据库外的操作系统文件,只读的.把此文件当二进制处理. BLOB:二进制大对象,存储在数据库里的大对象,一般是图像声音等文件. CLOB: 字

Java从数据库中读取Blob对象图片并显示的方法_java

本文实例讲述了Java从数据库中读取Blob对象图片并显示的方法.分享给大家供大家参考.具体实现方法如下: 第一种方法: 大致方法就是,从数据库中读出Blob的流来,写到页面中去: 复制代码 代码如下: Connection conn = DBManager.getConnection();   String sql = "SELECT picture FROM teacher WHERE id=1";   PreparedStatement ps = null;   ResultSe