VF答案完整版(2)

2019-03-21 20:34

SELECT SUM(Rate_exchange.现钞买入价*Currency_sl.持有数量); FROM currency_sl INNER JOIN rate_exchange ;

ON Currency_sl.外币代码 = Rate_exchange.外币代码; WHERE Currency_sl.姓名 = thisform.text1.value; GROUP BY Currency_sl.姓名; into array aa

thisform.text2.value=aa 第十四套————基本操作

简单应用

在考生文件夹下,打开\宾馆\数据库,完成如下简单应用:

2. 修改一个名称为THREE.PRG的命令文件。该命令文件用来查询与\姚小敏\同一天入住宾馆的每个客户的客户号、身份证、姓名、工作单位,查询结果包括\姚小敏\本人。 查询结果输出到表TABC中。该命令文件在第3行、第5行、第7行和第8行有错误(不含注释行),打开该命令文件,直接在错误处修改,不可改变SQL语句的结构和短语的顺序,不允许增加、删除或合并行。修改完成后,运行该命令文件。

答案: OPEN DATABASE 宾馆

SELECT 客户.客户号,身份证,姓名,工作单位; FROM 客户,入住 WHERE 客户.客户号 = 入住.客户号; AND 入住日期 IN; ( SELECT 入住日期; FROM 客户,入住;

WHERE 客户.客户号 = 入住.客户号 AND 姓名 = \姚小敏\INTO TABLE TABC 保存并运行程序。

综合应用

⑴ \查询\按钮(Command1):在该按钮的Click事件中使用SQL的SELECT命令查询退房日期大于或等于输入日期的客户号、身份证、姓名、工作单位和该客户入住的客房号、类型名、价格信息,查询结果按价格降序排序,并将查询结果存储到表TABD中。表TABD的字段为客户号、身份证、姓名、工作单位、客房号、类型名、价格。 ⑵ \退出\按钮(Command2)的功能是\关闭和释放表单\。

表单设计完成后,运行该表单,查询退房日期大于或等于2005-04-01的顾客信息。 答案:在查询按钮的单击事件中写如下代码:

SELECT 客户.客户号, 客户.身份证, 客户.姓名, 客户.工作单位, 客房.客房号,; 房价.类型名, 房价.价格;

FROM 宾馆!房价 INNER JOIN 宾馆!客房; INNER JOIN 宾馆!入住; INNER JOIN 宾馆!客户 ;

ON 入住.客户号 = 客户.客户号 ; ON 客房.客房号 = 入住.客房号 ; ON 房价.类型号 = 客房.类型号;

WHERE 入住.退房日期 >= ctod(thisform.text1.value); ORDER BY 房价.价格 DESC; INTO TABLE tabd.dbf

第15套————基本操作

(2)打开表单two,在\表单\菜单中选择\新建方法程序\命令,新建一个名为test的方法,在属性窗口中双击此方法,在弹出的窗口中编写用户自定义过程代码:

ThisForm.Command1.Enabled=.f. (4)在命令窗口输入命令:

alter table 教师表 alter 职工号 set check LEFT(职工号,3)=\ 简单应用:

1. 打开数据库文件\课程管理\,使用SQL语句建立一个视图salary,该视图包括了系号和(该系的)平均工资两个字段,并且按平均工资降序排列。请将该SQL语句存储在four.prg文件中,否则不得分。

CREATE sql VIEW salary AS SELECT 教师表.系号, AVG(教师表.工资) AS 平均工资 FROM 教师表; GROUP BY 教师表.系号 ORDER BY 2 DESC

2. 打开考生文件夹下的表单six(如图所示),\登录\命令按钮Click事件中的程序功能是:当用户输入用户名和口令以后,单击\登录\按钮时,程序根据自由表\用户表\的内容进行操作,若在\用户表\中找不到相应的用户名,则提示\用户名错误\,若用户名输入正确,而口令输入错误,则提示\口令错误\。在\登录\命令按钮Click事件中空行处填加适当的语句,使其能够正确运行。注意:不得做其他修改。

(2)【操作步骤】

步骤1:打开考生文件夹下的表单six.scx,\登录\按钮中的代码如下。 **********\登录\按钮的Click事件代码********** 步骤2:修改程序中的错误如下。 错误1:将\改为\。 错误2:将\改为\。 错误3:将\改为\。 步骤3:保存并运行表单。 综合应用:

2. 为\生成表\命令按钮编写程序。程序的功能是根据表单运行时复选框指定的字段和单选钮指定的排序方式生成新的自由表。如果两个复选框都被选中,生成的自由表命名为two.dbf,two.dbf的字段包括职工号、姓名、系名、工资和课程号;如果只有\系名\复选框被选中,生成的自由表命名为one_x.dbf,one_x.dbf的字段包括职工号、姓名、系名和课程号;如果只有\工资\复选框被选中,生成的自由表命名为one_xx.dbf,one_xx.dbf的字段包括职工号、姓名、工资和课程号。 3. 运行表单,并分别执行如下操作:

(1)选中两个复选框和\按职工号升序\单选钮,单击\生成表\命令按钮; (2)只选中\系名\复选框和\按职工号降序\单选钮,单击\生成表\命令按钮; (3)只选中\工资\复选框和\按职工号降序\单选钮,单击\生成表\命令按钮。

答案:【操作步骤】

*****\生成表\按钮的Click事件代码***** a=ThisForm.Check1.Value b=ThisForm.Check2.Value

c=ThisForm.Optiongroup1.Option1.Value d=ThisForm.Optiongroup1.Option2.Value if a=1 and b=1 if c=1

select 职工号,姓名,系名,工资,课程号 from 教师表,学院表; where 教师表.系号=学院表.系号; order by 职工号; into table two.dbf else if d=1

select 职工号,姓名,系名,工资,课程号 from 教师表,学院表; where 教师表.系号=学院表.系号; order by 职工号 desc; into table two.dbf endif endif endif

if a=1 and b=0 if c=1

select 职工号,姓名,系名,课程号 from 教师表,学院表; where 教师表.系号=学院表.系号; order by 职工号; into table one_x.dbf else if d=1

select 职工号,姓名,系名,课程号 from 教师表,学院表; where 教师表.系号=学院表.系号;

order by 职工号 desc; into table one_x.dbf endif endif endif

if a=0 and b=1 if c=1

select 职工号,姓名,工资,课程号 from 教师表,学院表; where 教师表.系号=学院表.系号; order by 职工号; into table one_xx.dbf else if d=1

select 职工号,姓名,工资,课程号 from 教师表,学院表; where 教师表.系号=学院表.系号; order by 职工号 desc; into table one_xx.dbf endif endif endif

步骤4:保存表单名为myform,按题目要求运行表单并执行相关操作。 第16套——基本操作

3. 使用SQL语句创建一个名为“分组情况表”的自由表,“分组情况表”有两个字段:组号和组名,组号占两个字符,组名占10个字符。请将该SQL语句存储在three.prg中,否则不得分。Create table 分组情况表(组号 c(2),组名 c(10))

4. 使用SQL语句插入一个记录到“分组情况表”中,插入的内容是,组号:“01”,组名:“通俗唱法”。请将该SQL语句存储在four.prg中,否则不得分。INSERT INTO 分组情况表 VALUES(\01\通俗唱法\) 简单应用

第1处:将\改为\;

第2处:将\歌手表.歌手编号\改为:LEFT(歌手表.歌手编号,2); 第3处:将\改为:WITH。

2. 列表框(List1)中应显示组号,通过RowSource和RowSourceType属性手工指定列表框的显示条目为01、02、03、04(注意不要使用命令指定这两个属性,否则将不能得分)。

3. 为“计算”命令按钮编写程序。程序的功能是:表单运行时,根据列表框中选定的“组号”,将“评分表”中该组歌手(“歌手编号”字段的左边两位表示了该歌手所在的组号)的所有记录存入自由表two.dbf中,two.dbf的表结构与“评分表”相同,表中的记录先按\歌手编号\降序、再按\分数\升序排列。

4. 运行表单,在列表框中指定组号“01”,并且单击“计算”命令按钮。注意:结果two表文件中只能且必须包含01组歌手的评分信息。 步骤2:通过属性窗口设置表单及相关各控件的属性,设置列表框控件的数据源和数据源类型,rowsourcetype为“1-值”,接着在rowsource属性框中输入四个值,注意不加定界符,值与值之间用逗号隔开01,02,03,04然后敲回车确定。

步骤3:双击\计算\命令按钮编写其Click事件代码为: SELECT * FROM 评分表;

WHERE LEFT(评分表.歌手编号,2) = thisform.list1.value;

ORDER BY 评分表.歌手编号 DESC, 评分表.分数 INTO TABLE two.dbf

步骤4:最后以myform为文件名将表单保存在考生文件夹下,并运行该表单。 第十八套————简单操作

3. 用SQL命令向SCORE1表插入一条记录:学号为\、课程号为\、 成绩是99。 Insert into score1 values(\简单应用

2. 建立表单MYFORM3,在表单上添加表格控件(名称为grdCourse), 并通过该控件显示表course的内容(要求RecordSourceType属性必须为0)。

答案:步骤2:在属性窗口中修改表格控件的RecordSourceType属性值为:0-表

步骤3:在属性窗口中修改表格控件的RecordSource属性为:course

综合应用

利用菜单设计器建立一个菜单TJ_MENU3,要求如下: (1) 主菜单(条形菜单)的菜单项包括\统计\和\退出\两项;

(2) \统计\菜单下只有一个菜单项\平均\该菜单项的功能是统计各门课程的平均成绩,统计结果包含\课程名\和\平均成绩\两个字段,并将统计结果按课程名升序保存在表NEW_TABLE32中。

(3) \退出\菜单项的功能是返回Visual FoxPro系统菜单(在命令框写相应命令)。 菜单建立后,运行该菜单中各个菜单项。

答案:步骤1:通过菜单设计器新建一个菜单,输入菜单项\统计\和\退出\。 步骤2:为\统计\菜单项建立子菜单,并输入菜单项\平均\。

步骤3:在\平均\菜单的\结果\中选择\过程\,单击\编辑\按钮,在弹出的程序编辑窗口中输入下列代码: *****\平均\菜单项中的过程代码*****

SELECT Course.课程名, AVG(Score1.成绩) as平均成绩; FROM course,score1 ;

WHERE Course.课程号 = Score1.课程号; GROUP BY Course.课程名; ORDER BY Course.课程名; INTO TABLE NEW_TABLE32

步骤4:在\退出\菜单的结果中选择\命令\,输入:SET SYSMENU TO DEFAULT 步骤5:保存菜单名为TJ_MENU3,生成菜单的可执行程序,”菜单”—“生成” 步骤6:运行菜单并执行菜单中的各菜单项,“程序”—“运行” 第19套————基本操作

1. 打开表单one,向其中添加一个组合框(Combo1),并将其设置为下拉列表框。

2. 在表单one中,通过RowSource和RowSourceType属性手工指定组合框Combo1的显示条目为“上海”、“北京”(不要使用命令指定这两个属性)。

3. 向表单one中添加两个命令按钮Command1和Command2,其标题分别为“统计”和“退出”。为“退出”命令按钮的Click事件写一条命令,执行该命令时关闭和释放表单。

4. 为表单one中的“统计”命令按钮的Click事件写一条SQL命令,执行该命令时,将“歌手表”中所有“歌手出生地”与组合框(Combo1)指定的内容相同的歌手的全部信息存入自由表birthplace中。

答案: (1)打开表单one,通过表单控件工具栏向表单添加一个组合框,并修改其Style属性为2-下拉列表框。 (2)修改组合框的RowSourceType属性值设置为:1-值,RowSource设置为:上海,北京。

(3)通过表单控件工具栏向表单中添加两个命令按钮,分别在属性工具栏中修改两个按钮的Caption属性为\统计\和\退出\,双击\退出\按钮编写其Click事件代码为:

ThisForm.Release。

(4)编写\统计\按钮的Click事件代码为:

select * from 歌手表.dbf where 歌手出生地=ThisForm.combo1.value; INTO TABLE birthplace 保存并运行表单。 简单应用:

1. 建立一个查询score_query。查询评委为“歌手编号”是“01002”的歌手所打的分数,结果存入自由表result中,该自由表的字段项包括:“评委姓名”和“分数”,各记录按分数升序排列。最后运行该查询。

答案; (1)【操作步骤】

步骤1:新建一个查询,将\评分表\和\评委表\添加到查询设计器中。 步骤2:按要求添加字段\评委姓名\和\分数\到选定字段中。

步骤3:在\筛选\选项卡中的\字段\列中选择\歌手编号\,\条件\列中选择\,\结果\列中输入\。 步骤4:在\排序依据\选项卡中选择\分数\字段,升序排列。 步骤5:设置查询去向为表\。

步骤6:保存查询名为score_query,并运行查询。

2. 根据上一步操作得到的自由表result建立一个报表。要求:(1) 使用报表向导建立报表,报表中包括“评委姓名”和“分数”两个字段,按“分数”字段降序排列,报表标题设置为空,报表文件命名为score_result。(2) 打开报表score_result,利用报表控件标签,将“王岩盐得分情况”添加到报表中作为报表的标题。

(2)【操作步骤】

步骤1:通过报表向导新建一个报表。

步骤2:添加表RESULT,然后添加全部字段到可用字段中,按\分数\降序排序。 步骤3:完成报表,报表标题设置为空,报表名为score_result。

步骤4:打开报表,选择主菜单\报表\下的\标题/总结(T)\命令,弹出\标题/总结\对话框,在\报表标题\中选中\标题带区\复选框,单击\确定\按钮,这样就在报表中加入了一个\标题带区\,打开\报表控件工具栏\,在打开的\报表控件\中选择\标签\控件,在标题带区单击鼠标,输入\王岩盐得分情况\。

步骤5:保存并预览报表,查看报表的设计结果。

综合应用

1. 编写程序并执行,计算“01”组(歌手编号的前2位)歌手的得分并将结果存入自由表FINAL.DBF中。FINAL.DBF包含“歌手姓名”和“得分”两个字段,“得分”取各评委所打分数的平均值。FINAL.DBF中的结果按得分降序、歌手姓名降序排列。请将程序存储在two.prg中,否则不得分。

2. 新建一个文件名和表单名均为score_form的表单,向表单添加一个命令按钮Command1,标题为“计算”,为该命令按钮的Click事件增加命令,调用two.prg程序执行。最后运行该表单,并单击“计算”按钮执行two程序。

3. 新建一个项目文件score_project,将自由表“歌手表”、“评委表”和“评分表”以及表单文件score_form加入该项目,然后将项目文件连编成应用程序文件score_app。

答案:步骤1:新建一个程序文件,写入如下代码并保存程序名为two,并运行该程序。 ********\中的代码********

SELECT 歌手表.歌手姓名, avg(评分表.分数) as 得分; FROM 歌手表,评分表;

WHERE 歌手表.歌手编号 = 评分表.歌手编号; AND left(歌手表.歌手编号,2) = \ GROUP BY 歌手表.歌手姓名;

ORDER BY 2 DESC, 歌手表.歌手姓名 DESC; INTO TABLE final

步骤2:新建表单,将其Name属性设置为score_form,通过表单控件工具栏向表单中添加一个命令按钮,修改其Caption属性为\计算\,编写其Click事件代码为:DO two.prg。

步骤3:保存表单名为score_form,并运行该表单。

步骤4:单击\新建\→\项目\,以\为文件名进行保存,在项目管理器的\数据\选项卡中选择自由表,单击\添加\,在\打开\的对话框中选择要添加的自由表\歌手表\、\评委表\和\评分表\,在\文档\选项卡中选择表单,单击\添加\,在\打开\的对话框中选择要添加的表单文件score_form。单击”连编”按钮,在\连编选项\中选择\连编应用程序\,以文件名score_app保存应用程序。

第21套——基本操作

1. 修改菜单my_menu,my_menu中的\文件\菜单项下有子菜单项\新建\打开\、\关闭\和\退出\,请在\关闭\和\退出\之间加一条水平的分组线,并为\退出\菜单项设置一条返回到系统菜单的命令(不可以使用过程)。

2. 创建一个快速报表sport_report,报表中包含了表\金牌榜\中的\国家代码\和\金牌数\两个字段。

3. 使用SQL建立表的语句建立一个与自由表\金牌榜\结构完全一样的自由表golden.dbf。请将该SQL语句存储在文件one.prg中,否则不得分。 4. 使用SQL语句向自由表golden.dbf中添加一条记录(\,9,7,11)。请将该SQL语句存储在文件two.prg中,否则不得分。

答案:(1)单击常用工具栏中的\打开\按钮,打开菜单my_menu,在菜单设计器中单击\文件\菜单项后的\编辑\按钮,选中\退出\菜单项并单击右侧的\插入\接钮,在\关闭\和\退出\之间插入一行,在\菜单名称\处输入:\\-。最后将\退出\项的结果设置为\命令\,并输入:SET SYSMENU TO DEFAULT。

(2)新建一个空白报表,在报表设计器窗口中选择\报表\菜单下的\快速报表\命令,选中考生文件夹下的\金牌榜\表,即可打开\快速报表\对话框,单击对话框中的\字段\按钮,将\国家代码\和\金牌数\两个字段添加到\选定字段\中。单击\确定\按钮回到报表设计器窗口,保存报表名为\,预览以查看报表设计结果。

(3)新建一个程序文件,为其编写如下的命令语句。 USE 金牌榜

COPY STRUCTURE TO GOLDEN

保存程序名为\,最后运行该程序文件。 (4)在命令输入命令:

insert into golden Value(\并按回车键,并将此命令存储到新建的two.prg文件中。 简单应用:

1. 使用SQL语句完成下面的操作:根据\国家\和\获奖牌情况\两个表统计每个国家获得的金牌数(\名次\为1表示获得一块金牌)结果包


VF答案完整版(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:说明书

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: