文档库 最新最全的文档下载
当前位置:文档库 › 数据库原理复习题 (1)

数据库原理复习题 (1)

数据库原理复习题 (1)
数据库原理复习题 (1)

第一章

单项选择题:

下列各项中,哪项属于数据库系统最明显的特点(C)。

A)存储容量大B)处理速度快

C)数据共享D)处理方便

2.数据库系统与文件系统的主要区别是(C)。

A)数据库系统复杂,而文件系统简单

B)文件系统管理的数据量小,数据库系统可以管理庞大的数据量

C)文件系统不能解决数据冗余和数据独立性问题,而数据库系统可以解决

D)文件系统只能管理程序文件,而数据库系统可以管理多种类型的文件

3.数据库技术的主要特点不包括(D)。

A)数据的结构化B)数据的冗余度小

C)数据独立性高D)程序标准化

4.数据库DB、数据库系统DBS、数据库管理系统DBMS三者之间的关系是(A)。

A)DBS包含DB和DBMS B)DB包含DBS和DBMS

C)DBMS包含DB和DBS D)DBS与DB、DBMS指的是相同的东西

5.数据库是在计算机中按照一定的数据模型组织、存储和应用的(B)。

A)文件的集合B)数据的集合

C)命令的集合D)程序的集合

6.使用Visual FoxPro开发学校教学管理系统属于计算机的(B)。

A)科学计算应用B)数据处理应用

C)过程控制应用D)计算机辅助教学应用

7.在计算机中,简写DBMS指(D)。

A)数据库B)数据库系统

C)数据库管理员D)数据库管理系统

8.在开发学校教学管理系统时,设计系统的ER模型属于数据库设计中的(B)阶段。

A)调查分析B)概念设计

C)物理设计D)数据库实施

9.在有关数据管理的概念中,数据模型是指(C)。

A)文件的集合B)记录的集合

C)对象及其联系的集合D)关系数据库管理系统

10.对于现实世界中事物的特征,在描述现实世界的概念数据模型中使用(A)。

A)属性描述B)实体描述

C)表格描述D)关键字描述

11.信息世界的主要对象称为(B)。

A)关系B)实体C)属性D)记录

12.在实体联系模型中,实体所具有的某一特性称之为(A)。

A)属性B)实体型C)键D)域

13.每个学生只能属于一个班,每个班只有一个班长,则班级和班长之间的联系是(A)。

A)1 :1B)1 :n C)m : n D)不确定

14.下列实体之间的联系中,属于多对多的联系是(A)。

A)学生与课程B)学校与教师

C)班级与班主任D)商品条形码与商品

15.一个公司中有多个部门和多名员工,每个员工只能在一个部门就职,部门和员工的联系类型是(B)。A)1 :1 B)1 :n C)m : n D)不确定

16.在概念模型中,一个实体集对应于关系模型中的一个(D)。

A)元组B)字段C)属性D)关系

17.把实体联系模型转换为关系模型时,实体之间多对多联系在关系模型中通过(C)。

A)建立新的属性实现B)建立新的关键字实现

C)建立新的关系实现D)建立新的实体实现

18.在关系中,下列说法正确的是(C)。

A)元组的顺序很重要B)属性名可以重名

C)任意两个元组不允许重复

D)每个元组的一个属性可以由多个值组成

19.在关系中,下列说法正确的是(C)。

A)列的顺序很重要B)当指定候选键时列的顺序很重要

C)列的顺序无关紧要D)主键必须位于关系的第1列

20.在关系模型中,以下说法正确的是(B)。

A)一个关系中可以有多个主键

B)一个关系中可以有多个候选键

C)主键属性中可以取空值

D)有一些关系中没有候选键

21.在关系模型中,以下不属于关系的特点的是(B)。

A)关系的属性不可再分

B)关系的每个属性都必须从不同的域取值

C)关系的每个属性名不允许重复

D)关系的元组不能有重复

22.关系模型中,如果一个关系中的一个属性或属性组能够惟一标识一条元组,那么称该属性或属性组是(C)。

A)外键B)主键C)候选键D)联系

23.某企业推销员档案关系中,包括编号、身份证号、姓名、性别、生日、手机号码、家庭地址等属性,那么不可以作为关系候选键的属性是(B)。

A)编号B)姓名C)手机号码D)身份证号

24.用户欲启动Visual FoxPro,桌面创建有Visual FoxPro 8.0快捷图标。不能够启动Visual FoxPro的操作是(C)。A)在“开始菜单”的“程序”项中单击“Microsoft Visual FoxPro 8.0”

B)双击Visual FoxPro 8.0安装所在文件夹的系统程序Visual FoxPro 8.EXE

C)在“开始菜单”的“运行”项中输入:DO Visual FoxPro 8.EXE

D)双击桌面Visual FoxPro 8.0快捷图标。

25.用户启动Visual FoxPro后,如果要退出Visual FoxPro系统,可在命令窗口中输入命令(B)。

A)CLEAR B)QUIT C)EXIT D)CANCEL

填空题:

数据库技术经历了(手工管理)(文件系统管理)和(数据库系统管理)等阶段。

数据库设计一般包括(系统调查与分析)(概念设计)(逻辑设计)(物理设计)(实施与测试)和(运行维护)等步骤。数据模型不仅要求表示事物本身的数据,而且还包括表示(事物之间联系)的数据。

ER模型中,实体和实体间的联系方式有(一对一)(一对多)和(多对多)。

ER图中,实体、属性、联系分别用(矩形框)(椭圆框)和(菱形框)等符号表示。

关系中,一行叫一个(元组),一列叫一个(属性)。

关系中能惟一确定每一个元组的属性或属性组合叫(候选键)。

一个关系中有属性是另一个关系的主键,并且这个属性作为两个关系联系的纽带,则在该关系中,这个属性叫(外键)。

第二章

单项选择题

1.以下不是数据库所依据的数据模型的是(A)。

A)实体联系模型B)网状模型C)关系模型D)层次模型

2.按照DBMS采用的数据模型,Visual FoxPro属于(C)。

A)层次型数据库管理系统B)网状型数据库管理系统

C)关系型数据库管理系统D)混合型数据库管理系统

3.完整描述数据模型有三个要素,以下不属于这三个要素的是(B)。

A)数据结构B)数据分类C)数据操作D)数据约束

4.关系模型中,基本的关系代数运算指(D)。

A)插入、删除、修改B)编辑、浏览、替换

C)排序、索引、查询D)选择、投影、连接

5.关系R和S的并运算是(A)。

A)由R和S的所有元组合并,并删除掉重复的元组组成的关系

B)由属于R而不属于S的所有元组组成的关系

C)由既属于R又属于S的所有元组组成的关系

D)由属于R和属于S的所有元组拼接组成的关系

6.在关系代数中,传统的集合运算包括(B)

A)增加、删除、修改B)并、交、差运算

C)连接、自然连接和笛卡儿积D)投影、选择和连接运算

7.专门的关系运算不包括下面的哪种运算(D)。

A)连接运算B)投影运算C)选择运算D)并运算

8.专门的关系运算中,投影运算是(B)。

A)在指定关系中选择满足条件的元组组成一个新关系

B)在指定关系中选择属性列组成一个新关系

C)在指定关系中选择满足条件的元组和属性列组成一个新的关系

D)上述说法都不正确

9.给定表:商品(编号,名称,型号,单价),销售(日期,编号,数量,金额)。现在要将两个表合并为:销售报表(编号,名称,单价,数量,金额),可以用(D)。

A)先做笛卡儿积,再做投影B)先做笛卡儿积,再做选择

C)先做自然连接,再做选择D)先做自然连接,再做投影

10.在关系数据库中,不属于数据库完整性规定的是(C)。

A)实体完整性B)参照完整性

C)逻辑完整性D)用户定义完整性

11.在Visual FoxPro中定义数据库表“学生档案”,定义“学号”为主索引,则(A)。

A)可实现实体完整性B)可实现参照完整性

C)可实现用户定义完整性D)不能实现任何数据完整性

12.关系规范化理论要求,关系必须满足的要求是关系的每个属性都是(D)。

A)互不依赖的B)长度不变的C)互相关联的D)不可分解的

13.如果一个关系的键是单属性,那么这个关系最低一定是属于(B)。

A)1NF的关系B)2NF的关系C)3NF的关系D)不能确定

14.在数据库理论中,数据库设计成三级模式结构,以下不属于这三级模式的是(D)。

A)模式B)外模式C)内模式D)关系模式

二.填空题

1.数据模型的三要素指(数据结构)、(数据操作)和(数据约束)。

2.目前使用的各种数据库所依据的数据模型有(层次模型)、(网状模型)和(关系模型)。

3.关系代数运算中,核心的运算包括(投影)、(选择)和(连接)。

4.关系数据库中的数据完整性规则包括(实体完整性)、(参照完整性)和(用户定义完整性)。

5.关系中属性间的函数依赖可分为(部分函数依赖)、(完全函数依赖)和(传递函数依赖)等几类。

6.数据库体系结构用三级模式进行描述,这三级模式分别是(模式)、(外模式)和(内模式)。

7.DBMS提供数据操纵语言(DML)实现对数据库的操作,DML的基本操作包括(插入)、(删除)、(修改)、和(查询)。

8.DBMS支持程序设计语言的方式有(宿主型)和(自主型)。

9.通过给数据库表定义主索引,Visual FoxPro实现的数据完整性是(实体完整性)。

第三章

一.单项选择题:

1.Visual FoxPro的表文件中,字段是一种(B)。

A)常量B)变量C)函数D)运算符

2.在Visual FoxPro中,下述字符串表示方法正确的是(C)。

A)”计算机”水平””B)(计算机”水平”)

C)”计算机[水平]”D)[计算机[水平]]

3.执行下列命令序列

store 10 to x

store 20 to y

? (x=y) or (x

主窗口中显示的结果是(A)。

A).T. B).F. C)0 D)1

4.Visual FoxPro中,下列数据中属于常量的是(C)。

A)01/01/05 B)T C).Y.D)TOP

5.下列选项中属于Visual FoxPro合法变量名的是(C)。

A)[AB] B)2AB C)学号_1D)AB C

6.在Visual FoxPro中,5E-9是一个(D)。

A)内存变量B)表达式C)字符型变量D)数值型常量

7.命令SET EXACT ON作用是(C)。

A)保证算术运算的精确度B)要求完整书写命令

C)字符串比较时要求精确一致D)指定小数位数

8.下面关于Visual FoxPro数组的叙述中,错误的是(D)。

A)用DIMENSION和DECLARE都可以定义数组

B) Visual FoxPro只支持一维数组和二维数组

C)刚刚定义的数组的各个元素的初值均为.F.

D)一个数组中各个数组元素必须是同一种数据类型

9.使用命令DECLARE mm(2,3)定义数组,包含的数组元素(下标变量)的个数为(D)。

A)2个B)3个C)5个D)6个

10.在Visual FoxPro的表达式中,有算术运算、关系运算和逻辑运算时,其运算的优先顺序是(A)。

A)算术、关系、逻辑B)关系、算术、逻辑

C)逻辑、关系、算术D)关系、逻辑、算术

11.在Visual FoxPro表达式中,运算结果一定是逻辑值的是(C)。

A)字符表达式B)数值表达式

C)关系表达式D)日期表达式

12.下列表达式结果为“首都北京”的是(D)。

A)“首都”-“北京”B)“首都”-“北京”

C)“首都”+“北京”D)“首都”+“北京”

13.在下面的表达式中,不正确的是(D)。

A){^2003-05-01 10:10:10 AM}-10

B){^2003-05-01}-DATE()

C) {^2003-05-01 10:10:10 AM}+10

D) {^2003-05-01}+DATE()

14.设A=[6*8+2],B=6*8+2,C="6*8+2"。下面表达式中正确的是(C)。

A)A+B B)B+C C)C+A D)C-B

15.设X为数值型内存变量,Y 为字符型内存变量,符合Visual FoxPro语法要求的表达式是(A)。

A)NOT.T. B)Y*5 C)X.25 D)2X>15

16.将逻辑真值赋给内存变量X的正确方法是(D)。

A)X=”.T.”B)STORE “T” TO X

C)X=TRUE D)STORE .T. TO X

17.在执行了SET EXACT OFF命令之后,下列四组字符串比较运算中,两个结果均为真的一组是(D)。

A)“高军”=“高军是一位女生”和“高军”$“高军是一位女生”

B)“高军是一位女生”=“高军”和“高军是一位女生”$“高军”

C)“高军是一位女生”=“高军”和“高军是一位女生”==“高军”

D)“高军”==“高军”和“高军是一位女生”=“高军”

18.表达式YEAR(DATE())+100>100=.T. OR [abc]+[daf]<[abcdef] AND NOT.F.的值为(C)。

A)200 B)0 C).T.D).F.

19.设s=2,执行命令?s=s+1后,其结果是(D)。

A)3 B)2 C).T. D).F.

20.设x=2,y=5,执行下列命令后,能得到数值型结果的是(B)。

A)X+3=Y B)X=Y C)?X=Y-3 D)?Y-3=X

*21.下列表达式中运算结果为逻辑真(.T.)的是(C)。

A)(35>30)AND (‘a’>‘A’) (拼音或笔画时)

B)(‘123’>‘456’) AND (123<456)

C)(3^2<3*2) OR (‘AW’$’KAWK’)

D)(.T. OR .F.) AND (NOT (2>1))

*22.在下列表达式中,运算结果为假(.F.)的是(A)。

A)”112”>”85”B)[abc]<=[abc]

C){^2004-01-01}<{^2005-01-01} D)”男”$ 性别

23.表达式”abcd”$”ad” AND (1.5+2)^3>66的运算结果为(C)。

A)abcd66 B).T. C).F.D)出错信息

24.下列表达式中,运算结果为数值型数据的是(B)。

A)[8888]-[6666] B)LEN(SPACE(5))-1

C)800+200=1000 D)DATE()+30

25.在下列函数中,函数值为数值型的是(A)。

A)AT(‘68‘,’668899‘)

B)SUBSTR(“668899”,LEN(“668899”)/2)

C)STR(YEAR(DATE()),4)

D)SUBSTR(DTOC(DATE(),1),1,4)

26.以下四组函数运算中,结果相同的一组是(D)。

A)LEFT(“Visual FoxPro”,6)与SUBSTR(”Visual FoxPro”,6)

B)YEAR(DA TE())与V AL(DTOC(DATE(),1))

C)V ARTYPE(“35-2*4”)与V ARTYPE(35-2*4)

D)INT(-123.456)与ROUND(-123.456,0)

27.函数INT(-28/6)及函数ROUND(-28/6,0)的值分别为(C)。

A)-6 -5 B)-5 -4 C)-4 -5D)-3 -4.7

28.假定系统日期为2005年1月1日,执行下面命令后,N的值是(B)。N=MOD(YEAR(DATE())-1900,100)A)105 B)5C)2005 D)1900

29.函数LEN(SPACE(5)-SPACE(3))的值是(D)。

A)0 B)2 C)3 D)8

30.函数AT(“教授”,“副教授”)的值是(B)。

A)2 B)3C)4 D).T.

31.函数V ARTYPE(“”)的值为(B)。

A)U B)C C)空格D)出错信息

32.设D=‘10/01/05‘,命令?V ARTYPE(&D)的输出结果是(C)。

A)10/01/05 B)C C)N D)D

33.设S=25,函数V ARTYPE(S<30)的值为(D)。

A).T. B)N C)U D)L

34.表达式V AL(SUBSTR(“邮政编码430074”,9,2))*LEN(“中南”)的结果是(C)。

A)86.00 B)148.00 C)172.00D)296.74

35.执行下列命令后,屏幕显示的结果为(C)。

STORE “23.45” TO a

?STR(&a,2)+”45&a”

A)6823.45 B)2345&a C)234523.45D)4546.45

36.执行下列命令序列

a=2000

b=”2000”

m=”A”

?&m+&b

主窗口中显示的结果是(D)。

A)A2000 B)语法错误C)20002000 D)4000

37.当记录指针指向表的未记录时,文件结束函数EOF()的返回值是(B)。

A).T. B).F. C)记录号D)出错信息

38.如果打开了一个空的Visual FoxPro表文件,即该文件中只有结构,没有记录,用函数RECNO()进行测试,其结果为(B)。

A)0 B)1C).NULL. D).F.

39.如果打开了一个空的Visual FoxPro表文件,即该文件中只有结构,没有记录,用函数BOF()、EOF()进行测试,其结果为(B)。

A).T. .F. B).T. .T. C).F. .T. D).F. .F.

40.当函数DELETE()的值为真(.T.)时,说明(B)。

A)记录已从表文件中删除

B)当前记录已被做上删除标记

C)表文件已被删除

D)有删除标志的记录不参加操作

二.填空题:

1.当字符型常量的定界符内部不包含任何字符时,称为空字符串,空字符串的长度为(0)。

2.字段变量的名称和类型是在建立(表结构)时进行定义的。

3.如果变量与字段变量同名时,可在内存变量前面加上(M.或M->)标志,特别说明该变量是内存变量。

4.?STR(145.25,5,1)命令执行的结果是(145.3)。

5.?ROUND(6.789,2)命令执行的结果是(6.79)。

6.设Y=”2005”,M=”10”,D=”30”,利用这三个内存变量组成一个表达式并得到日期型结果(表示2005年10月30日),并将该结果赋给变量T,完整的命令为(T=CTOD(M+”/”+D+”/”+Y))。

7.执行下列命令的结果为(个人电子计算机)。

X=“个人计算机”

?LEFT(X,4)+STUFF(X,1,4," 电子")

8.执行下列命令后,打开的表文件名是(XS3)。

N=’3’

S=’XS’+N

Use &S

9.设A=123,B=456,K=“A+B”,表达式100+&K的值是(679)。

10.执行下列命令后,变量X、Y、Z的值分别为(101.00)、(Z=X^2)、(100.00)。

X=10

X1=”Z=X^2”

&X1

X=”1”

Y=X&X

X=Z+&X

第四章

单项选择题:

Visual FoxPro一个命令的最大长度是(C)。

A)125 B)225 C)8192 D)任意

在Visual FoxPro的COMMAND窗口输入指令STORE .T. TO GZ的意义是(C)。

对字段T排序,并将结果存入GZ文件

对字段GZ排序,并将结果存入T文件

创建内存变量GZ,并赋值为逻辑常量T

创建内存变量T,并赋值为字段变量GZ

Visual FoxPro中的数据库表文件中的字段是一种(C)。

A)常量B)运算符C)变量D)函数

4.Visual FoxPro自由表的字段名最多可以有(B)个字符。

A)9 B)10C)8 D)11

5.在Visual FoxPro中,字段的宽度不是由系统自动给出的字段类型是(A)。

A)字符型B)备注型C)日期型D)逻辑型

6.在Visual FoxPro的表格结构中,逻辑型、日期型和备注型字段的宽度分别为(B)。

A)1、8、10 B)1、8、4C)3、8、10 D)3、8、任意

7.在Visual FoxPro中,要对已经存在的表建立索引,应对表进行(C)。

A)记录浏览B)记录修改

C)结构修改D)重建表文件

8.如果需要给当前表增加一个字段,应使用的命令是(B)。

A)APPEND B)MODIFY STRU

C)INSERT D)EDIT

9.当使用“表设计器”对话框从数据表中删除一个字段时,该字段中的数据将(A)。

A)从数据表中删除B)保留在文本文件中

C)仍然保留在数据表中D)加上删除标记

10.不能对记录进行编辑修改的命令是(A)。

A)MODI STRU B)CHANGE

C)BROWSE D)EDIT

11. 打开一数据库,不能肯定将当前记录指针定位到1号记录的命令是(B)。

A)GOTO 1 B)GO TOP

C)LOCATE WHILE RECNO()=1

D)LOCATE ALL FOR RECNO()=1

12.在Visual FoxPro环境下要建立一个新的表文件,首先应在“表设计器”对话框中定义数据表结构,其中TYPE列是用来定义(C)。

A)字段名B)字段宽度C)字段类型D)索引

13.“表设计器”对话框可用来建立一个新的表结构,此时对话框有(C)个可编辑列。

A)4 B)3 C)6 D)5

14.在Visual FoxPro中,下列不属于数据表字段定义的变量是(D)。

A)字段名B)宽度C)数据类型D)字段个数

15.可以链接或嵌入OLE对象的字段类型是(C)。

A)备注型字段B)通用型和备注型字段

C)通用型字段D)任何类型的字段

16.要求一个数据表文件的数值型字段具有5位小数,则该字段的宽度最少应当定义为(C)。

A)5位B)6位C)7位D)8位

17.在Visual FoxPro环境下,用LIST STRU命令显示表中每个记录的长度(总计)为60,用户实际可用字段的总宽度为(C)。

A)60 B)61 C)59D)58

18.在Visual FoxPro中,可以对字段设置默认值的表(A)。

A)必须是数据库表B)必须是自由表

C)是自由表或数据库表D)不能设置字段的默认值

19.在Visual FoxPro中,当备注型字段有内容时,其显示为(B)。

A)memo B)Memo C)MeMo D)MEMO

20. 一个表的全部备注字段的内容存储在(A)。

A)同一备注文件中B)不同备注文件中

C)同一文本文件中D)同一数据表文件中

21.在Visual FoxPro中,AA.DBF的备注文件是(C)。

A)AA.FOX B)AA.DBT C)AA.FPT D)AA.BAK

22.浏览窗口,可以把窗口分为两个分区,下面关于两个窗口的说法中不正确的是(D)。

A)用户可在同一时刻查看数据表的两个部分

B)通常这两个分区是连接的,当一个窗口中的记录滚动时,另一个窗口中的记录也进行滚动

C)这两个部分显示方式可以相同也可以不相同

D)这两个部分显示方式一定相同

23.在Visual FoxPro中,有一个数据表已打开,要显示姓李的人员,使用Browse命令的语句是(C)。

A)BROW FOR 姓名=李

B)BROW FOR 姓名=李**

C)BROW FOR 姓名=“李”

D)BROW FOR 姓名=“李**”

24.将当前表(成绩表)中的平时成绩按30%折算成总成绩的组成,使用的命令是(C)。

A)REPL 平时WITH 平时*30%

B)REPL 平时WITH 平时*30

C)REPL ALL 平时WITH 平时*0.3

D)REPL 平时WITH 平时*0.3 FOR ALL

25.学生关系中有姓名,性别,出生日期等字段,要显示所有1985年出生的学生名单,应使用的命令是(C)。

A)LIST 姓名FOR 出生日期=1985

B)LIST 姓名FOR 出生日期=“1985”

C)LIST 姓名FOR YEAR(出生日期)=1985

D)LIST 姓名FOR YEAR(“出生日期”)=1985

26.已知“是否通过”字段为逻辑型,要显示所有未通过的记录,应使用命令(D)。

A)LIST FOR 是否通过=“.F.”

B)LIST FOR 是否通过<>.F.

C)LIST FOR NOT“是否通过”

D)LIST FOR NOT是否通过

27.在Visual FoxPro中,在查找默认范围时,只显示当前记录的命令是(C)。

A)LIST B)BROWSE C)DISPLAY D)CHANGE

28.在当前表中,查找第2个女同学的记录,应使用命令(C)。

A)LOCATE FOR 性别=‘女’

NEXT 6

B)LOCATE FOR 性别=‘女’

C)LOCATE FOR 性别=‘女’

CONTINUE

D)LIST FOR 性别=‘女’

NEXT 2

29.使用REPLACE命令时,若范围为ALL或REST,则执行该命令后,记录指针指向(C)。

A)末记录B)首记录

C)末记录的后面D)首记录的前面

30.在Visual FoxPro中,创建一个名为SDB.DBF的数据库文件,使用的命令是(D)。

A)CREATE B)CREATE SDB

C)CREATE TABLE SDB D)CREATE DATABASE SDB

31.欲从数据表文件中物理删除一条记录,正确的操作应当是(D)。

A)直接使用DELETE命令

B)直接使用ZAP命令

C)先用DELETE命令,再使用ZAP命令

D)先用DELETE命令,再使用PACK命令

32.当前工资表中有108条记录,当前记录号为8,用SUM命令计算工资总和时,若默认范围子句,则系统将(D)。A)只计算当前记录的工资和

B)计算前8条记录的工资和

C)计算后8条记录的工资和

D)计算全部记录的工资和

33.计算职称为工程师的所有职工的工资总和,并把计算结果存入内存变量gzh,应使用命令(A)。

A)SUM 工资TO gzh FOR 职称=‘工程师’

B)SUM ON 工资TO gzh FOR 职称=‘工程师’

C)TOTAL ON 工资TO gzh FOR 职称=‘工程师’

D)TOTAL 工资TO gzh FOR 职称=‘工程师’

34.在Visual FoxPro中,使用TOTAL命令时,表文件应该先(C)。

A)排序B)建立索引

C)排序或建立索引D)都不需要

35.在Visual FoxPro 中,可以同时开辟工作区数为(B)。

A)1024 B)32767C)225 D)10

36.执行SELECT 0选择工作区的结果是(B)。

A)选择了0号工作区

B)选择了空闲的最小号工作区

C)选择了一个空闲的工作区

D)显示出错信息

37.在Visual FoxPro中,关于工作区的叙述错误的是(D)。

A)工作区是内存中的一块区域

B)一个工作区中可以打开一个数据表文件

C)可同时打开多个工作区

D)一个数据表文件只能在一个工作区打开

38.若已在2号工作区打开了super2.dbf数据表,在1号工作区打开了super1.dbf数据表,当前工作区是1号工作区,要对2号工作区中super2.dbf数据表的“合同号”字段进行操作,应使用的表达式是(C)。

A)合同号B)a.合同号

C)b.合同号D)2->合同号

39.在1号工作区,打开数据表C:\FOX下AA.DBF;在2号工作区,打开数据表C:\FOX下BB.DBF;在3号工作区,打开数据表C:\FOX下CC.DBF。当前工作区为2号工作区,执行打印显示dbf( )命令后的结果是(B)。

A)C:\FOX\AA.DBF B)C:\FOX\BB.DBF

C)C:\FOX\CC.DBF D )BB.DBF

40. 在Visual FoxPro中,索引文件的扩展名是(C)。

A)IDX和ANX B)IDX和BDX

C)IDX和CDX D)IND和EDX

41.在Visual FoxPro中,索引按关键字段数据的大小排列,具有比较大小意义的数据类型有(C)。

A)数字、日期B)数字、字符

C)数字、字符、日期D)数字、字符、备注

42.在建立复合索引时,(B)。

A)表达式中的字段必须具有相同的类型

B)表达式中的字段可以是不同的类型,但在组成索引表达式时必须转换成同类型

C)只按第一个索引关键字段进行排序

D)生成了其他的索引文件

43.表文件及其索引文件(.IDX)已打开,要确保记录指针定位在记录号为1的记录上,应使用命令(C)。

A)GO TOP B)GO BOF()

C)GO 1 D)SKIP 1

44.不论索引是否生效,定位到相同记录上的命令是(C)。

A)GO TOP B)GO BOTTOM

C)GO 6 D)SKIP

45.在一个已打开索引文件的数据表文件中,快速搜索关键字值与表达式值匹配的记录的命令是(B)。

A)LOCATE B)SEEK

C)CONTINUE D)COUNT

46.可以伴随着表的打开而自动打开的索引是(C)

A)单一索引文件(IDX)B)复合索引文件(CDX)

C)结构复合索引文件D)非结构复合索引文件

47.下面有关索引的描述,正确的是(C)。

A)建立索引以后,原来的数据库表文件中记录的物理顺序将被改变

B)索引与数据库表的数据存储在一个文件中

C)创建索引是创建一个指向数据库表文件记录的指针构成的文件

D)使用索引并不能加快对表的查询操作

48.在Visual FoxPro中,下列叙述正确的是(A)。

A)打开库文件的同时也打开了该文件所建的结构复合索引文件

B)数据表文件的指针总是指向某一条记录

C)APPEND命令可在记录的前面或后面插入记录

D)数据表文件编辑完毕后要用CTRL+Q组合键退出

49.在Visual FoxPro中,关于自由表的叙述正确的是(B)。

A)自由表和数据库表是完全相同的

B)自由表不能建立字段级规则和约束

C)自由表不能建立候选索引

D)自由表不可以加入到数据库中

50.一个数据库名为sutdent,要想打开该数据库,应使用命令(B)。

A)OPEN student B)OPEN DATA student

C)USE DA TA student D)USE student

51.在Visual FoxPro的数据工作期窗口,使用SET RELATION命令可以建立两个表之间的关联,这种关联是(C)。A)永久性关联B)永久性关联或临时性关联

C)临时性关联D)永久性关联和临时性关联

52.要控制两个表中数据完整性和一致性,可以设置“参照完整性”,要求这两个表(A)。

A)是同一个数据库中的两个表

B)是不同数据库中的两个表

C)是两个自由表

D)一个是数据库表,一个是自由表

53.在数据库设计器中,建立两个表之间的一对多关系是通过(A)实现的。

A)“一方”表的主索引或候选索引,“多方”表的普通索引

B)“一方”表的主索引,“多方”表的普通索引或候选索引

C)“一方”的普通索引,“多方”表的主索引或候选索引

D)“一方”表的普通索引,“多方”表的候选索引或普通索引

*54.数据库的三种关系操作分别是:选择、投影、连接。选择操作可用[1]中的(D)命令来完成;连接操作可用[2]中的(C)命令来完成;而投影操作通常是在命令中加[3]中的(A)来实现。

(1)A)GO B)SKIP

C)INDEX D)SET FILTER TO

(2)A)COPY B)APPEND

C)JOIN WITH TO D)REPLACE WITH

(3)A)FIELD 子句B)FOR 子句

C)NEXT 子句D)WHILE 子句

二.填空题

1.若当前数据库中有200个记录,当前记录号是8,执行命令LIST NEXT 5的结果是(显示从8号记录开始以下的5条记录的内容)。

2.表由(结构)和(数据(或记录))两部分组成。

3.通用型字段的数据可以通过剪贴板粘贴,也可以通过编辑菜单中的(“插入对象”)命令来插入图形。

4.表文件尾位于(末记录的后面);表文件头位于(首记录的前面)。

*5.在Visual FoxPro 8.0中,用鼠标标记一行文本的方法是先将鼠标指针指向该行,然后连击鼠标按钮(3)次,对标记后的文本块可以进行整块操作。

6.要在当前表中第7号记录与第8号记录之间插入一条新的记录,可以使用的命令序列是(GO 7 INSERT或GO 8 INSERT BEFORE)。

7.Visual FoxPro中,关系运算选择是通过各种命令中的(范围)短语和(FOR<条件>或WHILE<条件>)短语实现的。8.要将当前表中“奖金”字段的值全部删除,而表结构及其他字段的值保持不变,可使用命令(REPLACE ALL 奖金WITH 0)。

9.当记录指针指向表文件的首记录时,函数BOF()的返回值是(.F.)。

10.要想逐条显示当前表中的所有记录,可以根据(EOF()或BOF())函数值来判断是否已经显示完毕。

11.已知表GZ1.DBF和表GZ2.DBF的结构相同,各含有若干条记录,要将GZ2的记录追加到GZ1中,使用的命令序列为(USE GZ1 APPEND FROM GZ2)。

12.当前表为图书表,其中字段“分类号”为字符型,要将分类号以字母“I”开头的记录做删除标记,可使用命令(DELETE ALL FOR LEFT(分类号,1)=‘I’)。

13.在SORT命令中,当记录按关键字段值升序排序时,可以省略参数(/A),当记录按关键字段值降序排序时,则必须使用参数(/D)。

14.汇总命令的功能是分别对关键字相同的记录的数据型字段求和,并将结果存储在一个(表文件)中,执行该命令时,表中记录应该是(有序)的。

15.结构复合索引文件的文件标识符与(数据表的文件标识符)相同,它随表的打开而打开,在增删记录时会自动维护,因而使用最方便。

16.同一个表的多个索引可以创建在一个索引文件中,索引文件的扩展名是(CDX)。

17.一对多关联中,父表中的索引是(主索引或候选索引)类型,子表中的索引类型是(普通索引)。

18.执行以下命令序列后,BOOK1的指针指向第(3)号记录,BOOK2的指针指向(1)号记录。

SELECT 2

USE BOOK1

SELE 3

USE BOOK2

SELECT 2

SKIP 2

19.创建数据库有两种方式,即界面操作方式和(命令方式)。

20.向数据库中添加的表应该是目前不属于(任何数据库)的单表。

21.在表设计器的(表)选项卡中,可以设置记录验证规则、有效性出错信息,还可以指定记录插入、更新及删除的规则。

22.记录级有效性检查规则用于检查(同一记录中不同字段)之间的逻辑关系。

23.插入触发器用于指定一个规则,每次向表中插入或追加记录时触发该规则,检查新输入的记录(是否满足该规则)。24.永久关系是数据库表之间的关系,在数据库设计器中表现为表索引之间的(连线)。

25.引用非当前工作区中表的字段格式为(别名.字段名)。

26.数据工作期是一个用于(设置工作环境)的交互操作窗口。

27.关联是指使不同工作区的记录指针建立起一种临时的(联动)关系,当父表的记录指针移动时,子表的记录指针也随之移动。

28.内部连接是指只有(满足连接条件)的记录才包含在查询结果中。

29.候选索引的关键字段值是(惟一)的。主索引的关键字段值是(惟一)的。普通索引的关键字段值是(不惟一)的。

30.要删除表中的索引标识,可以在(表设计器)中进行,或(用命令)操作。

31.数据表之间的参照完整性有(更新)、(插入)和(删除)规则。

*32.“参照完整性生成器”对话框中的“删除规则”选项卡用于指定删除(父)表中的记录时所用的规则;“插入规则“选项卡用于指定在(子)表中插入新记录或更新已存在的记录时所用的规则。

*33.将当前库文件的内容复制到指定的库文件中,应使用命令(COPY TO <库文件名>);复制库文件的结构应使用命令(COPY STRUCTURE <新库文件名>);将库文件复制成文本数据文件,应使用命令(COPY TO <数据文件名>);若复制成标准格式的数据文件,应选择可选项(SDF);若复制成非标准格式数据文件,应使用可选项(DELIMITED);将文本数据文件中的数据复制到库文件,应使用命令(APPEND FROM <数据库文件名>);复制任何类型的文件使用命令(COPY FILE <源文件名> TO <目标文件名>)。

*34.库文件TEXT.DBF尚未打开,要将该文件复制为数据库文件TEST1.DBF,命令为(COPY FILE TEXT.DBF TO TEST1.DBF)。

*35.从指定的在A盘的文本文件JAKE.DA T中取出满足条件的记录,添加到当前表文件中来的命令为(APPEND FROM A:JAKE.DAT SDF)。

*36.用FIND命令查询数据时,记录指针指向第一个满足条件的记录,FOUND()函数返回值为(.T.或.Y.),EOF()函数返回值为(.F.或.N.),若未查到满足条件的记录,则记录指针指向(文件尾部),FOUND()函数返回值为(.F.或.N.),EOF()函数返回值为(.T.或.Y.)。

*37.设某一图书库文件中有字符型字段“分类号“和日期型字段”出版日期“,若要将分类号中以字母J开头的图书记录全部加删除标记,应使用命令(DELETE ALL FOR SUBSTR(分类号,1,1)=“J“),若要求真正删除所有1960年以前出版的图书记录,应使用命令(DELETE ALL FOR YEAR(出版日期)<1960或DELETE ALL FOR 出版日期

第五章

单项选择题:

1. SQL语言是(C)的语言。

A)层次数据库B)网络数据库C)关系数据库D)非数据库

2.SQL语言中,实现数据更新的语句是(C)。

A)SELECT B)INSERT C)UPDATE D)DELETE

3.下列SQL语句中,用于修改表结构的是(A)。

A)ALTER B)CREATE C)UPDATE D)INSERT

4.SQL中,与“NOT IN”等价的操作符是(D)。

A)=SOME B)<>SOME C)=ALL D)<>ALL

5.SQL的英文全称是(B)。

A)standard query language B)structured query language

C)select query language D)以上都不是

6.关于INSERT—SQL语言描述,正确的是(C)。

A)可以向表中插入若干条记录B)在表中任何位置插入一条记录

C)在表尾插入一条记录D)在表头插入一条记录

7.DELETE FROM S WHERE 年龄>60语言的功能是(C)。

A)从S表中彻底删除年龄大于60岁的记录

B)删除S表

C)S表中年龄大于60岁的记录被加上删除标记

D)删除S标记的年龄段

8.在SQL查询时,使用WHERE子句指出的是(B)。

A)查询目标B)查询条件C)查询结果D)查询视图

9.使用SQL语句进行分组检索时,为了去掉不满足条件的分组,应当(B)。

A)使用WHERE子句

B)在GROUP BY后面使用HA VING子句

C)先使用WHERE子句,再使用HA VING子句

D)先使用HA VING子句,再使用WHERE子句

10.只有满足连接条件的记录才包含在查询结果中,这种连接为(C)。

A)左连接B)右连接C)内部连接D)完全连接

11.如果要在屏幕上直接看到查询结果,“查询去向”应该选择(D)。

A)屏幕B)浏览C)临时表或屏幕D)浏览或屏幕

12.关于SQL语言的特点,下列说法中不正确的是(D)。

A)是一种一体化的语言,它包括了数据定义,数据操作和数据控制等功能

B)是一种高度非过程化的语言

C)可直接以命令方式交互式使用,也可以嵌入到程序设计语言中使用

D)语言功能很强,故命令较多,语言不够简洁

13.在Visual FoxPro中,关于SQL语言的说法不正确的是(D)。

A)支持数据定义功能B)支持数据查询功能

C)支持数据操纵功能D)支持数据控制功能

14.对STUDENT表中的数据,有如下SQL SELECT语句:

SELECT * FROM STUDENT WHERE 生日BETWEEN {^1983/01/01} and {^1985/01/01}下列语句中与该语句等价的是(C)。

SELECT * FROM STUDENT WHERE 生日<={^1983/01/01} AND 生日>={^1985/01/01}

SELECT * FROM STUDENT WHERE 生日<{^1983/01/01} AND 生日>{^1985/01/01}

SELECT * FROM STUDENT WHERE 生日>={^1983/01/01} AND 生日<={^1985/01/01}

SELECT * FROM STUDENT WHERE 生日>{^1983/01/01} AND 生日<{^1985/01/01}

15.“学生”表结构为(学号N(3),姓名C(3),性别C(1),年龄N(2))),学号为主索引,若用SQL命令检索所有比“王三”年龄大的同学,则下列语句正确的是(A)。

A)SELECT * FROM 学生WHERE 年龄>(SELECT 年龄FROM 学生WHERE 姓名=“王三”)

B)SELECT * FROM 学生WHERE 姓名=“王三”

C)SELECT * FROM 学生WHERE 年龄>(SELECT 年龄WHERE 姓名=“王三”)

D)SELECT * FROM 学生WHERE 年龄>“王三”

16.在SELECT—SQL语句中,ORDER BY子句根据列的值对查询结果进行排序。下列关于排序依据的说法中,不正确的是(A)。

A)只要是FROM子句中表的字段即可

B)是SELECT主句(不在子查询中)的一个选项

C)一个数值表达式,表示查询结果中列的位置(最左边列编号为1)

D)默认是升序(ASC)排列,可在其后加DESC指定查询结果以降序排列

17.查询学生学号(字符型,长度为8)的后两位字符是31的错误命令是(C)。

A)SELECT * FROM 学生WHERE SUBSTR(学号,7)=“31”

B)SELECT * FROM 学生WHERE SUBSTR(学号,7,2)=“31”

C)SELECT * FROM 学生WHERE “31”$ 学号

D)SELECT * FROM 学生WHERE RIGHT(学号,2)=“31”

18.在SQL语句中,与表达式“成绩”NOT IN(60,100)等价的表达式是(C)。

A)成绩=60 AND 成绩=100

B)成绩≠60 OR 成绩<>100

C)成绩<>60 AND 成绩!=100

D)成绩=60 OR 成绩=100

19.在SQL—SELECT语句中用于表达查询条件的短语是(C)。

A)FOR B)WHILE C)WHERE D)CONDITION

20.一条没有指明去向的SQL—SELECT语句执行之后,会把查询结果显示在屏幕上,要退出这个查询窗口,应该按的键是(C)。

A)ALT B)DELETE C)ESC D)RETURN

二.填空题:

1.SQL语言的数据定义功能包括(定义数据库)、(定义基本表)、(定义视图)和(定义索引)。

2.SELECT命令中,(WHERE)子句用选择满足给定条件的元组,使用(GROUP BY)子句可按指定列的值分组,同时使用(HA VING)子句可提取满足条件的组。

3.在SELECT命令中进行查询,若希望查询的结果不出现重复元组,应在语句中使用(DISTINCT)保留字。

4.子查询的条件依赖于父查询,这类查询称为(相关查询)。

5.视图是一个虚表,它是从(一个或几个基本表)导出的表。在数据库中,只存放视图的(定义),不存放视图对应的(数据)。

6.用SQL语句建立表结构时,可以定义完整性规则。用(PRIMARY KEY TAG)子句定义表的主索引和索引标识,用(FOREIGN KEY TAG REFERENCES TAG)子句定义表的外键和对照表。

7.在SQL的CREATE TABLE语句中,为属性说明取值范围(约束)的是(CHECK)短语。

8.在ALTER语句中,(ALTER)子句用于修改列的性质,(ADD)子句用于增加列。

9.在SELECT语句中,表示条件表达式用WHERE子句,分组用(GROUP B Y)子句,排序用(ORDER BY)子句。

10.在ORDER BY子句的选项中,DESC代表(降序)输出;若不指明,则代表(升序)输出。

11.在SELECT语句中,定义一个区间范围的特殊运算符是(BETWEEN AND),检查一个属性值是否属于一组值中的特殊运算符是(IN)。

12.在SQL的嵌套查询中,量词ANY和(SOME)是同义词。

13.在SQL查询时,使用(HA VING)子句指出的是设置分组的条件。

14.在SELECT语句中,字符串匹配运算符用(LIKE),匹配符(%)表示零个或多个字符,(_)表示任何一个字符。大题部分:

一二章画E—R图、转化成关系模式、关系规范化

SQL语言使用题(五章例题5-6—例题5-32)

例5—6 查询学院表中所有记录并显示。

set default to e:\学生管理

select * from 学生管理!学院

注1:*代表所有字段

注2:学生管理!学院:打开数据库《学生管理》中的数据表《学院》

例5—7查询课程表中所有课程的课程名和学分信息。

select 课程名,学分 from 课程

注:字段名之间用英文逗号隔开

select 课程名,学分 from 课程 to screen

注:结果不在“查询”窗口显示,也不是窗口形式,而是以字符行的形式显示在VFP的主窗口中。

例5—8查询学生就读专业的专业编号并保存在名为XSZY的表文件中

select distinct 专业编号 from 学生 into table xszy.dbf

use xszy.dbf

brow

注1:DISTINCT 去掉查询结果中的重复记录

如果不加DISTINCT选项,使用查询命令:

SELECT 专业编号 FROM 学生

查询《科德学生信息》表中学生的民族情况

sele distinct 民族 from 科德学生信息

注2:INTO TABLE 将查询结果保存在表中

SELECT查询结果输出目标

输出结果使用子句说明

表INTO TABLE<表名> 存入单独表中

临时表INTO CURSOR<临时表名> 用表格式存在内存中

数组INTO ARRAY<数组名> 可自动定义数组

文本文件TO FILE<文件名>.txt[ADDITIVE] ADDITIVE附在原数据后

VFP窗口TO SCREEN 在VFP主窗口中显示

打印TO PRINTER[PROMPT] PROMPT增加打印提示

浏览窗口默认值,不指定输出目标浏览窗口中显示

例5—9按生日从小到大排序输出教师信息并保存到JSNL.txt文件中

select *;

from 教师;

to file c:\jsnl.txt;

order by 生日 asc

注1:“;”续行符

注2:ORDER BY 对查询结果排序 ASC:升序 DESC:降序

注3:TO FILE 查询结果保存到文本文件中,结果同时在主窗口显示

注4:执行TO FILE | TO PRINTER | TO SCREEN子句的查询时,结果都会显示在主窗口中,且查询结果的第一行是字段名作为表头,此时,PLAIN、NOWAIT、NOCONSOLE的作用如下:

◆PLAIN子句:去掉字段名表头,只保留查询结果本身

select *;

from 教师;

to file c:\jsnl.txt plain;

order by 生日 asc

◆NOWAIT子句:如果窗口被占满就自动开始向下滚动,否则,要等待提示按键后才开始滚动

select *;

from 教师;

to file c:\jsnl.txt nowait plain;

order by 生日 asc

◆NOCONSOLE子句:在执行TO FILE | TO PRINTER | TO SCREEN时,不在屏幕上显示查询结果

select *;

from 教师;

to file c:\jsnl.txt noconsole ;

order by 生日 asc

注5:PLAIN、NOWAIT、NOCONSOLE子句对INTO子句定义的输出方式(INTO TABLE | INTO CURSOR | INTO ARRAY)和浏览窗口不起作用

例5—10查询基本工资最高的前三名教师的信息。

select top 3 *;

from 教师;

order by 基本工资 desc

注1:TOP<数值n>:保留查询结果的前n条记录,n的取值范围1~32767

查询《科德学生信息》表中身高最高的前5名学生的身高、姓名和性别

sele top 5 身高 ,姓名,性别 from 科德学生信息 order by 身高 desc

注2:TOP PERCENT:显示全部结果的前面n%条记录,n的取值范围0.01~99.99

select top 50 percent *;

from 教师;

order by 基本工资 desc

注3:使用TOP的查询命令必须包括ORDER BY子句

例5—11查询学号为“0511010001”的学生的学习成绩。

sele * from 成绩 where 学号="0511010001"

注1:WHERE<过滤条件>子句:进行查询条件的设定,<过滤条件>是逻辑表达式,其中可以使用的比较运算符包括:=、>、>=、<、<=、<>

注2:几种专用运算符:

◆<字段> LIKE <值>:字符型字段可使用此语句,<值>中可以包含通配符“%”通配若干位任意字符和“_”通配一

位任意字符。字段内容符合给定通配格式的记录使条件为.T.。

例5—12在学生表中查询王姓女生的姓名、性别、生日、民族和籍贯。

select 姓名,性别,生日,民族,籍贯;

from 学生;

where 姓名like "王%" and 性别="女"

list fields 姓名,性别,生日,民族,籍贯 for 姓名="王" and 性别="女"

查询《科德学生信息》表中王姓女生的姓名、性别、出生年月和民族

select 姓名,性别,出生年月,民族;

from 科德学生信息;

where 姓名 like "王%" and 性别="女"

查询《科德学生信息》表中爱好篮球和爱好游戏的学生的姓名、专业班级和爱好。

select 姓名,专业班级,爱好;

from 科德学生信息;

where 爱好 like "%篮球%" or 爱好 like "%游戏%"

◆<字段> BETWEEN <起点值> AND <终点值>:字段值位于给定范围内的记录使条件为.T.。

◆<字段> IN (值1,值2,…值n):集合运算符,括号内列出集合的各元素,字段值等于某个元素的记录使条件为.T.。

例5—13查询达到高级职称(教授、副教授、研究员、副研究员)的教师信息。

select *;

from 教师;

where 职称in ("教授","副教授","研究员","副研究员")

◆<字段> IS [NOT] NULL:对可能取NULL值的字段进行判断,当字段值为NULL时,<字段> IS NULL为.T.,当字段

有值时,<字段> IS NOT NULL为.T.。

◆嵌套子查询中,还有ALL、ANY、SOME、EXISTS等集合运算(P127)

◆查询的复合条件:可由NOT、AND、OR连接多个条件

例5—14统计所有教师的工资总额、平均工资,以及教师中的最高工资和最低工资。

select "教师工资",sum(基本工资),avg(基本工资),max(基本工资),min(基本工资);

from 教师

注1:在输出列上使用统计函数(库函数)

SELECT中使用的统计函数

数格式功能自动取列名

UNT(*)或COUNT(列)统计查询结果的记录数或结果

Cnt或Cnt_列名

中该列中值的个数

M(数值列表达式)求数值列的和Sum_字段名,Sum_Exp_i

G(数值列表达式)求数值列的平均值Avg_字段名,Avg_Exp_i

X(列表达式)求出本列中最大值Max_字段名,Max_Exp_i

N(列表达式)求出本列中最小值Min_字段名,Min_Exp_i

注2:输出列可以是表达式,SELECT命令自动为每列取名,Exp_1、Exp_2…。

注3:统计函数的列名也由SQL自动取名,如果统计函数的自变量是字段名,自动取列名为:“函数名_字段名”。

注4:当统计函数的自变量是其他形式时,自动取名方式为“函数名_Exp_表达式序号”

注5:由于自动取的名称一般不明确,可以由用户改名,格式为在输出列的后面加上选项:AS<新名>

举例:

select "教师工资" as 说明,;

sum(基本工资) as 工资总额,avg(基本工资) as 平均工资,;

max(基本工资) as 最高工资,min (基本工资) as 最低工资;

from 教师

例5—15统计教师的工资总额、平均工资,以及如果每人增加10%的工资后的预期工资总额和预期平均工资。

select "教师工资" as 说明,;

sum(基本工资) as 工资总额,avg(基本工资) as 平均工资,;

sum(基本工资*1.1) as 预期工资总额,avg(基本工资*1.1) as 预期平均工资;

from 教师

2.多表连接查询

多表查询与单表查询的不同:

(1)在FROM子句中,必须写上查询所涉及到的所有表名,为方便和需要,有时可以为各表取别名;

(2)必须增加表之间的连接条件(笛卡儿积除外 P126下)。连接条件一般是两个表中相同或相关的字段进行比较的表达式;

(3)当连接条件或查询过滤条件中使用的字段名在不同表中重复出现时(即字段重名时),在表达式中应在重名字段名前加上表名前缀,以示区分;

(4)在SELECT语句的输出列中,可以出现多个表中的字段,如果有字段重名的情况,必须在重名的字段名前加上表名前缀。在多表中不重名的字段,可以不带前缀。

【多表查询语法格式1】(SQL新版本)

SELECT <输出列1>,…,<输出列 n>

FROM <表1> JOIN <表2> ON <连接条件1>

[JOIN <表3> ON <连接条件2>…]

【多表查询语法格式2】(SQL早期版本)

SELECT<输出列1>,…,<输出列 n>

FROM <表1>,<表2>,…

WHERE 连接条件

两表连接运算四种不同连接方式:

内部连接、左外连接、右外连接、全外连接

【内连接语法】SELECT 输出列

FROM 左表 [INNER] JOIN 右表

ON 连接条件

内连接:原表记录中严格满足连接条件的左表和右表的记录连接在一

起输出,内连接简称连接运算,命令中INNER可省略。

例5—16 (内连接查询)查询学生所学专业并显示学生的全部信息和专业的全部信息。

(SQL新版本写法)

select 学生.*,专业.*;

from 学生inner join 专业;

on学生.专业编号=专业.专业编号

注:两个表中都有专业编号字段,因此在查询结果中该字段出现两次,并分别在字段后加_a、_b以示区别。

(SQL早期版本写法)

select 学生.*,专业.*;

from 学生,专业;

where 学生.专业编号=专业.专业编号

【外连接语法】SELECT 输出列

FROM 左表 LEFT | RIGHT | FULL[OUTER]JOIN 右表

ON 连接条件

外连接查询是除满足内连接查询的记录外,还可以保留左表、右表或左右两个表中其他不满足连接条件的记录。

右外连接:保留右表的不满足连接条件的记录,对应的左表输出字段

处填上NULL,命令中OUTER可省略。

例5—17 (右外连接查询)查询学生所学专业的信息,显示学生的姓名、性别、生日、以及专业表的全部字段,同时显示尚未有学生就读的其他专业信息。

sele 姓名,性别,生日,专业.*;

from 学生 right outer join 专业;

on 学生.专业编号=专业.专业编号

左外连接:保留左表的不满足连接条件的记录,对应的右表输出字段

处填上NULL,命令中OUTER可省略。

例5—18 (左外连接查询)显示全部学生信息以及他们的成绩信息,包括没有选课的学生信息。

sele distinct 学号 from 成绩

显示选课学生的学号

select 学生.*,成绩.*;

from 学生left outer join成绩;

on 学生.学号=成绩.学号

全外连接:保留左、右表中不满足连接条件的记录,在对应的另外一

边分别填上NULL,命令中OUTER可省略。

例5—19 (多表连接查询)显示选修了“大学英语”课程的学生姓名、专业名称和他们的成绩。(四表连接操作)select 课程名,姓名,专业名称,成绩;

from 课程join成绩 on 课程.课程编号=成绩.课程编号;

join 学生 on成绩.学号=学生.学号;

join专业on学生.专业编号=专业.专业编号;

where 课程名="大学英语"

例5—20(自连接查询)如下图,问通过一次转机可以到达什么地方航班表

航班号起点终点起飞时间

CA201 北京上海09:20

CA220 上海北京10:10

CA310 上海广州14:00

CA510 北京武汉11:50

CA520 北京昆明07:00

CA1102 武汉桂林15:20

通过一次转机可以到达的地方

起点转机点终点

上海北京上海

北京上海北京

北京上海广州

上海北京武汉

上海北京昆明

北京武汉桂林

自连接查询:表自我连接查询

一次转机:飞机到达终点后再乘一次飞机可以到达的地点,即第一次的终点作为第二次的起点,需将航班表进行一次自我连接运算。

select f1.起点,f1.终点as转机点,f2.终点;

from 航班表 as f1,航班表 as f2;

where f1.终点=f2.起点

注:别名的使用,一个查询中同一个表同时作为两个表使用,因此这个表要以不同的名字参与查询。

例5—21查询每个教师的姓名,所在学院名,以及学院院长姓名。

院长用教师编号显示:

select 姓名,学院名,院长;

from 教师 join 学院 on 教师.学院编号=学院.学院编号

院长用姓名显示:

(教师表连接2次进行查询)

select j1.姓名,学院名,j2.姓名 as 院长;

from 教师 as j1 join 学院 on j1.学院编号=学院.学院编号;

join 教师 as j2 on 学院.院长=j2.教师编号

注:教师表中有学院编号,可与学院表连接。但学院表中的院长只是教师编号,因此,还要再与教师表连接,以便查到院长的姓名,所以教师表要连接使用两次。

注:VFP8中规定,同时参与连接的表最多可以达到9个表。

笛卡儿积运算:

SELECT <输出列1>,…,<输出列 n>

FROM 表1,表2

(不写连接条件)

例5—16 (笛卡儿积运算查询)

select 学生.*,专业.*;

from 学生,专业

select 学生.*,专业.*;

from 学生,专业;

where 学生.专业编号=专业.专业编号

3.嵌套子查询

SQL嵌套子查询的概念:

SQL语言的强大功能还体现在可以设置非常丰富和复杂的查询条件,以满足用户的各种要求。

前面的查询条件主要是使用比较运算、逻辑运算等,此外,SQL提供了功能完善的集合运算。

一条SQL命令的查询结果一般来说是一个表,如果将某个查询结果作为另外一个查询的条件的一部分,就形成了查询嵌套,作为另一个查询的条件的一部分的查询被称为子查询。

SQL嵌套子查询的几种运算方式:

(1)<字段><比较运算符> ALL(<子查询>)

(2)<字段><比较运算符> ANY | SOME(<子查询>)

(3)<字段>[NOT] IN(<子查询>)

(4)[NOT] EXISTS(<子查询>)

SQL的嵌套子查询可以分为非相关子查询和相关子查询

◆非相关子查询包括以上(1)(2)(3)三种运算方式

◆相关子查询包括以上第(4)种运算方式

非相关子查询:

首先进行子查询,获得一个结果集合,然后再进行外部查询中的记录与子查询结果的比较,即先内后外的方式。.使用ALL、ANY和SOME运算的子查询

带有ALL、ANY或SOME选项的查询在格式和方式上是类似的,即首先完成子查询,其查询结果可以是一个值,也

可以是一列。然后,针对不同的选项有不同的含义。

对于:<字段><比较运算符> ALL(<子查询>)

字段值按照比较运算符的要求,与子查询结果的每一个值比较,所有的比较都为.T.,结果为.T.,只要有一个不成立,结果就为.F.。

对于:<字段><比较运算符> ANY | SOME(<子查询>)

字段值与子查询结果的每一个值比较,只要有一个满足要求,结果就为.T.,全部比较都不成立,结果才为.F.。

注:上述式子中,子查询的结果列的类型必须与参与比较的字段类型是可比的。

例5—22 查询暂时没有学生就读的专业的信息。

(例5—17 (右外连接查询)查询学生所学专业的信息,显示学生的姓名、性别、生日,以及专业表的全部字段,同时显示尚未有学生就读的其他专业信息。

sele * from 专业

显示所有专业信息

select 姓名,性别,生日,专业.*;

from 学生right outer join 专业;

on 学生.专业编号=专业.专业编号

select *;

from 专业;

where 专业.专业编号 <>all (select 专业编号 from 学生)

显示没有学生就读的专业编号:0202 0502 0802 1103

有学生就读的专业编号:0201 0804 1101

ALL是否可以改为SOME?

select *;

from 专业;

where 专业.专业编号 <>some(select 专业编号 from 学生)

显示所有专业信息(包括有就读和没有就读的)

例5—23求比所有男生年龄都要大的女生学号、姓名、生日及就读的专业名称。

select 学号,姓名,生日,专业名称;

from 学生 join 专业 on 学生.专业编号=专业.专业编号;

where 性别="女" and 生日

例5—24求成绩表中,考了最高分的学生学号、姓名、课程编号和成绩。

select 学生.学号,姓名,课程编号,成绩;

from 学生 join 成绩 on 学生.学号=成绩.学号;

where 成绩=(select max(成绩) from 成绩)

显示:0511010001 黄为中 110202 92

注:在嵌套子查询中,如果知道子查询的结果只有一个值时,可以省去ANY、SOME或ALL,如本例中使用“=”。

如改为如下形式会如何?

select 学生.学号,姓名,课程编号,MAX(成绩);

from 学生 join 成绩 on 学生.学号=成绩.学号

显示:0611010001 尹亚清 080401 92

例5—25求选了课程编号为“080001”的课程的学生中,该门成绩比学号为“0508040004”的学生的成绩要高的所有学生的学号和成绩。

sele 学号,课程编号,成绩 from 成绩 where 课程编号="080001"

select 学号,成绩;

from 成绩;

where 课程编号="080001" and 成绩>;

(select 成绩 from 成绩;

where 学号="0508040004" and 课程编号="080001")

注:子查询结果唯一时,无须使用ANY、SOME或ALL

.使用IN运算的子查询

集合运算符IN的作用相当于数学中的运算符:∈(属于)

使用子查询的格式:<字段> [NOT] IN (<子查询>)

首先由子查询求出一个结果集合(一个值或一列值),在外部查询中的字段值如果属于其中的一个,则符合条件,否则不符合要求。

NOT IN的意思与IN的意思正相反,是不属于。

例5—26求每门课成绩都在80分以上的学生名单。

select *;

from 学生;

where 学号not in (select 学号 from 成绩 where 成绩<80);

and 学号in (select 学号 from 成绩)

显示结果:王远雄

命令可改写为:

select *;

from 学生;

where 学号<>all (select 学号 from 成绩 where 成绩<80);

and 学号=some (select 学号 from 成绩)

说明:通过分析可知:

◆IN与=SOME 的功能相同

◆NOT IN与<>ALL的功能相同

因此很多查询可以有不止一种的实现方法,需要注意运算符两边的数据类型要可比。

相关子查询:

对于外部查询中与EXISTS子查询有关的表的记录,逐条带入子查询中进行运算,如果结果不为空,这条记录就符合查询要求;如果子查询结果为空,则该条记录不符合查询要求。由于查询过程是针对外部查询的记录值再去进行子查询,子查询的结果与外部查询的表有关,因此称为相关子查询,即是从外到内的过程。

带NOT运算的判别结果与不带NOT运算的判别结果相反。

由于EXISTS的运算是检验子查询结果是否为空,因此该运算的格式是: [NOT] EXISTS (子查询)

运算符前面不需要字段名,子查询的输出列也无须指明具体的字段。

例5—27求选了课程编号为“080001”,且成绩及格的学生姓名、性别和专业编号。

select 姓名,性别,专业编号;

from 学生;

where exists (select * from 成绩 where 成绩.学号=学生.学号;

and 课程编号="080001" and 成绩>=60)

select 姓名,课程编号,成绩 from 学生,成绩 where ;

成绩.学号=学生.学号 and 课程编号="080001" and 成绩>=60

例5—28求同时选修课程编号为“080001”和“050002”的课程,且“080001”课程的成绩高于“050002”课程的成绩的学生学号。

select c1.学号;

from 成绩as c1;

where c1.课程编号="080001" and;

exists (select * from 成绩as c2;

where c2.学号=c1.学号 and;

c2.课程编号="050002" and c1.成绩>c2.成绩)

显示结果:0508040002 赵春全 0511010001 黄为中

sele 学号,课程编号,成绩 from 成绩 where 课程编号="080001"

注:表使用别名的问题:

◆对于使用IN、ANY和ALL运算符的子查询,当外部查询和子查询都涉及到同一个表时,由于子查询中未涉及到外

部查询表中的字段,因而不会出现字段名的冲突;

◆对于使用EXISTS的子查询,要将外部查询中的字段引入到子查询中,由于在使用字段名时不知道是外部查询还是

子查询表中的字段名,而查询中使用的是同一个表,因此会产生字段名的冲突,此时必须借助于换名的方式,使用AS 子句,为使用的表起不同的别名。如:成绩 AS c1 和成绩 AS c2

◆虽然在标准SQL中,子查询可以多层嵌套,但在VFP中只允许有一层子查询。

4.分组统计查询

SQL的分组统计以及HAVING子句的使用方式:

(1)设定一个分组依据字段(组),按该字段(组)值相等的原则进行分组,具有相同值的记录作为一组。用GROUP BY<字段>[,…]子句指定。

(2)在输出列中指定统计函数,分别对每一组按照统计函数所在的字段进行计算,得到各组的统计数据。输出列中的非统计字段必须出现在分组子句中。

(3)如果要对统计计算结果进行筛选,将筛选条件放在HAVING<条件>子句中。HAVING<条件>子句可与GROUP子句联用,对统计的结果进行筛选;另外,在VFP8中,HAVING也可以单独使用,用途是对查询的结果再作筛选,但在VFP6中,HAVING不能单独使用。另外HAVING子句中不能使用子查询。

例5—29求有选修课的各学生的学号和平均成绩。

select 学号,avg(成绩) as 平均成绩;

from 成绩;

group by 学号

求平均分在85分以上的学生的学号、姓名和平均成绩。此时要使用HAVING子句

select 成绩.学号,姓名,avg(成绩) as 平均成绩;

from 成绩 join 学生 on 成绩.学号=学生.学号;

group by 成绩.学号,姓名;

having avg(成绩)>=85

例5—30分析下面命令的不同含义。

统计表中的行数

select count(*);

from 教师

显示教师的总人数

分组统计

select 学院编号,count(教师编号);

from 教师;

group by 学院编号

显示每个学院的教师人数

统计表中某字段不重复的行数

select count(distinct 学院编号);

from 教师

显示不同学院编号的个数

例5—31显示学院名及各学院的男生、女生的人数。

select 学院名,性别,count(性别) as 人数;

from 学院 join 专业 on 学院.学院编号=专业.学院编号;

join 学生 on 专业.专业编号=学生.专业编号;

group by 学院.学院编号,性别,学院名

注1:按照学院编号和性别分组;

注2:学院名为输出列中的非统计字段也应出现在分组子句中;(在使用中不写该字段也可正常输出)

注3:查询中使用COUNT(*)与使用COUNT(性别)结果相同;

注4:三个表连接,因为学院表和学生表不能直接连接。

统计信息学院的男生和女生人数。

select 学院名,性别,count(性别) as 人数;

from 学院 join 专业 on 学院.学院编号=专业.学院编号;

join 学生 on 专业.专业编号=学生.专业编号;

where 学院名="信息学院" group by 学院.学院编号, 性别,学院名

统计《科德学生信息》表中各班的平均身高和平均体重。

select 专业班级,avg(身高) as 平均身高,avg(体重) as 平均体重;

from 科德学生信息 group by 专业班级

统计《科德学生信息》表中各民族的人数。

select distinct 民族, count(*) from 科德学生信息 group by 民族

例5—32求信息学院和工商管理学院的教授信息。

select 教师.*,学院名;

from 教师 join 学院 on 教师.学院编号=学院.学院编号;

where 学院名="信息学院" and 职称="教授";

union;

select 教师.*,学院名;

from 教师 join 学院 on 教师.学院编号=学院.学院编号;

where 学院名="工商管理学院" and 职称="教授"

select 教师.*,学院名;

from 教师 join 学院 on 教师.学院编号=学院.学院编号;

where (学院名="信息学院" or 学院名="工商管理学院") and 职称="教授"

By:Janice

数据库原理习题(含答案)

第一章绪论 Ⅰ、学习要点 1、准确掌握数据、数据库、数据库系统、数据库管理系统等基本术语、概念; 2、数据独立性的概念、分类及实现途径; 3、数据模型的概念、分类、要素及作用; 4、数据库三级模式体系结构的含义及作用; 5、关系数据模型的三要素内容。 Ⅱ、习题 一、选择题: 1、使用二维表格结构表达数据和数据间联系的数据模型是() A、层次模型 B、网状模型 C、关系模型 D、实体—联系模型 2、DB、DBS、DBMS间的关系是() A、DB包括DBMS和DBS B、DBMS包括DB和DBS C、DBS包括DB和DBMS D、DBS与DB和DBMS无关 3、在数据库中存储的是() A、数据 B、数据模型 C、数据及数据之间的联系 D、信息 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、数据库系统中用于定义和描述数据库逻辑结构的语言是() A、DML B、DDL C、DCL D、SQL 11、数据库系统支持的数据共享指的是()

数据库原理期末考试试题及答案

数据库原理期末考试试题及答案 (本大题共15小题,每小题2分,共30分) 在每小题列出的四个备选项中只有一个是符合题目要求的,错选、多选或未选均无分。 1.要保证数据库的数据独立性,需要修改的是() A.三层模式之间的两种映射B.模式与内模式 C.模式与外模式D.三层模式 2.下列四项中说法不正确的是() A.数据库减少了数据冗余B.数据库中的数据可以共享 C.数据库避免了一切数据的重复D.数据库具有较高的数据独立性 3.公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员, 从职员到部门的联系类型是() A.多对多B.一对一 C.多对一D.一对多 4.将E-R模型转换成关系模型,属于数据库的() A.需求分析B.概念设计 C.逻辑设计D.物理设计 5.五种基本关系代数运算是() A.∪,—,×,π和σB.∪,—,,π和σ

C.∪,∩,×,π和σD.∪,∩,,π和σ6.下列聚合函数中不忽略空值(NULL)的是()。A.SUM(列名)B.MAX(列名) C.COUNT(*)D.AVG(列名) 7.SQL中,下列涉及空值的操作,不正确的是()。 A.AGE IS NULL B.AGE IS NOT NULL C.AGE=NULL D.NOT(AGE IS NULL) 8.已知成绩关系如表1所示。 执行SQL语句: SELECT COUNT(DISTINCT学号) FROM成绩 WHERE分数>60 查询结果中包含的元组数目是() 表1成绩关系

A.1 B.2 C.3 D.4 9.在视图上不能完成的操作是() A.更新视图 B.查询 C.在视图上定义新的基本表 D.在视图上定义新视图 10.关系数据模型的三个组成部分中,不包括() A.完整性约束 B.数据结构 C.恢复 D.数据操作 11.假定学生关系是S(S#,SNAME,SEX,AGE),课程关系是

数据库原理练习题

1.第1题 每个属性,都有一个取值范围,这叫属性()。 A.域 B.值 C.主属性 D.关键字 答案:A 标准答案:A 2.第2题 关系模式的规范化过程主要是为克服数据库逻辑结构中存在的插入异常、删除异常以及( ) A.数据不一致性 B.结构不合理 C.数据冗余度大 D.数据丢失 答案:C 标准答案:C 3.第3题 数据的物理独立性是( )实现的. A.外模式/模式映像 B.外模式/内模式映像 C.模式/内模式映像 D.内模式/外模式映像 答案:C 标准答案:C 4.第4题 实体-联系模型是( ). A.概念模型 B.逻辑模型 C.现实世界 D.物理模型 答案:A 标准答案:A 5.第5题 常用的用户标识方法是( ). A.用户密码 B.用户名和口令字 C.用户权限 D.用户名 答案:B 标准答案:B 6.第6题 关于数据处理和数据管理,下列叙述正确的是( )

A.数据处理经历了人工系统、文件系统、数据库系统三个阶段 B.数据处理是数据管理的中心问题 C.数据管理的主要工作是对数据进行收集、分类整理、组织、存储、维护、检索等操作 D.数据管理技术优劣不影响数据处理的效率 答案:C 标准答案:C 7.第7题 下列四项中,不属于数据库特点的是( ) A.数据共享 B.数据完整性 C.数据冗余很高 D.数据独立性高 答案:C 标准答案:C 8.第8题 SQL语言通常称为( ) A.结构化查询语言 B.结构化控制语言 C.结构化定义语言 D.结构化操纵语言 答案:A 9.第16题 以下数据库的数据模型中,现今使用的主要的数据模型是( ). A.层次模型 B.网状模型 C.关系模型 D.面向对象模型 答案:C 标准答案:C 10.第17题 设关系模式R (A,B,C),F是R上成立的FD集,F = {B→C},则分解ρ = {AB,BC}相对于F () A.是无损联接,也是保持FD的分解

数据库原理与应用考试试题及答案

1.消除了非主属性对码的部分函数依赖的1NF的关系模式,必定是()。 A.1NF B.2NF C.3NF D.BCNF 2 .下列关于数据库恢复说法不正确的是() A.事物故障恢复采用日志文件 B.系统故障恢复采用日志文件 C.介质故障恢复采用日志文件 D.以上故障恢复均不采用日志文件 3.下面()不是常用的数据模型? A.关系模型 B.线性模型 C.层次模型 D.网状模型 4 .在数据库设计中,将E-R图转换成关系数据模型的过程属于()A.需求分析阶段B.概念设计阶段 C.逻辑设计阶段 D.物理设计阶段 5 .DBMS中实现事务持久性的子系统是() A.安全性管理子系统 B.完整性管理子系统 C.并发控制子系统 D.恢复管理子系统 6.数据库与文件系统的根本区别在于() A.提高了系统效率 B.方便了用户使用 C.数据的结构化 D.节省了存储空间 7.SQL语言是()的语言,容易学习。 A.过程化 B.非过程化 C.格式化 D.导航式 8.为了防止一个用户的工作不适当地影响另一个用户,应该采取()。 A.完整性控制 B.访问控制

C.安全性控制 D.并发控制 9.DBMS普遍采用()方法来保证调度的正确性。 A.索引 B.授权 C.封锁 D.日志 10.事务T在修改数据R之前必须先对其加X锁,直到事务结束才释放,这是()。 A.一级封锁协议 B.二级封锁协议 C.三级封锁协议 D.零级封锁协议 11.下面的选项不是关系数据库基本特征的是()。 A.不同的列应有不同的数据类型 B.不同的列应有不同的列名 C.与行的次序无关 D.与列的次序无关 12.关系模型中实现实体间N:M联系是通过增加一个()。 A.关系实现 B.属性实现 C.关系或一个属性实现 D.关系和一个属性实现 13.关系代数运算是以()为基础的运算。 A.关系运算 B.谓词演算 C.集合运算 D.代数运算 14.数据库设计可划分为七个阶段,每个阶段都有自己的设计内容,“为哪些关系,在哪些属性上、键什么样的索引”这一设计内容应该属于()设计阶段。 A.概念设计 B.逻辑设计 C.物理设计 D.全局设计 15.SQL语言中的COMMIT语句的主要作用是()。 A.结束程序 B.返回系统 C.提交事务 D.存储数据 16.一个事务的执行,要么全部完成,要么全部不做,一个事务中对数据库的所有操作都是一个不可分割的操作序列的属性是()。 A.原子性 B.一致性 C.独立性 D.持久性 17.关系的主属性不能取空值,属于()

数据库原理及应用-期末考试试题

数据库原理及应用期末考试试题 一、单项选择题 1 2 3 4 5 6 7 8 9 1011121314151617181920 D C C B C A D B C A C A D D B C B C A B 1. 组织层数据模型的三要素是[ ]。 A.外模式,概念模式和内模式 B.关系模型,网络模型,层次模型 C.1:1的联系,1:n的联系,n:m的联系 D.数据结构,数据操作,数据约束条件 2在关系模型中,任何关系必须满足约束条件包括实体完整性、[ ]和用户自定义完整性。 A.动态完整性 B.数据完整性 C.参照完整性 D.结构完整性 3 SQL Server 中的角色是[ ]。 A. 一个服务器登录 B. 一个数据库用户 C. 一组权限的集合 D. 一个服务器用户 4.当数据的物理存储结构改变时,应用程序无需改变,这样的特性称为数据的[ ]。 A.逻辑独立性 B.物理独立性 C.程序无关性 D.物理无关性 5.下列哪个不是以处理大量数据为中心的应用程序的特点[ ]。 A.涉及的数据量大 B.数据需长期联机保存 C.数据的计算复杂 D.数据可被多个应用所共享 6.E-R图适用于建立数据库的[ ]。 A.概念模型 B.结构模型 C.逻辑模型 D.物理模型 7. 在关系数据库设计中,设计关系模型属于[ ]。 A.需求分析 B.物理结构设计 C.逻辑结构设计 D.概念结构设计 8.[ ]记录了对数据库中数据进行的每一次更新操作。 A.后援副本 B.日志文件 C.数据库 D.缓冲区 9. [ ]是用户定义的一组数据库操作序列,是一个基本的不可分割的工作单元。 A.程序 B.进程 C.事务 D.文件 10.信息世界中,实体是指[ ]。 A.客观存在的事物 B. 客观存在的属性 C. 客观存在的特性 D. 某一具体事件 11. 数据库系统中, DBA表示[ ] 。 A.应用程序设计者 B. 数据库使用者

数据库原理试题库2009

数据库原理题库 一、简答题 1.简述数据库系统的特点。 2.数据库管理系统的主要功能有哪些? 3.什么叫数据与程序的物理独立性?什么叫数据与程序的逻辑独立性?为什么 数据库系统具有数据与程序的独立性? 4.简述数据库系统的三级模式结构。 5.试述数据库系统的组成。 6.简述文件系统与数据库系统的区别和联系。 7.DBA的职责是什么? 8.关系代数的基本运算有哪些 ? 9.什么是基本表?什么是视图?两者的区别和联系是什么? 10.简述视图的优点。 11.所有的视图是否都可以更新? 哪类视图是可以更新的,哪类视图是不可更新 的? 12.简述 SQL 的特点。 13.在嵌入式SQL中是如何协调SQL语言的集合处理方式和主语言的单记录处理 方式的? 14.关系数据库的完整性规则有哪几类? 15.试述查询优化在关系数据库系统中的重要性和可能性。 16.写出 Armstrong 推理规则中自反律、增广律、传递律的形式化定义。 17.简述日志文件的内容。 18.简述 SQL 中的自主存取控制机制。 19.简述数据库中事务的概念及其性质。 20.简述事物的原子性。 21.简述并发操作带来的三类数据不一致性。 22.在数据库中为什么要并发控制?并发控制技术可以保证事务的哪些特征? 23.什么是封锁?基本的封锁类型有几种? 24.简述两段封锁协议的内容。 25.简述数据库系统中活锁和死锁的含义。避免活锁的简单方法是什么? 26.什么叫做数据库的恢复?数据库恢复的基本技术有哪些? 27.简述数据库系统中可能发生的故障类型,以及数据恢复方法。

28.简述“运行记录优先原则”。 29.简述日志文件内容及其作用。 30.简述数据库设计过程。 31.需求分析阶段的设计目标是什么?调查的内容是什么? 32.数据字典的内容和作用是什么? 33.在全局 ER 模型设计过程中,需要消除局部 ER 模型之间存在的哪三种冲 突? 34.简述数据库完整性和安全性的概念。 35.设有两个关系R (A,B,C)和S (C,D,E),试用SQL查询语句表达下 列关系代数表达式πA,E (σB = D (R∞S))。 36.设有关系模式R (A,B,C,D),F是R上成立的FD集,F = {D→A,D→B}, 试写出关系模式R的候选键,并说明理由。 二、关系代数 1、设有关系 R 和 S, R 计算: (1). R ∪ S (2). R ╳S (3). R S (4)∏ B σ A>4 (S) (5)R─∏σ A<4 (R) 2、假设有关系R、W、D如下所示:

华南师范大学《数据库原理》期末考试复习题

一、单选题 1 ( )将访问许可权分配给一定的角色,用户通过饰演不同的角色获得角色所拥有的访问许可权. A、强制存取控制 B、自主存取控制 C、视图机制 D、基于角色的访问控制 答案:D 2 SQL的默认策略是任何与( )约束相违背的更新均为系统拒绝. A、用户定义的完整性 B、实体完整性 C、参照完整性 D、用户定义的完整性和参照完整性 答案:C 3 用户标识与系统鉴别属于( )技术. A、访问控制 B、接入控制 C、完整性约束 D、恢复 答案:A 4 ( )是相互矛盾的,数据库物理设计过程中需要对它们进行折中权衡. A、时间效率,维护代价 B、时间效率,空间效率 C、时间效率,空间效率,维护代价 D、空间效率,维护代价 答案:C 5 在关系演算中,元组变量的变化围是( ). A、某一命名的关系 B、数据库中的所有关系 C、某一个域 D、数据库中的所有域 答案:C 6 下列聚合函数中不忽略空值(null) 的是() A、SUM (列名) B、MAX (列名) C、COUNT ( * ) D、AVG (列名) 答案:C 7 SQL中,下列涉及空值的操作,不正确的是()

B、AGE IS NOT NULL C、AGE = NULL D、NOT (AGE IS NULL) 答案:C 8 SQL的全局约束是指基于元组的检查子句和() A、非空值约束 B、域约束子句 C、断言 D、外键子句 答案:C 9要保证数据库逻辑数据独立性,需要修改的是( ) A、模式 B、模式与模式的映射 C、模式与外模式的映射 D、模式 答案:C 10 ( )是关系代数的基本运算之一. A、交 B、除 C、关系模型 D、广义笛卡儿积 答案:D 11 设关系R有M个元组,关系S有N个元组,则关系R和S的笛卡尔积有( )个元组. A、M B、N C、M*N D、M+N 答案:C 12 单个用户使用的数据视图的描述称为() A、外模式 B、概念模式 C、模式 D、存储模式 答案:A 13 判断对并发事务正确的调度是( ). A、并发事务的执行结果与并行化执行结果事务是否一致 B、事务间无冲突 C、并发事务的执行结果与串行化执行结果事务是否一致

数据库原理试题及答案

全国2001年10月自学考试数据库原理试题及答案2 作者:ryan 点击:时间:2003-10-11 上午 23:05:00 来源: 第一部分选择题 (共30分) 一、单项选择题 (本大题共15小题,每小题2分,共30分) 在每小题列出的四个选项中只有一个是符合题目要求的,请将其代码填在题后的括号内。错选或未选均无分。 1. 单个用户使用的数据视图的描述称为【】 A. 外模式 B. 概念模式 C. 内模式 D. 存储模式 2. 子模式DDL用来描述【】 A. 数据库的总体逻辑结构 B. 数据库的局部逻辑结构 C. 数据库的物理存储结构 D. 数据库的概念结构 3. 在DBS中,DBMS和OS之间的关系是【】 A. 相互调用 B. DBMS调用OS C. OS调用DBMS D. 并发运行 4. 五种基本关系代数运算是【】 A. ∪,-,×,π和σ B. ∪,-,∞,π和σ C. ∪,∩,×,π和σ D. ∪,∩,∞,π和σ 5. 当关系R和S自然联接时,能够把R和S原该舍弃的元组放到结果关系中的操作是【】 A. 左外联接 B. 右外联接 C. 外部并 D. 外联接 6. 下列聚合函数中不忽略空值 (null) 的是【】 A. SUM (列名) B. MAX (列名) C. COUNT ( * )

D. AVG (列名) 7. 设关系模式R (A,B,C),F是R上成立的FD集,F = {B→C},则分解ρ = {AB,BC}相对于F 【】 A. 是无损联接,也是保持FD的分解 B. 是无损联接,但不保持FD的分解 C. 不是无损联接,但保持FD的分解 D. 既不是无损联接,也不保持FD 的分解 8. 关系模式R分解成ρ = {R1,…,Rk},F是R上的一个FD集,那么R中满足F的每一个关系r,与其投影联接表达式mρ(r) 间的关系满足【】 A. rí mρ(r) B. mρ(r) í r C. r = mρ(r) D. r≠mρ(r) 9. 在数据库设计中,将ER图转换成关系数据模型的过程属于【】 A. 需求分析阶段 B. 逻辑设计阶段 C. 概念设计阶段 D. 物理设计阶段 10. SQL中,下列涉及空值的操作,不正确的是【】 A. AGE IS NULL B. AGE IS NOT NULL C. AGE = NULL D. NOT (AGE IS NULL) 11. 如果事务T获得了数据项Q上的排它锁,则T对Q 【】 A. 只能读不能写 B. 只能写不能读 C. 既可读又可写 D. 不能读不能写 12. DBMS中实现事务持久性的子系统是【】 A. 安全性管理子系统 B. 完整性管理子系统 C. 并发控制子系统 D. 恢复管理子系统 13. SQL的全局约束是指基于元组的检查子句和【】 A. 非空值约束 B. 域约束子句 C. 断言

数据库原理期末模拟试题大全及部分答案

数据库原理模拟试卷(1) 一、项选择题(在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的 字母填在题后的括号内。每小题1分,共15分) 1.数据库系统的体系结构是(C ) A、两级模式结构和一级映象 B、三级模式结构和一级映象 C、三级模式结构和两级映象 D、三级模式结构和三级映象 2.SQL语言称为(C )。 A、结构化定义语言 B、结构化控制语言 C、结构化查询语言 D、结构人操纵语言 3.在视图上不能完成的操作是(D)。 A、在视图上定义新的视图 B、查询操作 C、更新视图 D、在视图上定义新的基本表 4.数据库的并发操作有可能带来的三个问题中包括(D)。 A、数据独立性降低 B、无法读出数据 C、权限控制 D、丢失更新 5.当前应用最广泛的数据模型是(B)。 A、ER模型 B、关系模型 C、网状模型 D、层次模型 6.现有一个关系:借阅(书号、书名,库存数,读者号,借期,还期),假如同一本书允许一个读者多次借阅,但不能同时对一种书借多本。则该关系模式的码是(D )。 A、书号 B、读者号 C、书号+读者号 D、书号+读者号+借期 7.要保证数据库物理数据独立性,需要修改的是( B ) A.模式 B.模式与内模式的映射 C.模式与外模式的映射 D.内模式 8.下列四项中,不属于数据库特点的是( D ) A.数据共享 B.数据完整性 C.数据冗余较小 D.数据独立性低 9.数据库中存储的是( D ) A.数据 B.数据模型 C.数据之间的联系 D.数据以及数据之间的联系 10.反映现实世界中实体及实体间联系的信息模型是( D ) A.关系模型 B.层次模型 C.网状模型 D.E—R模型 11. 五种基本关系代数运算是( a) A. ∪,-,×,π和σ B. ∪,-,∞,π和σ C. ∪,∩,×,π和σ D. ∪,∩,∞,π和σ

数据库原理复习资料整理

第一章 1.四大基本概念: 数据:数据库中存储的基本对象,它是描述事物的符号记录。种类有:文字、图形、图象、声音等。特点是:数据与其语义是不可分的。 数据库:(Database,简称DB)是长期储存在计算机内、有组织的、可共享的大量数据集合。其特点是:数据按一定的数据模型组织、描述和储存;可为各种用户共享;冗余度较小;数据独立性较高;易扩展。(特点:永久存储、有组织、可共享) 数据库管理系统:是位于用户与操作系统之间的一层数据管理软件。 数据库管理系统的主要功能:数据定义功能;数据组织、存储和管理;数据操纵功能;数据库的事物管理和运行管理;数据库的建立和维护功能;其他功能。 数据库系统:是指在计算机系统中引入数据库后的系统。一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员(和用户)构成。 在不引起混淆的情况下常常把数据库系统简称为数据库。 2.数据管理技术的三个阶段及其特点 人工管理阶段:特点:1、数据不保存。 2、没有软件系统对数据进行管理。 3、这一时期没有文件的概念,数据的组织方式必须由程序员自行设计。 4、一组数据对应一组程序,数据是不共享的。 5、数据不具有独立性,当数据结构发生变化时,应用程序要变化。 文件系统阶段:特点:1、数据可以长期保存。 2、由文件系统管理数据。 3、数据共享性差, 冗余度大—文件是面向应用的。 4、数据独立性差—是不具有弹性的无结构的数据集合,文件之间是孤立的,不能反映事物间联系。 数据库系统阶段:特点:数据的管理者:DBMS 数据面向的对象:现实世界 数据的共享程度:共享性高 数据的独立性:高度的物理独立性和一定的逻辑独立性 数据的结构化:整体结构化 数据控制能力:由DBMS统一管理和控制 3、数据库系统的特点:数据结构化;数据的共享性高,冗余度低,易扩充;数据独立性高;数据有DBMS统一管理和控制。 4、数据模型的组成要素:数据结构、数据操作和完整性约束。 数据结构是对系统静态特性的描述。 数据操作是对系统动态特性的描述。 5、概念模型: 基本概念:实体:客观存在并可相互区别的事物称为实体。 属性:实体所具有的某一特性称为属性。 码:唯一标识实体的属性集称为码。 域:属性的取值范围称为该属性的域。 实体型:具有相同属性的实体具有的共同的特征和性质,即: 用实体名及其属性名集合来抽象和刻画同类实体。

数据库原理_期末试卷及答案

数据库原理与应用教程 期末测试题(一) 一、填空题(每空1分,共10分) 1.数据库系统的核心是___ __。 2.在关系模型中,实体以及实体间的联系都是用______来表示的。 3.设关系模型R(A,B,C),F是R上的函数依赖集,F={A→B,C→B},则R的候选码为_________。 4.层次模型用“树结构”来表示数据之间的联系,网状模型用“_________” 来表示数据之间的联系。 5.SQL Server2005中,一个简单的数据库可以只有一个_________文件和一个日志文件。 6.聚集索引和非聚集索引的存储结构都采用____________索引结构。 7.一个事务必须具有的四个属性是原子性、一致性、__________和持久性。 " 8.在T-SQL中,查询表中数据时,可用___________关键字滤掉重复行。 9.调用标量函数时必须提供至少由两部分组成的名称,即________. 函数名。 10.触发器是当数据库服务器中发生数据操作语言事件时会自动执行的存储过程。 二、选择题(每小题1分,共20分) 1、数据管理的发展不包括下面哪个阶段() (A)文件系统(B)数据库系统 (C)人工管理(D)统一管理 2、一个学生可以同时借阅多本书,一本书只能由一个学生借阅,学生和图书之间是什 么样的联系() (A)一对一(B)一对多 ! (C)多对多(D)以上全不是 3、如果事务1将数据库中的A值从200改为300,事务2读A值为300,事务1又将 刚才的操作撤销,A值恢复为200,那么事务2读取了“脏”数据。这种情况 是由于数据库保护中的那方面不当而引起的() (A)并发控制 (B)完整性约束 (C)安全性控制(D)数据库的恢复

数据库原理-期末考试试题及答案

数据库原理-期末考试试题及答案 (本大题共15小题,每小题2分,共30分) 在每小题列出的四个备选项中只有一个是符合题目要求的,错选、 多选或未选均无分。 1. 要保证数据库的数据独立性,需要修改的是() A.三层模式之间的两种映射B.模式与内模式 C.模式与外模式D.三层模式 2. 下列四项中说法不正确的是() A.数据库减少了数据冗余B.数据库中的数据可以共享 C.数据库避免了一切数据的重复D.数据库具有较高的数据独立性 3. 公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员, 从职员到部门的联系类型是() A.多对多B.一对一 C.多对一D.一对多 4.将E-R模型转换成关系模型,属于数据库的() A.需求分析B.概念设计 C.逻辑设计D.物理设计 5.五种基本关系代数运算是() A.∪,—,×,π和σB .∪,—,,π和σ C.∪,∩,×,π和σD .∪,∩,,π和σ 6.下列聚合函数中不忽略空值 (NULL) 的是()。 A.SUM (列名) B.MAX (列名) C.COUNT ( * ) D.AVG (列名) 7. SQL中,下列涉及空值的操作,不正确的是()。 A. AGE IS NULL B. AGE IS NOT NULL C. AGE = NULL D. NOT (AGE IS NULL) 8. 已知成绩关系如表1所示。 执行SQL语句: SELECT COUNT(DISTINCT学号) FROM成绩 WHERE分数>60 查询结果中包含的元组数目是() 表1 成绩关系

A. 1 B. 2 C. 3 D. 4 9. 在视图上不能完成的操作是( ) A. 更新视图 B. 查询 C. 在视图上定义新的基本表 D. 在视图上定义新视 图 10. 关系数据模型的三个组成部分中,不包括( ) A. 完整性约束 B. 数据结构 C. 恢复 D. 数据操作 11. 假定学生关系是S (S #,SNAME ,SEX ,AGE ),课程关系是C (C #,CNAME ,TEACHER ), 学生选课关系是SC (S #,C #,GRADE )。 要查找选修“COMPUTER ”课程的“女”学生姓名,将涉及到关系( ) A .S B .S C ,C C .S ,SC D .S ,SC ,C 12. 关系规范化中的删除操作异常是指( ) A .不该删除的数据被删除 B .不该插入的数据被插入 C .应该删除的数据未被删除 D .应该插入的数据未被插入 13. 从E-R 模型关系向关系模型转换时,一个m:n 联系转换为关系模式时,该关系模式的码 是( ) A .M 端实体的码 B .N 端实体的码 C .M 端实体码与N 端实体码组合 D .重新选取其他属性 14.已知关系R={A ,B ,C ,D ,E ,F},F={A →C ,BC →DE ,D →E ,CF →B}。则(AB)F + 的闭包 是( ) A .ABCDEF B .ABCDE C .ABC D .AB 15.设有关系R (A ,B ,C )和S (C ,D )。与SQL 语句select A,B,D from R,S where R.C=S.C 等价的关系代数表达式是( ) A .σR.C=S.C (πA,B,D (R×S)) B .πA,B,D (σR,C= S.C (R×S)) C .σR.C=S.C ((πA,B (R))×(π D (S))) D .σR,C=S.C (πD ((πA,B (R))×S)) 二、多项选择题 (本大题共5小题,每小题2分,共10分) 在每小题列出的四个备选项中有多个是符合题目要 求的,多选、少选、错选、不选均无分。

大数据库原理复习题2017

数据库原理及应用 复习题 2017-4-28 一、选择题 1.数据库系统与文件系统的主要区别是[ ] A.数据库系统复杂,而文件系统简单 B.文件系统不能解决数据冗余和数据独立性问题,而数据库系统可以解决 C.文件系统只能管理程序文件,而数据库系统能够管理各种类型的文件 D.文件系统管理的数据量较少,而数据库系统可以管理庞大的数据量 2.数据库系统中,对用户使用的数据视图的描述称为[ ] A.概念模式 B.模式 C.存储模式 D.外模式 3.以下错误的表达是[ ] A.数据受数据类型和取值围的约束; B.数据有定性表示和定量表示之分; C.数据是信息的载体,并具有多种表现形式; D.数据有“型”和“值”之分,“型”就是数据的规模或大小; 4.设有关系R(A,B,C)和关系S(B,C,D),那么与R?S等价的关系代数表达式是[ ] 1=2 A.σ1=5(R?S) B.σ1=5(R×S) C.σ1=2(R?S) D.σ1=2(R×S) 5.结构化查询语言SQL是一种关系数据库语言,其主要功能有[ ] A.数据定义、数据操作、数据安全B.数据安全、数据编辑、数据并发控制 C.数据定义、数据操作、数据控制D.数据查询、数据更新、数据输入输出 6.概念结构设计阶段得到的结果是[ ] A.数据字典描述的数据需求 B.E-R图表示的概念模型 C.某个DBMS所支持的数据模型 D.包括存储结构和存取方法的物理结构 7.关系R和S进行自然连接时,要求R和S含有一个或多个公共[ ] A.元组 B.行 C.记录 D.属性 8.若事务T对数据对象A加上X锁,则[ ] A.只允许T修改A,其他任何事务都不能再对A加任何类型的锁 B.只允许T读取A.其他任何事务都不能再对A加任何类型的锁 C. 只允许T读取和修改A,其他任何事务都不能再对A加任何类型的锁 D.只允许T修改A,其他任何事务都不能再对A加X锁

(完整版)数据库原理试题

南京农业大学试题纸 2007-2008 学年2 学期课程类型:必修、选修试卷类型:A、B 装 订 线 装 订 线

系主任出卷人

参考答案: 一、名词解释(10分) 1.主码 表中的某个属性组,他可以唯一的确定一个元组。 2.数据库完整性 指数据的正确性与相容性。包括完整性约束机制、完整性检查机制和违背完整性约束条件应采取的预防措施。 (回答:实体完整性、参照完整性和自定义完整性也可) 3.数据字典 数据字典是系统中各类数据描述的集合。一般包括:数据项、数据结构、数据流、数据存储、处理过程。 4.视图 视图是从一个或者几个基本表导出的表。视图本身不独立存储在数据库中,是一个虚表。可以在视图上再定义视图。 5.模式:是数据库全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。 (回答:对关系的描述,一般表示为:关系名(属性,域、属性与域的映射,函数依赖)也可以。) 二、选择题(10分) 1 C 2 . C. 3. C 4.D 5. B 6. C 7. C 8 C. 9. C. 10 D 三、填空题(10分) 1、抽象 2、数据定义 3、投影 4、网状模型、关系模型 5、原子性、隔离性(顺序可以颠倒) 6、数据项、数据流、存储过程、数据存储(4个里面选取任意2个) 7.面向主题 四、简答题(20分) 1.简要回答数据模型的概念及其组成要素? 数据模型是数据库中用来对现实世界进行抽象的工具,是数据库中用于提供信息表示和操作手段的形式构架。一般地讲,数据模型是严格定义的概念的集合。这些概念精确地描述系统的静态特性、动态特性和完整性约束条件。因此数据模型通常由数据结构、数据操作和完整性约束三部分组成。(1)数据结构。(2)数据操作。(3)数据的约束条件: 2.什么是数据库恢复?数据库恢复的基本技术是什么? 把数据库从错误状态恢复到某一已知的正确状态(即一致状态或完整状态),就是数据库恢复。数据库恢复的基本技术是数据转储和登录日志文件 3. 什么是数据与程序的物理独立性?数据库系统如何保证该独立性? 当数据库的存储结构发生变化了,由数据库管理员对模式/内模式映像做相应改变,可以使模式保持不变。从而应用程序也不需要变化,保证了数据与程序的物理独立性,简称数据的物理独立性。 4. 简述ODBC的工作原理? ODBC由四个部分组成。包括应用程序、驱动程序管理器、数据库驱动程序、ODBC数据源管理。 (对每个部分的功能做简要说明即可。如果画出体系结构更好。) 5.简要论述数据库新技术与发展。 数据库技术经历了第一代的层次模型与网状模型阶段、第二代的关系数据库阶段,目前发展到数据局系统大家族的第三代阶段。主要特征和技术包括:面向对象的方法和技术对数据库的发展有深远影响、数据库技术与多学科交叉融合,如与网络技术、分布市技术、并行计算技术、移动计算技术等互相结合、互相渗透。面向应用领域的数据库技术的研究也获得新的进展。如,统计数据库、数据仓库、工程数据库、科学数据库、空间数据库等。 五、设计题(50分) 1.(1)试用关系代数完成以下操作: 求供应工程J1零件为红色的供应商号码SNO.

数据库原理复习练习题含答案(4)

数据库原理复习练习题含答案 第10章数据库设计 1.试说明数据库设计的特点。 答:综合性、结构设计和行为设计相分离。 2.简述数据库的设计过程。 答:设计分为如下几个阶段。 ●需求分析。 ●结构设计,包括概念结构设计、逻辑结构设计和物理结构设计。 ●行为设计,包括功能设计、事务设计和程序设计。 ●数据库实施,包括加载数据库数据和调试运行应用程序。 ●数据库运行和维护阶段。 3.数据库结构设计包含哪几个过程? 答:包括概念结构设计、逻辑结构设计和物理结构设计。 4.需求分析中发现事实的方法有哪些? 答:检查文档、面谈、观察操作中的业务、研究和问卷调查等。 5.概念结构应该具有哪些特点? 答: ?有丰富的语义表达能力。能表达用户的各种需求,包括描述现实世界中各种事物和事物与事物之间的联系,能满足用户对数据的处理需求。 ?易于交流和理解。概念结构是数据库设计人员和用户之间的主要交流工具,因此必须能通过概念模型和不熟悉计算机的用户交换意见,用户的积极参与是数据库成功的关键。 ?易于更改。当应用环境和应用要求发生变化时,能方便地对概念结构进行修改,以反映这些变化。 ?易于向各种数据模型转换,易于导出与DBMS有关的逻辑模型。 6.概念结构设计的策略是什么? 答:概念结构设计的策略主要有如下几种: ?自底向上。先定义每个局部应用的概念结构,然后按一定的规则把它们集成起来,从而得到全局概念结构。 ?自顶向下。先定义全局概念结构,然后再逐步细化。 ?由里向外。先定义最重要的核心结构,然后再逐步向外扩展。 ?混合策略。将自顶向下和自底向上方法结合起来使用。先用自顶向下设计一个概念结构的框架,然后以它为框架再用自底向上策略设计局部概念结构,最后把它们集成起来。 7.什么是数据库的逻辑结构设计?简述其设计步骤。 答:逻辑结构设计的任务是把在概念结构设计中设计的基本E-R模型转换为具体的数据库管

数据库原理及应用试题库

一.选择题 1. ( B )是长期储存在计算机内、有组织的、可共享的大量数据的集合。 A. 数据库系统 B. 数据库 C. 关系数据库 D. 数据库管理系统 2. (1) 在数据库的三级模式中,内模式有( A )。 A.1个 B.2个 C.3个 D.任意多个 2. (2) 在数据库的三级模式中,外模式有( D )。 A.1个 B.2个 C.3个 D.任意多个 2. (3) 在数据库的三级模式中,模式有( A )。 A.1个 B.2个 C.3个 D.任意多个 2. (4) 在数据库的三级模式体系结构中,内模式、模式和外模式个数的比例是( B )。 A.1:1:1 B.1:1:N C.1:M:N D.M:N:P 3. 数据模型的三个要素分别是( B )。 A. 实体完整性、参照完整性、用户自定义完整性 B. 数据结构、关系操作、完整性约束 C. 数据增加、数据修改、数据查询 D. 外模式、模式、内模式 4. 数据库(DB),数据库系统(DBS)和数据库管理系统(DBMS)之间的关系是( A )。 A. DBS包括DB和DBMS B. DBMS包括DB和DBS C. DB包括DBS和DBMS D. DBS就是DB,也就是DBMS 5. 在关系模式R中,Y函数依赖于X 的语义是:( B )。 A. 在R的某一关系中,若两个元组的X值相等,则Y值也相等。 B. 在R的每一关系中,若两个元组的X值相等,则Y值也相等。 C. 在R的某一关系中,Y值应与X值相等。 D. 在R的每一关系中,Y值应与X值相等。 6. 若对于实体集A中的每一个实体,实体集B中有n个实体(n≥0)与之联系,而对于实体集B中的每一个实体,实体集A中只有1个实体与之联系,则实体集A和实体集B之间的联系类型为( B )。 A.1:1 B.1:N C.M:N D.N:1 6. (2) 若对于实体集A中的每一个实体,实体集B中有1个实体(n≥0)与之联系,而对于实体集B 中的每一个实体,实体集A中只有1个实体与之联系,则实体集A和实体集B之间的联系类型为( A )。 A.1:1 B.1:N C.M:N D.N:1 7.下列不属于数据安全性控制方法的是( D )。

数据库原理期末试题

大学软件学院《数据库原理》课程模拟试题(适用专业:10专软件技术、网络技术、网络管理考试时间:120分钟) 合分人: (将选择题的答案写在试卷后面的答题纸上) 1、如果数据库系统中数据的物理存储结构发生了改变,而最终用户没有受到影响,则称数据有物理数据独立性。 2、视图的更新是指通过视图来插入、修改和删除数据。 3、在关系T(S,SN,D)和R(D,CN,NM)中,T的主码为S,R的主码为D,则D在T 中称为外键。 4、设有以下关系:合同(合同号,用户号,用户名,用户地址,),我们知道合同号是唯 一的,则这个关系模式最高满足第 1 式。 1、关于数据的独立性下列说法不正确的是( B )。 A、逻辑独立性 B、采用三级映射机制可以实现 C、物理独立性 D、采用三级模式结构可以实现 2、一个完整的数据库系统不包括下面哪些组成部分(C )。 A、数据库(DB)和应用程序 B、DBMS和硬件 C、OS和存储器 D、用户 3、在数据库系统的三级模式结构中,用来描述数据的逻辑结构的是( C )。 A、子模式 B、用户模式 C、模式 D、存储模式 4、DML指的是( A )。

A、数据操纵语言 B、数据查询语言 C、数据定义语言 D、数据控制语言 5、SQL语言中,实现数据查询的语句是(A )。 A、 SELECT B、 INSERT C、 UPDATE D、 DELETE 6、关系数据库管理系统应能实现专门的关系运算包括( B )。 A、排序、索引和统计 B、选择、投影和连接 C、关联、更新和排序 D、插入、删除和更新 7、SQL语言具有( B )的功能。 A、关系规化、数据操纵、数据控制 B、数据定义、数据操纵、数据控制 C、数据定义、关系规化、数据控制 D、数据定义、关系规化、数据操纵。 8、在对数据进行什么操作时,DBMS会检查默认值约束( D)。 A、以下都检查 B、对数据进行修改 C、对数据进行删除 D、对数据进行插入 9、现实世界中客观存在的事物的特征称为( D )。 A、联系 B、标识符 C、实体 D、属性 10、master数据库是( D )。 A、始终不会发生改变 B、所有数据库的模板 C、用户可以随意删除 D、SQL SERVER中最重要的数据库 11、一个供应商可供应多种零件,而一种零件可由多个供应商供应,则实体供应商与零件之间的联系是( D) A、一对一 B、一对多 C、多对一 D、多对多 12、第2式存在弊病的原因,是由于关系中存在( D)造成的。 A、函数依赖 B、平凡依赖 C、部分依赖 D、传递依赖 13、关于登录账号正确的说法是( A )。

数据库原理复习题

练习题1 1、(B )是存储在计算机内有结构的数据的集合。 A.数据库系统B.数据库C.数据库管理系统D.数据结构 2、在数据库的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。在这几个阶段中,数据独立性最高的是(A )阶段。 A 数据库系统B文件系统C人工管理D数据库管理 3、下述关于数据库系统的正确叙述是(A )。 A.数据库系统减少了数据冗余C.数据库系统中数据的一致性是指数据类型一致B.数据库系统避免了一切冗余D.数据库系统比文件系统能管理更多的数据 4、数据库系统的核心是(B )。 A.数据库B.数据库管理系统C.数据模型D.软件工具 5数据库系统的特点是(A )、数据独立、减少数据冗余、避免数据不一致和加强了数据保护. A.数据共享B.数据存储C.数据应用D.数据保密 6、下面( C )不是DBM必须提供的的数据控制功能。 A 安全性保护B完整性检查C可移植性D并发控制 7、以下(C )不属于数据库模型三要素。 A数据结构B完整性约束C并发操作D数据操作 8、E—R图是表示概念模型的有效工具之一,在E—R图中的菱形表示(C )。 A 实体B实体的属性 C 联系D联系的属性 9、数据库管理系统能实现对数据库中数据的查询、插入、修改和删除等操作,这种功能称为(C )。 A.数据定义功能B.数据管理功能C.数据操纵功能D.数据控制功能 10、层次模型不能直接表示(C )。 A.1 :1关系B.1 :m关系 C.m :n关系D.1 :1和1 :m关系 11,(C )是一个科学的组织和管理,高效的获取和维护数据的系统软件。 A.DB B.DBA C.DBMS D.DBS 12,数据库系统的构成是(D )。 ①DB ②DBS ③DBMS ④DBA ⑤User ⑥应用系统 A.①②③④⑤⑥ B. ①②③④⑤ C. ①②③④⑥ D. ①③④⑤⑥ 13数据库系统来管理数据具有的数据独立性高的特点主要包括独立性和独立性( A )。 A.物理逻辑 B.物理关系 C.条件逻辑 D.关系条件 14,数据结构用于描述系统的(A )。 A.静态特性 B.动态特性 C.关系特性 D.完整性约束条件 15,(C )是数据库系统的核心和基础。 A.概念模型 B.逻辑模型 C.数据模型 D.无正确答案 16,唯一标识实体的属性的集称为( B )。 A.实体 B.码 C.属性 D.域 17,用实体名和其属性名集合来抽象和刻画同类实体称为( B )。 A.实体集 B.实体型 C.域 D.联系 18,E-R图中用( B )表示属性。 A. B. C. D.

数据库原理考试试题

广东纺织职业技术学院2009~2010学年第一学期 《网络数据库》期末试卷(A卷) 考试时间:120分钟考试形式:开卷 适用专业:班级:学号:姓名: 说明:考试前将考卷文件夹复制到本地计算机E盘上,并按“学号姓名”重命名文件夹,操作题所有文件都在其中(包括Shoping数据库文件 Shoping_data.mdf和Shoping_log.ldf,以及备份文件Bak),考试结束时将该文件夹复制到桌面,未按要求者操作题部分将按零分计算。 一、选择题(每题1分,共10分) (1)为防止用户对数据库的非法存取操作,DBMS必须提供对数据库( )。 A.安全性保护 B.完整性保护 C.故障恢复 D.并发控制 (2)关系模型的基本数据结构是( )。 A.二维表格 B.树 C.图 D.二级树 (3)关系数据库是若干个( )的集合 A. 行 B. 列 C. 表(关系) D. 视图 (4)不允许在关系中出现重复记录的约束是通过( )实现的。 A.CHECK B.DEFAULT C.Foreign KEY D.Primary KEY 或Unique (5)参照完整性规则,表的( )必须是另一个表主键的有效值,或者是空值。 A.次关键字 B.外键 C.主键 D.主属性 (6)关系数据库是通过( )实现实体间联系的。 A. 链接指针 B.公共属性 C.网状结构 D.树结构 (7)有以下几个关系,学生关系:student(学号(PK),姓名(not Null),性别,年龄);课程关系:course(课程号(PK),课程名(not Null),学分); 成绩关系:grade(学号(PK,FK),课程号(PK,FK),成绩)。当删除student 表中记录时发生异常,则有可能产生的原因是 ( )。 A. 性别字段为空 B. 学号重复 C. 参照完整性约束 D.以上都不是

相关文档
相关文档 最新文档