江苏省-计算机二级(VFP~)上机攻略.doc

上传人:一*** 文档编号:582930 上传时间:2018-11-04 格式:DOC 页数:24 大小:414.50KB
返回 下载 相关 举报
江苏省-计算机二级(VFP~)上机攻略.doc_第1页
第1页 / 共24页
江苏省-计算机二级(VFP~)上机攻略.doc_第2页
第2页 / 共24页
点击查看更多>>
资源描述

《江苏省-计算机二级(VFP~)上机攻略.doc》由会员分享,可在线阅读,更多相关《江苏省-计算机二级(VFP~)上机攻略.doc(24页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、|江苏理工学院-王建江苏省计算机等级考试二级 Visual FoxPro上机攻略|目 录项目、数据库和表操作知识点 .1查询知识点 .6菜单知识点 .9表单知识点 .13程序改错知识点 .20|项目、数据库和表操作知识点一、零碎知识点1、做第一题的时候,必须按考试要求设置默认目录语句为:set default to 2、 “记录有效性规则”与“字段有效性规则”不同,前者表,后者字段3、比较冷门的字段类型备注型 M (memo Memo ) (存文字) 通用型 G (gen Gen ) (存图片)(备注型和通用型都是双击插入记录)整型 I (同数值型,无小数位) 货币型 Y4、设置参照完整性,必

2、须要先清理数据库 (非常重要)先打开数据库设计器,然后菜单栏数据库清理数据库5、设置参照完整性和索引的时候,要注意保持字段类型一致,相同时不用改,不同时基本上都是转化成字符型来设置 (非常重要)数值型转化为字符型:STR(字段名,整数位,小数位) 没有小数时直接省略日期(时间)型转化为字符型:DTOC(字段名,1) TTOC(字段名,1) 括号中必须要加 1将当前日期转化为字符型:DTOC(DATE(),1)6、修改项目文件的项目信息右键点击项目项目信息,然后进行设置,常考设置图标7、自由表的相关操作 (非常重要)(1)题目让编辑自由表时,无法用 use 命令打开自由表,直接在项目管理器中双击

3、自由表使其处于打开状态,然后在进行相关数据的命令操作;同理,当用use 无法打开题目中的某个表时,要自然地想到它是自由表。(2)将自由表添加到数据库中,并设置为包含。打开数据库设计器,在项目管理器中将对应的自由表直接拖到数据库设计器中,右击选择包含。如果不要求添加到数据库中的,直接右击,选择“包含”即可。8、显示类的名称Checkbox 复选框 Combobox 组合框Editbox 编辑框 Listbox 列表框OptionGroup 选项按钮组 Spinner 微调框Textbox 文本框 Grid 表格OLEBoundControl OLE 绑定型控件|9、表记录个数: RecnoCou

4、nt10、表的触发器:不可用时,输入.F.二、字段格式和字段输入掩码 (非常重要)1、字段格式删除前导空格 T字段全为大写字母 !只允许输入字母或汉字 A2、字段输入掩码只能输入数字 9只能输入字母或汉字 A可以输入任意字符 X可输入数字、空格和正负符号 #举例:某字段宽度为 6,第一位只能输入数字(字母) ,其他为任意字符分别为:9XXXXX AXXXXX注意:会计格式。所谓的会计格式,就是只能输入数字,然后从右向左每 3位加一个逗号,小数位不加逗号。举例:gz N(8) 会计格式为: 99,999,999gz N(5,2) 会计格式为:99,999.99三、字段的有效性规则1、常用到的一些

5、函数 (非常重要)(1)某字段值不能为空(空字符串) ,假设字段为 cj!Empty(cj) 或 .NOT.Empty(cj)某字段值不能为空值!ISNULL(cj) 或 .NOT.ISNULL(cj)同样的,如果需要设置为空或空值时,直接 Empty(cj) 、ISNULL(cj)(2)某字段值大于(等于)A,小于(等于)B,假设字段为 cj (非常重要)两种表达:cj=A .AND. cj0 (非常重要) (8)在字段后面补充字符,用“-” ,可同时保证添加字符与原字符间没有空格在字段前面添加字符,直接用“+”举例:在字段 mc(名称)前后分别添加书名号 ,并使其与字段间无空格则为: “”

6、 + mc - “ ”(9)四舍五入如果数值型字段含有小数,则用函数 ROUND()如:zhcj(综合成绩)字段含有 4 位小数,四舍五入保留两位小数ROUND(zhcj,2)如果数值型字段为整数,要四舍五入,用 Int(字段+5)/10)*10如:cj(成绩)字段全部四舍五入Int(cj+5)/10)*10(10)当前系统的日期 DATE() (非常重要)当前系统的日期时间 DATETIME()另外截取日期型变量常用的函数有以下几个,但是他们转变之后都是数值型的,要是想变成字符型,需要额外用 STR()函数转换。YEAR()、MONTH() 、DAY()、HOUR()举例:“生日信息”使用“

7、xx 月 xx 日”表示,从 csrq 中截取STR(MONTH(csrq),2)+”月”+STR(DAY(csrq),2)+”日”有效性规则常考某个字段在几个年、月、日、小时之间什么的,表示方法为:当前系统日期进行转化:Between(YEAR(DATE(),A,B)某个字段日期进行转化:Between(YEAR(csrq),A,B)2、字段有效性信息和默认值 (非常重要)(1)字段有效性信息输入时,比较要加上双引号(2)字段默认值如果为数值型和逻辑型直接输入,其他的需要加上定界符字符型加双引号,日期型加上花括号,货币型加$|(3)有的题目会说“设置 xx 字段的有效性规则信息” ,这样既要

8、输入有效性规则也要输入有效性信息,不能遗漏。四、表记录修改的相关命令 (非常重要)1、添加删除标记(逻辑删除表中记录)(1)DELETE-SQL 语句Delete from 表 where 条件(2)use 表delete for 条件举例:给 kc 表中所有学分大于或等于 5 的记录追加删除标记第一种:delete from kc where xf=5第二种:use kcdelete for xf=52、彻底删除表中记录 第一种:use 表 第二种: use 表delete all zappack 3、更新表中数据(最常考) (重中之重)update 表 set 字段= 表达式 where

9、条件举例:计算并修改 jy 表中所有记录的 fk 字段值:学生 lx 字段值为 X 借阅天数超过 30 天每天罚款 0.1 元(借阅天数根据借阅日期 jyrq 和还书日期 hsrq 计算) 。update jy set fk=(hsrq-jsrq-30)*0.1 where lx=”X”注意:对于涉及到百分数的,不能使用%,只能通过小数来转化举例:修改 jc 表数据,使所有记录单价字段的值增加 10%update jc set dj=dj*1.14、复制表中记录保存到新表中 (可以复制到其他文件中,见书 95 页)use 表copy to 新表名 for 条件 举例:将 jc 表中出版社名称

10、(cbsmc)为“高等教育出版社”的记录复制到表名为 gdjy 的新表中use jccopy to gdjy for cbsmc=”高等教育出版社”5、为表新增一个字段|Alter table 表名 add 字段名 字段类型(字段宽度)举例:为 jc 表添加 ndj 字段,字段类型为数值型,宽度为 5,小数位数为 2Alter table jc add ndj N(5,2)6、IIF() 函数的具体应用(1)计算并修改 gz 表中所有记录的 ylbx 的值,计算方法如下:如果 gz+jt+qt1800 元,则 ylbx=(gz+jt+qt) 15%,否则 ylbx=180011.5%updat

11、e gz set ylbx=IIF(jbgz+gwjt+qt=1800,(gz+jt+qt)*0.15,1800*0.115)(2)IIF() 函数当中,可以再包含 IIF 函数,无限的套嵌举例:修改 cj 表中的数据,按照成绩值设置备注字段内容,若成绩大于或等于90,则备注字段中设置为“A” ;若成绩大于等于 80 且小于 90,则备注字段设置为“B ”;低于 60 分设置为“D” ;其余设置为“ C”。 update cj set bz=IIF(cj=90,”A”,IIF(cj=80,”B”,IIF(cj30,harq-jyrq-30,0)7、在表中插入记录Insert into 表名(字

12、段 1,字段 2,)values (字段 1 值,字段 2 值,)举例:在 xs 表中插入一条新纪录,姓名:李明,学号: 12121212,性别:男Insert into xs (xm,xh,xb) values (“李明”,”12121212”,”男”)|查询知识点一、零碎知识点1、查询时涉及到自由表的,在添加窗口中点击“其他” ,然后选择题目中要求自由表,并设置关联字段。2、引号问题(非常重要)在一个表中,设置需要输出的字段时,对于姓名(xm)字段,有的题目会说输出字段为 xm,这个时候直接双击该字段即可;有的说输出字段为“姓名” ,这时候要通过表达式来设置,在表达式生成器中输入 xm A

13、S 姓名,然后点击确定添加。需要注意的是,表达式中的汉字不需要加引号,直接输入。3、查询设计器与 Select-SQL 语句的对应关系 (非常重要)字段:即 select 后面的内容联接:即 Inner joinon,两个表通过相同字段进行内联接筛选:即 where,筛选符合 where 后条件的记录|排序依据:即 order by,设置输出记录以某字段排序分组依据:即 group by,设置输出记录以某字段分组(分组依据里包含“符合条件”:即 Having,设置输出记录的条件)杂项:包含两个面(1)记录是否唯一,对应语句为 distinct(2)输出前 X(X%)的记录,对应语句 top X

14、/ X percent(不设置则输出全部)4、查看查询的 SQL 语句在查询设计器的空白处点击右键查看 SQL 信息5、设置查询去向 (非常重要)菜单栏查询查询去向,直接输入文件名,不加后缀名注意:如果查询去向为文本文件,则在前面的步骤全部做完时候,右键点击查看查询的 SQL 语句,然后将其复制粘贴到命令窗口中,在最后一句之后加上分号(;) ,然后在下一行输入:to file 文件名.txt (有时候题目中会出现保存为文本文件,且不输出“列标头” ,则语句为: to file 文件名.txt plain)6、关于是否需要分组(Group by) (非常重要)在题目的表述中,基本上都没有明确要求

15、我们“按分组” ,但是是必须要操作的,分组字段可能为 1 个也可能为多个,根据一些关键词来分辨:(1)在设计查询中,用到了函数表达式,则必须要设置分组(2)题目中出现“每个、每门、各个、按”之类的词,他们后面的基本就是分组字段;或者在输出字段中出现“总分、人数”等。举例:基于 xs 表和 cj 表,查询每位学生参加考试的课程门数、平均成绩。则:分组字段为 xh,即 group by xs.xh7、筛选条件(where)和分组满足条件(Having )的区分(非常重要)Where:题目中表述为“ 查询某字段为 XXX 的” ,一般出现在题目的最前面Having:题目中表述为 “查询结果仅输出 X

16、XX”,一般出现在题目中间或结尾举例:(1)基于 js 表和 yxzy 表,查询各院系职称为“教授”的人数、最小年龄|则筛选条件为:where zc=”教授”(2)基于 js 表查询统计教师生日信息。要求:输出字段为 ;查询结果仅输出年龄为 5 的整数倍的记录;则分组条件为:having mod(年龄,5)=08、设置筛选条件的时候,设计器中的“实例”相当于常量,需要加定界符。9、排序:先选择字段,后选择排序方式二、常用的函数及表达式1、计数(为统计个数) (非常重要)(1)count(*) as 万能表达,题目中没有特别要求的,可以通用(2)Sum(IIF(条件,1,0) 符合条件的记为 1

17、 个,多个 1 个相加即为总个数举例:(1)输出字段为“学生的人数”则:Count(*) as 人数(2)输出字段为:“女生的人数”则:Sum(IIF(xb=”女”,1,0) as 女学生人数(3)输出字段为:“女生占总人数的比例”则:Sum(IIF(xb=”女”,1,0)/Count(*) as 女生占总人数的比例2、求和 Sum() (非常重要)平均数 AVG()最大/小值 MAX()/MIN()字段值为空 Empty() (否定为:!Empty() 或 .NOT.Empty() )条件 IIF() 如果,则,否则3、常用的一些表达方式 (非常重要)(1)年龄:year(date()-year(csrq) as 年龄AVG(year(date()-year(csrq) as 平均年龄MAX/MIN(year(date()-year(csrq) 最大 /最小年龄(2)百分比(率):sum(iif(),1,0)/count(*) as 百分比(率)(3)某某字段前几位作为:left(字段,数字) as XXX

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com