全国计算机等级考试四级复习纲要六[7]

全国计算机等级考试四级复习纲要六[7],第1张

全国计算机等级考试四级复习纲要六[7],第2张

(4)完成后,用户可以远程访问。(请注意,两个节点上的ORACLE系统都应该打开)

(5)为了加强网络通信的管理,避免冲突,可以通过VAX/VMS网络控制程序NCP建立一个ORACLE网络通信的默认账户。

3.网络ORACLE的使用

除了以下实用程序之外,其他ORACLE实用程序和软件工具可以通过SQL*NET访问远程节点的ORACLE系统IOR AJI,仅供本地使用。此外,用户用各种语言编写的应用程序也可以远程访问。用户远程访问的方式很简单,只需将节点信息附加到“用户名/密码”(ORACLE的合法用户)即可。

4.分布式查询

分布式查询和数据传输主要是指用户在前端计算机上执行本地进程,通过SQL语句或SQLplus命令在远程节点上查询或传输数据。由于ORACLE系统在网络上的分布式查询功能非常强大,用户可以同时查询多个节点上的数据库数据。数据传输功能用于在两个节点之间复制数据和定义,下面将分别介绍。ORACLE系统的分布式查询功能使一个节点上的用户可以通过SQL查询语句访问其他节点数据库的数据。此外,用户可以同时访问多个节点(包括本地节点)的数据,从而大大增强了数据库的查询功能。

(1)数据库链接为了使分布式查询操作更加简单方便,ORACLE RDBMS为用户提供了一种新的数据定义方法:数据库链接。用户可以通过数据库链接定义在本地节点和远程节点之间进行查询和连接。远程访问的用户需要知道:远程数据库所在的节点;远程节点上的哪个数据库;远程数据库的哪个用户。该数据库用于识别上述内容。数据库链接是由用户SQL的CREATE DATABASE LINK语句定义的。格式为:创建[公共]数据库链接链接名称连接到由密码推迟的用户名使用“”驱动器前缀:节点名称“操作系统用户名密码”:“task = ordn fix . com”;如果用户事先定义了一个逻辑名:$ $ASSIGN节点名,“操作系统用户名密码”:“TASK=ORDN suffix.com”,那么创建数据库链接就变得非常简洁:创建[public]数据库链接链接名使用''驱动器前缀:逻辑名'连接到密码标识的用户名;这里,PUBLIC代表公共数据库链接,只有DBA可以使用PUBLIC限定符。

(2)远程查询操作定义了数据库链接后,远程查询变得非常简单方便。当用户访问查询数据库的表或视图时,只要将数据库链接名追加到表名或视图名中,他就可以通过SELECT语句进行查询。形式为:SELECT列表达式[,列表达式,…] from表名@数据库链接名[,表名@数据库链接名,…] [where逻辑表达式];

(3)定义同义名用户可以使用同义名来简化一些繁琐的表名或视图名。对于远程查询操作,用户还可以为远程数据库的表名或视图名定义相应的同义名称。

(4)连接操作在远程查询中,用户可以将数据库中相同(或不同)节点上的表连接起来。JOIN操作可以针对以下几种情况:同一个数据库中的两个或多个表;同一节点的不同数据库中的两个或多个表;不同节点上的数据库中的两个或多个表;资料来源:www.examda.com

(5)查询远程数据库中其他用户的数据。用户通过数据库链接进行远程查询时,可以访问其他用户的数据。数据库的定义指定了一个远程用户名和密码,称为链接用户名。上述“其他用户”是指非链接用户。如果链接用户具有访问另一个用户(标记为用户A)的权限,那么客户机用户可以通过数据库链接查询服务器用户A中的数据。

(6)远程子查询基于主查询的远程访问前面已经介绍过了。实际上,SQL语句中的子查询也可以访问远程节点的数据库数据。这个子查询称为远程子查询。嵌入的查询语句有:select insert update create table create view 5。远程数据传输。

目前网络ORACLE系统无法通过INSERT和UPDATE语句更新远程节点的数据库数据。但是ORACLE提供了在节点之间传输数据库数据的能力。将使用SQL/plus的COPY命令来实现该功能。用户可以使用COPY命令将数据从一个节点(称为源节点)传输或复制到另一个节点(称为目标节点)。使用复制命令类似于数据库链接的定义,需要体现点名,数据库(即命令文件和“用户名/密码”)。源描述和目标描述分别用于指示源节点的目标节点上的节点名称、数据库(即命令文件)和“用户名/密码”。下面是COPY命令的基本形式:COPY[FROM source name][to target name]{ append | create | insert | replace } table name[(Column name[,Column name …]]使用select语句其中源名称和目标名称用于指定源节点和目标节点上的节点名称、数据库和用户名/密码,例如:用户名/密码@驱动器前缀:节点名称“用户名密码”:“TASK = ORDN suffix . com”;如果预先指定了逻辑名,源描述和目标描述会更简洁。如果源节点是本地节点,COPY命令可以省略FROM子句。如果目标节点是本地的,则可以删除TO子句。COPY命令会将数据传输到目标数据库中的指定表。传输的特定数据是子查询的结果。APPEND、CREATE、INSERT和REPLACE限定符用于指定传输模式:APPEND将传输的数据添加到指定的表中。如果该表不存在,请先创建该表,然后将其联接;INSERT将传输的数据添加到指定的表中。如果表不存在,先创建表,再添加数据;创建指定的表并添加数据。如果该表存在,将会出现错误。REPLACE用传输的数据替换原始表中已经存在的数据。

十四。面向对象的方法和面向对象的数据库

1.面向对象技术的形成和发展

20世纪80年代以来,面向对象语言异军突起,形成了两大类面向对象语言:一类是纯面向对象语言,如Smalltalk和Eiffel另一种是混合面向对象语言,即在过程化语言中加入面向对象的机制,如C++、Objective-C等。现在,作为80年代最流行的C语言的延伸,面向对象的C++是目前应用最广泛的语言。C++编译生成的代码性能和传统C编译生成的代码性能几乎一样。面向对象的Pascal和BASIC也已在DOS和Windows上的OS/2中实现。现在,面向对象技术已经成为一种广泛使用的成熟技术和方法,并且有一系列成熟的商品化软件工具支持OON。OON涉及到以下几个基本概念:信息是指对事物的一种表示或描述。对象是由信息及其关于信息处理的描述组成的包。消息是对某种信息处理的描述。一个类是一个或几个相似对象的描述。实例是由特定类描述的对象。因此,每个对象都是一个类的实例,而一个类是一些实例的所有相似特征的描述。方法是描述对象对消息的响应。对象是一个普遍适用的基本逻辑概念。它是一个有组织的信息实体或结构。它既可以表示抽象的概念,也可以表示具体的程序模块。它可以代表软件和硬件。因此,OOM为同时在现实世界和机器世界中的系统分析、设计和实现提供了统一的方法。

2.程序设计方法学

随着软件系统规模和复杂程度的扩大,软件的成本也急剧增加,而软件的可靠性和可维护性却明显下降。为此,人们惊呼软件危机。软件危机的根源在于传统的冯?冯·诺依曼机器的结构与人们解决问题的方法不一致。这种不一致主要表现在以下几个方面:

(1)语言差距;

(2)编程的差距;

(3)冯·诺依曼机器之间的差距。语言鸿沟是软件危机的主要原因之一。目前,面向对象语言在缓解软件危机方面发挥了巨大作用,取得了前所未有的积极成果。

3.面向对象的编程方法

经验告诉我们,在软件系统中,“进程”或“操作”是不稳定和可变的,而“数据结构”或“对象”相对来说要稳定得多。因此,传统的以过程为中心的软件复用性差;而以数据结构或对象为中心设计的软件具有更好的复用性。面向对象编程侧重于数据结构或对象,力求现实世界和机器世界中问题的一致性。当用OOM编程时,第一步是面向对象的分析。它的任务是理解问题所涉及的对象以及它们之间的关系,然后在现实世界中构造问题的对象模型,以反映所要解决的“实质性问题”。然后进行面向对象的设计,即设计软件的对象模型。根据软件开发环境的功能,将问题的对象模型从现实世界转移到机器世界。在软件系统中,设计每个对象,对象之间的关系(如继承关系),对象之间的通信方式(如消息方式)等等。总之,在这个阶段,要明确每个对象应该做什么,以及它们之间的关系。面向对象实现是指软件功能的具体实现,也就是怎么做,包括对象内部功能的实现和系统用户界面的确定。在一个系统的实际开发中,上述三个阶段必须有机结合。现在提倡面向对象的软件开发方法并进一步规范,开发了一系列的OOM软件工具和软件环境来支持软件自动生成。

4.面向对象方法的基本概念和特征。

本质上,软件是问题及其解决方案的表达。显然,如果软件能够直接、自然地表达求解方法,那么软件不仅容易理解,而且具有很高的可靠性和可维护性。如果能在机器世界中按照人们通常的思维方式建立问题模型,就能提高软件模块化和复用的可能性。面向对象方法的基本原理是:根据人在现实世界中的通常思维方式,建立问题在机器世界中的模型,设计出尽可能自然地代表求解方法的软件。在OOM中,对象和消息传递分别作为概念来表达事物和事物之间的关系。类和继承是适合人们一般思维方式的描述机制。方法允许各种操作作用于类对象。这个集成了对象、类、消息、继承和方法的OOM的基本点在于对象的封装和继承。封装可以将对象的定义从其实现中分离出来;继承可以反映类之间的关系,导致实体的动态绑定和多态,从而构成了OOM的基本特征。

(1)对象为了使用计算机解决问题,现实世界中的对象必须表达为计算机内部的概念,即机器世界中的对象(简称机器对象,或称对象)。正因如此,“对象”在两个不同的世界里有着不同的含义,可以从下面区分。从存储的角度来说,机器对象占用了一个存储空间空,里面有数据和方法。从机器实现机制的角度来看,机器对象中的私有数据代表了对象的状态,对象的状态只能通过私有方法来改变。每当需要一个对象来完成某些处理工作时,只有其他对象才能向该对象发送消息。对象响应消息后,根据消息模式找出匹配的方法,并执行该方法。方法定义对对象的操作。

(2)通过在对象之间传递消息来完成消息和方法程序的执行。7发送消息的对象称为发送方,接收消息的对象称为接收方。消息中只包含发送方的要求,它只告诉接收方需要完成哪些流程,而没有指明接收方应该如何完成这些流程。消息完全由接收者解释,并确定完成所需处理的方式。一个对象可以接收多条不同形式和内容的消息;相同形式的消息可以发送给不同的对象。不同的对象对同一条消息可以有不同的解释,因此它们可以做出不同的反应。在这里,反应是不必要的。这显然不同于子程序的调用/返回。所有的对象都被分成各种对象表,每个类都定义了一组所谓的“方法”。事实上,方法允许对这个类对象进行各种操作。当一个面向对象的程序运行时,它通常要做三件事:

(1)根据需要创建对象;

(2)从一个对象(或用户)向另一个对象传递消息;

(3)如果不再需要该对象,应将其删除,并回收其占用的存储单元。

(3)类和类层次在面向对象编程中,对象是程序的基本单位。类似的对象可以像传统编程语言中变量和类型的关系一样合并成一个类。程序员只需要定义一个类对象,就可以得到几个实例作为可用对象。具体来说,一个类是由方法和数据组成的,它是对一个类对象本质的描述。它包括外部特征和内部特征。对象的外部特征是通过描述消息模式及其相应的处理能力来定义的。通过描述内部状态的表现形式和内在处理能力的实现,定义了对象的内部实现特征。对象是在执行过程中根据它们所属的类动态生成的。一个类可以生成许多不同的对象。相同的类对象具有相同的特征。一个物体的内部状态只能由它自己修改,其他任何图像都不能修改。因此,虽然同一类的对象具有相同的内部状态,但它们可以具有不同的内部状态,因此这些对象并不完全相同。类的上层可以有超类,下层可以有子类,这样就形成了类的层次结构。等级制度的一个重要特征是继承。一个类可以直接或间接继承其超类的所有描述。继承是可传递的。一个类可以有多个子类或超类。抽象类是不能创建实例的类。类组合相关的类来提供一个共同的根,从这个根派生出其他的子类。通常一个抽象类只描述这个类的相关操作接口。或者部分实现操作;的完整实现留给一个或几个子类,抽象类通常用于定义协议或概念。(4)继承继承是一种在子类、超类和对象中自动共享方法和数据的机制。如果没有继承,不同类中的对象可能会有大量重复的数据和方法。继承自然反映了对象之间的联系。

(5)封装封装是一种信息隐藏技术。用户只能看到对象封装接口上的信息,对象内部的信息对用户是隐藏的。封装的目的是将对象的用户与对象的设计者分开。用户只需要按照设计者的要求访问对象,而不需要知道实现的细节,便于系统的集成。封装是系统集成的有力手段。它与包类描述相关。类的每个实例都是一个独立的包(或组件)。明确地将对象的规范与对象的实现分开是面向对象的一个主要特征。封装本身就是一个模块,把对象的定义模块和实现模块分开,这样就方便了维护和修改。

(6)多态性所谓多态性,就是一个名字可以有多种含义。它与多态动态类型和静态类型有关。动态类型是指在执行过程中可以改变的类型。静态类型是在程序文本中声明时确定的类型。在面向对象系统中,利用重名的多义性不仅不会带来混乱,还会给需求分析和设计带来好处。

5.动态群聚

绑定其实并不是一个新概念。一个程序被编译连接成可运行的目标代码,也就是可执行代码被捆绑在一起。用传统语言编写的程序在运行前可以进行集群,所以称之为静态绑定。另一方面,面向对象语言可以在程序运行时被捆绑在一起,所以它们被称为动态绑定。动态群聚增加了程序的简洁性和可扩展性,使得程序增删自如,不易出错,但效率略低。需要指出的是,静态聚束运行效率高,但改造维护工作量大。

6.面向对象的系统分析方法

系统分析的过程是提取系统需求的过程,是指系统为了满足用户的需求必须做什么,而不是系统是如何实现的。系统分析通常是需求文档的起点,与用户的一系列讨论是开始。一般来说,参与文档编制的人应该包括系统的最终用户、问题领域的专家、系统的开发者和其他感兴趣的人。近十年来,系统分析中采用了功能分解法、数据流法和信息模拟法。最近,已经研究了面向对象的分析(OOA)方法。下面将总结这四种主要的需求分析方法。

(1)功能分解法,可以表示为功能=子功能+子功能接口。

(2)数据流法数据流法,俗称结构分析法,可以表示为数据流=数据存储+数据转换+过程描述+数据字典。

(3)信息仿真的主要建模工具是实体关系图,已经发展到语义数据模型。信息模拟方法可以表示为信息模拟方法=对象+属性+关系+超类+子类+对象。

(4)面向对象的方法面向对象的含义很广,因为“对象”这个词在不同的领域可以有不同的解释。面向对象可以表述为面向对象方法=对象+类+继承+消息通信。面向对象分析是基于信息模拟和面向对象编程语言的概念。作为一种综合方法,面向对象分析包括五个步骤:①确定类和对象;②识别结构;③找准主题;④定义属性;⑤定义方法。现在有一些支持OOA的面向对象分析的CASE工具来加速OOA的自动化和标准化。

7.面向对象的设计和实现

从面向对象分析到面向对象设计是一个逐渐扩大的细分过程。类似于传统的基于实体关系模型的系统分析和设计,面向对象设计使用面向对象的概念模型。面向对象概念模型是基于面向对象方法的基本概念。最后,利用面向对象语言实现了设计的概念模型。限于篇幅,我就不详细讨论了。

8.面向对象的数据库

面向对象方法和数据技术的结合产生了面向对象数据库。面向对象数据库已经成为数据库的发展方向之一,在理论和实践上都受到越来越多的关注。到了80年代,关系数据库已经变得很熟悉,但是新的应用领域对数据库的进一步发展提出了新的要求。

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » 全国计算机等级考试四级复习纲要六[7]

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情