江苏省VFP2005秋2006春上机
更新时间:2023-07-26 08:26:01 阅读量: 实用文档 文档下载
- 江苏省地图推荐度:
- 相关推荐
江苏省VFP2005秋2006春上机
项目、数据库和表操作(练习1~~练习8为2006年春上机;练习9~~练习16为2005年秋上机)
练习1
打开软盘根目录中的项目文件TEST, 在该项目中已有一数据库SJK及若干表。
1. 按以下要求修改SJK数据库中XS(学生)表:
(1) 为表设置长表名:学生基本档案表。
(2) 创建一个普通索引abcd,要求以性别(xb)为第一索引关键字、出生日期(csrq)为第二索引关键字排序。
(3) 设置xb字段的有效性规则和有效性说明信息,要求其值为“男”或“女”。
(4) 添加一字符型字段,字段名为jg_1、宽度为14,然后设置其标题为“籍贯”、默认值为“省市”。
(5) 根据jg字段的值来填写jiguan字段的值:如果jg值为两个汉字,则加“市”,否则在前两个汉字后加“省”、最后加“市”。例如jg为“上海”,则jiguan为“上海市”;jg为“江苏南京”,则jiguan为“江苏省南京市”;jg为“江苏张家港”,则jiguan为“江苏省张家港市”,等等。
2. 在项目中,将RK表设置为“包含”状态。
3. XS表和CJ表已存在以学号(xh)字段为索引表达式的主索引xsxh和普通索引cjxh。以XS表为主表,CJ表为子表按xh建立永久关系,并根据以下要求设置参照完整性规则:
在XS表中修改记录(xh字段的值)时,若CJ表中有相关的记录(xh字段的值),则同步对CJ表进行修改;
在XS表中删除记录时,若CJ表中有相关的记录(xh字段的值),则禁止对XS表进行删除。
练习2
打开软盘根目录中的项目文件TEST, 在该项目中已有一数据库SJK及若干表。
1. 按以下要求修改SJK数据库中XS(学生)表:
(1) 添加一个备注型字段,字段名为res,并将其标题设置为“简历”。
(2) 创建一个普通索引abcd,要求根据出生日期(csrq)中的“月日”进行排序,即排序时不考虑其中的“年份”。
(3) 设置xm字段的有效性规则,要求其值包含非空格字符。
(4) 将所有记录的bjbh字段的值替换为:xh的前两个字符 + xdh字段的值 + zydh字段的值
(5) 将籍贯(jg)不属于“江苏”的记录作逻辑删除。
2. 利用项目管理器操作,从磁盘上删除XIM表(文件)。
3. 修改项目TEST的项目信息:附加图标NET.ICO。
4. XS表和CJ表已存在以学号(xh)字段为索引表达式的主索引xsxh和普通索引cjxh。以XS表为主表,CJ表为子表按xh建立永久关系,并根据以下要求设置参照完整
江苏省VFP2005秋2006春上机
性规则:
在XS表中修改记录(xh字段的值)时,若CJ表中有相关的记录(xh字段值),则禁止对XS表进行修改;
在XS表中删除记录时,若CJ表中有相关的记录(xh字段值),则同步删除CJ表中相应记录。
练习3
打开软盘根目录中的项目文件TEST, 在该项目中已有一数据库SJK及若干表。
1. 按以下要求修改SJK数据库中XS(学生)表:
(1) 添加一个字符型字段,字段名为zzmm,其宽度以最多能存储字符串“中共党员”为准,并设置其标题为“政治面貌”、显示类为“Combobox”。
(2) 设置学号(xh)字段的InputMask属性,使该字段中仅能输入数字字符。
(3) 创建一个普通索引abcd,要求以csrq中的“日”进行排序,相同时再根据“月份”进行排序(注:要求利用DAY()和MONTH()函数)。
(4) 为XS表添加一条记录,要求:输入的xh为“123456”,xm为考生自己的姓名,其它字段内容由考生自己编造(注:xm字段的值必须为考生自己的真实姓名,否则本题不得分)。
2. 在项目中,将XIM表和ZY表设置为“包含”状态。
3. XS表和CJ表已存在以xh字段为索引表达式的主索引xsxh和普通索引cjxh。以XS表为主表,CJ表为子表按xh建立永久关系,并根据以下要求设置参照完整性规则: 在XS表中删除记录时,若CJ表中有相关的记录(xh字段的值),则禁止删除XS表记录;
在XS表中修改记录(xh字段值)时,若CJ表中有相关的记录(xh字段的值),则自动修改CJ表记录。
练习4
打开软盘根目录中的项目文件TEST, 在该项目中已有一数据库SJK及若干表。
1. 按以下要求修改SJK数据库中CJ(成绩)表:
(1) 添加一个字符型字段,字段名为grade、宽度为1,并计算该字段的值:若cj大于或等于80,则grade为“A”;若cj小于80且大于或等于60,则grade为“B”;若cj小于60,则grade为“C”。
(2) 设置cj字段的有关属性,使该字段的字段名在浏览窗口中显示为“百分制成绩”。
(3) 设置cj字段的有效性规则和有效性说明:cj小于或等于100,且不小于0。
(4) 创建一个普通索引abcd,要求以课程代号(kcdh)字段进行排序,相同时以成绩(cj)字段排序。
2. 利用项目管理器操作,将当前项目中所有的自由表移去并从磁盘上删除。
3. 修改项目TEST的项目信息:附加图标NET.ICO。
4. JS表和RK表已存在以工号(gh)字段为索引表达式的主索引jsgh和普通索引rkgh。以JS表为主表,RK表为子表按gh建立永久关系,并根据以下要求设置参照完整性规则:
江苏省VFP2005秋2006春上机
在JS表中修改记录(gh字段值)时,若RK表中有相关的记录(gh字段的值),则自动修改RK表中相应记录;
在JS表中删除记录时,若RK表中有相应的记录(gh字段的值),则禁止删除JS表中记录。
练习5
打开软盘根目录中的项目文件TEST, 在该项目中已有一数据库SJK及若干表。
1. 按以下要求修改SJK数据库中课程(KC)表:
(1) 添加一个备注型字段,字段名为bz,并为其设置:标题为“备注”,默认值为系统日期的年份。
(2) 设置kcdh字段的InputMask属性,使该字段的值只能为数字字符。
(3) 设置bxk字段的有关属性,使得将该字段从表单的数据环境中拖放到表单上时,生成的相应控件为文本框控件。
(4) 设置表的记录级有效性规则,要求kss值比xf值大(注:对现有数据不验证此规则)。
(5) 创建一个普通索引abcd,要求以xf字段进行排序,相同时以kss字段排序。
(6) 为KC
2.
3. XIM表和JS表已存在以系代号(xdh)字段为索引表达式的主索引xdh和普通索引xdh。以XIM表为主表,JS表为子表按xdh建立永久关系,并根据以下要求设置参照完整性规则:
在XIM表中修改记录(xdh字段值)时,若JS表中有相关的记录(xdh字段值),则自动修改JS表中相应记录;
在XIM表中删除记录时,若JS表中有相关的记录(xdh字段值),则禁止删除XIM表中相应记录。
练习6
打开软盘根目录中的项目文件TEST, 在该项目中已有一数据库SJK及若干表。
1. 在SJK数据库中新建一个表名为ABC的数据库表,要求该表含有两个字段:字段名分别为aa和bb,类型分别为逻辑型和通用型。
2. 按以下要求修改SJK数据库中课程(KC)表:
(1) 设置kss字段和xf字段的标题属性,分别为“课时数”和“学分”。
(2) 设置kcdh字段的InputMask属性,使该字段的值只能为数字字符。
(3) 设置表的记录级有效性规则,要求kss值不小于xf值(注:对现有数据不验证此规则)。
(4) 创建一个普通索引abcd,要求以bxk字段进行排序,相同时以xf字段排序(提示:用IIF()函数对bxk字段进行数据类型转换)。
江苏省VFP2005秋2006春上机
(5) 对KC表中xf为2的记录,作逻辑删除。
3. 利用项目管理器操作:将BJ表改名为BJB表,并为其设置编辑说明“班级表”。
4. JS表和RK表已存在以工号(gh)字段为索引表达式的主索引jsgh和普通索引rkgh。以JS表为主表,RK表为子表按gh建立永久关系,并根据以下要求设置参照完整性规则:
在JS表中修改和删除记录时,若RK表中有相关的记录(gh字段的值),则禁止对JS表进行修改和删除;
在RK表中添加记录时,若JS表中无相关的记录(gh字段的值),则禁止对RK表进行插入操作。
练习7
打开软盘根目录中的项目文件TEST, 在该项目中已有一数据库SJK及若干表。
1. 按以下要求修改SJK数据库中专业(ZY)表:
(1) 添加一个备注型字段,字段名为bz。
(2) 为xz字段设置标题和默认值:“学制”和4。
(3) 设置xz字段的有效性规则和有效性说明:xz不小于2且不大于6(对已有数据不作验证)。
(4) 创建一个普通索引abcd,要求以xz字段进行排序,相同时以zydh字段排序。
2. 计算gz表中qt字段的值:jbgz小于1000时,jbgz×10%后取整,否则jbgz×15%后取整。
3. 利用项目管理器操作:将本地视图JSST改名为JSVIEW,并为其设置编辑说明“教师视图”。
4. XS表和BJ表已存在以班级编号(bjbh)字段为索引表达式的普通索引bjbh和主索引bjbh。以BJ表为主表,XS表为子表按bjbh建立永久关系,并根据以下要求设置参照完整性规则:在BJ表中修改记录时,若XS表中有相应的记录(bjbh字段的值),则同步对XS表进行修改;在BJ表中删除记录时,若XS表中有相应的记录(bjbh字段的值),则禁止对BJ表进行删除。
练习8
打开软盘根目录中的项目文件TEST, 在该项目中已有一数据库SJK及若干表。
1. 按以下要求修改SJK数据库中JS(教师)表:
(1) 为表设置删除触发器:若当前系统日期为“星期日”,则不允许删除(提示:使用DOW()函数)。
(2) 添加一个字段名为gzny、宽度为7的字符型字段,且根据gzrq字段的值填写该字段的值:年份+小数点+月份,例如gzrq为08/03/1999,则gzny为“1999.08”。
(3) 设置xb字段的标题“性别”、默认值“男”,并设置该字段的有效性规则:只能为“男”或“女”。
(4) 创建一个普通索引abcd,要求以gzrq进行排序,相同时再以参加工作时的年龄(gzrq与csrq的年份之差)进行排序。
2. 利用项目管理器操作:将zy表从项目中移去并删除之,将zc表设置为“包含”状
江苏省VFP2005秋2006春上机
态。
3. 将zc表复制为Excel文件zc.xls(提示:打开zc表后,利用copy命令)。
4. JS表和ZC表已存在以zcdh字段为索引表达式的普通索引zcdh和主索引zcdh。以ZC表为主表,JS表为子表按zcdh建立永久关系,并根据以下要求设置参照完整性规则:在JS表中插入记录时,若ZC表中无相应的记录(zcdh字段的值),则禁止对JS表进行插入。
练习9
打开软盘根目录中的项目文件TEST, 在该项目中已有一数据库SJK及若干表。
1. 按以下要求修改SJK数据库中TS表:
(1) 为TS表设置长表名:图书档案表。
(2) 添加一备注型字段,字段名为summary,并设置其标题为“内容概要”。
(3) 设置flh字段的有关属性,以使该字段中输入的字母均为大写字母。
(4) 创建一个普通索引abcd,要求以分类号(flh)为第一索引关键字、书名(sm)为第二索引关键字排序。
(5) 设置jg字段的有效性规则和有效性说明信息,要求:其值不能小于1。
(6) 修改作者(zz)的值,要求在原作者名后加汉字“等”。例如,第一条记录的作者由“路云”改为“路云等”。
2. 在项目中,将TS表设置为“包含”状态。
3. XS表和CJ表已存在以xh字段为索引表达式的主索引xsxh和普通索引cjxh。以XS表为主表,CJ表为子表按xh建立永久关系,并根据以下要求设置参照完整性规则:当在CJ表中添加记录时,若XS表中没有相对应的记录(xh字段的值),则禁止添加记录。
练习10
打开软盘根目录中的项目文件TEST, 在该项目中已有一数据库SJK及若干表。
1. 按以下要求修改SJK数据库中TS表:
(1) 为TS表设置表注释:教学用图书。
(2) 添加一个字段,字段名为cover,其类型应适用于存储图书的封面图片。
(3) 设置flh字段的有关属性,使该字段中输入的字母均为大写字母。
(4) 设置cs字段的有关属性,使得将该字段从表单的数据环境中拖放到表单上时,生成的相应控件为微调控件。
(5) 创建一个普通索引abcd,要求以书名(sm)的长度进行排序(sm字段值的首尾空格字符不计)。
(6) 设置sm字段的有效性规则及有效性说明,要求:其值不为空字符串和仅有空格组成的字符串。
(7) 为TS
江苏省VFP2005秋2006春上机
2. 在项目中,将3. XS表和CJ表已存在以xh字段为索引表达式的主索引xsxh和普通索引cjxh。以XS表为主表,CJ表为子表按xh建立永久关系,并根据以下要求设置参照完整性规则:当在XS表中删除记录时,若CJ表中有相对应的记录(xh字段的值),则禁止删除XS表记录。
练习11
打开软盘根目录中的项目文件TEST, 在该项目中已有一数据库SJK及若干表。
1. 按以下要求修改SJK数据库中TS表:
(1) 为TS表设置编辑说明:教学图书表。
(2) 修改jg(价格)字段的宽度,要求该段名能存储整数3位、小数1位。
(3) 设置zz字段的标题属性,使该字段的字段名在浏览窗口中显示为“作者”。
(4) 创建一个普通索引abcd,要求以入库日期(rkrq)字段进行排序,相同时以价格(jg)字段排序。
(5) 设置jg字段的有效性规则,要求其值不小于1。
(6) 将flh以G字母开头的记录彻底删除。
2. 利用项目管理器删除XIM表。
3. 将图标文件NET.ICO添加到项目中的合适位置,并修改项目TEST的项目信息:附加图标NET.ICO。
4. XS表和CJ表已存在以xh字段为索引表达式的主索引xsxh和普通索引cjxh。以XS表为主表,CJ表为子表按xh建立永久关系,并根据以下要求设置参照完整性规则:当在XS表中删除记录时,若CJ表中有相应的记录(xh字段的值),则同时删除CJ表中相应记录。
练习12
打开软盘根目录中的项目文件TEST, 在该项目中已有一数据库SJK及若干表。
1. 按以下要求修改SJK数据库中TS表:
(1) 设置表的触发器:当册数(cs)不为0时,禁止删除。
(2) 添加一个字段,字段名为publisher,宽度以能存储“外语教学与研究出版社”为准,并为其设置默认值“出版社”。
(3) 设置isbn字段的标题属性,使该字段的字段名在浏览窗口中显示为“国际标准图书编号”。
(4) 创建一个普通索引abcd,要求以册数(cs)字段进行排序,相同时以价格(jg)字段排序。
(5) 设置rkrq字段的有效性规则,要求不超过当前系统日期。
2. 计算gz表中qt字段的值:qt=0
3. 修改项目TEST的项目信息:附加图标NET.ICO。
江苏省VFP2005秋2006春上机
4. XS表和CJ表已存在以xh字段为索引表达式的主索引xsxh和普通索引cjxh。以XS表为主表,CJ表为子表按xh建立永久关系,并根据以下要求设置参照完整性规则:当在XS表中修改和删除记录时,若CJ表中有相应的记录(xh字段的值),则同时修改和删除CJ表中相应记录。
练习13
打开软盘根目录中的项目文件TEST, 在该项目中已有一数据库SJK及若干表。
1. 按以下要求修改SJK数据库中JS表:
(1) 添加一个字段,字段名为zp,其类型应适用于存储教师的照片,并为其设置标题“照片”。
(2) 设置xdh字段和zcdh字段的有关属性,使这两个字段的值只能为数字字符。
(3) 设置xdh字段的有关属性,使得将该字段从表单的数据环境中拖放到表单上时,生成的相应控件为下拉组合框控件。
(4) 设置表的记录级有效性规则,要求gzrq比csrq大。
(5) 创建一个普通索引abcd,要求以xdh字段进行排序,相同时以zcdh字段排序。
2. 计算gz表中zfbt字段的值:zfbt=jbgz×10%
3. 利用项目管理器操作:将数据库表XIM改为自由表,并将其添加到项目中。
4. JS表和RK表已存在以gh字段为索引表达式的主索引jsgh和普通索引rkgh。以JS表为主表,RK表为子表按gh建立永久关系,并根据以下要求设置参照完整性规则:当在JS表中修改和删除记录时,若RK表中有相应的记录(gh字段的值),则同时修改和删除RK表中相应记录。
练习14
打开软盘根目录中的项目文件TEST, 在该项目中已有一数据库SJK及若干表。
1. 按以下要求修改SJK数据库中JS表:
(1) 添加一个逻辑型字段,字段名为hf,并为其设置默认值.F.、显示类“Checkbox”。
(2) 设置gzrq字段和csrq字段的标题属性:分别为“工作日期”和“出生日期”。
(3) 设置gzrq字段的有效性规则,要求gzrq小于当前系统日期。
(4) 创建一个普通索引abcd,要求以gzrq字段进行排序,相同时以csrq字段排序。
2. 计算gz表中qt字段的值:jbgz小于1000时为100,否则为200
3. 利用项目管理器操作:将XIM表改名为XIMB表,并为其设置编辑说明“系名表”。
4. JS表和RK表已存在以gh字段为索引表达式的主索引jsgh和普通索引rkgh。以JS表为主表,RK表为子表按gh建立永久关系,并根据以下要求设置参照完整性规则:当在JS表中修改和删除记录时,若RK表中有相应的记录(gh字段的值),则禁止对JS表进行修改和删除。
练习15
打开软盘根目录中的项目文件TEST, 在该项目中已有一数据库SJK及若干表。
1. 按以下要求修改SJK数据库中JS表:
(1) 添加一个能存储两个GB2312字符集中汉字的字段,字段名为degree,并为其
江苏省VFP2005秋2006春上机
设置标题“学位”、默认值“学士”、显示类 “Listbox”。
(2) 设置表的记录级有效性规则,要求gzrq与csrq的年份相差16以上(对已有数据不作验证)。
(3) 创建一个普通索引abcd,要求以xdh字段进行排序,相同时以gzrq字段排序。
2. 计算gz表中qt字段的值:jbgz小于1000时为100,否则为jbgz×10%后“园整”(四舍五入)到百位(例如149.5园整后为100、150.1园整后为200、250.1园整后为300等等,提示:用ROUND()函数)。
3. 利用项目管理器操作:将XIM表改名为XIMB表,并为其设置为“包含”状态。
4. JS表和RK表已存在以gh字段为索引表达式的主索引jsgh和普通索引rkgh。以JS表为主表,RK表为子表按gh建立永久关系,并根据以下要求设置参照完整性规则:当在JS表中修改记录时,若RK表中有相应的记录(gh字段的值),则同步对RK表进行修改;当在JS表中删除记录时,若RK表中有相应的记录(gh字段的值),则禁止对JS表进行删除。
练习16
打开软盘根目录中的项目文件TEST, 在该项目中已有一数据库SJK及若干表。
1. 按以下要求修改SJK数据库中JS表:
(1) 添加一个字段类型与宽度均与xm字段相同的字段,其字段名为xmtemp,并计算xmtemp字段的值:等于xm字段值中所有空格去除后的值。例如xm为“高 山”,则xmtemp为“高山”。
(2) 设置zcdh字段的有关属性,使其:只能输入数字字符、默认值为“00”、标题为“职称代号”。
(3) 设置表的触发器,要求:当工作未满一年的记录禁止删除(注:一年是指当前系统日期与gzrq之差为365)。
(4) 创建一个普通索引abcd,要求以xdh字段进行排序,相同时以gzrq字段排序。
2. 利用项目管理器操作:将TS表从项目中移去并删除之。
3. 将zy表复制为Excel文件zy.xls(注:打开zy表后,利用copy命令)。
4. JS表和RK表已存在以xh字段为索引表达式的主索引jsgh和普通索引rkgh。以JS表为主表,RK表为子表按gh建立永久关系,并根据以下要求设置参照完整性规则:当在JS表中修改记录时,若RK表中有相应的记录(gh字段的值),则禁止对JS表进行修改;当在JS表中删除记录时,若RK表中有相应的记录(gh字段的值),则同步删除RK表中相应的记录。
设计查询练习
在TEST项目中已经存在查询chaxun
江苏省VFP2005秋2006春上机
练习1
已知在SJK的教师(JS)表中含有系代号(xdh)、工号(gh)、姓名(xm)字段;任课(RK)表中含有工号(gh)、课程代号(kcdh)等字段。按如下要求修改查询: 基于JS表和RK表查询“陆友情”老师所在系的每位老师的任课门数,输出xdh、gh、xm、任课门数,查询结果按姓名排序。(提示:筛选条件中用到SQL语句select xdh from js where xm='陆友情'; 查询保存并关闭设计器后,将无法再次在设计器中打开,只能在编辑窗口中修改该查询的SELECT-SQL语句。)
练习2
已知在SJK的教师(JS)表中含有系代号(xdh)、工号(gh)、姓名(xm)字段;工资(GZ)表中含有工号(gh)、工资(jbgz)等字段。按如下要求修改查询:
基于JS表和GZ表查询各系男女教师人数、工资总金额、最高工资,要求输出字段包括:Js.xdh、Js.xb、人数、工资总金额、最高工资,结果以性别、系代号为排序依据。 练习3
为了检查课程(KC)表中是否有学生没有选的课程,可以基于KC表和成绩(CJ)表查询出在课程表中存在而在成绩表中不存在的那些课程记录。要求:输出课程表的所有字段和成绩表的课程代号(kcdh)字段,查询结果中相同的记录(行)只需出现一次,并按KC表的kcdh字段升序排序。(提示:使用“左联接”联接KC和CJ表,然后在结果中选出Cj.kcdh字段为Null值的记录)
练习4
已知图书(TS)表中含有分类号(flh)、入库日期(rkrq)、价格(jg)和册数(cs)等字段。在TEST项目中已存在查询chaxun,按如下要求修改查询:
基于图书(TS)表统计各大类图书上半年和下半年入库的馆藏册数、金额。要求输出字段为:大类、入库时间、馆藏册数、金额,查询结果首先按大类降序排序,同一大类中再按入库时间排序。注:
分类号(flh)的第一个字符表示大类;
如果入库月份在1至6月,则入库时间为“上半年”,否则入库时间为“下半年”; 金额为jg×cs。
练习5
已知教师(JS)表中含有工号(gh)、姓名(xm)等字段;工资(GZ)表中包含有工号(gh)、应发工资(yfgz)等字段。按如下要求修改查询:
基于JS表和GZ表统计每位教师应交的所得税。要求输出的字段为:gh、xm、所得税,输出结果按所得税降序排序且仅输出前6位教师的信息。
注:所得税是根据应发工资(yfgz) 进行计算,其算法是:1000元以下(含1000元)则无所得税;超过1000元且小于或等于2000时,超过1000元部分按5%计算;超过2000元时,1000至2000部分按5%计算,超过2000的部分按10%。例如,应发工资为2600,则所得税为1000×5%+(2600-2000)×10%。(提示:无所得税时,用0000.00表示)
练习6
已知学生(XS)表中含学号(xh)、姓名(xm)、性别(xb)、班级编号(bjbh)等
江苏省VFP2005秋2006春上机
字段;成绩(CJ)表中含有学号(xh)、课程代号(kcdh)、成绩(cj) 等字段。按如下要求修改查询:
基于XS表和CJ表查询“03”年级优秀生的信息,要求输出的字段为:学生的xh、xm、平均分、最低分、优秀生(若为优秀生则该字段的值为“是”,否则为“否”),输出结果按是否优秀生的降序排序(“是”排在前),相同时再按平均分的降序排序。 注:xh字段的前两位表示年级;优秀生的条件是各门课的平均分不低于80且每门课的成绩不低于70。
练习7
已知教师(JS)表中包含有工号(gh)、姓名(xm)等字段;任课视图(RKST)中包含有工号(gh)、各教师任课的课程名(kcm)、课时数(kss)等信息。按如下要求修改查询:
基于JS表和RKST视图查询各教师的教学工作量(总课时数)。要求输出的字段为gh、xm、总课时数、奖金,查询的结果按奖金的降序排序。注:
奖金的计算方法为:教师的标准工作量为10课时,每超1个课时的奖金为100元,未超标准工作量的教师无奖金;
无奖金时,奖金用0000.00表示。
练习8
数据库SJK的学生(XS)表中包含学号(xh)、姓名(xm)、性别(xb)、班级编号(bjbh)等字段;成绩(CJ)表中包含有学号(xh)、课程代号(kcdh)、成绩(cj)等字段。按如下要求修改查询:
基于XS表和CJ表查询所有获奖学金的同学名单及奖学金的等级。要求输出的字段为xh、xm、选课门数、奖学金等级(A或B),输出的结果按奖学金等级排序,相同时再按学号升序排序。
注:奖学金等级分为A和B两个等级,A等奖学金的条件是各课程的平均分不低于85,B等奖学金是各课程的平均分不低于80,并且要求获A、B等奖学金获得者应各课程均无不及格记录(小于60)、选课门数不少于5。
练习9
在TEST项目中已经存在查询chaxun,已知在sjk的学生(xs)表中含有系代号(xdh)、学号(xh)、姓名(xm)字段;成绩(cj)表中含有学号(xh)、课程代号(kcdh)、成绩(cj)字段。按如下要求修改查询:
基于xs表和cj表查询“刘玉敏”同学所在系的每位同学平均成绩,输出xdh、xh、xm、平均成绩,查询结果按姓名排序。(提示:筛选条件中使用SELECT xs.xdh FROM xs WHERE xm= 刘玉敏 )
练习10
在TEST项目中已经存在查询chaxun,且在sjk中包含一个名为xsjy的视图,视图中包括学生学号(xh)、借阅日期(jyrq)、还书日期(hsrq)),在sjk的学生(xs)表中含有学号( xh)、姓名(xm)、所在班级编号(bjbh)。按如下要求修改查询:
基于xs表和xsjy视图查询每个班每个学生借书本数、过期罚款数。要求输出字段为:Xs.bjbh,Xs.xh, Xs.xm,借书本数、罚款数。查询结果按bjbh排序,bjbh相同的,按Xs.xh排序。(注:罚款数以每本书借阅超过30 天者,超过部分按每天 0.05
江苏省VFP2005秋2006春上机
元计算)
练习11
在TEST项目中已经存在查询chaxun,且在sjk中包含一个名为jsjy的视图,视图中包括工号(gh)、借阅日期(jyrq)、还书日期(hsrq)),在sjk的教师(js)表中含有工号( gh)、姓名(xm)、系代号(xdh)。按如下要求修改查询:
基于js表和jsjy视图查询每个系每个教师借书本数、过期罚款数。要求输出字段为:Js.xdh,Js.gh, Js.xm,借书本数、罚款数。查询结果按xdhh排序,xdh相同的,按Js.gh排序。(注:罚款数以每本书借阅超过60 天者,超过部分按每天 0.05 元计算)
练习12
在TEST项目中已经存在查询chaxun,已知在sjk的课程(kc)表中含有课程代号(kcdh)、课程名(kcm)字段,成绩(cj)表中含学生学号(xh)、课程代号(kcdh)和成绩(cj)字段。按如下要求修改查询:
基于kc表和cj表查询每门课程选课人数、成绩优秀人数和成绩不及格人数。输出字段包括:Kc.kcdh、 Kc.kcm、选课人数、优秀人数、不及格人数。输出结果按选课人数降序排序。(注:成绩大于等于90为优秀,小于60为不及格)
练习13
在TEST项目中已经存在查询chaxun,已知在sjk的图书(TS)表中含有分类号(flh)、书名(sm)字段,借阅(JY)表中含分类号(flh)、借阅日期(jyrq)和还书日期(hsrq)字段。按如下要求修改查询:
基于TS表和JY表查询每本书的被借阅次数、借出总天数。输出字段包括:Ts.flh、 Ts.sm、借阅次数、借出总天数。借出总天数为 . NULL.者不输出。
练习14
在TEST项目中已经存在查询chaxun,已知在sjk的图书(TS)表中含有分类号(flh)、书名(sm)字段,借阅(JY)表中含分类号(flh)、借阅日期(jyrqh)和还书日期(hsrqj)字段。按如下要求修改查询:
基于TS表和JY表查询每大类图书的被借阅次数、平均借出天数。输出字段包括:大类、借阅次数、平均借出天数。输出结果按平均借出天数降序排序。(注:分类号(flh)的第一个字符为大类值)
练习15
在TEST项目中已经存在查询chaxun,已知在sjk的学生(xs)表中含有学号(xh)、姓名(xm)字段,成绩(cj)表中含有学号(xh)、课程代号(kcdh)和成绩(cj)字段。按如下要求修改查询:
基于xs表和cj表查询每个学生考试成绩及按学分制表示的成绩。输出字段包括:xh、xm、kcdh、cj、学分制成绩。查询结果按xh升序排序。(注:学分制表示的成绩规定是: 百分制 85~100分 对应 学分制 A;百分制 60~84分 对应 学分制 B;百分制 60以下 对应 学分制 F)
练习16
在TEST项目中已经存在查询chaxun,已知在sjk的学生(XS)表中含有系代号
江苏省VFP2005秋2006春上机
(xdh)、学号(xh)、性别(xb)字段;成绩(CJ)表中含有学号(xh)、课程代号(kcdh)、成绩(cj)字段;课程(KC)表中含有课程代号(kcdh)、是否必修课(bxk,逻辑型)字段。按如下要求修改查询:
基于xs表、cj表和kc表分别统计各系男女生的必修及选修课平均成绩,输出字段包括xdh、xb、课程性质、平均成绩,结果按系代号升序排序。其中,课程性质指是必修课还是选修课,输出结果显示为“必修课”或“选修课”。
设计菜单练习
练习1
已知项目TEST中已存在菜单menu,利用菜单
设计器,按如下要求修改菜单。
1. 按图所示要求为“表操作”菜单栏下的“添加
记录”菜单项增加子菜单(含分组线及快捷键
的设置);
2. 为“数据浏览”菜单中的“教师”菜单项设置
SQL命令,功能为浏览JS表数据;
3. 在“文件”菜单栏下插入系统菜单项“退出”。
练习2
已知项目TEST中已存在菜单menu,利用菜单
设计器,按如下要求修改菜单。
1. 按图1所示在“表操作”菜单栏右边添加一个
“职工工资管理” 菜单栏及其子菜单;
(注:“打印”菜单为系统菜单项)
2. 为“职工工资管理”菜单栏下的“工资调整”菜单编写UPDATE-SQL命令,当执行该菜单时,将工资(GZ)表中所有基本工资(jbgz)低于1000元的记录都调整到1000元;
练习3
已知项目TEST中已存在菜单menu,利用菜单设计
器,按如下要求修改菜单。
1. 删除“表操作”菜单栏下的“数据查询”菜单的
子菜单项之间的分组线(注:两条);
2. 按图1所示要求为“表操作”菜单栏下的“添加
记录”菜单增加一个子菜单; 图1
3. 为“从文件”菜单项添加过程代码。该过程代码是在如下代码的基础上添加一条语句,实现将TS1.DBF 中的记录添加到TS中:
IF USED(“TS”)
SELECT ts
ELSE
江苏省VFP2005秋2006春上机
USE ts
ENDIF
练习4
已知项目TEST中已存在菜单menu,利用菜单设计器,按如
下要求修改菜单。
1. 按图1所示要求在“文件”菜单栏下插入一个“退出VFP系统”
菜单项,并编写命令,当执行该菜单时能退出(关闭)VFP系统; 图1
2. 在“文件”菜单栏下插入系统菜单项“新建”和“打开”;
3. 为“表操作”菜单栏下的“数据查询”菜单的“教师”子菜单项
设置SQL命令:当执行该“教师”菜单时,在浏览窗口显示教师(JS)表中
各个系男女教师人数,显示字段包括xdh、xb和人数。
练习5
已知项目TEST中已存在菜单menu,利用菜单设计器,
按如下要求修改菜单:
1. 按图1所示,在“表操作”菜单栏下增加一个“删
除”菜单项及其子菜单(其中,“打开”菜单为系统菜
单栏);
2. 为“删除记录”菜单设置访问键,并为该菜单编写图
1 过程代码:选择学生(XS)表为当前表(若该表未打
开,则先打开之),然后删除学号(xh)以“00”开头的记录。
练习6
已知项目TEST中已存在菜单menu,利用菜单设计器,
下要求修改菜单:
1. 按图1所示,在“表操作”菜单栏下添加一个“创
新表”菜单,并为“创建新表”菜单编写CREATE – SQL
令,当执行该菜单项时,创建 xx表,其结构为:aa(C,
8)、bb(N, 4)、cc(D)。
2. 将下列代码加到菜单的适当位置,使菜单运行结束时执行之:
CLOSE ALL
图
1 练习7
已知项目TEST中已存在菜单menu,利用菜单设计
器,按如下要求修改菜单。
1. 在“文件”菜单栏下插入系统菜单“退出”,并将
该菜单设置为禁用(跳过);
2. 按图1所示,将“表操作”菜单栏下的“数据浏览”
菜单的菜单名修改为“表复制”,其子菜单不变;
图1
3. 为“表复制”菜单栏下的“教师”菜单编写
按如建命
江苏省VFP2005秋2006春上机
SELECT-SQL命令:当执行该菜单时,将JS表(含记录)复制到JSC表。
提示:命令中使用INTO TABLE子句。
练习8
已知项目TEST中已存在菜单menu,利用菜单设计器,按如下要求修改菜单。
1. 在“文件”菜单栏下插入系统菜单项“导入”和
“导出”;
2. 如图1所示,在“表操作”菜单栏后增加一个“数据维护”菜单
项及其子菜单(含分组线),并为其中的
“课程”菜单编写过程代码:当执行该菜单
图1 时,选择KC
表为当前表(若
KC
表未打开,则需要打开该表),然后浏览该表。
练习9
已知项目TEST中已存在菜单menu,利用菜单设计器,按如下要求修改菜单。
1. 按图1所示要求为“表操作”菜单栏下的“添加记录”菜单项增加一个子菜单,为“表操作”菜单栏下的各子菜单项设置分隔线;
2. 在“文件”菜单栏下插入VFP系统菜单项
“退出”;
3.为“数据查询”菜单栏下的“课程”菜单项编写SQL命令,当执行该菜单时,在
浏览窗口显示课程代号、课程名及成绩信息(注:根据KC表与CJ表查询)。
图1 练习10
已知项目TEST中已存在菜单menu,利用菜单设计器,按如下要求修改菜单。
1. 图1所示要求为“表操作”菜单栏下各子菜单项设置分隔线;
2. 在“文件”菜单栏下插入一个“退出”菜单
项,并编写命令,当执行该菜单时能关闭
VFP系统;
3. 为“数据浏览”菜单栏下的“学生”菜单项编写过程代码,当执行该菜单项时,
图1 运行以下命令:
SELCT XS
BROW
练习11
已知项目TEST中已存在菜单menu,利用菜单设计器,按如下要求修改菜单。
1. 按图1所示要求为“表操作”菜单栏下的“添
加记录”菜单项增加一个子菜单(含分组
线);
2. 在“文件”菜单栏下插入VFP系统菜单项
“另存为”;
3. 为“添加记录”菜单栏下的“课程”菜单项添加过程代码,当执行该菜单项时,
江苏省VFP2005秋2006春上机
选择课程表(KC)为当前使用表(若该表未打开,则首先打开之),并在课程表中添加一条空记录。
练习12
已知项目TEST中已存在菜单menu,利用菜单设计器,按如下要求修改菜单。
1. 按图1所示要求为“表操作”菜单栏前增加一
个“编辑”菜单栏及其子菜单,并为 “教师”
菜单设置访问键;
为“编辑”菜单栏下的“学生”菜单项添加过程代码:当执行该菜单时,选择学生表(XS)为当前使用表(若该表未打开,则首先打开之),并逻辑删除学生表中xh 前二位为“00”的记录。
练习13
已知项目TEST中已存在菜单menu,利用菜单设计器,按如下要求修改菜单。
1. 按图1所示要求为“表操作”菜单栏前增加一个“编辑”菜单栏及它的子菜单;
2. 为“编辑”菜单栏下的“学生”菜单项设置访问键;
3. 为“编辑”菜单栏下的“学生”菜单项添加过程代码,当执行该菜单项时,选择学生表为当前使用表,并将学生表中jg 为“江苏南京”记录全部修改为“江苏省南京”。
练习14
已知项目TEST中已存在菜单menu,利用菜单设计器,按如下要求修改菜单。
1. 为“文件”菜单栏下的“恢复系统菜单”菜单项设置快捷键“CTRL+R”。
2. 在“文件”菜单栏下插入系统菜单“关闭”。
3.
将下列代码加到菜单的适当位置,使得菜单执行时先执行该段代码。
IF USED(
“gzb”
) 图1 SELECT gzb
ELSE
USE gzb
ENDIF
4. 为“数据查询”菜单栏下的“课程”菜单项设置SQL命令:当执行该菜单项时,在浏览窗口显示课程(KC)表中每门课程的平均成绩,显示字段包括课程名、平均成绩。
练习15
已知项目TEST中已存在菜单menu,利用菜单设计器,按如下要求修改菜单。
1. 按图1所示要求为“表操作”菜单栏下的“添加记录”菜单项增加一个子菜单;
江苏省VFP2005秋2006春上机
2. 为“表操作”菜单栏下的各子菜单项设置分组线;
3. 将下列代码加到菜单的适当位置,使得菜单执行时先执行该段代码:
IF USED("gzb")
SELECT gzb
ELSE
USE gzb
ENDIF
4.为“数据查询”菜单栏下的“教师”菜单项设置SQL命令:当执行该菜单项时,在浏览窗口显示工资(GZ)表中各个部门的平均基本工资,显示字段包括部门、平均工资(注:GH的第一个字符为部门)。 图1
练习16
已知项目TEST中已存在菜单menu,利用菜单设计器,按如下要求修改菜单。
1. 按图1所示为“表操作”菜单栏下添加一个
“统计分析” 菜单项及其子菜单;
2. 已知在A盘根目录下存在成绩(CJ)表,为“优秀人次”菜单项编制命令,统计各门科优秀
的人次,要求当执行该菜单时在浏览窗口显示课程代号(kcdh)
、优秀人次(注:图1 成绩(cj)大于等于
90分为优秀);
4. 将“添加记录”菜单项废止。
设计表单练习(练习1~~练习8为2006年春上机;练习9~~练习16为2005年秋上机) 练习1
项目管理器中已经存在表单FH,该表单用来完成100以内加法运算的自动出题与测试。根据下列要求修改表单,完成以后运行表单,效果如图2所示。
1. 设置表单的有关属性,使表单边框为“固定对话框”、运行时总是在其他表单前面;
2. 设置文本框的边框样式为“无边框”,字体样式为带下划线; 图2
3. 在“答对题数”标签后再添加一个标签lblRight,并设置其显示文本(标题)为“0”;
4. 完善“出题”按钮的Click事件代码,使得单击该按钮后,文本框控件获得焦点(注:在原代码后添加一条语句);
5. 完善文本框控件的LostFocus事件代码,完成的功能是:如果“被加数”和“加数”两个标签控件(lblBjs和lblJs)的标题显示数字之和与该文本框的值相等,则让新添加的标签lblRight的标题显示数字加1(注:在原代码的空白处添加一条语句)。
练习2
江苏省VFP2005秋2006春上机
项目管理器中已经存在表单FG,该表单用来在学生记录中随机抽取3名获奖者。表单利用计时器控件控制抽奖的开始和结束,利用新建的Count属性计数,利用命令按钮控制3次抽奖过程。
表单运行时,命令按钮显示“抽第1个人”。单击按钮开始抽奖,此时按钮上滚动显示计时事件所定位的学生记录的学号和姓名,当再次点击按钮时,停止计时器,并将最后定位记录的学号和姓名添加到按钮下方的列表框中,表单的Count属性值加1,命令按钮显示为“抽第2个人”,依此重复三次,便得到结果。运行效果如图2所示。按如下要求修改表单:
1. 设置计时器控件Timer1的初始状态为禁用,并指定调用计时器事件的间隔为100毫秒;
2. 为表单添加一个新属性,属性名为“Count”,并将该属性的初值设为1;
3. 在表单中添加一个列表框控件List1,并设置其字号大小与宽度与命令按钮相同;
4. 编写命令按钮的初始化事件代码(注:要求仅用一条语句),其功能是根据表单的Count属性值显示按钮的标题为抽第几个人,例如当表单的Count属性值为2时,按钮的标题为“抽第2个人”;
5. 完善按钮的Click事件代码,将按钮上的标题文本添加到列表框中(注:要求在原代码的空白行处添加一条语句)。
图
2
练习3
项目管理器中已经存在表单FI,该表单用来完成100以内加法的自动出题和测试。根据下列要求修改表单,完成以后运行表单,效果如图所示。
1. 设定表单的有关属性,使边框为“单线边框”、表单类型为模式表单;
2. 设置文本框Text3的文本对齐方式为“中间”,字体样式为带下划线;
3. 在“答对题数”标签后,添加一个文本框控件Text5(用来显示答对题数),并将其设为禁用、初值为0;
4. 已为表单创建了ChuTi方法且已为该方法编写了代码,设置表单的初始化事件代码,要求调用该方法;
5. 完善Text3文本框控件的LostFocus事件代码(要求在IF ENDIF之间添加2条语句),其功能是:如果“被加数”文本框Text1和“加数”文本框Text2的值之和与该文本框的值相等,则让新添加的文本框控件Text5的值加1,并将自身的值清空(即设置为空字符串)。
江苏省VFP2005秋2006春上机
按下列要求修改项目中的表单文件FJ,该表单用来按专业、班级浏览学生。完成修改以后运行表单,屏幕显示如图2所示。
1. 在表单的数据环境中添加学生(XS)表,并在班级(BJ)表与XS表之间以BJ为主表按bjbh(班级编号)字段建立临时关联(在数据环境中通过字段名的拖放操作建立临时关系);
2. 将表格控件grdBj设置为无记录选择器列,并设置为无表格线;
3. 添加表格控件grdXs,指定其记录源类型为“别名”,记录源为“XS”。
4. 完善表格控件grdBj的AfterRowColChange事件代码(要求仅修改原事件代码中的最后一条语句),其功能是:让表单中Label2标签显示当前选定专业的名称、选定班级的编号及人数(如图2所示)。例如,选定的专业为“船舶海洋工程”,选定的班为“000401011”,则Label2标签应显示“船舶海洋工程专业000401011班(15人)”。
5. 编写组合框控件cboZy的InterActiveChange事件代码,要求当选定一个专业后,让焦点设置到grdBj表格上。
练习5
项目中的表单FK用来测试打字速度。根据下列要求修改表单,完成以后运行表单,效果如图2所示。
1. 设置标签控件Label2的有关属性,使该控件运行时自动调整大小;
2. 将“开始输入”命令按钮设置为表单中按回车键时默认响应的按钮;
3. 根据图2所示修改表单的标题,并设置表单在运行时自动居中;
4. 在表单中添加“生成文本”命令按钮,并将控件名设置为cmdReset;
5. 为“生成文本”命令按钮编写Click事件代码:调用表单的Init方法;
6. 完善“开始输入”命令按钮的Click事件代码,增加下列功能:让文本框控件Text1获得焦点、将表单的BeginTime属性值设置为当前的系统日期时间(注:BeginTime属性为表单的新建属性)。
江苏省VFP2005秋2006春上机
项目管理器中已经存在表单FL,该表单用来测试打字速度。根据下列要求修改表单,完成以后运行表单,效果如图2所示。
1。设置标签控件Label2的有关属性,使该控件在运行时能自动调整大小;
2.将“开始输入”命令按钮设置为表单中按回车键时默认响应的按钮;
3.根据图所示设置表单的标题,并设置表单在运行时自动居中;
4.在表单中添加一计时器(控件名为Timer1),并设置其为废止状态、时间间隔为1秒;
5.完善“开始输入”命令按钮的Click事件代码,增加下列功能:将表单的BeginTime属性值设置为当前的系统日期时间(注:BeginTime属性为表单的新建属性),将添加的计时器控件Timer1设置为启用;
6. 为Timer1控件的Timer事件编写代码,要求使用一条语句实现:根据当前时间和表单的BeginTime属性值计算所用的时间(单位为秒),并将其填入txtTime文本框中。
图2
练习7
TEST项目中已存在表单FormA,其功能是显示当前目录中的“表”文件名及所选中的表的数据(即用鼠标单击“列表框”内的文件名,则将在右边的表格内显示所选择表的内容),并使表格上方的标签显示该表的名称。表单运行时,其效果如图2所示。
1. 修改表单的有关属性,使得标题为“显示表及数据”,边框样式为“固定对话框”;
2. 如图2所示,为表单添加“关闭”命令按钮,并编写Click事件代码使其能够关闭表单;
3. 完善列表框的Init事件代码,要求添加一条语句,用于设置列表框的、与RowSource属性值相适应的RowSourceType属性值;
4. 编写列表框的Click事件代码(仅用3条语句),使得单击列表框中的数据项(表文件名)时:
控件label2显示如图2所示的内容(即在列表框中所选择的表文件名加上“表的数据”);
表格控件显示所选择的表的内容(提示:设置表格控件的RecordSourceType及RecordSource属性)。
正在阅读:
江苏省VFP2005秋2006春上机07-26
2017年江苏省镇江市中考语文真题及答案03-16
初中体育_跨越式跳高教学设计学情分析教材分析课后反思09-05
夏季促销活动08-31
营销策划:休闲食品突破瓶颈的五大路径06-29
国际贸易答案03-01
最新智能小区管理方案01-06
天然饵料生物对鱼类生长的影响07-25
- 教学能力大赛决赛获奖-教学实施报告-(完整图文版)
- 互联网+数据中心行业分析报告
- 2017上海杨浦区高三一模数学试题及答案
- 招商部差旅接待管理制度(4-25)
- 学生游玩安全注意事项
- 学生信息管理系统(文档模板供参考)
- 叉车门架有限元分析及系统设计
- 2014帮助残疾人志愿者服务情况记录
- 叶绿体中色素的提取和分离实验
- 中国食物成分表2020年最新权威完整改进版
- 推动国土资源领域生态文明建设
- 给水管道冲洗和消毒记录
- 计算机软件专业自我评价
- 高中数学必修1-5知识点归纳
- 2018-2022年中国第五代移动通信技术(5G)产业深度分析及发展前景研究报告发展趋势(目录)
- 生产车间巡查制度
- 2018版中国光热发电行业深度研究报告目录
- (通用)2019年中考数学总复习 第一章 第四节 数的开方与二次根式课件
- 2017_2018学年高中语文第二单元第4课说数课件粤教版
- 上市新药Lumateperone(卢美哌隆)合成检索总结报告
- 江苏省
- 上机
- VFP2005
- 2006
- 现场设备、工业管道焊接工程施工及验收规
- 广东省揭阳一中等2014届高三上学期开学摸底联考历史试题
- 过程设备制造与检测课程设计指导书第五章
- 浅谈中考英语的复习技巧
- 公文写作知识大全
- 东北大学研究生申请要求及专业解读
- 审计学案例分析题
- 人教版初中生物七年级上册青春期
- 隧道施工安全操作规程
- 幼儿园大班9月户外教学活动计划
- 美国国会图书馆分类法分类表R
- 概率初步全章导学案
- 【商业地产】购物中心(综合体)之品牌调整
- 生活实践教学在高中物理课堂中的应用研究
- 重症颅脑损伤患者行气管切开术后护理
- 北京新东方烹饪学校,好技术好工作的殿堂
- 证明范文精选:工资收入证明范本
- 2015年译林版6A Unit4 Then and now教案表格式8课时
- 工序作业指导书123
- 中草药防治鸡传染病研究进展