《数据库原理与应用》课后习题参考题答案

- - .. --

3) 软件开发生命周期包括需求或概念阶段,规格说明阶段:将用户需求写成规格说明文档,阐述软件产品的预期功能。计划阶段:草拟软件项目管理计划,细化软件开发的各个方面。设计阶段:为实现软件规格说明文档中的功能而经历两个连续的设计阶段。第一个阶段是概要设计阶段;第二个阶段是详细设计阶段。这两个设计阶段的文档描述如何实现软件产品。编程(编码或实现)阶段:用特定的计算机编程语言编写各个模块的代码。, 集成(测试)阶段:完成模块的单独测试和集成测试,经历 Alpha 测试和 Beta 测试。维护阶段:完成所有维护工作。当增强和更改软件时,需要更新相应的软件规格说明文档。 4)应用程序在访问数据库时,需要与 DBMS 建立通信连接。但是,不同厂家的 DBMS 提供不同的数据库访问应用程序接口(Application Programming Interface,API)。因此,需要提供一种统一的数据库通信方式来屏蔽不同厂家的 DBMS 的 API 差异性。数据库连接中间件正是这样一种技术。主要 ODBC、JDBC 和嵌入式 SQL 技术。

ODBC(Open Database Connectivity,开放数据库互连)是微软公司开放服务结构(WOSA, Windows Open Services Architecture)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准 API。这些 API 利用 SQL 来完成其大部分任务。

JDBC(Java Data Base Connectivity,Java 数据库连接)是一种用于执行 SQL 语句的 Java API,可以为多种关系数据库提供统一访问,它由一组用 Java 语言编写的类和接口组成。 有了 JDBC API,就不必为访问 Sybase 数据库专门写一个程序,为访问 Oracle 数据库又专门写一个程序,或为访问 SQL Server 数据库又编写另一个程序等。作为 API,JDBC 为程序开发提供标准的接口,并为数据库厂商及第三方中间件厂商实现与数据库的连接提供了标准方法。

JDBC 使用已有的 SQL 标准并支持与其他数据库连接标准,如 ODBC 之间的桥接。JDBC 实现了所有这些面向标准的目标并且具有简单、严格类型定义且高性能实现的接口。JDBC 实际上做了 3 件事:建立与数据库的连接、发送 SQL、处理结果。

SQL 语言可以独立使用,称为交互式(Interactive SQL,ISQL)。但 ISQL 的功能仅限于数据库上操作,缺少数据处理能力。而一个应用程序既要访问数据,又要处理数据,把 SQL 嵌入到程序设计语言,如 C,C++,Java 等,即宿主语言中,将两者的功能相结合起来,是目前解决这个问题的实现途径。这样使用的 SQL 称为嵌入式 SQL(Embedded SQL,ESQL)。

word 可编辑.

- - .. --

5)DBMS 通过游标(Cursor)提供了一种从记录集中逐一访问记录的灵活手段。就本质而言,游标实际上是一种能从包括多条数据记录的结果集中每次提取一条记录的机制。游标总是与一条 SQL 选择语句(Select)相关联。Transact_SQL 游标是由 DECLARE CURSOR 语法定义,主要用在 Transact_SQL 脚本、存储过程和触发器中。Transact_SQL 游标主要用在服务器上,由从客户端发送给服务器的 Transact_SQL 语句或是批处理、存储过程、触发器中的 Transact_SQL 进行管理。 Transact_SQL 游标不支持提取数据块或多行数据。

6)存储过程是一组已被编辑在一起的,存储在服务器上的,执行某种功能的预编译 SQL 语句。它是一种封装重复任务操作方法,支持用户提供的参数变量,具有强大的编程能力。存储过程非常类似于 DOS 系统中的批处理文件。它将完成某项任务的许多 SQL 语句写在一起,组成命令集合的形式,然后通过执行该存储过程就可以完成相应的任务。

优点:加快程序的执行速度、减少网络的流量、提供一种安全机制、允许程序模块化设计、提高编程的灵活性

7)从本质上看,触发器是一种特殊的存储过程,它不同于我们前面介绍过的存储过程。触发器主要是通过事件进行触发而被执行的,而存储过程可以通过存储过程名字而被直接调用。触发器在插入、删除或修改特定表中的数据时触发执行,它比数据库本身标准的功能有更精细和更复杂的数据控制能力。当使用 INSERT、DELETE、UPDATE 命令对触发器所保护的数据进行修改时,触发器能够被自动激活,从而确保对数据的处理必须符合由这些 SQL 语句所定义的规则。它除了能够完成复杂的完整性约束以外,还可以在主动数据库(Active Database)

word 可编辑.

- - .. --

的应用中对不同的外部事件做出及时反应。

作用:维护约束:前面讨论了触发器可以用于维护外码和语义约束。这种类型的触发器通常形式是使用 ON DELETE 和 ON UPDATE 子句。

业务规则:业务是对基本规则简洁的正式陈述,这些基本规则是企业中业务运作的基础。监控:由于在数据库中每条新记录的插入都是一个事件,触发器可以间接地用于监控这些对象的状态。

辅助高速缓存数据的维护:物化视图(MATERIALIZED VIEW)是这类应用的实例。每当物化视图的基础表发生改变时,与该基础表相连的触发器就会更新物化视图。

简化应用设计:将核心编程逻辑从异常处理中分离出来,可以相当大地简化某些应用。若异

常可以被模型化为数据库中的更新操作,则触发器是此类应用的理想实现途径。 CREATE TRIGGER 触发器名称 ON { table | view } { { { FOR | AFTER | INSTEAD OF } { [ INSERT ] [ , ] [ UPDATE ] [ , ] [DELETE ] } AS

} }

宁可累死在路上,也不能闲死在家里!宁可去碰壁,也不能面壁。是狼就要练好牙,是羊就要练好腿。什么是奋斗?奋斗就是每天很难,可一年一年却越来越容易。不奋斗就是每天都很容易,可一年一年越来越难。能干的人,不在情绪上计较,只在做事上认真;无能的人!不在做事上认真,只在情绪上计较。拼一个春夏秋冬!赢一个无悔人生!早安!—————献给所有努力的人word 可编辑.

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4