VF新题.docx

上传人:b****2 文档编号:23092672 上传时间:2023-04-30 格式:DOCX 页数:15 大小:70.28KB
下载 相关 举报
VF新题.docx_第1页
第1页 / 共15页
VF新题.docx_第2页
第2页 / 共15页
VF新题.docx_第3页
第3页 / 共15页
VF新题.docx_第4页
第4页 / 共15页
VF新题.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

VF新题.docx

《VF新题.docx》由会员分享,可在线阅读,更多相关《VF新题.docx(15页珍藏版)》请在冰豆网上搜索。

VF新题.docx

VF新题

新题一:

一、基本操作(共四小题,第1和第2题是7分、第3和第4题是8分)

在考生文件夹下完成如下操作:

1.新建一个名为sdb的数据库文件,然后将client表添加到数据库中。

2.使用SQLUPDATE语句将client表中客户号为"061009"的客户的性别改为"男"。

然后将该语句保存在命令文件sone.prg中。

3.使用SQLINSERT语句在client表中添加一条记录,其中客户号为"071009"、客户名为"杨晓静"、性别为"女"、出生日期1991年1月1日。

然后将该语句保存在命令文件stwo.prg中。

(注意:

只能插入一条记录)

4.使用SQLALTER语句为client表的"性别"字段设置有效性规则:

性别必须为男或女。

然后将该语句保存在命令文件sthree.prg中。

二、简单应用(2小题,每题20分,计40分)

1.利用查询设计器创建查询,从customers、orders、orderitems和goods表中查询所有客户号前两个字符为"06"的客户签订的订单信息。

查询结果依次包含客户号、订单号、商品号、商品名和数量五项内容。

各记录按客户号升序排序、客户号相同按订单号升序排序、订单号也相同则按商品号升序排序。

查询去向为表tableone。

最后将查询保存在queryone.qpr文件中,并运行该查询。

2.扩展VisualFoxPro基类CommandButton,创建一个名为MyButton的自定义按钮类。

自定义按钮类保存在名为myclasslib的类库中。

自定义按钮类MyButton需满足以下要求:

1)其标题为"退出"。

2)其Click事件代码的功能是关闭并释放所在表单。

然后创建一个文件名为formone的表单,并在表单上添加一个基于自定义类MyButton的按钮。

三、综合应用(1小题,计30分)

在考生文件夹下已有一个菜单文件mymenu.mnx,运行相应的菜单程序时会在当前VFP系统菜单的末尾追加一个"考试"子菜单,

如下图所示。

在考生文件夹下还有一个表单文件myform.scx,表单中包含一个标签、一个文本框和两个命令按钮,如下图所示。

现在请按要求实现菜单项和命令按钮的相关功能。

菜单命令"统计"和"退出"的功能都通过执行过程完成。

菜单命令"统计"的功能是运行myform表单。

菜单命令"退出"的功能是恢复标准的系统菜单。

单击命令按钮"确定"要完成的功能是:

从customer、orders、orderitems和goods表中查询金额大于等于用户在文本框中指定的金额的订单信息。

查询结果依次包含订单号、客户号、签订日期、金额等四项内容,其中金额为该订单所签所有商品的金额之和。

各记录按金额降序排序,金额相同按订单号升序排序。

查询去向为表tabletwo。

单击命令按钮"关闭"要完成的功能是:

关闭并释放所在表单。

最后,请运行菜单程序、打开表单,然后在文本框中输入1000、并单击"确定"按钮完成查询统计。

新题一参考答案

基本操作题:

1、创建数据库可以使用"文件"菜单完成,选择文件--新建--数据库--新建文件,在数据库设计器中添加client表。

2、在VF命令窗口中执行updateclientset性别="男"where客户号="061009",然后将此命令保存在sone.prg文件中。

3、在VF命令窗口中执行insertintoclientvalues("071009","杨晓静","女",{^1991-1-1}),然后将此命令保存在stwo.prg文件中。

4、在VF命令窗口中执行:

altertableclientalter性别setcheck性别="男"or性别="女",然后将此命令保存在sthree.prg文件中。

简单应用题:

第1题:

建立查询可以使用"文件"菜单完成,选择文件--新建--查询--新建文件,将customers、orders、orderitems和goods表添加到查询中,从字段选项卡中依次选择"customers.客户号"、"Orders.订单号"、"orderitems.商品号"、"goods.商品名"和"orderitems.数量";切换到"筛选"选项卡,在"字段名"的"表达式"中输入:

"LEFT(Customers.客户号,2)","条件"选择"=","实例"中输入:

"06";切换到"排序依据"选项卡并在其中选择字段"customers.客户号",排序选项为"升序",再选择"Orders.订单号",排序选项为"升序",再选择"orderitems.商品号",排序选项为"升序";单击查询菜单下的"查询去向",选择表,在"表名"右边的对话框中输入表名tableone,最后保存并运行该查询。

第2题:

建立类可以使用"文件"菜单完成,选择文件--新建--类--新建文件,在弹出的"新建类"对话框中:

在"类名"右边的文本框中输入:

MyButton,在"派生于"右边的列表框中选择CommandButton,在"存储于"右边的浏览中选择考生文件夹,再输入文件名myclasslib,单击"确定"按钮,打开"类设计器"窗口,进入类设计器环境。

在属性窗口中,将按钮类MyButton的Caption属性设置为"退出",设置"退出"按钮的Click事件代码:

thisform.release。

选择文件--新建--表单--新建文件,弹出"表单设计器"窗口。

在表单控件工具栏中点击“查看类”按按钮,添加在打开的对话框中,选择考生目录下的类库文件myclasslib.vcx,单击"打开"按钮,将类库文件myclasslib.vcx添加到可视类库中,然后在表单中添加一个MyButton的控件,保存表单。

综合应用题:

1、打开菜单文件mymenu.mnx,在"统计"菜单的"过程"中输入:

doformmyform,在"退出"菜单的"过程"中输入:

setsysmenutodefault。

最后保存菜单mymenu.mnx,并生成菜单程序mymenu.mpr。

2、打开表单文件myform.scx,设置"确定"按钮的Click事件代码:

x=val(thisform.Text1.text)

SELECTOrderitems.订单号,Customers.客户号,Orders.签订日期,;

sum(Orderitems.数量*Goods.单价)as金额;

FROMcustomersINNERJOINorders;

INNERJOINorderitems;

INNERJOINgoods;

ONOrderitems.商品号=Goods.商品号;

ONOrders.订单号=Orderitems.订单号;

ONCustomers.客户号=Orders.客户号;

HAVING金额>=x;

GROUPBYOrders.订单号;

ORDERBY4DESC,Orderitems.订单号;

INTOTABLEtabletwo.dbf

设置"关闭"按钮的Click事件代码:

thisform.release

最后保存表单。

3、运行菜单程序、打开表单,然后在文本框中输入1000、并单击"确定"按钮完成查询统计。

新题二:

一、基本操作题(共四小题,第1和第2题是7分,第3和第4题是8分)

在考生文件夹下完成下列操作:

1.新建一个数据库mydatabase,在库中建立数据库表temp,表内容和结构与当前文件夹下的"歌手信息"表完全相同。

2.建立快捷菜单mymenu,快捷菜单有两条命令:

"打开文件"和"关闭文件"。

注意要生成菜单程序文件。

3.使用报表向导建立一个报表,报表的数据来源分别是"打分表"(父表)和"歌手信息"(子表)两个数据库文件,选取这两个表的全部字段,连接字段为"歌手编号",按"分数"升序排列,报表的标题为"打分一览表",最后将报表保存为"打分表"。

4.使用SQL命令将表temp中歌手编号为111的歌手的年龄修改为20岁,命令存储在mypro.prg中。

二、简单应用(2小题,每题20分,计40分)

在考生文件夹下完成下列操作:

1.修改程序proone.prg中带有注释的四条语句(修改或填充,不要修改其他的语句),使之能够正常运行,程序的功能是将大于等于11并且小于等于2011的素数存储于表prime中。

修改完成后请运行该程序。

2.编写SQL命令查询歌手平均分大于8.2的歌手的姓名、歌手编号和平均分,查询结果存储于result.dbf中(字段名依次为姓名、歌手编号和平均分),结果按歌手的平均分降序排列。

SQL命令要保存在ttt.prg文件中。

三、综合应用(1小题,计30分)

在考生文件夹下完成下列操作:

1.打开数据库文件mydatabase,为表temp建立主索引:

索引名和索引表达式均为"歌手编号"。

2.利用表temp建立一个视图myview,视图中的数据满足以下条件:

年龄大于等于28岁并且按年龄升序排列。

3.建立一个名为staff的新类,新类的父类是CheckBox,新类存储于名为myclasslib的类库中。

4.数据库"比赛情况"中有3个数据库表:

打分表、歌手信息和选送单位。

建立包括4个标签、一个列表框(List1)和3个文本框的表单myform,其中Label1、Label2、Label3、Label4的标题依次为选送单位、最高分、最低分和平均分;文本框Text1、Text2、Text3依次用于显示最高分、最低分和平均分,如下图所示。

5.列表框(List1)的RowSource和RowSourceType属性手工指定为"选送单位.单位名称"和6。

6.为列表框(List1)的DblClick事件编写程序。

程序的功能是:

表单运行时,用户双击列表框中选项时,将该选送单位的"单位名称"、"最高分"、"最低分"和"平均分"四个字段的信息存入自由表two.dbf中(字段名依次为单位名称、最高分、最低分和平均分),同时将统计数据显示在界面相应的文本框中。

7.最后运行表单,并在列表框中双击"空政文工团"。

新题二参考答案

基本操作题:

1、创建数据库可以使用"文件"菜单完成,选择文件--新建--数据库--新建文件,然后在命令窗口中输入:

use歌手信息

copytotemp

2、在"文件"菜单中选择"新建",在"新建"对话框中选择"菜单",单击"新建文件"按钮,选择"快捷菜单",在菜单设计器中输入两个菜单项"打开文件"和"关闭文件",单击"菜单"菜单中的"生成",按提示保存为mymenu,并生成菜单源程序文件(MPR)。

3、启动报表向导可在"文件"菜单中选择"新建"或者单击工具栏上的"新建"按钮,打开"新建"对话框,文件类型选择报表,单击向导按钮,在"向导选取"对话框中选择"一对多报表向导",然后按照报表向导操作即可。

4、SQL命令为:

updatetempset年龄=20where歌手编号=111,然后将此命令保存在mypro.prg文件中。

简单应用题:

1、打开proone.prg程序,根据题目要求修改程序中的错误语句:

第1个注释那修改为:

createtableprime(datf)

第2个注释那填充:

loop

第3个注释那填充:

exit

第4个注释那修改为:

insertintoprimevalues(n)

2、SQL命令为:

select姓名,歌手信息.歌手编号,avg(分数)as平均分;

from歌手信息,打分表where歌手信息.歌手编号=打分表.歌手编号;

groupby打分表.歌手编号having平均分>=8.2;

orderby3descintotableresult.dbf

然后将此命令保存在ttt.prg文件中。

综合应用题:

1、打开temp表的表设计器,打开"索引"选项卡,在索引名处输入:

歌手编号,类型选择"主索引",表达式为:

歌手编号。

2、通过createVIEW命令打开视图设计器,在"添加表或视图"对话框中添加temp表;在"字段"选项卡中选择所有字段;在"筛选"选项卡中,"字段名"选择"Temp.年龄","条件"选择">=",实例中输入"28";在"排序依据"选项卡中选择"Temp.年龄","排序选项"选择"升序",保存视图为"myview"。

3、建立类可以使用"文件"菜单完成,选择文件--新建--类--新建文件,在弹出的"新建类"对话框中:

在"类名"右边的文本框中输入:

staff,在"派生于"右边的列表框中选择CheckBox,在"存储于"右边的浏览中选择考生文件夹,再输入文件名myclasslib,单击"保存"按钮。

4、在命令窗口输入命令:

CREATEFORMmyform,打开表单设计器窗口。

为表单添加数据库环境,在"显示"菜单下打开"数据环境"或在表单上点击右键打开"数据环境",添加"选送单位"表。

5、在表单上添加标签、列表框、文本框,并进行适当的布置和大小调整。

6、根据题面要求设置标签、列表框、文本框的属性值。

7、设置"列表框"的DblClick事件代码:

x=thisform.List1.Value

select选送单位.单位名称,max(分数)as最高分,;

min(分数)as最低分,avg(分数)as平均分;

from打分表,歌手信息,选送单位;

where选送单位.单位号=歌手信息.选送单位号and;

打分表.歌手编号=歌手信息.歌手编号;

GROUPBY选送单位.单位号having单位名称=x;

intotabletwo.dbf

thisform.text1.value=two.最高分

thisform.text2.value=two.最低分

thisform.text3.value=two.平均分

8、保存表单并运行,在列表框中双击"空政文工团"。

新题三:

一、基本操作题(共四小题,第1和2题是7分、第3和4是8分)

在考生文件夹下完成下列操作:

1.使用报表向导为"职工"表创建一个报表one,选择"职工"表的所有字段,报表样式选择简报式,按"职工号"为升序排列,其他选项取默认值。

 

2.建立一个如下图所示的菜单mymenu,注意要生成菜单。

3.新建数据库文件mydata,并将"教师"表加入其中。

4.使用SQLCreate命令建立"学生"表,"学生"表中包括学号(C10)、姓名(C16)和年龄(I)字段,学号为主关键字。

命令存储于文件mypro.prg中。

二、简单应用(2小题,每题20分,计40分)

在考生文件夹下完成下列操作:

1.请修改并执行程序test。

test.prg的功能是:

根据"职工"和"部门"两个表,计算每个部门1980到1990年出生的职工人数,存储于新表new中,新表中包括"部门号"和"人数"两个字段,结果按"人数"递减排序。

注意,每一行有且仅有一处错误,不能修改其他语句。

2.创建一个新类MyCommandButton,该类扩展VFP的CommandButton基类,新类保存在考生文件夹下的myclasslib类库中。

在新类中将标题属性设置为"打开"。

新建一个表单MyForm,在表单中添加新类MyCommandButton,如图所示。

三、综合应用(1小题,计30分)

在考生文件夹下完成下列操作:

1.新建一个名为"职工管理"的数据库文件,将自由表"部门"、"职工"添加到该数据库中。

2.将"部门"中的"部门号"定义为主索引,索引名是index_depa。

3.建立一个查询mysql,查询"通信"学院工资大于3000的人员"姓名"和"工资"信息存入salary.dbf中,按工资升序排列,执行该查询。

4.建立包括一个标签(Label1)、一个列表框(List1)、一个表格(Grid1),Label1的标题为"部门名"的表单formtwo。

5.列表框(List1)的RowSource和RowSourceType属性手工指定为"部门.部门名"和6。

6.表格(Grid1)的RecordSource和RecordSourceType属性手工指定为"select职工号,姓名,工资from职工"和4。

7.列表框(List1)的DblClick事件编写程序。

程序的功能是:

表单运行时,用户双击列表框中实例时,将该部门的"职工号"、"姓名"和"工资"三个字段的信息存入自由表three.dbf中,表中的记录按"职工号"降序排列。

8.运行表单,在列表框中双击"信息管理"。

新题三参考答案

基本操作题:

1、启动报表向导可在"文件"菜单中选择"新建"或者单击工具栏上的"新建"按钮,打开"新建"对话框,文件类型选择报表,单击向导按钮。

然后按照向导提示操作即可。

2、建立菜单可以使用"文件"菜单,选择文件--新建--菜单--新建文件--菜单,打开菜单设计器。

在菜单设计器中建立各菜单项,菜单名称分别为:

"打开文件"、"关闭文件"和"退出(\

3、创建数据库可以使用"文件"菜单完成,选择文件--新建--数据库--新建文件,在数据库设计器中添加"教师"表。

4、建立"学生"表的命令为:

createtable学生(学号C(10)primarykey,姓名C(16),年龄I),然后将此命令保存在mypro.prg文件中。

简单应用题:

第1题:

本题是一个程序修改题。

第一处错误应改为:

将sum(*)改为count(*)。

第二处错误应改为:

将or改为and。

第三处错误应改为:

orderby人数desc;。

第四处错误应改为:

将to改为into。

第2题:

建立类可以使用"文件"菜单完成,选择文件--新建--类--新建文件,在弹出的"新建类"对话框中,在"类名"右边的文本框中输入:

MyCommandButton,在"派生于"右边的列表框中选择CommandButton,在"存储于"右边的浏览中选择考生文件夹,再输入文件名myclasslib,单击"保存"按钮,然后单击"确定"按钮,打开"类设计器"窗口,进入类设计器环境,在属性窗口中,将命令按钮的Caption属性设置为"打开"。

选择文件--新建--表单--新建文件,弹出"表单设计器"窗口。

再单击"表单控件"工具栏上的"查看类"按钮,然后选择myclasslib,在表单中添加一个MyCommandButton的控件,以表单名"MyForm"保存表单。

综合应用题:

1、创建数据库可以使用"文件"菜单完成,选择文件--新建--数据库--新建文件,在数据库设计器中添加"部门"表、"职工"表。

2、打开"部门"表的表设计器,打开"索引"选项卡,在索引名处输入:

index_depa,类型选择"主索引",表达式为:

部门号。

3、建立查询可以使用"文件"菜单完成,选择文件--新建--查询--新建文件,将"部门"和"职工"表添加到查询中,并设置两表间的联系,从字段选项卡中依次选择"职工.姓名"和"职工.工资";切换到"筛选"选项卡,在"字段名"中选择"部门.部门名","条件"选择"=","实例"中输入:

"通信","逻辑"中选择"AND",再选择"职工.工资","条件"选择">","实例"中输入:

"3000";切换到"排序依据"选项卡并在其中选择字段"职工.工资",排序选项为"升序";单击"查询"菜单下的"查询去向",选择"表",在"表名"右边的对话框中输入表名salary,最后保存并运行该查询。

4、在命令窗口输入命令:

CREATEFORMformtwo,打开表单设计器窗口。

为表单添加数据库环境,在"显示"菜单下打开"数据环境"或在表单上点击右键打开"数据环境",添加"部门"和"职工"表。

5、在表单上添加标签、列表框、表格,并进行适当的布置和大小调整。

6、根据题面要求设置标签、列表框、表格的属性值。

7、设置"列表框"的DblClick事件代码:

thisform.grid1.recordsource="select职工号,姓名,工资from部门,职工where部门.部门号=职工.部门号and部门名=thisform.list1.valueorderby职工号descintotablethree"

8、保存表单并运行,在列表框中双击"信息管理"。

新题四:

一、基本操作题(共四小题,第1和2题是7分、第3和4是8分)

在考生文件夹下完成如下操作:

1.使用SQLINSERT语句在orders表中添加一条记录,其中订单号为"0050"、客户号为"061002"、签订日期为2010年10月10日。

然后将该语句保存在命令文件sone.prg中。

2.使用SQLUPDATE语句将orders表中订单号为"0025"的订单的签订日期改为2010年10月10日。

然后将该语句保存在命令文件stwo.prg中。

3.使用SQLALTER语句为orders表添加一个"金额"字段(货币类型)。

然后将该语句保存在命令文件sthree.prg中。

4.使用SQLDELETE语句从orderitems表中删除订单号为"0032"且商品号为"C1003"的记录。

然后将该语句保存在命令文件sfour.prg中。

二、简单应用(2小题,每题20分,计40分)

1.使用SELECT语句查询2008年2月份没有订单的客户,查询结果依次包含客户号、姓名、性别和联系电话四项内容,各记录按客户号降序排序,查询结果存放在表tableone中。

最后将该语句保存在命令文件sfive.prg中。

注:

customers是客户表,orders是订单表。

2.首先创建数据库goods_m,并向其中添加goods表。

然后在数据库中创建视图viewone:

利用该视图只能查询单价大于等于2000且库存量小于等于2、或者单价小于2000且库存量小于等于5的商品信息,查询结果依次包含商品号、商品名、单价和库存量四项内容,各记录按单价降序排序、单价相同按库存量升序排序。

最后利用该视图查询视图中的全部信息,并将查询结果存放在表tabletwo中。

三、综合应用(1小题,计30分)

在考生文件夹下创建一个顶层表单myform.scx(表单的标题为"考试"),然后创建并在表单中添加菜单(菜单的名称为mymenu.mnx,菜单程序的名称为mymenu.mpr)。

效果如下图所示。

1.菜单命令"统计"和"退出"的功能都通过执行过程完成。

2.菜单命令"统计"的功能是从customers表中统计各年份出生的客户人数。

统计结果包含"年份"和"人数"两个字段,各记录按年份升序排序,统计结果存放在tablethree表中。

3.菜单命令"退出"的功能是释放并关闭表单(在过程中包含命令myform.release)。

4.请运行表单并依次执行其中的"统计"和"退出"菜单命令。

新题四参考答案

基本操作题:

1.insertintoordersvalues("0050","061002",{^2010/10/10})

2.update

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1