Test1参考答案
一、判断题(每题0.5分,共10分。
在答题卡上涂黑A代表√,涂黑B代表ⅹ)
1 √
2 ⅹ
3 ⅹ
4 ⅹ
5 √
6 √
7 ⅹ
8 √
9 √10 √
11 ⅹ12 √13 ⅹ14 ⅹ15 ⅹ
16 √17 ⅹ18 √19 ⅹ20 ⅹ
二、选择题(每题1分,共30分。
涂黑答题卡上对应的项。
)
1 C
2 C
3 C
4 C
5 C
6 A
7 C
8 A
9 A 10 C
11 B 12 A 13 B 14 A 15 C
16 A 17 C 18 B 19 A 20 C
21 D 22 B 23 C 24 D 25 A
26 B 27 C 28 B 29 A 30 C
三、填空题(每题2分,共20分)
1 外键 6 数据库系统
2 记录7 OpenTable
3 记录8 选择
4 Group by9 36
5 查询10 Double
四、简答题(每题10分,共40分。
写清题号。
)
1. 答:(1)∏A,B(R)
A B
A B C b B B A c
(2)σ C =”d”(S)
B C D
a d b
(3)R S
A B C D
a a b
b
c
c
d
e
(R))
(4)∏A,B(σC=”f”
2.解:
a.统计女职工人数
SELECT COUNT(*) FROM 职工 WHERE 性别=‘女’
b.删除年龄在70岁以上的职工的全部信息
DELETE FROM 职工 WHERE 年龄>70
c.在职工表中,将进厂日期在1970年和1975年之间的职工工资增加20%
UPDATA 职工 SET 工资=工资*1.2 WHERE YEAR(进厂日期)>=1970 and YEAR(进厂日期)<=1975
d.显示姓“王”的全部男职工的信息
SELECT * FROM 职工 WHERE 性别=‘男’ and LEFT(姓名,1)=’王’
e. 增加一个“简历”字段。
ALTER TABLE 职工 ADD 简历 memo
3解:
PUBLIC SUB P1()
DIM SUM AS INTEGER
DIM COUNT AS INTEGER
DIM I AS INTEGER
FOR I=1 TO 100
IF I MOD 3=0 OR I MOD 7=0 THEN
SUM=SUM+I
COUNT=COUNT+1
ENDIF
NEXT I
DEBUG.PRINT "SUM=", SUM
DEBUG.PRINT "COUNT=", COUNT
END SUB
4创建一个查询Q8,查找低于本类图书平均定价的图书,并显示书籍名称、类别、定价、作者名、出版社名称。
写出创建的详细步骤。
解:(1)创建各个类别的平均定价
打开查询设计视图,将“书籍”表添加到“查询”设计视图上半部的窗口中
在“字段”行,选择输入“类别”和“定价”2个字段
单击“合计”按钮,将“定价”字段的“总计”行中总计项改为“平均值”。
将“定价”字段的显示内容改为“平均定价”。
保存该查询,并将其命名为“平均定价”。
(2)创建查找低于该类别平均定价的图书
打开查询设计视图,以“平均定价”和“书籍”为数据源,并将他们添加在设计视图窗口的上半部分。
建立它们的联系:选定“平均定价”中的“类别”字段,然后按下鼠标左键拖动到“书籍”中的“类别”字段上,松开鼠标键。
将“书籍”中的“书籍名称”、“类别”、“定价”、“作者名”、“出版社名称”添加在设计网格的“字段”行,并显示。
在“定价”字段下面的条件行输入条件:<[平均定价]![平均定价]
保存该查询,将其命名为Q8.
Test2参考答案
一、
二、单选题(每题1分,共40分。
涂黑答题卡上对应的项)
三、填空题(每题1分,共10分)
四、简答题(共6小题,共40分。
写清题号。
)
1. 写出下列关系运算的结果。
(每小题2分,共10分)
设有关系R 、S (1) B,D (S)
1 2
3 2
(2)σ C =”3”(S)
B C D
2 3 1
1 3 2
(3)R S
A B C D
1 2 3 1
3 1 2 3
2 1
3 2
(4)∏A,B(σC=”2”(R))
A B
1 3
3 1
(5)∏A (R)×σB=”1”(S)
A B C D
1 1
2 3
1 1 3 2
3 1 2 3
3 1 3 2
2 1 2 3
2 1
3 2
2. 写出下列VBA表达式的值(每小题1分,共5分)
(1) 7mod3=1
(2) Int(3.33)=3
(3) Len(Str$(1.23)+Space(5))=10
(4) Asc(Chr(201))=0
(5) year(#2010-1-13#)=2010
3. 编写一个公共的子过程Sub1,要求:通过键盘输入一个整数X,如果是偶数输出“Even”;否则输出“Odd”。
(5分)
Public Sub sub1()
Dim x As Integer
x = V AL(InputBox("请输入一个整数", "输入", 0))‘有数据输入得分2分
If x Mod 2 = 0 Then
MsgBox "Even"
Else
MsgBox "Odd"
End If ‘按照不同情况输出3分
End Sub
4. 下列前两个小题的每条SQL查询语句写出相应的功能,后三小题的每种功能写出相应的SQL查询语句。
(每小题2分,共10分)
(1) 显示教学库中学生未选课程的课程号、课程名称和学分。
(2) 按照不同专业,不同性别分别显示学生的人数,并按照专业排序。
(3) Select 姓名,专业,年级from 学生where 姓名like “张*” and 性别=’男’
(4) Alter Table 学生add 简历memo
(5) Update 学生Set 年级=3
5. 在教学库中创建一个查询视图,显示每位学生的学生编号、姓名、专业、年级(表的结构见应用题的第4题)。
命名为学生查询。
写出操作步骤。
(5分)
答:打开数据库“教学库”,在“对象”栏中选择“查询”,单击“使用向导创建查询”(2分)。
在弹出的“简单查询向导”窗口中,选择“学生表”,将“学生编号”、“姓名”、“专业”、“年级”设为“选定的字段”,单击“下一步”,选择“明细”,为查询设定标题“学生查询”,单击“完成”(3分)。
也可以使用查询的设计视图完成。
6. 在教学库中设计一个学生成绩汇总报表(表的结构见应用题的第4题),报表的主体内容显示学生编号、姓名、课程名称、学分和成绩,并将每位同学的平均成绩显示出来。
报表页眉显示:华南农业大学的校徽和“学生选课成绩表”。
报表页面页眉显示:学生编号、姓名、课程名称、学分、成绩等列标题。
页面页脚左边显示日期,右边显示第i页/共n页,其中i是当前的页码,n是总的页数。
报表页脚显示所有学生的总平均分。
写出操作步骤。
(5分)
答:(1)(1分)建立各表之间的联系:单击“工具”菜单中的“关系”,用鼠标右键激活快捷菜单,选择“全部显示”。
拖动“学生”表中的“学生编号”到“选课”表中的“学生编号”,建立2表的联系;拖动“课程”表中的“课程号”到“选课”表中的“课程号”建立2表的联系。
(2)(1分)创建报表:单击“报表”对象,单击“使用向导创建报表”。
在“报表向导”窗口中,分别选定“学生”表中的“学生编号”、“姓名”,“课程”表中的“课程名称”、“学分”,“选课”表中的“成绩”为“选定的字段”。
单击“下一步”,选择“通过学生表”查看数据,单击“下一步”;在“是否添加分组级别”界面,单击“下一步”;在排序和汇总的界面单击“下一步”。
选择“递阶”布局方式,方向为“纵向”。
单击“下一步”,选择“组织”样式。
单击“下一步”;为报表指定标题“学生选课成绩表”,单击“完成”。
(3)(3分)修改报表的内容:在报表的设计视图中打开新生成的报表,在报表页眉的位置,单击“工具箱”中的“图像”按钮,选择“华南农业大学校徽”的图片文件。
在报表页脚的位置吧页码显示的内容改为“第”&[Page]&”页/共”&[Pages]&”页”。
单击“视图”中“排序与分组”,选择“学生编号”,“组页脚”选择“是”;在“组页脚”的位置插入一个文本框,前面标签显示的内容改为“平均分:”,后面文本框的内容输入” = Avg ( [成绩] )”。
在报表页眉的位置插入一个文本框,前面标签显示的内容改为“总平均分:”,后面文本框的内容输入” = Avg ( [成绩] )”。