VF答案.docx
- 文档编号:8945697
- 上传时间:2023-02-02
- 格式:DOCX
- 页数:21
- 大小:103.55KB
VF答案.docx
《VF答案.docx》由会员分享,可在线阅读,更多相关《VF答案.docx(21页珍藏版)》请在冰豆网上搜索。
VF答案
一:
SQL语句红颜色零件相关的信息
2、**************query1.prg中的程序段************
SELECT供应.供应商号,供应.工程号,供应.数量;
FROM零件,供应WHERE供应.零件号=零件.零件号;
AND零件.颜色="红";
ORDERBY供应.数量desc;
INTODBFsupply_temp
打开表单myform,按照题目的要求编写表单的RightClick事件代码"DOmenu_quick.mpr"
3、******"查询"按钮的Click事件代码*********
Select零件.零件名as零件名,零件.颜色as颜色,零件.重量as重量;
From供应,零件;
Where零件.零件号=供应.零件号and供应.工程号=thisform.text1.value;
OrderBy零件名;
Intodbfpp
ThisForm.Grid1.RecordSource="pp"
***************************************
二:
MYFORM4_4查询按钮
SELECTAuthors.作者姓名,Authors.所在城市;
FROMauthors,books;
WHEREAuthors.作者编号=Books.作者编号;
GROUPBYAuthors.作者姓名HAVINGCOUNT(Books.图书编号)>=3;
ORDERBYAuthors.作者姓名;
INTOTABLENEW_VIEW4
三:
SELECT项目信息.项目号,项目信息.项目名,零件信息.零件号,;
零件信息.零件名称;
FROM使用零件情况!
零件信息INNERJOIN使用零件情况!
使用零件;
INNERJOIN使用零件情况!
项目信息;
ON使用零件.项目号=项目信息.项目号;
ON零件信息.零件号=使用零件.零件号;
ORDERBY项目信息.项目号DESC,零件信息.零件号;
INTOTABLEitem_temp.dbf
******"统计"按钮的Click事件代码******
x=allt(bo1.value)
SELECTSUM(使用零件.数量*零件信息.单价)asje;
FROM使用零件,零件信息;
WHERE使用零件.零件号=零件信息.零件号;
AND使用零件.项目号=x;
GROUPBY使用零件.项目号;
intoarrayb
thisform.text1.value=b
四:
2、
InteractiveChange事件代码
Thisform.text1.value=m2
3、
*******"统计"菜单项中的代码*******
SELECTEmployee.组别,Employee.姓名AS负责人,sum(orders.金额)as合计;
FROM订单管理!
employeeINNERJOIN订单管理!
orders;
ONEmployee.职员号=Orders.职员号;
WHEREEmployee.职务="组长";
GROUPBYEmployee.组别;
ORDERBY3DESC;
INTOTABLEtabletwo.dbf
**********************************
为"返回"菜单编写代码"SETSYSMENUTODEFAULT"
【易错误区】有些题目要求在当前VisualFoxPro系统菜单的某个位置插入一个子菜单,此时需要在打开菜单设计器的情况下执行"显示"菜单中的"常规选项"命令,然后在"常规选项"对话框中进行设置
五:
2、
在考生文件夹下已有order、orderitem和goods三个表
设计一个名为form_menu的顶层表单
【解题思路】在查询设计器中,"字段"选项卡相当于SQL语句中的SELECT和FROM短语,"筛选"选项卡相当于SQL语句中的WHERE短语,"排序依据"选项卡相当于SQL语句中的ORDERBY短语,"分组依据"选项卡相当于SQL语句中的GROUPBY短语。
要将表单设置为"顶层表单"需将表单的ShowWindows属性改为"2-顶层表单",并在菜单的"常规选项"对话框中将菜单设置为"顶层表单"。
(1)【操作步骤】
步骤1:
新建查询,为查询添加order、orderitem和goods三个表。
步骤2:
按题目要求为查询添加字段。
步骤3:
在"筛选"选项卡中,为查询添加筛选条件。
步骤4:
在"排序依据"选项卡中按要求设置排序条件。
步骤5:
为查询设置查询去向。
步骤6:
以"queryone.qpr"为文件名保存查询,最后单击常用工具栏中的"运行"按钮运行查询。
(2)【操作步骤】
步骤1:
将菜单设置为"顶层表单"。
步骤2:
在命令窗口执行命令,新建表单form_menu,修改表单的ShowWindow属性为"2-作为顶层表单"。
步骤3:
双击表单空白处,分别输入表单Init和Destroy事件。
************Init**************
DOmenu_lin.mprWithThis,"abc"
*****************************
***********destroy************
ReleaseMenuabcExtended
*****************************
3、
设计一个名为form_book的表单,表单的空间名为form1
【解题思路】若要设置组合框中的显示条目为某些固定的值,则需先将组合框的RowSourceType属性设置为1,同时将RowSoure属性设置为这些值,且之间要用逗号隔开。
【操作步骤】
步骤1:
在命令窗口输入命令"CreateFormform_book",建立表单。
步骤2:
从表单控件中以拖拽的方式在表单中添加一个组合框、一个文本框和两个命令按钮,并修改各控件的属性,为表单添加数据环境"book"表。
步骤3:
双击命令按钮,写入命令按钮的Click事件。
*******"统计"命令按钮的Click事件******
SELECTCOUNT(*)FROMBOOK;
WHERE出版社=THISFORM.COMBO1.VALUE;
INTOARRAYTEMP
THISFORM.TEXT1.VALUE=TEMP
(1)
*************************************
*******"退出"命令按钮的Click事件******
ThisForm.Release
六:
1、
通过SQLINSERT语句插入元组(“p7”,”PN7”,1020)到”零件信息”表
【解题思路】对于第1、2、3小题,需先在命令窗口中完成正确的SQL语句的编写并执行,然后检查SQL语句的执行结果,接下来新建题目要求的程序文件,最后将SQL语句复制到新建的程序文件中。
生成可执行的菜单程序需先打开菜单文件,然后执行"菜单"菜单中的"生成"命令。
【操作步骤】
(1)打开VisualFoxPro,在命令窗口输入:
INSEINTO零件信息VALUES("p7","PN7",1020)
并按下回车键执行语句。
然后创建一个程序文件one.prg,把代码复制过去并保存。
(2)在命令窗口输入:
DELEFROM零件信息WHERE单价<600
并按下回车键执行语句。
然后创建一个程序文件two.prg,把代码复制过去并保存。
(3)在命令窗口输入:
UPDATE零件信息SET单价=1090WHERE零件号="p4"
并按下回车键执行语句。
然后创建一个程序文件three.prg,把代码复制过去并保存。
(4)打开菜单mymenu.mnx后,选择系统菜单中的"菜单",然后选择"生成"。
2、
【解题思路】打开程序,将错误的语句修改正确。
新建报表向导完成报表。
(1)【操作步骤】
打开考生文件夹下的程序文件,并按题目的要求进行改错,修改完成后运行程序文件。
***********程序提供的代码***********
SELECT零件名称FROM零件信息WHERE零件号=;
(SELECT零件号FROM使用零件;
GROUPBY项目号HAVINGCOUNT(项目号)=3);
ORDERBY零件名称;
INTOFILEresults
************************************
其中,第1行中的"="需改为"IN";第3行中的"GROUPBY项目号"需改为"GROUPBY零件号";第5行中的"INTOFILE"需改为"TOFILE"。
(2)【操作步骤】
步骤1:
打开考生文件夹下的"项目信息"表,通过一对多报表向导创建一个报表。
步骤2:
选择表并添加相应的字段到选定字段中。
步骤3:
按题目要求选择排序并设置报表样式。
步骤4:
在"步骤6-完成"中输入报表标题。
步骤5:
输入报表文件名REPORT。
3、
【解题思路】要将查询文件设置为表格控件的数据源,首先需设置表格控件的RecordSourceType属性设置为"3-查询(.QPR)",然后将表格控件的RecordSource属性设计为查询文件名。
调整表单中各控件的对齐方式须在【格式】|【对齐】菜单下进行操作。
本题还用到了命令按钮和表格控件的"Width"属性,该属性用于设置控件的宽度。
(1)【操作步骤】
步骤1:
单击常用工具栏中的"新建"按钮,新建一个查询,依次将题目所要求的表添加到查询设计器中。
步骤2:
分别选中字段"项目信息.项目号"、"项目信息.项目名"、"零件信息.零件名称"和"使用零件.数量"并添加到可用字段。
步骤3:
在"排序依据"选项卡中为查询设置排序。
步骤4:
在系统菜单中单击"保存"按钮保存查询,输入查询名"chaxun"。
最后单击常用工具栏中的"运行"按钮运行查询。
(2)【操作步骤】
步骤1:
在命令窗口输入"CREATEFORMmyform"新建表单。
并修改表单的Name属性为myform。
步骤2:
从表单控件工具栏向表单中添加一个表格控件和一个命令按钮控件,修改表单控件的属性。
步骤3:
设置命令按钮与表格等宽且左对齐。
步骤4:
双击"退出"按钮,写入Click事件代码。
******"退出"按钮Click事件代码******
ThisForm.Release
七:
2、在考生文件夹下存在表单文件formone.scx,其中包含一个列表框、一个表格
【解题思路】通过常用工具栏中的"打开"按钮打开表单,右击表单空白处可以为表单添加数据环境。
通过查询设计器完成查询的创建。
表单的MultiSelect属性用于指定列表框能否多重选定;RowSourceType属性用来指定表格和列表框的数据类型,RowSource属性用来指定表格和列表框的数据源。
(1)【操作步骤】
步骤1:
打开表单formone,在表单的空白处单击右键,将Orders表添加到表单的数据环境中。
步骤2:
修改列表框和表格的属性。
步骤3:
双击"显示"按钮,修改其Click事件代码如下。
************程序提供的************
*下面代码的功能是根据用户对列表框的选择结果构建字段列表,然后进一步构建select语句并据此为表格的相关属性设值。
*修改所有***FOUND***下面的一条语句。
*不能修改其他语句。
不能增加语句,也不能删除语句。
s=""
f=.T.
***************FOUND***************
FORi=1TOthisform.List1.ColumnCount
IFthisform.List1.Selected(i)
IFf
***************FOUND***************
s=thisform.List1.value
f=.F.
ELSE
***************FOUND***************
s=s+thisform.List1.value
ENDIF
ENDIF
ENDFOR
st="select&sfromordersintocursortmp"
thisform.Grid1.RecordSource=st
******************************
错误1:
FORi=1TOthisform.List1.ColumnCount
修改为:
FORi=1TOthisform.List1.ListCount
错误2:
s=thisform.List1.value
修改为:
s=thisform.List1.List(i)
错误3:
s=s+thisform.List1.value
修改为:
s=s+","+thisform.List1.List(i)
步骤4:
保存并运行表单查看结果。
(2)【操作步骤】
步骤1:
单击常用工具栏中的"新建"按钮,新建查询,将表"orders"、"employee"和"customer"添加到查询中。
步骤2:
分别选择字段orders.订单号、orders.签订日期、orders.金额、employee.姓名AS签订者、customer.客户名,添加到可用字段中。
步骤3:
在筛选选项卡中设置筛选条件为"orders.签订日期>={^2001-05-01}"。
步骤4:
在排序选项卡中指定排序选项为降序,添加字段orders.签订日期,orders.金额。
步骤5:
选择系统菜单中的查询→查询去向→表,输入表名为"tableone"。
步骤6:
保存查询,输入查询名"queryone",在常用工具栏中单击运行按钮,运行该查询。
3、【解题思路】建立表单,修改其ShowWindow属性为"2",使其作为顶层表单。
建立菜单,在菜单设计器中完成菜单项的建立,在"常规选项"对话框中将菜单设计为"顶层表单",在"提示选项"对话框中为菜单项设置访问键。
【操作步骤】
步骤1:
在命令窗口输入
Createformmyform
新建表单。
步骤2:
将表单的"ShowWindow"属性设置为"2-作为顶层表单",然后设置其Caption属性值为"考试"。
步骤3:
双击表单空白处,编写表单的"Init"事件代码:
DOmymenu.mprWITHTHIS,"myform"
步骤4:
新建菜单,输入菜单项"统计"和"退出",并为"统计"菜单项设置访问键"ALT+T"。
步骤5:
以同样的方式为"退出"菜单项设置访问键"ALT+R",并执行"显示"菜单下的"常规选项"命令,将此菜单设置为"顶层表单"。
步骤6:
为"统计"和"退出"菜单项创建过程,写入如下SQL语句。
******"统计"菜单中的命令语句******
SELECTCustomer.客户号,Customer.客户名,sum(orders.金额)as合计;
FROMcustomer,orders;
WHERECustomer.客户号=Orders.客户号;
GROUPBYCustomer.客户号;
ORDERBY3DESC;
INTOTABLEtabletwo.dbf
**********************************
******"退出"菜单中的命令语句******
Myform.Release
***********************
步骤7:
保存菜单名为mymenu,生成可执行程序。
运行表单,查看结果。
八:
1、在考生文件夹下新建一个名为”学校”的数据库文件,并将自由表
【操作步骤】
(1)在命令窗口输入:
CreaData学校
按下回车键执行语句,打开数据库设计器,将表"教师表"、"课程表"和"学院表"添加到数据库中。
(2)新建一个程序,输入:
ALTERTABLE课程表ADDUNIQUE课程号TAGtemp
保存程序名为one,最后运行程序。
(3)通过表单向导新建一个表单,选定"课程表"的全部字段作为选定字段,选择按"课程号"降序排序,完成向导并输入表单文件名myform。
(4)打开程序test,将第二行语句改为:
DOWHILEi>=1
保存并运行程序,查看运行结果。
2、【操作步骤】
打开考生文件夹下的程序文件temp.prg,并按题目的要求进行改错,修改完成后运行程序文件,如下所示。
***********程序提供的代码***********
&&下句只有一处有错误
SELECT课程号FROM课程表WHERE课程名="数据结构"TOARRAYa
&&下句有错误
OPEN教师表
STORE0TOsum
&&下句两处有错误
SCANOF课程号=aOR工资>=4000
&&下句有错误
sum+1
ENDSCAN
?
sum
********************************
错误1:
将TO改为INTO。
错误2:
将OPEN改为USE。
错误3:
将SCANOF改为SCANFOR。
错误4:
将OR改为AND。
错误5:
将sum+1改为sum=sum+1。
(2)【操作步骤】
步骤1:
单击系统菜单中的"新建"命令,新建一个视图,将表"教师表"和"学院表"添加到新建的视图中。
步骤2:
将"教师表.姓名"、"教师表.工资"和"学院表.系名"添加到选定字段中。
步骤3:
在筛选选项卡中选择字段"教师表.工资",条件为">=",实例为"4000"。
步骤4:
在排序选项卡中,设置按"工资"降序排序,再按"系名"升序排序。
步骤5:
保存视图名为"teacher_v"。
3、
【操作步骤】
步骤1:
在命令窗口输入:
CreateFormoneform
并按回车键,新建一个名为oneform表单。
步骤2:
在表单控件中以拖拽的方式向表单中添加两个标签、一个选项组、一个组合框和两个命令按钮,并修改各控件的属性。
步骤3:
双击表单空白处,编写表单的load事件代码:
********表单的load事件代码*********
publica(3)
a
(1)="3000"
a
(2)="4000"
a(3)="5000"
*************************
步骤4:
双击命令按钮,分别编写"生成"和"退出"按钮的Click事件代码。
******"生成"按钮的Click事件代码*******
x=val(bo1.value)
ifthisform.optiongroup1.value=1
sele*from教师表where工资>=xorderby工资desc,姓名intotablesalary
else
sele*from教师表where工资 endif ************************************* ******"退出"按钮的Click事件代码******* ThisForm.Release ************************************* 步骤5: 保存表单,并按题目要求运行表单。 九: 1、将student表中学号为99035001的学生的”院系”字段值修改为”经济” 【操作步骤】 (1)打开表student,在命令窗口输入: browse,按下回车键,按要求修改表的内容。 (2)打开score表,单击"显示"菜单中的"表设计器"菜单命令,打开表设计器,修改字段名称。 (3)在命令窗口输入SQL命令: ALTERTABLEstudentADDUNIQUE学号TAG学号 按下回车键。 并将该语句保存到three.prg文件中。 (4)同第2小题,打开course的表设计器,建立候选索引"课程编号" 2、建立一个满足下列要求的表单文件tab (1)【操作步骤】 步骤1: 在命令窗口输入: Createformtab 按下回车键,新建一个表单文件tab,在表单控件中单击相应的控件,然后在表单上画出一个页框控件、一个命令按钮。 将页框改为3个页面。 步骤2: 在页框上单击右键在弹出的快捷菜单中选择"编辑"项,设置页框各页的标题属性。 Page1 Caption 学生 Page2 Caption 课程 Page3 Caption 成绩 步骤3: 在表单空白处单击右键,在弹出的快捷菜单中单击"数据环境"命令,为表单添加表"student"、"course"和"score"到数据环境中。 步骤4: 在页框上单击鼠标右键,在弹出的快捷菜单中选择"编辑"命令,按题目的要求将表拖拽到相应的页中。 步骤5: 将命令按钮的标题改为退出,输入其Click事件: ThisForm.Release。 步骤6: 保存并运行表单查看结果。 (2)【操作步骤】 步骤1: 打开表单modi2,修改"计算"命令按钮的Click事件。 ************程序提供的代码************ ********found******** x,s1,s2,s3=0 ********found******** x=thisform.text1 dowhilex>0 ifint(x/2)=x/2 s1=s1+1 else s2=s2+1 endif ********found******** ifdiv(x,3)=0 s3=s3+1 endif x=x-1 enddo thisform.text2.value=s1 thisform.text3.value=s2 thisform.text4.value=s3 thisform.text5.value=s1+s2+s3 ******************************** 错误1: 改为STORE0TOx,s1,s2,s3。 错误2: 改为x=val(thisform.text1.value)。 错误3: 改为ifmod(x,3)=0。 步骤2: 以同样的方法修改"退出"按钮的Click事件代码为"Thisform.Release" 3、在考生文件夹下有一个名为zonghe的表单文件请完善”确定”命令按钮的click事件代码 【操作步骤】 步骤1: 打开考生文件夹下的表单文件zonghe。 步骤2: "确定"命令按钮的Click事件如下。 ********"确定"按钮的Click事件代码********* SELECTStudent.姓名,Course.课程名称,Score.考试成绩; FROMstudentINNERJOINscore; INNERJOINcours
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VF 答案
![提示](https://static.bdocx.com/images/bang_tan.gif)