步骤7: 单击“下一步”,进入最后的“完成”设计界面,在“报表标题”文本框中输入“学生成绩浏览”为报表添加标题,单击“完成”命令按钮,在系统弹出的“保存为”对话框中,将报表以“rpt1”文件名保存在考生文件夹下,退出报表设计向导。
三、 综合应用题(1小题,计30分)
在考生文件夹下,对“销售”数据库完成如下综合应用。
建立一个名称为view1的视图,查询“业绩”表中各项的“地区名称”、“商品名称”和“销量”。 设计一个名称为bd1的表单,表单上设计一个页框,页框有“综合”和“业绩”两个选项卡,在表单的右下角有一个“关闭”命令按钮。要求如下:
①表单的标题为“地区销售查看”。
②单击选项卡“综合”时,在选项卡中以表格显示view1视图中的记录。 ③单击选项卡“业绩”时,在选项卡中以表格显示“业绩”表中的记录。 ④单击“关闭”命令按钮时,关闭表单。
【考点指引】 本大题主要考查视图和表单的建立及表格控件、页框的使用,重点是表格控件数据源的设置。
【解题步骤】
步骤1: 选择【文件】→【打开】命令,在“打开”对话框的“文件类型”下拉列表框中选择“数据库”,选择“销售.dbc”,单击“确定”按钮,打开数据库设计器。
步骤2: 选择【文件】→【新建】命令,选择“视图”,单击“新建文件”按钮打开“添加表或视图”对话框,选择“表”单选项,选择数据库“销售”,分别将数据库中的表“业绩”、“地区”和“商品信息”,添加到视图设计器中,系统会自动选择关联字段“地区编号”为表“业绩”和“地区”建立内部联系,选择关联字段“商品编号”为表“业绩”和“商品信息”建立内部联系,单击“确定”按钮关闭“联接条件”对话框,接然后关闭“添加表或视图”对话框。
步骤3: 在视图设计器中单击“字段”选项卡,将“可用字段”列表框中的“地区名称”、“商品名称”和“销量”字段添加到右边的“选定字段”列表框中。
步骤4: 在视图设计器中单击“联接”选项卡,在第一行的“逻辑”下拉列表框中选择“AND”。 步骤5: 在视图设计器中单击“关闭”按钮,将视图文件以“view1”名称保存。
步骤6: 选择【文件】→【新建】命令,选择“表单”,单击“新建文件”按钮打开表单设计器,在表单属性窗口中将Caption属性值修改为“地区销售查看”, 单击表单控件工具栏上的“页框”控件图标,为表单添加一个页框PageFrame1,单击表单控件工具栏上的“命令按钮”控件图标,为表单添加一个命令按钮Command1,单击表单控件工具栏上的“表格”控件图标,再添加一个表格控件Grid1。
步骤7: 选择页框PageFrame1,在页框属性窗口中修改“PageCount”属性值为“2”,选择页框PageFrame1,单击右键,在弹出的快捷菜单中选择“编辑”,单击“Page1”, 在页框属性窗口中修改“Caption”属性值为“综合”;单击“Page2”,在页框属性窗口中修改“Caption”属性值为“业绩”,如图69-1所示。
图69-1
步骤8: 选择命令按钮,在按钮属性窗口中将命令按钮的Caption属性值修改为“关闭”。双击“关闭”命令按钮,在Click事件中输入代码:ThisForm.Release,用来关闭表单。
步骤9: 在表单设计器中,鼠标右键单击表单空白处,在弹出的快捷菜单中选择“数据环境”命令,打开表单的数据环境,选择数据库“销售”,将数据表“业绩”添加到数据环境中,再“选定”“视图”,将视图“view1”添加到数据环境中。
步骤10: 选择页框PageFrame1,在页框属性窗口中双击“Click Event”打开Click事件过程代码编辑窗口,输入以下代码:
ThisForm.Grid1.ColumnCount=-1 DO CASECASE
ThisForm.PageFrame1.Activepage=1 ThisForm.Grid1.RecordSourceType=1 ThisForm.Grid1.RecordSource=\CASEThisForm.PageFrame1.Activepage=2 ThisForm.Grid1.RecordSourceType=0 ThisForm.Grid1.RecordSource=\业绩\ENDCASE
ThisForm.Grid1.Refresh
步骤11: 选择【表单】→【执行表单】命令,系统首先要求保存该表单文件,在弹出的“另存为”对话框中输入表单文件名“bd1”,保存在考生文件夹下,然后运行表单。
一、 基本操作题(共4小题,第1和2题是7分,第3和4题是8分,计30分)
对考生文件夹中的“学生”表使用SQL语句完成下列四道题目,并将SQL语句保存在result.txt中。
(1)用SELECT语句查询所有住在女生楼学生的全部信息。
(2)用INSERT语句为“学生”表插入一条记录(\,刘云,男,21,\。 (3)用DELETE语句将“学生”表中学号为“20080005”的学生的记录删除。 (4)用UPDATE语句将所有人的年龄加一岁。
【考点指引】 本大题主要考查SQL语句操作数据表的用法,包括SELECT、INSERT、UPDATE、DELETE。
【解题步骤】 (1)保存在result.txt文件中的4条语句分别为:SELECT 学生.* FROM 学生,宿舍 WHERE 学生.宿舍编号=宿舍.宿舍编号 AND 宿舍名称 LIKE \女生楼%\(回车执行)
(2)INSERT INTO 学生 VALUES(\刘云\男\(回车执行) (3)DELETE FROM 学生 WHERE 学号=\(回车执行)PACK(回车执行) (4)UPDATE 学生 SET 年龄=年龄+1(回车执行)
二、 简单应用题(共2小题,每题20分,计40分)
(1)在考生文件夹中有一个“b_学生”表,表结构如下:
学生(学号C(8),姓名C(8),年龄N(2),性别C(2),院系号C(4)),现在要对b_学生表进行修改,指定“学号”为主索引,索引名和索引表达式均为“学号”;指定“院系号”为“普通索引”,索引名和索引表达式均为“院系号”;年龄字段的有效性规则在16至25之间(含16和25),默认值是18。
(2)列出定货日期为“01-02-2008”的订单明细记录,将结果按“商品编码”升序排列,并将结果存储到result表中(表结构与定货表结构相同),将SQL语句保存在result.prg文件中。
【考点指引】 本大题1主要考查数据表索引的建立及字段有效性规则的设置;第2小题考查的是利用SQL语句进行查询,注意用INTO TABLE语句将查询结果保存到表中。
(1)【解题步骤】
步骤1: 选择【文件】→【打开】命令,在“打开”对话框的“文件类型”下拉列表框中选择“表(*.dbf)”,选择“b_学生.dbf”,单击“确定”按钮,打开数据表“b_学生.dbf”,选择【显示】→【表设计器】命令,打开表设计器修改表“b_学生”结构。
步骤2: 在表设计器的“索引”选项卡的“索引名”中输入“学号”,选择索引类型为“主索引”,索引表达式为“学号”;单击下一行,在“索引名”中输入“院系号”,选择索引类型为“普通索引”,索引表达式为“院系号”。
步骤3: 在 “字段”选项卡下,选择“年龄”字段,在“字段有效性”的“规则”文本框中输入“年龄>=16 AND 年龄<=25”,“默认值”文本框中输入“18”,单击“确定”按钮关闭表设计器并保存表“b_学生”结构。
(2)【解题步骤】
步骤1: 在命令窗口中输入命令:MODI COMM result(回车执行)打开程序文件编辑窗口,在程序文件编辑窗口中输入以下程序代码:
SELECT*INTO TABLE result FROM 定货 WHERE 定货日期=CTOD(\ORDER BY 商品编码
关闭程序文件编辑窗口并保存程序文件。 步骤2: 在命令窗口中输入命令:DO result(回车执行)执行程序文件,查询结果会自动保存到表result中。
三、 综合应用题(1小题,计30分)
“成绩管理”数据库中有三个数据库表“student”、“score”和“course”。建立文件名为bd1,标题为“成绩查询”的表单,表单包含三个命令按钮,标题分别为“查询最高分”、“查询最低分”和“关闭”。
单击“查询最高分”按钮时,调用SQL语句查询出每门课程的最高分,查询结果中包含“姓名”,“课程名称”和“最高分”,结果在表格中显示。
单击“查询最低分”按钮时,调用SQL语句查询出每门课程的最低分,查询结果中包含“姓名”,“课程名称”和“最低分”,结果在表格中显示。
单击“关闭”按钮时关闭表单。
【考点指引】 本大题主要考查表单的建立及按钮控件和表格控件的使用,重点是按钮事件代码的编写和表格控件数据源的设置。
步骤1: 选择【文件】→【打开】命令,打开数据库“成绩管理”。
步骤2: 选择【文件】→【新建】命令,选择“表单”,单击“新建文件”按钮打开表单设计器,将Caption属性值修改为“成绩查询”,单击表单控件工具栏上的“命令按钮”控件图标,为表单添加三个命令按钮Command1、Command2、Command3,单击表单控件工具栏上的“表格”控件图标,再添加一个表格控件。
步骤3: 分别选择三个命令按钮,在按钮属性窗口中将命令按钮Command1的Caption属性值
修改为“查询最高分”、Command2的Caption属性值修改为“查询最低分”、Command3的Caption属性值修改为“关闭”,如图56-1所示。双击“关闭”命令按钮,在Click事件中输入代码:ThisForm.Release,用来关闭表单。
图56-1
步骤4: 选择表格控件,再在表格控件属性窗口中将“RecordSource”属性值修改为“\”,将“RecordSourceType”属性值修改为“1”。
步骤5: 双击“查询最高分”命令按钮,在Click事件中输入代码:
SELECT course.课程编号,课程名称,MAX(成绩) AS 最高分 INTO CURSOR tmp FROM score,course WHERE course.课程编号=score.课程编号 GROUP BY course.课程编号,课程名称SELECT 姓名,课程名称,最高分 INTO CURSOR tmp1 FROM student,score,tmp WHERE student.
学号=score.学号 AND tmp.课程编号=score.课程编号 AND tmp.最高分=score.成绩 ThisForm.Grid1.RecordSourceType=1
ThisForm.Grid1.RecordSource=\
步骤6: 双击“查询最低分”命令按钮,在Click事件中输入代码:
SELECT course.课程编号,课程名称,MIN(成绩) AS 最低分 INTO CURSOR tmp FROM score,course WHERE course.课程编号=score.课程编号 GROUP BY course.课程编号,课程名称
SELECT 姓名,课程名称,最低分 INTO CURSOR tmp1 FROM student,score,tmp WHERE student.学号=score.学号 AND tmp.课程编号=score.课程编号 AND tmp.最低分=score.成绩ThisForm.Grid1.RecordSourceType=1
ThisForm.Grid1.RecordSource=\
步骤7: 选择【表单】→【执行表单】命令,系统首先要求保存该表单文件,在弹出的“另存为”对话框中输入表单文件名“bd1”,保存在考生文件夹下,然后运行表单。