VFP题库141Word文档格式.docx

上传人:b****4 文档编号:16424925 上传时间:2022-11-23 格式:DOCX 页数:38 大小:225.48KB
下载 相关 举报
VFP题库141Word文档格式.docx_第1页
第1页 / 共38页
VFP题库141Word文档格式.docx_第2页
第2页 / 共38页
VFP题库141Word文档格式.docx_第3页
第3页 / 共38页
VFP题库141Word文档格式.docx_第4页
第4页 / 共38页
VFP题库141Word文档格式.docx_第5页
第5页 / 共38页
点击查看更多>>
下载资源
资源描述

VFP题库141Word文档格式.docx

《VFP题库141Word文档格式.docx》由会员分享,可在线阅读,更多相关《VFP题库141Word文档格式.docx(38页珍藏版)》请在冰豆网上搜索。

VFP题库141Word文档格式.docx

从customers表中查询指定日期以后出生的客户,查询结果依次包含“姓名”、“性别”、“出生日期”3项内容,各记录按“出生日期”降序排序,查询去向为表tableone。

最后运行该表单,查询1980年1月1日以后出生的客户。

(2)向名为“订单管理”的数据库(在基本操作题中建立)添加orderitems表。

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

利用该视图可以从orderitems表查询统计各商品的订购总量,查询结果依次包含“商品号”和“订购总量”(即所有订单对该商品的订购数量之和)两项内容,各记录按“商品号”升序排序。

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

(1)

步骤1:

在命令窗口输入"

Creaformformone"

,新建一个表单,按题目要求添加控件并修改控件的属性,将customers表添加到数据环境中。

步骤2:

然后将Text1的Value属性设置为"

=date()"

,编写"

查询"

按钮的Click事件代码如下。

******"

按钮的Click事件代码******

x=ThisForm.Text1.Value

SELECTCustomers.姓名,Customers.性别,Customers.出生日期;

FROMcustomers;

WHERECustomers.出生日期>

=x;

ORDERBYCustomers.出生日期DESC;

INTOTABLEtableone.dbf

*************************

步骤3:

保存并运行表单,查看表单的运行结果。

(2)

打开考生文件夹下的"

数据库,在数据库设计器中右键单击数据库的空白处,选择"

命令,将orderitems表添加到数据库中。

新建一个视图,将orderitems表添加到视图设计器中;

在"

字段"

选项卡中,将字段"

商品号"

和表达式"

SUM(Orderitems.数量)AS订购总量"

添加到"

选定字段"

列表框中;

排序依据"

选项卡中,选择按商品号升序排序记录,在"

分组依据"

选项卡中将"

设置为分组字段。

将视图保存为"

viewone"

步骤4:

新建一个查询文件,将新建的"

视图添加到新建的查询中,选择其中的全部字段,设置查询去向为表"

tabletwo"

,保存并运行查询,查询文件名默认。

 

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

①菜单命令“计算”和“退出”的功能都通过执行过程完成。

②菜单命令“计算”的功能是根据orderitems表和goods表中的相关数据计算各订单的总金额(一个订单的“总金额”等于它所包含的各商品的金额之和,每种商品的“金额”等于“数量*单价”),并将计算的结果填入orders表的相应字段中。

③菜单命令“退出”的功能是释放并关闭表单。

最后,请运行表单并依次执行其中的“计算”和“退出”菜单命令。

新建一个表单,修改表单的Caption为"

考试"

,ShowWindow属性为"

2-作为顶层表单"

双击表单空白处,编写表单的Init。

DOmymenu.mprWITHTHIS,"

myform"

新建一个菜单,选择"

显示"

菜单下的"

常规选项"

命令,在弹出的"

对话框中勾选"

顶层表单"

输入菜单项"

计算"

和"

退出"

,结果均选择"

过程"

,然后单击两个菜单项后面的"

创建"

按钮,分别编写如下代码。

菜单项中的命令代码******

SELECTOrderitems.订单号,sum(orderitems.数量*goods.单价)as总金额;

FROMorderitems,goods;

WHEREOrderitems.商品号=Goods.商品号;

GROUPBYOrderitems.订单号;

ORDERBYOrderitems.订单号;

INTOTABLEtemp.dbf

CLOSEALL

SELE1

USEtemp

INDEXON订单号TOddh1

SELE2

USEorders

INDEXON订单号TOddh2

SETRELATIONTO订单号INTOA

DOWHILE.NOT.EOF()

REPLACE总金额WITHtemp.总金额

SKIP

ENDDO

BROW

myform.Release

步骤5:

保存菜单名为"

mymenu"

并生成可执行文件。

步骤6:

保存表单名为"

并运行。

第二套

基本操作题

1.新建一个不包含任何控件的空表单myform.scx(表单名和表单文件名均为myform)。

2.打开表单文件formtwo.scx,将表单的标题设为"

计算机等级考试"

3、打开表单文件formthree.scx,使用布局工具栏操作使表单上的4个命令按钮按顶边水平对齐。

4、打开表单文件formfour.scx,设置有关属性使表单初始化时自动在VisualFoxPro主窗口内居中显示。

1、单击工具栏上的"

新建"

按钮,再单击"

表单"

,单击"

新建文件"

,将表单的Name属性修改为myform,单击"

保存"

按钮,将表单保存为myform.scx。

2、打开表单formtwo.scx,将表单的Caption属性修改为"

3、打开表单formthree.scx,选择"

布局工具栏"

子菜单,将布局工具栏显示出来。

选中表单上的4个命令按钮,单击布局工具栏上的"

顶边对齐"

按钮。

4、打开表单formfour.scx,将表单的AutoCenter属性值设置为"

.T.-真"

简单应用

1使用查询设计器设计完成:

查询“吴”姓读者(客户名第一个字为“吴”)订购图书情况,查询结果包括客户名、订单号、图书名、单价、数量和签订日期字段的值,要求按客户名升序排序,并运行该查询将查询结果存储在表文件appone,查询文件也保存为appone。

2使用SQL语句查询每个读者订购图书的数量和金额(数量*单价),查询结果包括客户名、订购总册数和金额,查询按金额降序排序,查询结果存储在apptwo.dbf表文件,最后将SQL语句保存在apptwo.prg命令文件。

建立查询可以使用"

文件"

菜单完成,选择文件--新建--查询--新建文件,将order、orderitem和goods表添加到查询中,并设置三表间的联系,从字段选项卡中依次选择"

Order.客户名"

、"

Order.订单号"

Goods.图书名"

Goods.单价"

Orderitem.数量"

Order.签订日期"

切换到"

筛选"

选项卡,在"

字段名"

中选择"

,"

条件"

选择"

="

实例"

中输入:

吴;

选项卡并在其中选择字段"

,排序选项为"

升序"

单击"

查询去向"

表"

,在"

表名"

右边的对话框中输入表名appone,最后保存并运行该查询。

SELECTOrder.客户名,sum(orderitem.数量)as订购总册数,;

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

FROMgoodsINNERJOINorderitemINNERJOINorder;

ONOrderitem.订单号=Order.订单号;

ONGoods.图书号=Orderitem.图书号;

GROUPBYOrder.客户名;

ORDERBY金额DESC;

INTOTABLEapptwo.dbf

运行该SQL语句,然后将此语句保存在apptwo.prg文件中。

综合应用

在考生文件夹下完成如下综合应用:

①建立数据库“订单管理”,将表order、goods和orderitem添加到“订单管理”数据库;

②在“订单管理”数据库中创建视图orderview,该视图包含信息:

客户名、订单号、图书名、数量、单价和金额(单价*数量);

③建立文件名和表单名均为orderform的表单,在表单中添加表格控件grid1(将RecordSourceType属性设置为“表”)和命令按钮“退出”(command1);

在表单的load事件中使用SQL语句,从视图orderview中按客户名升序、金额降序查询数量为1的客户名、图书名和金额信息,并将结果存储到表文件result.dbf。

在表单运行时使得在控件grid1中能够显示表result.dbf中的内容(在相应的事件中将grid1的recordsource属性指定为result.dbf);

单击“退出”命令按钮时释放并关闭表单。

完成以上所有功能后运行表单orderform。

①创建数据库可以使用"

菜单完成,选择文件--新建--数据库--新建文件,在数据库设计器中依次添加order、goods和orderitem表。

②通过createVIEW命令打开视图设计器,在"

添加表或视图"

对话框中依次添加order、orderitem和goods表,并设置三表间的联系;

选项卡中选择order.客户名、order.订单号、goods.图书名、orderitem.数量、goods.单价5个字段,再在"

函数和表达式"

下输入:

goods.单价*orderitem.数量AS金额。

添加"

③在命令窗口输入命令:

CREATEFORMorderform,打开表单设计器窗口,将表单的Name属性修改为orderform。

④在表单上添加表格、命令按钮,并进行适当的布置和大小调整。

将表格的RecordSourceType属性设置为"

0-表"

,命令按钮的Caption属性设置为"

⑤在表单的load事件代码中输入:

select客户名,图书名,金额fromorderviewwhere数量=1;

orderby客户名,金额descintotableresult.dbf

⑥在表格的activatecell事件代码中输入:

thisform.Grid1.recordsource="

result.dbf"

⑦设置"

按钮的Click事件代码:

THISFORM.RELEASE

⑧保存表单并运行

第三套

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

1.新建一个名为"

学校"

的数据库文件,将自由表"

教师表"

职称表"

学院表"

添加到该数据库中。

2.在"

数据库文件中,为"

建立主索引,索引表达式为"

职称级别"

,索引名为indexone。

3.使用报表向导为"

建立一个报表myreport,选定"

的全部字段,按"

字段降序排序,其他选项选择默认值。

4.修改test.prg中的语句,该语句的功能是将"

中所有职称名为"

教授"

的记录的"

基本工资"

存储于一个新表prof.dbf中,新表中包含"

两个字段,并按"

升序排列。

最后运行程序文件test.prg。

第3小题:

使用报表向导创建报表。

(1)单击工具栏上的"

按钮,打开"

对话框,文件类型选择"

报表"

向导"

(2)按照报表向导提示操作,最后单击"

打印预览"

第4小题:

修改程序。

(1)单击工具栏的"

打开"

按钮,选择文件类型"

程序"

,再选择test.prg,单击"

按钮,打开程序编辑器窗口,显示如下程序清单:

select职称级别,基本工资from职称表where职称名="

todbfprof.dbfgroupby基本工资

(2)将其修改为:

intodbfprof.dbforderby基本工资

(3)单击工具栏的"

按钮,保存修改后的test.prg程序。

(4)单击工具栏的运行按钮"

运行该程序。

1.请修改并执行程序temp.prg,该程序的功能是:

根据"

计算每位教师的"

应发工资"

,每位教师的"

等于:

与"

相符的"

+"

课时"

×

80×

职称系数,教授的职称系数为1.4,副教授的职称系数为1.3,讲师的职称系数为1.2,助教的职称系数为1.0。

计算结果存储于自由表salary.dbf中,salary.dbf中的字段包括姓名、系号和应发工资,并按系号降序排列,系号相同时按应发工资升序排列。

注意,只能修改标有错误的语句行,不能修改其他语句行。

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

在新类中将Value属性设置为1。

新建一个表单MyForm,然后在表单中添加一个基于新类MyCheckBox的复选框,如图所示。

第1题:

用SQL语句,修改程序。

(1)单击工具栏的"

,再选择temp.prg,单击"

按钮,打开程序编辑器窗口,显示如下程序清单并修改程序(箭头后蓝色字体是正确答案):

create职称系数表(职称名c(6),职称系数f(10,2))&

&

有错误

--》createtable职称系数表(职称名c(6),职称系数f(10,2))

insertinto职称系数表value("

1.4)

1.3)&

--》insertinto职称系数表value("

副教授"

1.3)

讲师"

1.2)

助教"

1.0)

SELECT姓名,系号,课时*80*职称系数+基本工资as应发工资;

FROM职称系数表,教师表;

&

--》FROM职称表,职称系数表,教师表;

WHERE职称表.职称级别=教师表.职称级别;

OR职称表.职称名=职称系数表.职称名;

&

--》AND职称表.职称名=职称系数表.职称名;

intodbfsalary.dbf;

orderby系号desc,应发工资

按钮,保存修改后的temp.prg程序。

第2题:

新建类。

按钮,在"

对话框中,选择"

类"

,再单击"

按钮,在弹出的"

新建类"

对话框中输入或选择:

类名:

MyCheckBox

派生于:

选择CheckBox

存储于:

myclasslib

按钮,系统弹出"

类设计器"

窗口;

(2)在"

的属性窗口中,将复选框的Value属性设置为1;

按钮,并关闭类设计器窗口;

(4)单击工具栏的"

按钮,弹出"

表单设计器"

窗口。

(5)单击"

表单控件工具栏"

的"

查看类"

按钮,在弹出的菜单中,选择"

对话框中,选择考生目录下的类库文件myclasslib.vcx,再单击"

按钮,此时"

中就出现mycheckbox控件,选择该控件添加到表单中。

(6)单击常用工具栏的"

按钮,保存表单myform.scx;

(7)单击常用工具栏的运行按钮"

,运行该表单。

1.建立一个文件名和表单名均为formtest的表单,表单中包括一个标签(Label1)、一个列表框(List1)、一个表格(Grid1)。

2.在表单的数据环境中添加"

3.通过属性窗口将标签的标题设为"

系名"

4.列表框用于显示系名,通过属性窗口将列表框(List1)的RowSource和RowSourceType属性指定为"

学院表.系名"

和6。

5.表格用于显示所有教师的相关信息,通过属性窗口将表格(Grid1)的RecordSource和RecordSourceType属性指定为"

select职工号,姓名,课时from教师表intocursortmp"

和4。

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

程序的功能是:

表单运行时,用户双击列表框中的选项时,将所选系教师的"

职工号"

姓名"

三个字段的信息存入自由表two.dbf中,表中的记录按"

降序排列。

7.运行表单,在列表框中双击"

信息管理"

(1)在命令窗口输入下面命令并回车:

CREATEFORMformtest

打开表单设计器窗口;

(2)在属性窗口中,设置表单的Name属性为formttest;

(3)右击表单设计器窗口的空白处,在弹出的快捷菜单中,选择"

数据环境"

命令,打开"

数据环境设计器"

窗口,并将"

添加进来;

(4)在表单设计器中添加标签控件Label1,并设其标题属性Caption值为:

系名;

(5)在表单设计器中添加列表框控件List1,在属性窗口设置RowSourceType属性为:

6-字段,RowSource属性为:

学院表.系名

(6)在表单设计器中添加表格控件Grid1,在属性窗口中,设置RecordSourceType的属性为:

4-SQL说明,设置RecordSource的属性为:

select职工号,姓名,课时from教师表intocursortmp

(7)设置"

列表框"

的DblClick事件代码:

SELECT职工号,姓名,课时;

FROM学院表,教师表WHERE学院表.系号=教师表.系号AND;

学院表.系名=Thisform.List1.Value;

ORDERBY教师表.职工号DESC;

INTOTABLEtwo.dbf

Thisform.Grid1.RecordSourceType=0

Thisform.Grid1.RecordSource="

two"

(8)单击常用工具栏的"

按钮,保存表单;

(9)单击常用工具栏的运行按钮"

,运行表单,在列表框中双击"

条目,即可在显示菜单看到two.dbf表,在表格控件中也看到two.dbf表。

第四套

1.建立名称为“CDB”的商品销售数据库。

然后将考生文件夹下的顾客表CUST、订单表ORDER和商品表COMM三个自由表添加到数据库CDB中。

2.分别为顾客表CUST、订单表ORDER和商品表COMM创建主索引,CUST表主索引的索引名和索引表达式均为“顾客号”;

COMM表主索引的索引名和索引表达式均为“商品号”;

ORDER表主索引的索引名为“PK_CC”、索引表达式为“顾客号+商品号”;

分别为ORDER表的“顾客号”和“商品号”建立普通索引(升序),索引名与字段名相同。

3.通过字段“顾客号”建立ORDER与CUST之间的永久联系、通过字段“商品号”建立ORDER与COMM之间的永久联系。

然后为以上建立的永久联系设置参照完整性约束:

更新规则为“级联”;

删除规则为“限制”;

插入规则为“限制”。

4.在商品销售数据库CDB中使用SQL的CREATETABLE语句创建数据库表:

销售明细表(顺序号,日期,商品号,商品名,金额),其中:

顺序号为字符型,宽度为6;

日期为日期型;

商品号为字符型,宽度为6;

商品名为字符型,宽度为10;

金额为数值型,宽度为10(其中小数2位);

表的主关键字为“顺序号”。

将创建表的SQL语句存放在文件ONE.PRG中。

(4)建立程序ONE.PRG,输入以下SQL语句。

CREATETABLE销售明细表(顺序号C(6)PRIMARYKEY,日期D,商品号C(6),商品名C(10),金额N(10.2))

保存并执行程序。

简单应用题

在考生文件夹下,打开该“CDB”数据库,完成如下简单应用:

1.使用一对多表单向导选择CUST表和ORDER表生成一个名为“ONE”的表单。

要求从父表CUST中选择所有字段,从子表ORDER中选择所有字段,使用“顾客号”建立两表之间的关系,样式为阴影式;

按钮类型为图片按钮;

排序字段为“顾客号”,升序;

表单标题为“顾客订购商品维护”。

2.使用查询设计器设计一个名称为VIEW_C的查询,统计查询所有顾客购买商品应付款的情况。

查询结果包括顾客号、顾客名、地址和付款金额四个字段(注意:

每件商品的“金额”是由COMM表中该商品的单价*ORDER表中该商品的订购数量计算得到,每个顾客的付款金额则是顾客购买商品金额的合计),各记录按顾客号升

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

当前位置:首页 > 表格模板 > 合同协议

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

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