第四十三套
一、基本操作题(共4小题,第1和2题是7分、第3和4题是8分)
在考生目录下完成如下操作:
1. 打开数据库SCORE_MANAGER,该数据库中含三个有联系的表STUDENT、SCORE1
和COURSE,根据已经建立好的索引,建立表之间联系。
2. 为COURSE表增加字段:开课学期(N,2,0)。
3. 为SCORE1表"成绩"字段设置字段有效性规则:成绩>=0,出错提示信息是:
"成绩必须大于或等于零"。
4. 将SCORE1表"成绩"字段的默认值设置为空值(NULL)。
本题主要考核点:
为已建立索引的表建立联系、设置字段的默认值、字段的添加、字段有效性的设置等知识点
本题解题思路:
第1题:本题的主要考核点是建立两个表之间永久联系。
在父表中选中主索引,按住鼠标拖动至子表相应的普通索引上,释放鼠标,联系即已建立。
第2题:本题的主要考核点是字段的添加的方法。
打开COURSE表表设计器,将光标移动到最后的空字段格中,输入新的字段名、字段类型及长度。
第3题:本题的主要考核点是字段有效性的设置。
在表设计器中,选中"成绩"字段,在"字段有效性"中的"规则"文本框中填入: 成绩>=0,在"信息"文本框中中填入"成绩必须大于或等于零",单击确定。
第4题:本题的主要考核点是字段默认值的设置。
在表设计器对话框中,选择"成绩"字段,点击NULL列下的按钮(表示此列允许空值),然后再在"字段有效性"中的默认值中填入.NULL.,单击确定。
二、简单应用(2小题,每题20分,计40分)
在考生目录下完成如下简单应用:
1. 在SCORE_MANAGER数据库中查询学生的姓名和年龄(计算年龄的公式
是:2003-Year(出生日期),年龄作为字段名),结果保存在一个新表NEW_TABLE1
中。使用报表向导建立报表NEW_REPORT1,用报表显示NEW_TABLE1的内容。报表
中数据按年龄升序排列,报表标题是"姓名-年龄",其余参数使用缺省参数。
2. 在SCORE_MANAGER数据库中查询没有选修任何课程的学生信息,查询
结果包括"学号"、"姓名"和"系部"字段,查询结果按学号升序保存在一个新
表NEW_TABLE2中。
本题主要考核点:
本题的主要考核点是SQL查询语句的使用,查询去向、报表向导的使用等知识点
本题解题思路:
第1题:本题的主要考核点是SQL查询语句的使用,查询去向、报表向导的使用。
SELECT 姓名, 2003-Year(出生日期) as 年龄;
FROM student;
INTO TABLE new_table1.dbf
启动报表向导可在"文件"菜单中选择"新建"或者单击工具栏上的"新建"按钮,打开"新建"对话框,文件类型选择报表,单击向导按钮。或者在"工具"菜单中选择"向导"子菜单,选择"报表",或直接单击工具栏上的"报表向导"图标按钮。然后按照向导提示操作即可。
第2题:本题的主要考核点是SQL查询语句的使用。
SELECT Student.学号, Student.姓名, Student.系部;
FROM course right OUTER JOIN score1;
right OUTER JOIN student ;
ON Student.学号 = Score1.学号 ;
ON Course.课程号 = Score1.课程号;
WHERE Student.学号 != Score1.学号 ;
ORDER BY Student.学号;
INTO TABLE new_table2.dbf
三、综合应用(1小题,计30分)
SCORE_MANAGER数据库中含有三个数据库表STUDENT、SCORE1和COURSE。
为了对SCORE_MANAGER数据库数据进行查询,设计一个如图所示的表单
Myform1(控件名为form1,表单文件名Myform1.scx)。表单的标题为"成绩查询"。
表单左侧有文本"输入学号(名称为Label1的标签)"和用于输入学号的文本框(名
称为Text1)以及"查询"(名称为Command1)和"退出"(名称为Command2)两个命令
按钮以及1个表格控件。
表单运行时,用户首先在文本框中输入学号,然后单击"查询"按钮,如果
输入学号正确,在表单右侧以表格(名称为Grid1)形式显示该生所选课程名和成
绩,否则提示"学号不存在,请重新输入学号"。
单击"退出"按钮,关闭表单。
本题主要考核点:
表单文件的创建、控件的属性的修改、SQL语句运用、表单的退出等知识点
本题解题思路:
操作过程:
①在命令窗口输入命令:CREATE FORM Myform1,打开表单设计器窗口。
②在表格上添加各文本框、命令按钮、表格及相关的标签,并进行适当的布置和大小调整。
③设置各标签、命令按钮以及表单的Caption属性值。
④将表单的ColumnCount 属性值设置为2(共两列)、RecordSourceType属性值设置为"4-SQL说明"。
⑤将表格内两列标头的Caption属性分别设置为"课程名"和"成绩",并适当调整两列的宽度。
⑥设置表单的Load事件代码:
CLOSE ALL
USE STUDENT
⑦设置"查询"按钮的Click事件代码:
GO TOP
LOCATE FOR Student.学号 ==ALLTRIM(THISFORM.TEXT1.VALUE)
IF Student.学号 ==ALLTRIM(THISFORM.TEXT1.VALUE)
THISFORM.GRID1.RECORDSOURCE="SELECT Course.课程名, Score1.成绩;
FROM course INNER JOIN score1;
INNER JOIN student ;
ON Student.学号 = Score1.学号 ;
ON Course.课程号 = Score1.课程号;
WHERE Student.学号 = ALLTRIM(THISFORM.TEXT1.VALUE);
INTO CURSOR TEMP"
ELSE
MESSAGEBOX("学号不存在,请重新输入学号")
THISFORM.GRID1.RECORDSOURCE=''
ENDIF
⑧设置"退出"按钮的Click事件代码:
THISFORM.RELEASE
⑨保存表单,关闭表单设计器窗口。
责任编辑:小草