版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Visual FoxProVisual FoxPro程序设计之程序设计之20192019级级 VFP VFP程序设计教程程序设计教程 第二讲第二讲命 令与数 据表docin/sundae_mengLOGO 第 2 页 字字 组词组词 造句造句 写作文写作文n数据类型、常量和变量数据类型、常量和变量n表达式和函数表达式和函数nVF命令命令n写程序写程序学习步骤:有效地进行有效地进行VFPVFP的学习:一步一个脚印的学习:一步一个脚印LOGO 第 3 页VFVF的常量与变量的常量与变量1常量常量3535)1 1数值型常量数值型常量: :如:如:2020,1616,100100,1 1 2 2字符型
2、常量字符型常量: :用单引号或双引号括起的用单引号或双引号括起的字符串,如:字符串,如:ABCDABCD 3 3逻辑型常量,只有两种:逻辑型常量,只有两种:.T.T.和和.F.F4 4日期型常量和日期时间型常量日期型常量和日期时间型常量: :如如2019-04-22,2019-04-24 10:00am2019-04-22,2019-04-24 10:00am5 5货币型常量:货币型常量:$1234 $1234 LOGO 第 4 页变量变量3838)内存变量内存变量存放单个数据的内存单元存放单个数据的内存单元 数组变量数组变量存放多个数据的内存单元组存放多个数据的内存单元组 字段变量字段变量存
3、放在二维表中的数据项存放在二维表中的数据项 系统变量系统变量VFPVFP提供了一批系统内存变量,它们提供了一批系统内存变量,它们都以下划线开头,分别用于控制外部设备都以下划线开头,分别用于控制外部设备( (如打印如打印机、鼠标器等机、鼠标器等) ),屏幕输出格式等方面的信息。,屏幕输出格式等方面的信息。VFVF的常量与变量的常量与变量1LOGO 第 5 页变量变量3838)以字母、数字及下划线组成,中文以字母、数字及下划线组成,中文VFPVFP可以可以 使用汉字作变量名。使用汉字作变量名。以字母或下划线开始,中文以字母或下划线开始,中文VFPVFP可以汉字开始。可以汉字开始。长度为长度为1-1
4、281-128个字符,每个汉字占个字符,每个汉字占2 2个字符。个字符。不能使用不能使用VFPVFP的保留字。的保留字。VFVF的常量与变量的常量与变量变量命名规则1LOGO 第 6 页变量变量内存变量内存变量 内存变量是一般意义下的简内存变量是一般意义下的简单变量。每一个内存变量都必须有单变量。每一个内存变量都必须有一个固定的名称,以标识该内存单一个固定的名称,以标识该内存单元的存储位置。用户可以通过变量元的存储位置。用户可以通过变量标识符使用内存单元存取数据。标识符使用内存单元存取数据。 内存变量的类型有数值型、内存变量的类型有数值型、浮点型、字符型、逻辑型、日期型浮点型、字符型、逻辑型、
5、日期型和日期时间型和日期时间型6 6种,它的定义是通种,它的定义是通过赋值语句来进行的。过赋值语句来进行的。 VFVF的常量与变量的常量与变量1LOGO 第 7 页1变量变量 1、= 2、STORE TO 功能:计算表达式,然后将计算结果赋给内存变量。功能:计算表达式,然后将计算结果赋给内存变量。格式格式1只能给一个内存变量赋值,而格式只能给一个内存变量赋值,而格式2可以将可以将同一数据赋给多个内存变量。同一数据赋给多个内存变量。 说明:说明: 内存变量在赋值时定义了它的值及类型,其类型内存变量在赋值时定义了它的值及类型,其类型与所赋的值的类型相同。与所赋的值的类型相同。 STORE命令的命令
6、的可包括多个内存变量,可包括多个内存变量,但须用逗号来分隔。但须用逗号来分隔。VFVF的常量与变量的常量与变量内存变量赋值语句内存变量赋值语句LOGO 第 8 页VFVF的常量与变量的常量与变量1 s=计算机计算机 &字符串计算机赋给变量字符串计算机赋给变量s,s成为字成为字符型变量符型变量 STORE 2*4 TO x,y,z &计算计算2*4得得8,x、y、z值都为值都为8,均,均是数值型变量是数值型变量 &: 注释语句注释语句变量变量LOGO 第 9 页VFVF的常量与变量的常量与变量1变量变量内存变量赋值后有两种输出方式:内存变量赋值后有两种输出方式:1 1、l
7、ist memory list memory 内存变量名内存变量名2 2、?或?输出(?进行换行输出,?、?或?输出(?进行换行输出,?不换行输出)不换行输出)* * * *切记不可边赋值边输出,即?切记不可边赋值边输出,即?A=2A=2* *3 3LOGO 第 10 页VFVF的函数的函数2函数函数4242)函数一般格式:函数名(函数一般格式:函数名( 参数表参数表 ) 1. 1.数值函数数值函数求绝对值函数:求绝对值函数:ABS(ABS()例:例:?abs(-16) ?abs(-16) 结果结果:16:16求平方根函数:求平方根函数:SQRT(SQRT()例:例:?sqrt(16) ?sq
8、rt(16) 结果结果:4:4取整函数取整函数:INT(:INT() CEILING ( CEILING () FLOOR ( FLOOR ()例:例:?int(56.72) ?int(56.72) 结果结果:56:56LOGO 第 11 页VFVF的函数的函数2函数函数求余数函数求余数函数MOD(,) 注意:如果被除数与除数同号,函数值注意:如果被除数与除数同号,函数值为两数相除的余数,如果被除数与除数异号,为两数相除的余数,如果被除数与除数异号,函数值为两数的余数再加上除数的值。所得函数值为两数的余数再加上除数的值。所得余数的符号和表达式余数的符号和表达式2相同。相同。例:例:?mod(2
9、5,7) 结果结果:4 ?mod(25,7) 结果结果:3 四舍五入函数四舍五入函数ROUND(,) 求最大值和最小值函数求最大值和最小值函数MAX(, )MIN(, )LOGO 第 12 页VFVF的函数的函数2函数函数2、字符函数:、字符函数:格式:LEN()例如:?LEN(“ABCDF”) X=“首都经贸大学” ?LEN(X) 格式:SPACE()例如:?“北京”+SPACE(3)+“首都”LOGO 第 13 页VFVF的函数的函数2函数函数格式:格式:SUBSTR(SUBSTR( , 1, )2)例如:例如:?SUBSTR(“?SUBSTR(“城市经济城市经济”,5,4)”,5,4)L
10、EFT(LEFT( , RIGHT(RIGHT( , LOGO 第 14 页VFVF的函数的函数2函数函数格式:格式:STR(STR(1, , 3 功能:将数值型表达式功能:将数值型表达式1 1的值转换成字符串,的值转换成字符串, 2决定转换后字符串的长度,决定转换后字符串的长度, 3决定保留的小数位数决定保留的小数位数 。LOGO 第 15 页VFVF的表达式的表达式3表达式表达式5050)算术表达式算术表达式算术运算符算术运算符 括号括号 ( ) 乘方乘方 * 或或 乘乘 * 除除 / 求余求余 % 加加 + 减减 -?2*(3+6)?65/43?216?100%13a=3b=6c=2X1
11、=(-b+(b2-4*a*c)(1/2)/(2*a)LOGO 第 16 页VFVF的表达式的表达式3表达式表达式字符表达式字符表达式 连接运算符:连接运算符:+和和- 例:例:x=中国中国 y=新乡新乡 ?x+y 结果:中国结果:中国 新新乡乡 ?x-y 结果:中国新乡结果:中国新乡包含运算符:包含运算符:$(结果是逻辑值)(结果是逻辑值) 例:例: ?old $ hold 结果:结果: .T.LOGO 第 17 页VFVF的表达式的表达式3表达式表达式日期和时间表达式日期和时间表达式运算符:运算符:+和和- 例:例:2019-05-01-2019-04-08 2019-05-01-DATE(
12、 )DATE( )函数:取系统当前日函数:取系统当前日期期(P46)LOGO 第 18 页VFVF的表达式的表达式3表达式表达式关系表达式关系表达式(p51)关系运算符:关系运算符:=、=、或或!=结果是逻辑值结果是逻辑值字符的比较规则:字符的比较规则: Machine PinYin Stroke 例:例:?1223/5+6 结结果:果:.F. ?”张三张三”he 结结果:果:.T. LOGO 第 19 页VFVF的表达式的表达式3表达式表达式逻辑表达式逻辑表达式逻辑运算符:逻辑运算符: 非非 NOT .NOT. ! 与与 AND .AND. 或或 OR .OR.例:例:!128 结结果:果:
13、.F. 128 AND 68 OR 63 结结果:果:.T.LOGO 第 20 页VFVF表的基本操作表的基本操作表的建立表的建立5757)4 二维表的两个组成部分:表结构、表记录,建立表的关键在于表结构的设计。CREATE命令或文件/新建菜单方式可打开表设计器,表的扩展名默认为.DBF,表建好后放置在默认目录中LOGO 第 21 页VFVF表的基本操作表的基本操作表的建立表的建立4 设计表结构的关键要素: 1、字段名字段变量):由汉字、字母、数字或下划线组成,以汉字、字母或下划线开头,自由表的字段名最多为10个字符,数据库表的字段名最多为128个字符。 2、字段类型: 3、字段宽度: 4、小
14、数位数: 5、是否允许 为空值NULLLOGO 第 22 页VFVF表的基本操作表的基本操作表的建立表的建立4p表结构的修改命令:P63p Modify structurep 表结构的显示:P62pList/Display Structure to printerprompt pto filep表结构的复制:P69pCopy structure to fieldsLOGO 第 23 页VFVF表的基本操作表的基本操作记录指针与定位记录指针与定位(66)(66)4 VF系统给表中每个记录提供一个记录号并自动设置一个指针,表打开时记录指针指向第一个记录LOGO 第 24 页VFVF表的基本操作表的
15、基本操作记录指针与定位记录指针与定位4绝对定位与相对定位绝对定位与相对定位 相对定位:go go top go bottom在当前记录指针位置的基础上,将记录指针向前或向后移动N条N为正数向后移动,N为负数向前移动)。 格式: SKIP NLOGO 第 25 页VFVF表的基本操作表的基本操作记录指针与定位记录指针与定位4表头、表尾定位表头、表尾定位记录开始标志第一条记录第二条记录第n条记录记录结尾标志GOTOPGOBOTTOMBOFBeginoffileEOFEndoffile例例:USESTUDENTGO4SKIP-2SKIP3VFVF表的基本操作表的基本操作记录指针与定位记录指针与定位4
16、表结构记录号函数值记录开始标志1BOF( )=.T.第一条记录1BOF( )=.F.第二条记录2RECNO( )=2第十条记录10RECNO( )=10记录结尾标志11EOF( )=.T.表中记录定位的相关函数表中记录定位的相关函数LOGO 第 28 页VFVF表的基本操作表的基本操作4LIST/DISPLAYLIST/DISPLAY命令命令(62)(62)List /Display Fields FOR While To PrinterPromptTo File OFF 1、 Fields 举例:List/disp fiel 学号,姓名,籍贯2、 FOR While举例:List for m
17、od(recno(),2)=13、 To PrinterPrompt4、 To File5、OFF 说明:LOGO 第 29 页VFVF表的基本操作表的基本操作4LIST/DISPLAYLIST/DISPLAY命令命令ALL 所有记录,缺省范围子句时通常默认为所有记录,缺省范围子句时通常默认为ALLALLNEXT 从当前记录起的从当前记录起的N N个记录个记录RECORD 第第N N个记录个记录REST 从当前记录起到最后一个记录止的所有记录从当前记录起到最后一个记录止的所有记录范围子句范围子句LOGO 第 30 页VFVF表的基本操作表的基本操作4LIST/DISPLAYLIST/DISPL
18、AY命令命令FOR子句 FOR子句的为逻辑表达式,它指定选择记录的条件。FOR子句默认的搜索范围为全部记录。若命令中还含有范围子句,则在指定范围中筛选出符合条件的记录。举例举例:LIST FOR !少数民族否少数民族否 .AND. 性别性别=“男男”LIST 姓名,性别,姓名,性别,year(date()-year(出生日期出生日期),简历简历 for “湖湖”$籍贯籍贯LOGO 第 31 页VFVF表的基本操作表的基本操作4LIST/DISPLAYLIST/DISPLAY命令命令WHILE子句 该子句也用于指明操作条件,但它仅在当前记录符合时开始依次筛选记录,一旦遇到不满足条件的记录时就停止
19、操作。LIST WHILE 性别性别=“男男”LOGO 第 32 页VFVF表的基本操作表的基本操作4LIST/DISPLAYLIST/DISPLAY命令命令注意:注意: LIST / DISPLAY命令兼有查询的功能 另有定位查询命令:LOCATE范围FORWHILE(必须与DISPLAY命令结合使用) Use student Locate for !少数民族否 and 性别=“男” Disp 姓名,入学成绩, year(dae()-year(出生日期) Continue dispLOGO 第 33 页VFVF表的基本操作表的基本操作4表的修改表的修改1窗口浏览式修改命令(p64) BROW
20、SE FIELDSfor 功能:浏览或编辑表文件中数据,在该窗口可以进行修改数据、添加数据、删除数据等操作。 FIELDS可以指定字段进行显示或 修改数据。举例:brow fiel 学号,姓名,入学成绩 for 性别=“女”LOGO 第 34 页VFVF表的基本操作表的基本操作4表的修改表的修改2数据的批量修改命令数据的批量修改命令(p66)REPLACE WITH ADDITIVE , WITH ADDITIVE 范围 FORwhile 功能:用表达式的值自动替换指定字段值 注意1范围或条件缺省,只替换当前记录 (2)ADDITIVE选项,表达式值添加到备注字段中已有数据的尾部,否则表达式值
21、将覆盖字段的原有数据。LOGO 第 35 页VFVF表的基本操作表的基本操作4举例:p66(例题4.3) USE STUDENT REPLACE 入学成绩 WITH 入学成绩+20 ; for 少数民族否 List Go 6 REPLACE 出生日期 with 1983-09-07 Disp表的修改表的修改LOGO 第 36 页VFVF表的基本操作表的基本操作4表的删除表的删除表数据的删除及恢复表数据的删除及恢复 删除机制: 逻辑删除:加删除标记放入回收站) 物理删除:将加删除标记的记录从表中真正清除清空回收站) 恢复:去删除标记复原)LOGO 第 37 页(四(四VFVF的表的表4表的删除表
22、的删除逻辑删除逻辑删除 格式:格式:DELETE 范围范围 FOR While 说明:若无范围或条件,只删除当前记录说明:若无范围或条件,只删除当前记录恢复被逻辑删除的命令恢复被逻辑删除的命令 格式:格式:RECALL 范围范围 FORwhile 物理删除物理删除 格式:格式:PACK &彻底删除被逻辑删除的记录彻底删除被逻辑删除的记录数据表清空数据表清空 ZAP &彻底删除所有记录除表结构)彻底删除所有记录除表结构)LOGO 第 38 页VFVF表的基本操作表的基本操作4饭卡信息管理命令实例饭卡信息管理命令实例 查询余额: LIST 余额 FOR 卡号=“20190612”
23、消费: REPLACE 余额 WITH 余额-3.2 加钱: REPLACE 余额 WITH 余额+50 开卡: APPEND BLANK REPLACE 卡号 WITH “20190612”,姓名 WITH “赵军” ,余额 WITH 100 销户: DELETE FOR 卡号=“20190612” PACKLOGO 第 39 页VFVF表的基本操作表的基本操作4表的复制表的复制 命令格式:P69 Copy tofields forwhiletypesdfdelimitedxlswithblank 举例: Use student Copy to newb1 for 入学成绩600 Use n
24、ewb1 ListLOGO 第 40 页VFVF表的基本操作表的基本操作4 排序是根据不同的字段对当前表的记录做出不同的排列,产生一个新表。Sort to on /a/d/c ,/a/d/c fields forwhile 举例: Use student Sort on 入学成绩/d to cjb Use cjb List next 5表的排序表的排序(p73)LOGO 第 41 页VFVF表的基本操作表的基本操作4 索引并不是重新排列表记录的物理顺序,而是另外形成一个索引关键表达式与记录号之间的对照表索引文件)。表的索引表的索引(p74)LOGO 第 42 页VFVF表的基本操作表的基本操作
25、4 索引文件的种类: 1单索引文件:只能保存一个索引,单索引文件的扩展名为:.idx 2复合索引文件:可以存储多个索引,是一个压缩的索引文件,其扩展名为:.cdx *有一类特殊的复合索引文件叫做结构复合索引文件,此类索引文件的文件名与相应的表文件名相同,扩展名为.cdx,无论何时打开表,该类索引文件由系统同时打开。所以对表的记录进行修改时,结构复合索引文件会进行自动更新!表的索引表的索引LOGO 第 43 页VFVF表的基本操作表的基本操作4索引的类型:索引的类型:1主索引:不允许在指定字段或表达式中主索引:不允许在指定字段或表达式中出现重复值的索引,只有数据库表才能出现重复值的索引,只有数据
26、库表才能建立主索引而且每一个表只能建立一个建立主索引而且每一个表只能建立一个主索引。主索引。2候选索引:也是不允许在指定字段或表候选索引:也是不允许在指定字段或表达式中出现重复值的索引,数据库表和达式中出现重复值的索引,数据库表和自由表都可以建立候选索引,并且一个自由表都可以建立候选索引,并且一个表可以建立多个候选索引。表可以建立多个候选索引。3惟一索引:系统只在索引文件中保留第惟一索引:系统只在索引文件中保留第一次出现的索引关键字值,数据库表和一次出现的索引关键字值,数据库表和自由表都可以建立惟一索引。自由表都可以建立惟一索引。4普通索引:允许索引关键字值重复出现普通索引:允许索引关键字值重
27、复出现,适合用来进行表中记录的排序和查询,适合用来进行表中记录的排序和查询,数据库表和自由表都可以建立普通索,数据库表和自由表都可以建立普通索引。引。表的索引表的索引LOGO 第 44 页VFVF表的基本操作表的基本操作4 Index on To tagofforcompactascendingdescendinguniqueadditive(1索引表达式的操作数应具有相同的数据类型。(2选择竖线左侧的to 则产生单索引文 件,否则产生复合索引文件。(3建立复合索引时,系统默认或选用ascending,按索引表达式的升序建立索引,选用descending按降序建立索引,单索引文件只能按升序索引
28、。(4选用unique,对于索引表达式相同的记录,只选第一个记录表的索引表的索引LOGO 第 45 页VFVF表的基本操作表的基本操作4 例题1:就学生表,显示入学成绩最高的5名学生的记录 Use student Index on 入学成绩 to sy List next 5 例题2: 1按学号的升序排序,不允许有编号相同的记录 2先按性别排序,性别相同再按入学成绩降序排序 Use student Index on 学号 tag sy1 unique List Index on 性别+str(1000-入学成绩) tag sy2 List 表的索引表的索引LOGO 第 46 页VFVF表的基本操作表的基本操作4 1、索引文件的打开: Use i
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 广东理工职业学院《JavaWEB开发技术课程综合实践》2023-2024学年第一学期期末试卷
- 广东科贸职业学院《大学职业发展与就业指导4》2023-2024学年第一学期期末试卷
- 广东江门中医药职业学院《高等数学II》2023-2024学年第一学期期末试卷
- 广东机电职业技术学院《中学英语》2023-2024学年第一学期期末试卷
- 广东环境保护工程职业学院《工程荷载与可靠度设计方法》2023-2024学年第一学期期末试卷
- 广东财贸职业学院《经贸应用文写作》2023-2024学年第一学期期末试卷
- 共青科技职业学院《电力电子与变频技术》2023-2024学年第一学期期末试卷
- 中考物理基础复习课件
- 贸促会法律培训课件
- 赣南卫生健康职业学院《能源转换原理B》2023-2024学年第一学期期末试卷
- 2024浙江宁波市象山县人力资源和社会保障局招聘历年公开引进高层次人才和急需紧缺人才笔试参考题库(共500题)答案详解版
- 新概念第二册课文和单词
- 吾悦广场商场开业仪式开业庆典周年庆活动方案
- JJG 393-2018便携式X、γ辐射周围剂量当量(率)仪和监测仪
- 2023年6月新高考历史浙江卷试题真题答案解析版
- 人教新起点(一起)五年级英语上册全册知识点
- 幼儿园小班教案《垫子多玩》
- 2024年等离子切割机市场需求分析报告
- 高速公路服务区业态创新策划书
- 论药品管理在药品安全中的重要性
- 河北省唐山市2023-2024学年高一上学期1月期末考试物理试题(含答案解析)
评论
0/150
提交评论