cs2010Q VFP01 一、项目、数据库和表操作(12 分) 打开 T 盘根目录中的项目文件 JXGL,在该项目中已有一数据库 JXSJ。 1.在 JXSJ 数据库中按如下表格所示的结构创建 AB 表,并按表格中的要求设置相关属性。 宇段名 RQ SCSL SJRS BZ 数据类型 D N N M 宽度 0 6 6 0 宇段标题 日期 售出门票数量 实际参观人数 备注
(1) 设置 AB 表的表注释:参观人数; (2) 设置日期字段的默认值:当前系统日期;date() (3) 设置日期字段的显示类:微调框;spinner (4) 设置记录有效性规则:实际参观人数小于或等于售出门票数量;sjrs<=scsl (5) 创建普通索引,索引名为 abcd,要求按实际参观人数与售出门票数量之比排序.sjrs/scsl 2.在 AB 表中输入如下记录: RQ (默认值) SCSL 240100 SJRS 198808 BZ 全天下雨
3.给 KC 表中所有学分大于或等于 5 的记录加删除标记。 4.JS 表已存在主索引 GH,索引表达式为 GH;KCAP 表已存在普通索引 GH,索引表达式 为 GH。以 JS 表为主表、KCAP 表为子表,根据 GH 建立永久关系,并设置两表之间的参照 完整性:更新级联、删除级联。
二、设计查询(8 分) 已知教师表(JS)含有工号(gh,C)、(xm,C)等字段;自由表图书借阅表(JYB)含有读 者号(dzh,C)、分类号(flh,C)、借阅日期(jyrq,D)、还书日期(hsrq,D)等字段,教师的读 者号与工号相同。按如下要求修改 JXGL 项目中的查询 CHAXUN:内部连接 基于 JS 表和 JYB 表查询教师借书情况,计算过期罚款信息。要求:查询输出字段<点 字段>为 dzh、xm、罚款额;查询结果按罚款额降序排序;输出去向为文本文件 TEMP。 注:罚款计算方法为 30 天以上超过部分每本每天 0.10 元,未还书者(即还书日期为空 的记录)不统计。输出去向 设置默认目录 《筛选》 (jyb.hsrq-jyb.jyrq-30)*0.1 as 罚款额 在字段里输入然后点添加 输出去向点小眼镜 来源于表要修改如果找不到表 三、设计菜单(5 分) JXGL 项目中已存在菜单 MENU,其中已定义了“文件”菜单栏及其中的“退出菜单”项。 按如下要求设计菜单,菜单运行后的效果如图 1 所示。 1. 在“文件”菜单栏右侧创建“数据管理”菜单栏。 2. 在“数据管理”菜单栏下创建子菜单“查询”和“数据备份” 。 3. 为“查询”菜单项设置快捷键:F12。点选项输入 F12 4. 在菜单项“查询”和“数据备份”之间插入分组线。 (\-) \是输入法改成英文的然后直接按\这个键 5. 为“数据备份”菜单项设置过程代码: d=GETFILE("dbf","*.dbf")
USE &;d COPY TO bf1
四、设计表单(10 分) 表单 F101A 用于统计输入文本中各类字符的个数。按下列要求修改表单,修改后表单 运行时如图 2 所示。 1.修改表单的有关属性,使表单的标题为 “
字符数统计” ,并设置字数统计的三个文 本框禁用。 点 form1,再点 caption 改变名字 enabled 2. 适当加大 Shape1 形状的高度, 在其区域 内增加一个标签控什 Label Sum 和一个 文本框控件 Text4, 并设置 Labe1 Sum 的 标题为“总字符数: ” 。点圈然后拉大 A 是标签 name LabelSum 3. 编写“清空”按钮的 Click 事件代码, 用 2 条语句实现如下功能:(1)清除编辑 框 Editl 中的文本 thisform.value=” ”;(2)使“字数统计”矩形区域内的 4 个文本框的值 均置零。Thisform.setall(“value”,0,”textbox”) 4.表单已定义了一个 Count()方法,用来对 Edit1 编辑中的文本进行字数统计。编写“统计” 按钮的 Click 事件代码,以实现:先调用表单的 Count( )方法,然后将文本框 Text1、Text2 和 Text3 的值相加后显示在文本框 Text4 中。 双击统计按钮 thisform。Count Thisform.Text4.value=Thisform.Text1.value+Thisform.Text2.value+Thisform.Text3.value 五、程序改错(5 分) 下列程序的功能是找出 100-999 以内同时满足以下条件的数:1)个位数字与十位数字和 与 10 的模等于百位数;2)该数是素数(仅能被 1 和