搜档网
当前位置:搜档网 › SQLServer2008数据库应用教程课后答案

SQLServer2008数据库应用教程课后答案

SQLServer2008数据库应用教程课后答案
SQLServer2008数据库应用教程课后答案

第1章数据库基础

一、单项选择题

1.C 2.A 3.C 4.D 5.D

6.B 7.A 8.B 9.B 10.D

11.C 12.A 13.C 14.B 15.A

16.B 17.A 18.D 19.B 20.B

21.A; D 22.A 23.C 24.D 25.B

26.B 27.B 28.D 29.B 30.B

二、填空题

1.概念;数据

2.属性

3.码

4.一对一联系;一对多(或多对一)联系;多对多联系

5.候选码

6.候选码

7.关系名(属性1,属性2,…,属性n)

8.关系数据结构;关系操作集合;关系完整性约束

9.实体;参照;用户定义的;实体;参照

10.空植

11.需求分析阶段;概念结构设计阶段;逻辑结构设计阶段;物理结构设计阶段;数据库实施阶段;数据库运行和维护阶段

12.准确了解并分析用户对系统的要求,尤其是用户的信息要求、处理要求、安全性与完整性要求,确定所要开发的应用系统的目标,产生用户和设计者都能接受的需求说明书,做为下一步数据库概念结构设计的基础。

13.将需求分析得到的用户需求抽象为信息结构即概念模型。

14.将概念结构进一步转化为某一DBMS支持的数据模型,并对其进行优化。

15.为逻辑数据模型选取一个最适合应用环境的物理结构,包括数据库在物理设备上的存储结构和存取方法。

三、指出以下各缩写的英文意思和中文意思

1.DB:DataBase

2.DBMS:Database Management System

3.RDBMS:

4.DBS:DataBase System

5.DBA:Relational Database Management System

6.NF:Normal Form

7.DDL:Data Definition Language

四、按题目要求回答问题

1.答:

2.答:

3.答:

(1)关系R是2NF。

因为R的候选码为课程名,而课程名→教师名,教师名→教师地址,所以课程名→教师地址,即存在非主属性教师地址对候选码课程名的传递函数依赖,因此R不是3NF。

又因为不存在非主属性对候选码的部分函数依赖,所以R是2NF。

(2)关系R存在删除异常。当删除某门课程时会删除不该删除的教师的有关信息。

(3)分解为高一级范式如下:

R1

R2

分解后,若删除课程数据时,仅对关系R1操作,教师地址信息在关系R2中仍然保留,不会丢失教师方面的信息。

4.答:

(1)R不属于3NF,它是2NF。

(2)因为R的候选码为职工号和职工名,而:

职工号→单位号,单位号→单位名,所以职工号→单位名,即存在非主属性“单位名”对候选码“职工号”的传递函数依赖。因此不是3NF。

规范化后的关系子模式为如下所示的关系R1与R2。

R1

R2

5.答:

(1)关系Stock是1NF,分析如下:

●关系Stock的码为(counter,goods),counter、goods为主属性,price为非主属

性。

●存在的函数依赖有:(counter,goods)→price goods→price

●因此可以看出,非主属性price不完全函数依赖于码,不符合2NF的定义。

●得出结论:关系Stock是1NF

(2)存在异常:

●删除异常:例如,如果删除柜台2的元组,则丢失了货物名称Envelop及其价格1。

●插入异常:例如,如果知道了商品Lamp的价格20,则不能马上将该商品插入到Stock

中,直到有一个柜台进了该货物才行。

(3)规范化:将以上关系分解为两个关系如下。

关系Counter-Goods 关系Goods-Price

一、单项选择题

1.B 2.C 3.D 4.B 5.C

6.D 7.A 8.B

二、简答题

1.答:

客户机/服务器结构把整个任务划分为客户机上的任务和服务器上的任务。客户机上的任务主要如下。

●建立和断开与服务器的连接。

●提交数据访问请求。

●等待服务通告,接受请求结果或错误。

●处理数据库访问结果或错误,包括重发请求和终止请求。

●提供应用程序的友好用户界面。

●数据输入/输出及验证。

服务器上的任务主要如下。

●为多用户管理一个独立的数据库。

●管理和处理接收到的数据访问请求,包括管理请求队列、管理缓存、响应服务、管理结

果和通知服务完成。

●管理用户账号、控制数据库访问权限和其他安全性。

●维护数据库,包括数据库备份和恢复。

●保证数据库数据的完整或为客户提供完整性控制手段。

2.答:

(1)两层结构

在两层结构中,SQL Server安装在一个中心服务器上,数据库存储在该服务器上,该服务器称为数据库服务器,可以被多台客户机访问。众多的客户机通过网络直接访问数据库服务器。客户机运行处理业务的程序和显示处理结果的程序。两层结构比较适合于用户量较少的情况,当用户量较大时,数据库服务器的性能会显著下降。

(2)三层结构

在三层结构中引入了一层应用服务器。客户机只运行向应用服务器发送请求和显示请求结果的程序,客户机没有处理业务的程序,应用服务器运行处理业务的程序,多个客户机可以同时访问应用服务器,应用服务器负责访问数据库服务器,并取回处理结果,将结果返回给客户机。三层结构适用于客户量较大的情况。

3.答:

SQL Server的四个系统数据库是master、model、msdb和tempdb数据库。

(1)master数据库是SQL Server系统最重要的数据库,它记录了SQL Server系统的所有系统信息,包括所有的登录帐户信息、系统配置信息、SQL Server的初始化信息和其它系统及用户数据库的相关信息。

(2)model数据库是所有用户数据库和tempdb数据库的模板数据库,它含有master 数据库所有系统表的子集,这些系统表是每个用户定义数据库所需要的。

(3)msdb数据库是代理服务数据库,用于为调度警报、作业和记录操作员的信息提供存储空间。

(4)tempdb数据库用于为所有的临时表、临时存储过程提供存储空间,它还用于任何其它的临时存储要求,例如存储SQL Server生成的工作表。tempdb数据库是全局资源,所有连接到系统的用户的临时表和存储过程都存储在该数据库中。tempdb数据库在SQL Server 每次启动时都重新创建,因此该数据库在系统启动时总是干净的,临时表和存储过程在连接断开时自动除去。

4.答:

SQL Server包含的对象如:表、视图、存储过程、索引、触发器。

(1)表:在数据库中,所有的数据存放在表中,表由行(记录)和列(字段)组成,一个数据库可以包含多个表。

(2)视图:视图是由查询数据表产生的结果,是一种虚构的表。视图把表中的部分数据映射出来供用户使用,这样可以防止所有的用户直接对表进行操作而导致系统的性能和安全性的下降。

(3)存储过程:一个存储过程实际上是由一组SQL语句组成的完成特定功能的程序。存储过程在服务器端被编译后可以反复执行。

(4)索引:索引是对表中的一个或多个列的值进行排序的结构。可以利用索引提高对数据库表中的特定信息的访问速度。

(5)触发器:触发器由一组SQL语句组成,当对表或视图进行某种操作(添加、删除或修改)时,这组命令会在一定情况下自动执行。

第3章服务器与客户端配置

一、填空题

1.使用Windows身份验证,使用SQL Server身份验证

2.Start,pause,continue

3.SQL Server配置管理器

4.sp_configure

5.DSN

二、选择题

1.C 2.C 3.C 4.A 5.C

三、判断题

1.A 2.B 3.B 4.B 5.A

四、问答题

1.答:

使用net start命令启动Windows的服务;使用net pause命令暂停Windows服务;使用net continue命令继续被暂停的Windows服务;使用net stop命令停止Windows服务。

2.答:

SQL Server 2008支持的网络协议包括Shared Memory、Named Pipes、TCP/IP和VIA等。

3.答:

参照表3-1。

五、上机练习题(略)

第4章Transact-SQL语言基础

一、选择题

1.B;C 2.C;D;F;G;H 3.B 4.A;D 5.D

6.A 7.B;D 8.D 9.B 10.A;B;C

二、填空题

1.a.b.d.c

2.常规;分隔;双引号;方括号

3.在其中定义局部变量的批处理、存储过程或语句块的内部;任何程序;

4.@ ; @@

5.DECLARE @Myvar CHAR(5) ;SET @Myvar='Hello'

7.%e% aaa ;%e%aaa

8.FALSE;TRUE

9.math>0 AND math<100

10.行集函数;聚合函数;标量函数

11.SELECT STR(YEAR('03/25/2012'),4)+'年'+STR(MONTH('03/25/2012'),2)+'月'+STR(DAY('03/25/2012'),2)+'日'

12.CAST(GETDATE() AS char)

13.CONVERT(char,GETDATE(),105)

14.CONVERT函数的参数比CAST函数的参数多了一个“样式”,该参数用于指定以不同的格式显示日期和时间。

15.--(双连字符);/* ... */(正斜杠-星号对)

16.解析;编译;执行

三、指出以下各缩写的英文意思和中文意思

1.Structured Query Language 结构化查询语言

2.Data Definition Language 数据定义语言

3.Data Manipulation Language 数据操纵语言

4.Data Control Language 数据控制语言

四、上机练习题

1.答:

PRINT GETDATE() -- GETDATE()获得当前日期,PRINT将其打印出来

2.答:

DECLARE @VarDate datetime

SET @VarDate = GETDATE() -- 今天的日期

PRINT DATEADD(day, 12, @VarDate) -- 12天后的日期

3.答:

实现语句为:

use pubs

declare @A binary,@B binary

set @A=100

set @B=200

print @A

print @B

打印结果为:

0X64

0XC8

4.答:

DECLARE @i int,@sum int

SET @i=1

SET @sum=0

WHILE @i<=1000

SET @sum=@sum+@i

SET @i=@i+2

END

PRINT '1+3+5+7+……+999的值为:'+str(@sum)

第5章数据库管理

一、选择题

1.B;A;C;B 2.B;A;C 3.A;C 4.C 5.A

6.B

二、填空题

1.主数据库;次数据库;事务日志

2.主数据库;次数据库;事务日志

3.逻辑文件名;物理文件名

4.未指定组的其他

5.创建数据库的用户

6.ATTACH

7.DROP DA TABASE

8.sp_detach_db

三、简答题

1.答:

事务日志文件用于存储数据库的更新情况等事务日志信息。例如,使用INSERT、UPDATE、DELETE等对数据库进行更改的操作都会记录在事务日志文件中,当数据库损坏时,可以使用事务日志文件恢复数据库。

2.答:

“文件自动增长”表示用户可以指定数据文件自动按下列选项所指定的大小增长。

●按兆字节:指定数据文件增长所基于的兆字节数。

●按百分比:指定希望数据文件自动增长所基于的百分比。

●不限制文件增长:指定数据文件增长不受限制。

●限制文件增长(MB):指定数据文件可以增长到的大小(MB)。

“自动收缩”表示允许定期对数据库进行检查,当数据库文件或日志文件的未用空间超过其大小的25%时,系统将会自动缩减文件使其未用空间等于25%。当文件大小没有超过其建立时的初始大小时,不会缩减文件,缩减后的文件也必须大于或等于其初始大小。

3.答:

(1)执行下面的语句,将数据库设置为离线状态。

ALTER DATABASE 数据库名SET OFFLINE

(2)将文件移动到其他位置。

(3)执行ALTER DA TABASE 数据库名MODIFY FILE语句,修改数据库文件的位置。

(4)运行下面的语句,将数据库设置为在线状态。

ALTER DATABASE 数据库名SET ONLINE

四、上机练习题

1.答:

CREATE DATABASE mydb1 --数据库名称

ON PRIMARY

(NAME =f1, --主数据文件逻辑名称

FILENAME ='D:\sql_data\f1.mdf',

SIZE =2, --初始大小为2MB

MAXSIZE =unlimited, --最大尺寸为无限大

FILEGROWTH =5%), --增长速度为5%

(NAME=f2, --次数据文件逻辑名称

FILENAME='D:\sql_data\f2.ndf',

SIZE=3, -- 初始大小为3MB

MAXSIZE=200, --最大尺寸200MB

FILEGROWTH=2) -- 增长速度为2MB

LOG ON

(NAME=lg1, --事务日志逻辑名文件

FILENAME='D:\sql_log\lg1.ldf',

SIZE=1,

MAXSIZE=10,

FILEGROWTH=1)

3.答:

(1)

ALTER DATABASE mydb1

ADD FILE

(NAME=f3,

FILENAME='D:\sql_data\ f3.ndf',

SIZE=2, MAXSIZE=5, FILEGROWTH=1)

(2)

ALTER DATABASE mydb1

MODIFY FILE

(NAME = f3,

SIZE = 3MB,MAXSIZE=10MB)

(3)

ALTER DATABASE mydb1 MODIFY NAME = mydb2

4.答:

exec sp_addumpdevice 'disk', 'mycopy2','d:\mybackup2\mydb2.bak'

5.答:

USE master

GO

CREATE DATABASE mydb1 ON

( FILENAME = 'C:\Program Files\Microsoft SQL

Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\mydb1.mdf' ),

( FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\mydb1_log.ldf' )

FOR ATTACH

GO

6.答:

(3)

ALTER DATABASE Archive SET OFFLINE

(5)

ALTER DATABASE Archive MODIFY FILE (NAME=arch, FILENAME='d:\DataFile\archdat.mdf')

(6)

ALTER DATABASE Archive SET ONLINE

第6章表的管理

6.9 练习题

一、填空题

1.行;列

2.永久表;临时表;永久表;临时表

3.CREATE TABLE

4.主键约束;唯一性约束;检查约束;默认约束;外键约束

5.外键

6.sp_bindrule

7.TRUNCATE TABLE

8.GROUP BY

9.COMPUTE

10.内连接;外连接;交叉连接

11.UNION

12.INTO

二、选择题

1.D 2.BCD 3.A 4.B 5.B

6.B 7.C 8.C 9.B 10.C

三、判断题

1.A 2.B 3.B 4.B 5.B

6.B 7.A 8.A 9.A

四、简答题

1.答:

表约束(Constraint)是SQL Server提供的一种强制实现数据完整性的机制,包括主键(PRIMARY KEY)约束、惟一性(UNIQUE)约束、检查(CHECK)约束、默认(DEFAULT)约束`和外键(FOREIGN KEY)约束。

2.答:

规则(Rules)是一种SQL Server对象,它用于执行一些与CHECK约束相同的功能。CHECK约束比规则更简明,一个列只能应用一个规则,但是却可以应用多个CHECK约束。CHECK 约束作为CREATE TABLE语句的一部分进行指定,而规则以单独的对象创建,然后绑定到列上。

3.答

连接查询包括内连接、外连接和交叉连接等。

内连接使用比较运算符(最常使用的是等号,即等值连接)根据每个表共有列的值匹配两个表中的行。只有每个表中都存在相匹配列值的记录才出现在结果集中。在内连接中,所有表是平等的,没有主次之分。

与内连接相对,参与外连接的表有主次之分。以主表的每一行数据去匹配从表中的数据列,符合连接条件的数据将直接返回到结果集中,对那些不符合连接条件的列,将被填上NULL值后再返回到结果集中。

在交叉连接查询中,两个表中的每两行都可能互相组合成为结果集中的一行。交叉连接并不常用,除非需要穷举两个表的所有可能的记录组合。

4.答

视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值集形式存在。行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成。

五、上机练习题

(一)表的定义及约束

2.答:

(1)

CREATE TABLE 职工基本信息

(职工编号 CHAR(5) PRIMARY KEY,

姓名 CHAR(10) NOT NULL,

性别 CHAR(2),

出生日期 DATETIME,

部门编号 CHAR(3))

(2)

CREATE TABLE 工资

(职工编号 CHAR(5) PRIMARY KEY,

基本工资 MONEY,

奖金 MONEY,

实发工资 MONEY)

(3)

CREATE TABLE 部门信息

(部门编号 CHAR(3) PRIMARY KEY,

部门名称 CHAR(20) NOT NULL,

部门简介 VARCHAR(50))

3.答:

ALTER TABLE 职工基本信息ADD 职称 CHAR(10)

4.答:

ALTER TABLE 职工基本信息 DROP COLUMN 职称

5.答:

ALTER TABLE 部门信息 ADD CONSTRAINT uk_dptname UNIQUE(部门名称)

6.答:

ALTER TABLE 职工基本信息 ADD CONSTRAINT chk_sex CHECK (性别 in ('男','女')) 7.答:

ALTER TABLE 工资 ADD CONSTRAINT chk_salary CHECK (基本工资>0)

8.答:

ALTER TABLE 工资 ADD CONSTRAINT dftsalary1 DEFAULT 0 FOR 基本工资

ALTER TABLE 工资 ADD CONSTRAINT dftsalary2 DEFAULT 0 FOR 奖金

9.答:

ALTER TABLE 职工基本信息 ADD CONSTRAINT dftsex DEFAULT '男' FOR 性别

10.答:

ALTER TABLE 职工基本信息 ADD CONSTRAINT fk_1

FOREIGN KEY (部门编号) REFERENCES 部门信息(部门编号)

ALTER TABLE 工资 ADD CONSTRAINT fk_2 FOREIGN KEY (职工编号)

REFERENCES 职工基本信息(职工编号)

11.答:

ALTER TABLE 职工基本信息 DROP CONSTRAINT fk_1

ALTER TABLE 工资 DROP CONSTRAINT fk_2

(二)表的更新

1.答:

INSERT INTO 职工基本信息 VALUES ('10001','王佳','女','1979/02/01','001') INSERT INTO 职工基本信息 VALUES ('20001','张欣','男','1965/05/10','002') INSERT INTO 职工基本信息 VALUES ('20003','李勇','男','1976/08/01','002') INSERT INTO 职工基本信息 VALUES ('10002','刘军','男','1973/07/01','001') 2.答:

INSERT INTO 工资(职工编号,基本工资,奖金) VALUES ('10001',2000,2200)

INSERT INTO 工资(职工编号,基本工资,奖金) VALUES ('10002',2500,3000)

3.答:

INSERT INTO 工资(职工编号,基本工资,奖金)

SELECT 职工编号,基本工资,奖金

FROM 临时工资信息

4.答:

CREATE TABLE 部门平均年龄

(部门编号 CHAR(15),

平均年龄 SMALLINT)

5.答:

INSERT INTO 部门平均年龄

SELECT 部门名称,AVG(year(getdate())-YEAR(出生日期))

FROM 职工基本信息

GROUP BY 部门编号

6.答:

UPDATE 工资 SET 奖金=奖金*1.1 FROM 职工基本信息

WHERE 职工基本信息.职工编号=工资.职工编号 AND 职工基本信息.部门编号='001' 7.答:

UPDATE 工资 SET 实发工资=基本工资+奖金

8.答:

DELETE FROM 工资 WHERE 职工编号='10001'

9.答:

DELETE 工资 FROM 职工基本信息

WHERE 职工基本信息.职工编号=工资.职工编号 AND 职工基本信息.部门名称='001'

(三)表的查询

1.答:

SELECT * FROM Employees

2.答:

SELECT Emp_Name,Sex,Wage FROM Employees

3.答:

SELECT Emp_Name,Sex,Wage*1.2 as NewWage FROM Employees

4.答:

SELECT DISTINCT title FROM Employees

5.答:

SELECT Emp_Name, title FROM Employees WHERE Dep_id=1

6.答:

SELECT Emp_Name FROM Employees WHERE title='部门经理' AND Sex='女'

7.答:

SELECT * FROM Employees WHERE Wage BETWEEN 3000 AND 4000

8.答:

SELECT * FROM Employees WHERE Wage NOT BETWEEN 3000 AND 4000

9.答:

SELECT * FROM Employees WHERE Dep_id IN(1,2)

10.答:

SELECT * FROM Employees WHERE IdCard LIKE '110%'

11.答:

SELECT * FROM Employees WHERE IdCard LIKE '[0-3]%'

12.答:

SELECT MAX(Wage),MIN(Wage),SUM(Wage),AVG(Wage) FROM titles

13.答:

SELECT COUNT(DISTINCT(title)) FROM Employees

14.答:

SELECT COUNT(*) FROM Employees WHERE title='部门经理'

15.答:

SELECT Dep_id AS 部门编号,COUNT(emp_id) AS 人数 FROM Employees GROUP BY Dep_id

16.答:

SELECT Dep_id AS 部门编号, AVG(Wage) AS 平均工资

FROM Employees GROUP BY Dep_id

17. 答:

SELECT d.Dep_id AS 部门编号, d.Dep_name AS 部门名称, e.Emp_name AS 姓名, e.Wage AS 工资 FROM Employees e, Departments d WHERE e.Dep_id= d.Dep_id ORDER BY d.Dep_id

COMPUTE AVG(Wage) BY d.Dep_id

18.答:

SELECT e.Emp_name, e.Sex, e.Title, d.Dep_name

FROM Employees e, Departments d WHERE e.Dep_id= d.Dep_id

19.答:

SELECT e.Emp_name, e.Sex, e.Title, d.Dep_name

FROM Employees e INNER JOIN Departments d ON e.Dep_id= d.Dep_id

20.答:

SELECT d.Dep_name, e.Emp_name, e.Sex, e.Title

FROM Departments d LEFT JOIN Employees e ON e.Dep_id= d.Dep_id

21.答:

SELECT * FROM Employees

WHERE Dep_id=(SELECT Dep_id FROM Departments WHERE Dep_name='办公室')

(四)

(五)视图

1.答:

CREATE VIEW view1

AS

SELECT e.Emp_name AS 姓名, e.Sex AS 性别, e.Title AS 职务, d.Dep_name AS 部门

FROM Employees e INNER JOIN Departments d

ON e.Dep_id = d.Dep_id

2.答:

SELECT * FROM view1

3.答:

SELECT * FROM view1

WHERE 姓名 LIKE '李%'

4.答:

ALTER VIEW view1

AS

SELECT e.Emp_name AS 姓名,e.Title AS 职务, d.Dep_name AS 部门

FROM Employees e INNER JOIN Departments d

ON e.Dep_id = d.Dep_id

5.答:

DROP VIEW view1

第7章规则和索引

一、填空题

1.CREATE RULE

2.绑定规则

3.sp_unbindrule

4.DROP RULE

5.聚集

6.B树

7.CREATE INDEX

8.INCLUDE

二、选择题

1.B 2.C 3.B 4.C 5.C

三、判断题

1.A 2.B 3.B 4.A 5.A

四、问答题

1.答

规则是用于执行一些与检查约束相同的功能。检查约束比规则更简明,一个列只能应用一个规则,但是却可以应用多个检查约束。

检查约束可以在CREATE TABLE语句中定义,而规则作为独立的对象创建,然后绑定在指定的列上。

2.答

用户对数据库最常用的操作就是查询数据。在数据量比较大时,搜索满足条件的数据可能会花费很长时间,从而占用较多的服务器资源。为了提高数据检索的能力,数据库中引入了索引的概念。

数据库的索引和书籍中的目录相似。有了索引,就可以快速地在书中找到需要的内容,而无需顺序浏览全书了。书中的目录是主要章节的列表,其中注明了包含各一章节的页码。而数据库中的索引是一个表中所包含的值的列表,其中注明了表中包含各个值的记录所在的存储位置。可以为表中的单个列建立索引,也可以为一组列建立索引。

索引提供指针以指向存储在表中指定列的数据值,然后根据指定的排序次序排列这些指针。数据库使用索引的方式与使用书的目录很相似:通过搜索索引找到特定的值,然后跟随指针到达包含该值的行。因为索引是有序排列的,所以会大大提高索引的效率。

3.答

参考7.2.7小节。

五、上机练习题

第8章存储过程、函数和触发器

一、填空题

1.服务器;客户

2.系统存储过程;用户自定义存储过程;临时存储过程;远程存储过程;扩展存储过程

3.局部临时存储过程;全局临时存储过程

4.#;##

5.输入参数;输出参数

6.RETURN

7.ALTER PROCEDURE

8.函数名;参数;编程语句;返回值

9.事件;命令

10.INSTEAD OF触发器;AFTER触发器;CLR触发器

11.原子性;一致性;隔离性;持久性

12.显式事务;隐式事务

13.ROLLBACK TRANSACTION

二、选择题

1.B 2.B 3.D 4.C 5.B

6.B 7.C

三、判断题

1.A 2.B 3.A 4.B

四、问答题

1.答

使用SQL Server中的存储过程而不使用存储在客户计算机本地的Transact-SQL程序的优势有:

(1)允许模块化程序设计

只需创建过程一次并将其存储在数据库中,以后即可在程序中调用该过程任意次。存储过程可由在数据库编程方面有专长的人员创建,并可独立于程序源代码而单独修改。

(2)允许更快执行

如果某操作需要大量Transact-SQL代码或需重复执行,存储过程将比Transact-SQL批代码的执行要快。将在创建存储过程时对其进行分析和优化,并可在首次执行该过程后使用该过程的内存中版本。每次运行Transact-SQL语句时,都要从客户端重复发送,并且在SQL Server每次执行这些语句时,都要对其进行编译和优化。

(3)减少网络流量

一个需要数百行Transact-SQL代码的操作由一条执行过程代码的单独语句就可实现,而不需要在网络中发送数百行代码。

(4)可作为安全机制使用

即使对于没有直接执行存储过程中语句的权限的用户,也可授予他们执行该存储过程的权限。

2.答

触发器是一种特殊类型的存储过程,它在指定表中的数据发生变化时自动执行。触发器与普通存储过程的不同之处在于:触发器的执行是由事件触发的,而普通存储过程是由命令调用执行的。

3.答

●触发器是自动执行的,不需要管理员手动维护数据库的数据完整性。

●触发器可以对数据库中的相关表进行级联更改。例如,可以在表Departments中定

义触发器,当用户删除表Departments中的记录时,触发器将删除表Employees中

对应部门的记录。

●触发器可以限制向表中插入无效的数据,这一点与CHECK约束的功能相似。但在

CHECK约束中不能使用到其他表中的字段,而在触发器中则没有此限制。例如,

可以在表Employees中定义触发器,限制插入的记录其Dep_id字段值必须在表

Departments中存在对应的记录。

五、上机练习题

(一)存储过程

1.答:

USE HrSystem

GO

IF EXISTS (SELECT name FROM sysobjects

WHERE name ='avg_wage' AND type = 'P')

DROP PROCEDURE avg_wage

GO

CREATE PROC avg_wage

@avgwage FLOAT OUTPUT

AS

SELECT @avgwage=AVG(wage) FROM Employees

2.答:

DECLARE @avgwage FLOAT

EXEC avg_wage @avgwage OUTPUT

PRINT @avgwage

3.答:

USE HrSystem

GO

IF EXISTS (SELECT name FROM sysobjects

WHERE name ='max_wage' AND type = 'P')

DROP PROCEDURE max_wage

GO

CREATE PROC max_wage

@depname char(50),

@maxwage FLOAT OUTPUT

AS

SELECT @maxwage=MAX(e.wage) FROM Employees e INNER JOIN Departments d ON e.Dep_id=d.Dep_id WHERE d.Dep_name=@depname

4.答:

DECLARE @maxwage FLOAT,@depname CHAR(50)

EXEC max_wage '财务部', @maxwage OUTPUT

PRINT @maxwage

5.答:

DROP PROCEDURE avg_price,max_wage

(二)触发器

1.答:

(1)创建触发器语句

USE 学生信息

IF EXISTS(SELECT name FROM sysobjects WHERE name = 'TRG1' AND type = 'TR')

DROP TRIGGER TRG1

GO

CREATE TRIGGER TRG1 ON 专业

FOR INSERT

AS

SELECT * FROM inserted

(2)测试语句

INSERT INTO 专业 VALUES('111','新专业名称','001')

(3)测试结果

在“网格”选项卡上显示:

在“消息”选项卡上显示:

(所影响的行数为 1 行)

2.答:

(1)创建触发器语句

USE 学生信息

IF EXISTS (SELECT name FROM sysobjects WHERE name = 'TRG2' AND type = 'TR')

DROP TRIGGER TRG2

GO

CREATE TRIGGER TRG2 ON 专业

FOR DELETE

AS

RAISERROR ('不允许删除专业表中的记录',16,1)

SELECT * FROM deleted

ROLLBACK TRANSACTION --回滚事务

(2)测试语句

DELETE FROM 专业 WHERE 专业编号='111'

(3)测试结果

在“消息”选项卡上显示:

服务器: 消息 50000,级别 16,状态 1,过程 TRG2,行 4

不允许删除专业表中的记录

(所影响的行数为 1 行)

在“网格”选项卡上显示:

3.答:

(1)创建触发器语句

USE 学生信息

IF EXISTS (SELECT name FROM sysobjects WHERE name = 'TRG3' AND type = 'TR') DROP TRIGGER TRG3

GO

CREATE TRIGGER TRG3 ON 专业

FOR UPDATE

AS

IF UPDATE(专业名称)

BEGIN

RAISERROR('不能修改专业名称',15,1)

ROLLBACK TRANSACTION

END

(2)测试语句

UPDATE 专业 SET 专业名称='新专业名称B' WHERE 专业编号='111'

(3)测试结果

在“消息”选项卡上显示:

服务器: 消息 50000,级别 15,状态 1,过程 TRG3,行 6

不能修改专业名称

4.答:

(1)创建触发器语句

USE 学生信息

IF EXISTS (SELECT name FROM sysobjects WHERE name = 'TRG4' AND type = 'TR') DROP TRIGGER TRG4

GO

CREATE TRIGGER TRG4

ON 学生基本信息

FOR UPDATE

AS

IF UPDATE(学号) OR UPDATE (姓名)

BEGIN

RAISERROR('注意,不允许修改学号或姓名',15,1)

ROLLBACK TRANSACTION

END

(2)测试语句

① UPDATE 学生基本信息 SET 学号='990020211' WHERE 学号='990020210'

② UPDATE 学生基本信息 SET 姓名='张三' WHERE 学号='990020210'

(3)测试结果

服务器: 消息 50000,级别 15,状态 1,过程 TRG4,行 7

注意,不允许修改学号或姓名

5.答:

DROP TRIGGER TRG1,TRG2,TRG3,TRG4,TRG5

第9章游标管理

8.3 练习题

一、填空题

1.Transact-SQL 游标;应用编程接口(API)服务器游标;客户端游标

2.静态游标;动态游标;只进游标;键集驱动游标

3.OPEN

4.SCROLL

5.FETCH

6.@@FETCH_STA TUS

7.CLOSE

8.DEALLOCATE

二、选择题

1.A 2.C 3.C 4.D 5.D

6.B

三、判断题

1.B 2.A 3.B 4.B 5.A

四、问答题

1.答

用数据库语言来描述,游标是映射结果集并在结果集内的单个行上建立一个位置的实体。有了游标,用户就可以访问结果集中的任意一行数据了。在将游标放置到某行之后,可以在该行或从该位置开始的行块上执行操作。最常见的操作是提取(检索)当前行或行块。

游标有以下主要的功能:

●允许定位在结果集的特定行。

●从结果集的当前位置检索一行或多行。

●支持对结果集中当前位置的行进行数据修改。

●如果其他用户需要对显示在结果集中的数据库数据进行修改,游标可以提供不同级

数据库系统基础教程(第二版)课后习题答案

Database Systems: The Complete Book Solutions for Chapter 2 Solutions for Section 2.1 Exercise 2.1.1 The E/R Diagram. Exercise 2.1.8(a) The E/R Diagram Kobvxybz Solutions for Section 2.2 Exercise 2.2.1 The Addresses entity set is nothing but a single address, so we would prefer to make address an attribute of Customers. Were the bank to record several addresses for a customer, then it might make sense to have an Addresses entity set and make Lives-at a many-many relationship. The Acct-Sets entity set is useless. Each customer has a unique account set containing his or her accounts. However, relating customers directly to their accounts in a many-many relationship conveys the same information and eliminates the account-set concept altogether. Solutions for Section 2.3 Exercise 2.3.1(a) Keys ssNo and number are appropriate for Customers and Accounts, respectively. Also, we think it does not make sense for an account to be related to zero customers, so we should round the edge connecting Owns to Customers. It does not seem inappropriate to have a customer with 0 accounts;

数据库应用基础教程答案

数据库应用基础教程答案 【篇一:access数据库应用基础教程(第三版)习题及答 案】 txt>程(第三版)习题集答案 第1章数据库系统概述 1. 什么是数据库?什么是数据库系统?答:数据库(database) 是存放数据的仓库,严格的讲,数据库是长期存储在计算机内,有组 织的,可共享的大量数据集合。 数据库系统(database systems),是由数据库及其管理软件组成的系统。它是为适应数据处理的需要而发展起来的一种较为理想的 数据处理的核心机构。它是一个实际可运行的存储、维护和应用系 统提供数据的软件系统,是存储介质、处理对象和管理系统的集合体。 2. 什么是数据库管理系统?它有哪些主要功能? 答:数据库管理系统(database management system)是一种操纵 和管理数据 库的大型软件,用于建立、使用和维护数据库,简称dbms。它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。 数据库管理系统的主要功能有:数据定义、数据操作、数据库的运 行管理、数据组织、数据库的保护、数据库的维护和通信。 3. 说出几种常用的数据模型。 答:层次模型、网状模型、关系模型。 4. 什么是关系模型? 答:关系模型是用二维表的形式表示实体和实体间联系的数据模型。 5. 简述数据库设计的步骤。 答:需求分析、概念结构设计、逻辑结构设计、物理结构设计、数 据库的建立和测试、数据库运行和维护。 第2章 sql 语言简介 1. 什么是sql语言?sql语言具有哪些特点和功能? 答:sql是一种数据库查询和程序设计语言,用于存取数据以及查询更新和管理关系 数据库系统。 sql的特点和功能有:查询,操作,定义和控制四个方面,sql语言 具有高度的非过程化,语言简洁,语义明显,语法结构简单,直观

数据库应用基础

第6章数据库应用基础 第26讲数据库应用基础(二) 教学目标及基本要求: 1、了解数据库的相关概念、Visual Foxpro、SQL Server、Oracle等数据库的基本功能特性 2、掌握Access 2003数据库系统的组成及数据库、表、查询、报表等设计与创建 3、熟悉Access 2003的其它功能模块及对象应用。 教学重点: Access 2003数据库系统的组成及应用 教学难点: Access 2003数据库的建立、表的设计、窗体的创建、查询、数据报表 教学内容: 1、当前流行的关系型数据库简介 2、Access 2003数据库系统的应用 3、Access 2003数据库、表、窗体、报表的设计与创建 4、Access 2003数据库的查询及宏、模块 教学时间: 1学时 主要内容: 6.2 当前流行的关系型数据库简介 现在流行的关系型数据库管理系统有很多,如Microsoft Access、Visual Foxpro、SQL Server、Oracle、DB2、Informix、Sybase等。在这一节中将着重介绍Visual Foxpro、SQL Server、Oracle等3种数据库的基本情况。 6.2.1 Visual FoxPro 6.0介绍 Visual FoxPro 6.0是Microsoft公司推出的数据库管理系统。并提供了多种类型的数据,进行数据处理的功能强。 Visual FoxPro 6.0主要具有以下功能和特性: 1.良好的用户界面 2.简便的数据库操作 3.支持面向对象程序设计 4.快速创建应用程序 5.增强的表单功能和更简便的设计 6.可以多个用户一起开发应用程序 7.可与其他应用程序交互操作 8.增强的查询和视图设计 9.网络应用 6.2.2 Microsoft SQL Server介绍

数据库基础教程CH1 答案

Exercises 2.3.1 In this exercise we introduce one of our running examples of a relational database schema. The database schema consists of four relations, whose schemas are: Product (maker, model, type) PC (model, speed, ram. hd, price) Laptop (model, speed, ram, hd, screen, price) Printer (model, color, type, price) The Product relation gives the manufacturer, model number and type (PC, laptop, or printer) of various products. We assume for convenience that model numbers are unique over all manufacturers and product types; that assumption is not realistic, and a real database would include a code for the manufacturer as part of the model number. The PC relation gives for each model number that is a PC the speed (of the processor, in gigahertz), the amount of RAM (in megabytes), the size of the hard disk (in gigabytes), and the price. The Laptop relation is similar, except that the screen size (in inches) is also included. The Printer relation records for each printer model whether the printer produces color output (true, if so), the process type (laser or ink-jet, typically), and the price. Write the following declarations: a) A suitable schema for relation Product. b) A suitable schema for relation PC. c) A suitable schema for relation Laptop. d) A suitable schema for relation Printer. e)An alteration to your Printer schema from (d) to delete the attribute color. f)An alteration to your Laptop schema from (c) to add the attribute od (optical-disk type, e.g., cd or dvd). Let the default value for this attribute be 'none' if the laptop does not have an optical disk. Exercise 2.3.1a CREATE TABLE Product ( maker CHAR(30), model CHAR(10) PRIMARY KEY, type CHAR(15) ); Exercise 2.3.1b CREATE TABLE PC ( model CHAR(30), speed DECIMAL(4,2), ram INTEGER, hd INTEGER, price DECIMAL(7,2) );

南京理工大学《数据库系统基础教程》试题和答案

一、选择题60(选择一个最合适的答案,在答题纸上涂黑) 1.一个事务中的一组更新操作是一个整体,要么全部执行,要么全部不执行。这是事务的:A.原子性B.一致性 C.隔离性 D.持久性 2.在数据库的三级模式结构中,描述一个数据库中全体数据的全局逻辑结构和特性的是:A.外模式 B.模式 C.存储模式D.模式 3.关于联系的多重性,下面哪种说法不正确? A.一个多对多的联系中允许多对一的情形。 B.一个多对多的联系中允许一对一的情形。 C.一个多对一的联系中允许一对一的情形。 D.一个多对一的联系中允许多对多的情形。 4.考虑学校里的"学生"和"课程"之间的联系,该联系的多重性应该是: A. 一对一 B. 多对一 C. 一对多 D. 多对多 5.下面哪种约束要求一组属性在同一实体集任意两个不同实体上的取值不同。 A. 键(key)约束。 B. 单值约束。 C. 参照完整性。 D. 域(domain)约束 6.关系模型要求各元组的每个分量的值必须是原子性的。对原子性,下面哪种解释不正确:A.每个属性都没有部结构。 B.每个属性都不可再分解。 C.各属性值应属于某种基本数据类型。 D.属性值不允许为NULL。 7.对于一个关系的属性(列)集合和元组(行)集合,下面哪种说法不正确: A.改变属性的排列次序不影响该关系。 B.改变元组的排列次序不影响该关系。 C.改变元组的排列次序会改变该关系。 D.关系的模式包括其名称及其属性集合。 8.若R是实体集R1与R2间的一个多对多联系,将其转换为关系R',哪种说法不正确:A.R'属性应包括R1与R2的所有属性。 B.R'属性应包括R1与R2的键属性。 C.R1与R2的键属性共同构成R'的键。 D.R'的属性应包括R自身定义的属性。 9.关于函数依赖的判断,下面哪种说法不正确? A.若任意两元组在属性A上一致,在B上也一致,则有A → B成立。 B.若任意两元组在属性A上一致,在B上不一致,则A → B不成立。 C.若任意两元组在属性A上不可能一致,则不管在B上是否一致,有A → B成立。

Access数据库应用基础教程(第三版)习题及答案

Access数据库应用基础教程(第三版)习题集答案 第1章数据库系统概述 1. 什么是数据库?什么是数据库系统?答:数据库(database)是存放数据的仓库,严格的讲,数据库是长期存储在计算机内,有组织的,可共享的大量数据集合。 数据库系统(database systems),是由数据库及其管理软件组成的系统。它是为适应数据处理的需要而发展起来的一种较为理想的数据处理的核心机构。它是一个实际可运行的存储、维护和应用系统提供数据的软件系统,是存储介质、处理对象和管理系统的集合体。 2. 什么是数据库管理系统?它有哪些主要功能? 答:数据库管理系统(database management system)是一种操纵和管理数据

库的大型软件,用于建立、使用和维护数据库,简称dbms。它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。数据库管理系统的主要功能有:数据定义、数据操作、数据库的运行管理、数据组织、数据库的保护、数据库的维护和通信。 3. 说出几种常用的数据模型。 答:层次模型、网状模型、关系模型。4. 什么是关系模型? 答:关系模型是用二维表的形式表示实体和实体间联系的数据模型。 5. 简述数据库设计的步骤。 答:需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库的建立和测试、数据库运行和维护。 第2章 SQL 语言简介 1. 什么是SQL语言?SQL语言具有哪些特点和功能? 答:SQL是一种数据库查询和程序设计语言,用于存取数据以及查询更新和管理关系

数据库系统。 SQL的特点和功能有:查询,操作,定义和控制四个方面,SQL语言具有高度的非过程化,语言简洁,语义明显,语法结构简单,直观易懂的特点。SQL语言即可以作为独立语言使用,用户可以在终端键盘上直接键入SQL命令对数据库进行操作,也可以作为嵌入式语言,嵌入到其他高级语言中。 2. SQL语言包含哪几个部分? 答:SQL语言包含4个部分:数据定义语言(DDL-Data Definition Language)、数据查询语言(DQL-Data Query Language)、数据操纵语言(DML-Data Manipulation Language)、数据控制语言(DCL-Data Control Language) 3. 在联接查询中,包含哪几类联接?答:联接可分为3类: (1)内部联接(典型的联接运算,使用类似于 = 或 <> 的比较运算符)。内部联接使用比较运算符根据每个表的通用列中的值匹配两个表中的行。内部联接包括同等

数据库应用试卷及答案

数据库应用试卷及答案

数据库及应用(B卷) 一、选择题(从备选答案中选1 个正确的答案,每题2分、共24分) 1.支持所有用户建立、存储数据库的软件系统是。 A.数据库系统 B.数据库管理系统 C.应用程序 D.操作系统2.DB的三级模式结构中最接近外部存储器的是。 A.子模式 B.外模式 C.概念模式 D.内模式 3.在关系模式R中,函数依赖X→Y的语义是。 A.在R的某一关系中,若两个元组的X值相等,则Y值也相等 B.在R的每一关系中,若两个元组的X值相等,则Y值也相等 C.在R的某一关系中,Y值应与X值相等 D.在R的每一关系中,Y值应与X值相等 4. DBA是________的简称。 A.系统分析员 B.应用程序员 C.数据库管理员 D.数据录入员 5. _____是长期存储在计算机内的有组织,可共享的数据集合. A.数据库管理系统B.数据库系统 C.数据库D.文件组织6.数据库系统的核心是。 A. 数据库 B. 数据库管理系统 C. 数据模型 D. 软件工具 7.客观存在并可相互区别的事物叫________。 A.码 B.属性 C.实体 D. 实体集 8.数据库的完整性是指数据的_____和_____。 (1)正确性(2)合法性(3)不被非法存取 (4)相容性 (5)不被恶意破坏 A. (1)和(3) B. (2)和(5) C. (1)和(4) D. (2)和(4) 9.一组具有相同数据类型的值的集合称为________。 A.关系 B.属性 C.分量 D.域 10.以下______封锁违反两段锁协议。 A.Slock A … Slock B … Xlock C …… Unlock A … Unlock B … Unlock C

数据库系统应用试题及答案

数据库系统概述 一、概述 1.数据库系统是采用了数据库技术的计算机系统,数据库系统由数据库、数据库管理系统、应用系统和()。 A.系统分析员 B.程序员 C.数据库管理员 D.操作员 2.数据库(DB),数据库系统(DBS)和数据库管理系统(DBMS)之间的关系是()。 A.DBS包括DB和DBMS B.DBMS包括DB和DBS C.DB包括DBS和DBMS D.DBS就是DB,也就是DBMS 3.下面列出的数据库管理技术发展的三个阶段中,没有专门的软件对数据进行管理的是()。 I.人工管理阶段 II.文件系统阶段 III.数据库阶段 A.I 和 II B.只有 II C.II 和 III D.只有 I 4.下列四项中,不属于数据库系统特点的是()。 A.数据共享 B.数据完整性 C.数据冗余度高 D.数据独立性高 5.数据库系统的数据独立性体现在()。 A.不会因为数据的变化而影响到应用程序 B.不会因为数据存储结构与数据逻辑结构的变化而影响应用程序 C.不会因为存储策略的变化而影响存储结构 D.不会因为某些存储结构的变化而影响其他的存储结构 6.描述数据库全体数据的全局逻辑结构和特性的是()。 A.模式 B.内模式 C.外模式 D. 7.要保证数据库的数据独立性,需要修改的是()。 A.模式与外模式 B.模式与内模式 C.三级模式之间的两层映射 D.三层模式 8.要保证数据库的逻辑数据独立性,需要修改的是()。 A.模式与外模式之间的映射 B.模式与内模式之间的映射 C.模式 D.三级模式 9.用户或应用程序看到的那部分局部逻辑结构和特征的描述是()模式。 A.模式 B.物理模式 C.子模式 D.内模式 10.下述()不是DBA数据库管理员的职责。 A.完整性约束说明 B.定义数据库模式 C.数据库安全 D.数据库管理系统设计 11.概念模型是现实世界的第一层抽象,这一类模型中最著名的模型是()。 A.层次模型 B.关系模型 C.网状模型 D.实体-关系模型 <实体-联系图Entity Relationship Diagram 基本要素:实体型属性联系> 12.区分不同实体的依据是()。 A.名称 B.属性 C.对象 D.概念 13.关系数据模型是目前最重要的一种数据模型,它的三个要素分别是()。 A.实体完整性、参照完整性、用户自定义完整性 B.数据结构、关系操作、完整性约束 C.数据增加、数据修改、数据查询 D.外模式、模式、内模式 14.在()中一个结点可以有多个双亲,结点之间可以有多种联系。 A.网状模型 B.关系模型 C.层次模型 D.以上都有 15.()的存取路径对用户透明,从而具有更高的数据独立性、更好的安全保密性,也简化了程序员的工作和数据库开发建立的工作。 A.网状模型 B.关系模型 C.层次模型 D.以上都有

数据库系统基础教程(第二版)课后习题答案2

Database Systems: The Complete Book Solutions for Chapter 2 Solutions for Section 2.1 Exercise 2.1.1 The E/R Diagram. Exercise 2.1.8(a) The E/R Diagram Kobvxybz Solutions for Section 2.2 Exercise 2.2.1 The Addresses entity set is nothing but a single address, so we would prefer to make address an attribute of Customers. Were the bank to record several addresses for a customer, then it might make sense to have an Addresses entity set and make Lives-at a many-many relationship. The Acct-Sets entity set is useless. Each customer has a unique account set containing his or her accounts. However, relating customers directly to their accounts in a many-many relationship conveys the same information and eliminates the account-set concept altogether. Solutions for Section 2.3 Exercise 2.3.1(a) Keys ssNo and number are appropriate for Customers and Accounts, respectively. Also, we think it does not make sense for an account to be related to zero customers, so we should round the edge connecting Owns to Customers. It does not seem inappropriate to have a customer with 0 accounts;

数据库应用基础access考试建立表

数据库应用基础access考试建立表

————————————————————————————————作者:————————————————————————————————日期:

信息技术一类专业考试卷 数据库应用基础——Access 2010 (考试时间100分钟,满分100分) 一、单项选择题(每题1分,36小题,共36分。每题所给的四个选项中,只有一个正确答案,请选出该项) (1)用Access 2010创建“学生”数据库文件,其文件名是() A. 学生.adp B. 学生.dbf C. 学生.accdb D. 学生.mdb (2)目前大多数数据库系统,如Access,都是建立在()之上。 A.层次模型 B.关系模型C.网状模型 D. 面向对象模型 (3)数据库系统是由数据库、数据库管理系统、应用程序、()、用户等构成的人机系统。 A. 数据库管理员 B. 程序员 C. 高级程序员 D. 软件开发商 (4)一个工作人员可以使用多台计算机,而一台计算机可被多个人使用,则实体工作人员、与实体计算机之间的联系是() A. 一对一联系 B. 一对多联系 C. 多对一联系 D. 多对多联系 (5)在Access 2010中,用于存放数据库数据的是() A. 表 B. 窗体 C. 模块 D. 查询 (6)下列关于Access 2010数据库的说法,错误的是() A.数据库也可以理解为存放数据的仓库 B.一个数据库可以包含多个表 C.所有的对象都存放在同一个数据库文件中 D.表是数据库中最基本的对象,没有表也就没有其他对象 (7)在Access 2010中,表和数据库的关系是() A.一个数据库可以包含多个表B.一个表只能包含两个数据库 C.一个表可以包含多个数据库D.一个数据库只能包含一个表 (8)在Access 2010数据库中,一个关系就是一个() A. 数据库 B. 记录 C. 字段 D. 二维表 (9)要从教师表中找出职称为“教授”的教师,则需要进行的关系运算是() A. 选择 B. 投影 C. 连接 D. 自然连接 (10)要从学生关系中查询学生的姓名和年龄,则需要进行的关系运算是() A. 选择 B. 投影 C. 连接 D. 自然连接 (11)下列关于数据类型的说法,正确的是() A. 字段的另一种说法 B. 决定字段能包含哪类数据的设置 C. 一类数据库应用程序 D. 用来描述表向导允许从中选择的字段名称 (12)在一个单位的人事数据库,字段“简历”的数据类型是() A. 文本型 B. 数字型 C. 备注型 D. 日期/时间型 (13)如果在创建表中建立字段“时间”,其数据类型应当是()

数据库应用试卷及答案

数据库及应用(B卷) 一、选择题(从备选答案中选1 个正确的答案,每题2分、共24分) 1.支持所有用户建立、存储数据库的软件系统是。 A.数据库系统 B.数据库管理系统 C.应用程序 D.操作系统 2.DB的三级模式结构中最接近外部存储器的是。 A.子模式 B.外模式 C.概念模式 D.内模式 3.在关系模式R中,函数依赖X→Y的语义是。 A.在R的某一关系中,若两个元组的X值相等,则Y值也相等 B.在R的每一关系中,若两个元组的X值相等,则Y值也相等 C.在R的某一关系中,Y值应与X值相等 D.在R的每一关系中,Y值应与X值相等 4. DBA是________的简称。 A.系统分析员 B.应用程序员 C.数据库管理员 D.数据录入员 5. _____是长期存储在计算机内的有组织,可共享的数据集合. A.数据库管理系统B.数据库系统 C.数据库D.文件组织6.数据库系统的核心是。 A. 数据库 B. 数据库管理系统 C. 数据模型 D. 软件工 具 7.客观存在并可相互区别的事物叫________。 A.码 B.属性 C.实体 D. 实体集

8.数据库的完整性是指数据的_____和_____。 ?(1)正确性?(2)合法性?(3)不被非法存取?? (4)相容性?? (5)不被恶意破坏 A. (1)和(3) B. (2)和(5) C. (1)和(4) D. (2)和(4) 9.一组具有相同数据类型的值的集合称为________。 A.关系? B.属性 C.分量? D.域 10.以下______封锁违反两段锁协议。 A.Slock A … Slock B … Xlock C …… Unlock A … Unlock B … Unlock C B.Slock A … Slock B … Xlock C …… Unlock C … Unlock B … Unlock A C.Slock A … Slock B … Xlock C …… Unlock B … Unlock C … Unlock A D.Slock A …Unlock A …Slock B … Xlock C …… Unlock B … Unlock C 11. “日志”文件用于保存 ________。 A.程序运行过程B.数据操作 C.程序执行结果D.对数据库的更新操作12…并发操作会带来哪些数据不一致性________? A.丢失修改、不可重复读、读脏数据、死锁 B.不可重复读、读脏数据、死锁 C.丢失修改、读脏数据、死锁 D.丢失修改、不可重复读、读脏数据 二、简答题(每题5分,共15分) a)什么是事务?事务COMMIT和ROLLBACK分别表示什么? b)什么叫数据与程序的物理独立性?什么叫数据与程序的逻辑独立性? c)并发操作可能会产生哪几类数据不一致?用什么方法能避免各种不一致 的情况? 三.(每小题3分,共12分)设有关系R和S: R A B C S A B C

计算机数据库应用基础全部习题参考答案

第一章习题参考答案 1.选择题 (1)数据库(DB)、数据库系统(DBS)、数据库管理系统(DBMS)三者之间的关系是( A )。 A.DBS包括DB和DBMS B.DBMS包括DB和DBS C.DB包括DBS和DBMS D.DBS就是DB,也就是DBMS (2)设有部门和职员两个实体,每个职员只能属于一个部门,一个部门可以有多名职员,则部门与职员实体之间的联系类型是(B)。 A.m:n B.1:m C.m:k D.1:1 (3)对于“关系”的描述,正确的是( D )。 A.同一个关系中允许有完全相同的元组 B.同一个关系中元组必须按关键字升序存放 C.在一个关系中必须将关键字作为该关系的第一个属性 D.同一个关系中不能出现相同的属性名 (4)E-R图用于描述数据库的( A )。 A.概念模型B.数据模型 C.存储模型D.逻辑模型 (5)在关系模型中,一个关键字( C )。 A.可以由多个任意属性组成 B.至多由一个属性组成 C.可以由一个或者多个其值能够唯一表示该关系模式中任何元组的属性组成 D.可以由一个或者多个任意属性组成 (6)现有如下关系: 患者(患者编号,患者姓名,性别,出生日期,单位) 医疗(患者编号,患者姓名,医生编号,医生姓名,诊断日期,诊断结果)其中,医疗关系中的外关键字是( A )。 A.患者编号B.患者姓名 C.患者编号和患者姓名D.医生编号和患者编号 (7)一个关系只有一个( D )。 A.候选关键字B.外部关键字 C.组合关键字D.主关键字 (8)下列标识符可以作为局部变量使用的是( C )。 A.[@Myvar] B.My var C.@Myvar D.@My var (9)Transact-SQL支持的一种程序结构语句是( A )。 A.BEGIN…E ND B.IF…T HEN…ELSE C.DO CASE D.DO WHILE (10)字符串常量使用( A )作为定界符。 A.单引号B.双引号 C.方括号D.花括号 2.填空题 (1)数据库是在计算机系统中按照一定的方式组织、存储和应用的(数据集合)。支持数据库各种操作的软件系统叫(数据库管理系统)。由计算机、操作系统、DBMS、数据库、应用程序及有关人员等组成的一个整体叫(数据库系统)。

数据库应用试卷及答案

; 数据库及应用(B卷) 一、选择题(从备选答案中选1 个正确的答案,每题2分、共24分) 1.支持所有用户建立、存储数据库的软件系统是。 A.数据库系统 B.数据库管理系统 C.应用程序 D.操作系统2.DB的三级模式结构中最接近外部存储器的是。 A.子模式 B.外模式 C.概念模式 D.内模式 3.在关系模式R中,函数依赖X→Y的语义是。 A.在R的某一关系中,若两个元组的X值相等,则Y值也相等: B.在R的每一关系中,若两个元组的X值相等,则Y值也相等 C.在R的某一关系中,Y值应与X值相等 D.在R的每一关系中,Y值应与X值相等 4. DBA是________的简称。 A.系统分析员 B.应用程序员 C.数据库管理员 D.数据录入员 5. _____是长期存储在计算机内的有组织,可共享的数据集合. A.数据库管理系统B.数据库系统 C.数据库D.文件组织6.数据库系统的核心是。 《 A. 数据库 B. 数据库管理系统 C. 数据模型 D. 软件工具 7.客观存在并可相互区别的事物叫________。 A.码 B.属性 C.实体 D. 实体集8.数据库的完整性是指数据的_____和_____。 (1)正确性(2)合法性(3)不被非法存取 (4)相容性 (5)不被恶意破坏 A. (1)和(3) B. (2)和(5) C. (1)和(4) D. (2)和(4) 9.一组具有相同数据类型的值的集合称为________。 \ A.关系 B.属性 C.分量 D.域 10.以下______封锁违反两段锁协议。 A.Slock A … Slock B … Xlock C …… Unlock A … Unlock B … Unlock C B.Slock A … Slock B … Xlock C …… Unlock C … Unlock B … Unlock A C.Slock A … Slock B … Xlock C …… Unlock B … Unlock C … Unloc k A D.Slock A …Unlock A …Slock B … Xlock C …… Unlock B … Unlock C 11. “日志”文件用于保存________。

数据库系统基础教程课后答案第五章

Exercise 5.1.1 As a set: Average = 2.37 As a bag: Average = 2.48 Exercise 5.1.2 As a set:

Average = 218 As a bag: Average = 215 Exercise 5.1.3a As a set:

As a bag: Exercise 5.1.3b πbore(Ships Classes) Exercise 5.1.4a For bags: On the left-hand side: Given bags R and S where a tuple t appears n and m times respectively, the union of bags R and S will have tuple t appear n + m times. The further union of bag T with the tuple t appearing o times will have tuple t appear n + m + o times in the final result. On the right-hand side: Given bags S and T where a tuple t appears m and o times respectively, the union of bags R and S will have tuple t appear m + o times. The further union of bag R with the tuple t appearing n times will have tuple t appear m + o + n times in the final result. For sets: This is a similar case when dealing with bags except the tuple t can only appear at most once in each set. The tuple t only appears in the result if all the sets have the tuple t. Otherwise, the tuple t will not appear in the result. Since we cannot have duplicates, the result only has at most one copy of the tuple t. Exercise 5.1.4b For bags: On the left-hand side:

2019年大学《数据库原理及应用教程》试题及答案

《数据库原理及应用教程》试题及答案 一、选择题 1、下面叙述正确的是(C) A. 算法的执行效率与数据的存储结构无关 B. 算法的空间复杂度是指算法程序中指令(或语句)的条数 C. 算法的有穷性是指算法必须能在执行有限个步骤之后终止 D. 以上三种描述都不对 (2) 以下数据结构中不属于线性数据结构的是(C) A. 队列 B. 线性表 C. 二叉树 D. 栈 (3) 在一棵二叉树上第5层的结点数最多是(B) 注:由公式2k-1得 A. 8 B. 16 C. 32 D. 15 (4) 下面描述中,符合结构化程序设计风格的是(A) A. 使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑 B. 模块只有一个入口,可以有多个出口 C. 注重提高程序的执行效率 D. 不使用goto语句 (5) 下面概念中,不属于面向对象方法的是(D) 注:P55-58 A. 对象 B. 继承 C. 类 D. 过程调用 (6) 在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是 (B) A. 可行性分析 B. 需求分析 C. 详细设计 D. 程序编码 (7) 在软件开发中,下面任务不属于设计阶段的是(D) A. 数据结构设计 B. 给出系统模块结构

C. 定义模块算法 D. 定义需求并建立系统模型 (8) 数据库系统的核心是(B) A. 数据模型 B. 数据库管理系统 C. 软件工具 D. 数据库 (9) 下列叙述中正确的是(C) A.数据库是一个独立的系统,不需要操作系统的支持 B.数据库设计是指设计数据库管理系统 C.数据库技术的根本目标是要解决数据共享的问题 D.数据库系统中,数据的物理结构必须与逻辑结构一致 (10) 下列模式中,能够给出数据库物理存储结构与物理存取方法的是(A) 注:P108 A. 内模式 B. 外模式 C. 概念模式 D. 逻辑模式 (11) 算法的时间复杂度是指(C) A. 执行算法程序所需要的时间 B. 算法程序的长度 C. 算法执行过程中所需要的基本运算次数 D. 算法程序中的指令条数 (12) 算法的空间复杂度是指(D) A. 算法程序的长度 B. 算法程序中的指令条数 C. 算法程序所占的存储空间 D. 算法执行过程中所需要的存储空间 (13) 设一棵完全二叉树共有699个结点,则在该二叉树中的叶子结点数为(B) 注:利用公式n=n0+n1+n2、n0=n2+1和完全二叉数的特点可求出 A. 349 B. 350 C. 255 D. 351 (14) 结构化程序设计主要强调的是(B) A.程序的规模 B.程序的易读性

数据库基础教程课后习题答案顾韵华

习题1 1、简述数据库系统的特点。 答:数据库系统的特点有: 1)数据结构化 在数据库系统中,采用统一的数据模型,将整个组织的数据组织为一个整体;数据不再仅面向特定应用,而是面向全组织的;不仅数据内部是结构化的,而且整体是结构化的,能较好地反映现实世界中各实体间的联系。这种整体结构化有利于实现数据共享,保证数据和应用程序之间的独立性。 2)数据共享性高、冗余度低、易于扩充 数据库中的数据能够被多个用户、多个应用程序共享。数据库中相同的数据不会多次重复出现,数据冗余度降低,并可避免由于数据冗余度大而带来的数据冲突问题。同时,当应用需求发生改变或增加时,只需重新选择不同的子集,或增加数据即可满足。 3)数据独立性高 数据独立性是由DBMS 的二级映像功能来保证的。数据独立于应用程序,降低了应用程序的维护成本。 4)数据统一管理与控制 数据库中的数据由数据库管理系统(DBMS )统一管理与控制,应用程序对数据的访问均经由DBMS 。DBMS 提供四个方面的数据控制功能:并发访问控制、数据完整性、数据安全性保护、数据库恢复。 2、什么是数据库系统? 答:在计算机系统上引入数据库技术就构成一个数据库系统(DataBase System ,DBS )。数据库系统是指带有数据库并利用数据库技术进行数据管理的计算机系统。DBS 有两个基本要素:一是DBS 首先是一个计算机系统;二是该系统的目标是存储数据并支持用户查询和更新所需要的数据。 3、简述数据库系统的组成。 答:数据库系统一般由数据库、数据库管理系统(及其开发工具)、数据库管理员(DataBase Administrator ,DBA )和用户组成。 4、试述数据库系统的三级模式结构。这种结构的优点是什么? 答:数据库系统的三级模式结构是指数据库系统是由外模式、模式和内模式三级构成,同时包含了二级映像,即外模式/模式映像、模式/内模式映像,如下图所示。 数据库应用1…… 外模式A 外模式B 模式 应用2应用3应用4应用5…… 模式 外模式/模式映像 模式/内模式映像 数据库系统的这种结构具有以下优点: (1)保证数据独立性。将外模式与模式分开,保证了数据的逻辑独立性;将内模式与模式分开,保证了数据的物理独立性。 (2)有利于数据共享,减少了数据冗余。 (3)有利于数据的安全性。不同的用户在各自的外模式下根据要求操作数据,只能对

数据库应用基础(B卷)

数据库应用基础(B卷)

广东财经大学华商学院试题纸 2014-2015 学年第一学期考试时间共 120 分钟 课程名称数据库应用基础(B卷)课程代码0818072共 3 页 课程班号学号姓名 一、选择题(每小题2分,共10小题,共20分) (说明:选择题的答案请填写在“选择题答题卡B 卷.xlsx”文件中,否则不给分) 1、Access2010数据库中的表是一个()。 A)交叉表B)线型表C)报表D)二维表 2、在关系数据库中,能够惟一地标识一个记录的属性或属性的组合,称为()。 A)关键字B)属性C)关系D)域 3、在现实世界中,每个人都有自己的出生地,实体“人”与实体“出生地”之间的联系是()。 A)一对一联系B)一对多联系C)多对多联系D)无联系 4、某文本型字段的值只能为字母且不允许超过6个,则可将该字段的输入掩码属性定义为( )。

在各个月份的订单总数,要求在交叉表中显示月份,各部门名称和统计结果,所建查询命名为:学生自己的姓名+查询4。 5.创建一个参数查询,要求根据所输入的城市名称,从客户表中查询该城市对应的客户信息记录。所建查询命名为:学生自己的姓名+查询5。 四、综合应用题(第1小题20分,第2小题10分,共30分) 打开“综合应用.accdb”数据库,请按以下各小题的要求完成操作。 1.窗体的创建与设计: (1)按如图B-1所示创建一个窗体,用于查询客户信息,窗体标题为“客户信息查询”,边框样式为:对话框边框,无记录导航器、无控制条,将窗体保存为:客户资料查询。(5分) (2)在窗体的窗体页眉节区位置添加一个标签控件,其名称为“check”,标题显示为“客户信息查询”,标题字体格式为:18号,红色,加粗,并在标题下方绘制一条分割线。(5分)(3)在“客户资料查询”窗体中添加一个组合框控件,宽度为5cm,高度为1cm,组合框标题为“公司名称”,在组合框中绑定显示“客户”表中的“公司名称”字段值。(5分) (4)在“客户资料查询”窗体中添加一个命令按钮,名称为“query",按钮标题分别为“查询”,实现查询按钮的功能,能够调出“客户信息”窗体,浏览到所查询客户公司的详细信息。例如,调出图B-2所示的客户资料窗体。(5分) 完成1至4题设计后窗体的最终运行效果如下图所示: 图B-1

相关主题