【大学课件】Visual FoxPro程序设计之数据和表命令.ppt

上传人:本田雅阁 文档编号:3034336 上传时间:2019-06-28 格式:PPT 页数:50 大小:1.64MB
返回 下载 相关 举报
【大学课件】Visual FoxPro程序设计之数据和表命令.ppt_第1页
第1页 / 共50页
【大学课件】Visual FoxPro程序设计之数据和表命令.ppt_第2页
第2页 / 共50页
【大学课件】Visual FoxPro程序设计之数据和表命令.ppt_第3页
第3页 / 共50页
【大学课件】Visual FoxPro程序设计之数据和表命令.ppt_第4页
第4页 / 共50页
【大学课件】Visual FoxPro程序设计之数据和表命令.ppt_第5页
第5页 / 共50页
点击查看更多>>
资源描述

《【大学课件】Visual FoxPro程序设计之数据和表命令.ppt》由会员分享,可在线阅读,更多相关《【大学课件】Visual FoxPro程序设计之数据和表命令.ppt(50页珍藏版)》请在三一文库上搜索。

1、,Visual FoxPro程序设计之,2012级 VFP程序设计教程 第二讲,命,令,与,数,据,表,http:/ 组词 造句 写作文,数据类型、常量和变量 表达式和函数 VF命令 写程序,学习步骤:,有效地进行VFP的学习:一步一个脚印,VF的常量与变量,1,常量(35),1)数值型常量:如:20,16,100,1 2)字符型常量:用单引号或双引号括起的 字符串,如:“ABCD“ 3)逻辑型常量,只有两种:.T.和.F 4)日期型常量和日期时间型常量: 如1999-04-22,1999-04-24 10:00am 5)货币型常量:$1234,变量(38),内存变量存放单个数据的内存单元 数

2、组变量存放多个数据的内存单元组 字段变量存放在二维表中的数据项 系统变量VFP提供了一批系统内存变量,它们都以下划线开头,分别用于控制外部设备(如打印机、鼠标器等),屏幕输出格式等方面的信息。,VF的常量与变量,1,变量(38),以字母、数字及下划线组成,中文VFP可以 使用汉字作变量名。 以字母或下划线开始,中文VFP可以汉字开始。 长度为1-128个字符,每个汉字占2个字符。 不能使用VFP的保留字。,VF的常量与变量,变量命名规则,1,变量,内存变量 内存变量是一般意义下的简单变量。每一个内存变量都必须有一个固定的名称,以标识该内存单元的存储位置。用户可以通过变量标识符使用内存单元存取数

3、据。 内存变量的类型有数值型、浮点型、字符型、逻辑型、日期型和日期时间型6种,它的定义是通过赋值语句来进行的。,VF的常量与变量,1,1,变量,1、= 2、STORE TO 功能:计算表达式,然后将计算结果赋给内存变量。格式1只能给一个内存变量赋值,而格式2可以将同一数据赋给多个内存变量。 说明: 内存变量在赋值时定义了它的值及类型,其类型与所赋的值的类型相同。 STORE命令的可包括多个内存变量,但须用逗号来分隔。,VF的常量与变量,内存变量赋值语句,VF的常量与变量,1,s=“计算机“ &字符串计算机赋给变量s,s成为字符型变量 STORE 2*4 TO x,y,z &计算2*4得8,x、

4、y、z值都为8,均是数值型变量 &: 注释语句,变量,VF的常量与变量,1,变量,内存变量赋值后有两种输出方式: 1、list memory 内存变量名 2、?或?输出(?进行换行输出,?不换行输出) *切记不可边赋值边输出,即?A=2*3,VF的函数,2,函数(42),函数一般格式:函数名(参数表) 1.数值函数 求绝对值函数:ABS() 例:?abs(-16) 结果:16 求平方根函数:SQRT() 例:?sqrt(16) 结果:4 取整函数:INT() CEILING () FLOOR () 例:?int(56.72) 结果:56,VF的函数,2,函数,求余数函数 MOD(,) 注意:如

5、果被除数与除数同号,函数值为两数相除的余数,如果被除数与除数异号,函数值为两数的余数再加上除数的值。所得余数的符号和表达式2相同。 例:?mod(25,7) 结果:4 ?mod(25,7) 结果:3 四舍五入函数 ROUND(,) 求最大值和最小值函数 MAX(, ) MIN(, ),VF的函数,2,函数,2、字符函数:,计算字符串长度函数LEN(),格式:LEN() 示例:?LEN(“ABCDF”) X=“首都经贸大学” ?LEN(X),生成空格函数SPACE(),格式:SPACE() 示例:?“北京”+SPACE(3)+“首都”,VF的函数,2,函数,取子字符串函数 SUBSTR()、LE

6、FT()、RIGHT(),格式:SUBSTR(,) 示例:?SUBSTR(“城市经济”,5,4) LEFT(, RIGHT(,,VF的函数,2,函数,转换函数(48) STR()、val()、CTOD()、DTOC(),格式:STR(,, 功能:将数值型表达式1的值转换成字符串, 决定转换后字符串的长度, 决定保留的小数位数 。,VF的表达式,3,表达式(50),算术表达式 算术运算符 括号 ( ) 乘方 * 或 乘 * 除 / 求余 % 加 + 减 -,?2*(3+6) ?65/43 ?216 ?100%13 a=3 b=6 c=2 X1=(-b+(b2-4*a*c)(1/2)/(2*a),

7、VF的表达式,3,表达式,字符表达式 连接运算符:+和- 例:x=中国 y=新乡 ?x+y 结果:中国 新乡 ?x-y 结果:中国新乡 包含运算符:$(结果是逻辑值) 例: ?old $ hold 结果: .T.,VF的表达式,3,表达式,日期和时间表达式 运算符:+和- 例:2010-05-01-2010-04-08 2010-05-01-DATE( ) DATE( )函数:取系统当前日期(P46),VF的表达式,3,表达式,关系表达式(p51) 关系运算符:=、=、或!= 结果是逻辑值 字符的比较规则: Machine PinYin Stroke 例:?12he 结果:.T.,VF的表达式

8、,3,表达式,逻辑表达式 逻辑运算符: 非 NOT .NOT. ! 与 AND .AND. 或 OR .OR. 例:!128 结果:.F. 128 AND 68 OR 63 结果:.T.,VF表的基本操作,表的建立(57),4,二维表的两个组成部分:表结构、表记录,建立表的关键在于表结构的设计。,CREATE命令或文件/新建菜单方式可打开表设计器,表的扩展名默认为.DBF,表建好后放置在默认目录中,VF表的基本操作,表的建立,4,设计表结构的关键要素: 1、字段名(字段变量):由汉字、字母、数字或下划线组成,以汉字、字母或下划线开头,自由表的字段名最多为10个字符,数据库表的字段名最多为128

9、个字符。 2、字段类型: 3、字段宽度: 4、小数位数: 5、是否允许 为空值NULL,VF表的基本操作,表的建立,4,表结构的修改命令:P63 Modify structure 表结构的显示:P62 List/Display Structure to printerprompt to file 表结构的复制:P69 Copy structure to fields,VF表的基本操作,记录指针与定位(66),4,VF系统给表中每个记录提供一个记录号并自动设置一个指针,表打开时记录指针指向第一个记录,VF表的基本操作,记录指针与定位,4,绝对定位与相对定位,相对定位:go go top go b

10、ottom 在当前记录指针位置的基础上,将记录指针向前或向后移动N条(N为正数向后移动,N为负数向前移动)。 格式: SKIP N,VF表的基本操作,记录指针与定位,4,表头、表尾定位,GO TOP,GO BOTTOM,BOF Begin of file,EOF End of file,例: USE STUDENT GO 4 SKIP -2 SKIP 3,VF表的基本操作,记录指针与定位,4,表中记录定位的相关函数,VF表的基本操作,4,LIST/DISPLAY命令(62),List /Display Fields FOR While To PrinterPromptTo File OFF,1

11、、 Fields 举例:List/disp fiel 学号,姓名,籍贯 2、 FOR While 举例:List for mod(recno(),2)=1 3、 To PrinterPrompt 4、 To File 5、OFF,说明:,VF表的基本操作,4,LIST/DISPLAY命令,范围子句,VF表的基本操作,4,LIST/DISPLAY命令,FOR子句,FOR子句的为逻辑表达式,它指定选择记录的条件。FOR子句默认的搜索范围为全部记录。若命令中还含有范围子句,则在指定范围中筛选出符合条件的记录。,举例: LIST FOR !少数民族否 .AND. 性别=“男” LIST 姓名,性别,y

12、ear(date()-year(出生日期),简历 for “湖”$籍贯,VF表的基本操作,4,LIST/DISPLAY命令,WHILE子句,该子句也用于指明操作条件,但它仅在当前记录符合时开始依次筛选记录,一旦遇到不满足条件的记录时就停止操作。,LIST WHILE 性别=“男”,VF表的基本操作,4,LIST/DISPLAY命令,注意:,LIST / DISPLAY命令兼有查询的功能 另有定位查询命令:LOCATE范围FORWHILE(必须与DISPLAY命令结合使用) Use student Locate for !少数民族否 and 性别=“男” Disp 姓名,入学成绩, year(d

13、ae()-year(出生日期) Continue disp,VF表的基本操作,4,表的修改,1)窗口浏览式修改命令(p64) BROWSE FIELDSfor 功能:浏览或编辑表文件中数据,在该窗口可 以进行修改数据、添加数据、删除数据等操作。 FIELDS可以指定字段进行显示或 修改数据。 举例: brow fiel 学号,姓名,入学成绩 for 性别=“女”,VF表的基本操作,4,表的修改,2)数据的批量修改命令(p66),REPLACE WITH ADDITIVE , WITH ADDITIVE 范围 FORwhile 功能:用表达式的值自动替换指定字段值 注意(1)范围或条件缺省,只替

14、换当前记录 (2)ADDITIVE选项,表达式值添加到备注字段中已有数据的尾部,否则表达式值将覆盖字段的原有数据。,VF表的基本操作,4,举例:p66(例题4.3),USE STUDENT REPLACE 入学成绩 WITH 入学成绩+20 ; for 少数民族否 List Go 6 REPLACE 出生日期 with 1983-09-07 Disp,表的修改,VF表的基本操作,4,表的删除,表数据的删除及恢复,删除机制: 逻辑删除:加删除标记(放入回收站) 物理删除:将加删除标记的记录从表中真正清除(清空回收站) 恢复:去删除标记(还原),(四)VF的表,4,表的删除,逻辑删除 格式:DEL

15、ETE 范围 FOR While 说明:若无范围或条件,只删除当前记录 恢复被逻辑删除的命令 格式:RECALL 范围 FORwhile 物理删除 格式:PACK &彻底删除被逻辑删除的记录 数据表清空 ZAP &彻底删除所有记录(除表结构),VF表的基本操作,4,饭卡信息管理命令实例,查询余额: LIST 余额 FOR 卡号=“20060612” 消费: REPLACE 余额 WITH 余额-3.2 加钱: REPLACE 余额 WITH 余额+50 开卡: APPEND BLANK REPLACE 卡号 WITH “20060612”,姓名 WITH “赵军” ,余额 WITH 100 销

16、户: DELETE FOR 卡号=“20060612” PACK,VF表的基本操作,4,表的复制,命令格式:P69 Copy tofields forwhiletypesdfdelimitedxlswithblank 举例: Use student Copy to newb1 for 入学成绩600 Use newb1 List,VF表的基本操作,4,排序是根据不同的字段对当前表的记录做出不同的排列,产生一个新表。 Sort to on /a/d/c ,/a/d/c fields forwhile 举例: Use student Sort on 入学成绩/d to cjb Use cjb Li

17、st next 5,表的排序(p73),VF表的基本操作,4,索引并不是重新排列表记录的物理顺序,而是另外形成一个索引关键表达式与记录号之间的对照表(索引文件)。,表的索引(p74),VF表的基本操作,4,索引文件的种类: 1)单索引文件:只能保存一个索引,单索引文件的扩展名为:.idx 2)复合索引文件:可以存储多个索引,是一个压缩的索引文件,其扩展名为:.cdx *有一类特殊的复合索引文件叫做结构复合索引文件,此类索引文件的文件名与相应的表文件名相同,扩展名为.cdx,无论何时打开表,该类索引文件由系统同时打开。所以对表的记录进行修改时,结构复合索引文件会进行自动更新!,表的索引,VF表的

18、基本操作,4,索引的类型: 1)主索引:不允许在指定字段或表达式中出现重复值的索引,只有数据库表才能建立主索引而且每一个表只能建立一个主索引。 2)候选索引:也是不允许在指定字段或表达式中出现重复值的索引,数据库表和自由表都可以建立候选索引,并且一个表可以建立多个候选索引。 3)惟一索引:系统只在索引文件中保留第一次出现的索引关键字值,数据库表和自由表都可以建立惟一索引。 4)普通索引:允许索引关键字值重复出现,适合用来进行表中记录的排序和查询,数据库表和自由表都可以建立普通索引。,表的索引,VF表的基本操作,4,Index on To tagof forcompactascendingdes

19、cendinguniqueadditive (1)索引表达式的操作数应具有相同的数据类型。 (2)选择竖线左侧的to 则产生单索引文 件,否则产生复合索引文件。 (3)建立复合索引时,系统默认或选用ascending,按索引表达式的升序建立索引,选用descending按降序建立索引,单索引文件只能按升序索引。 (4)选用unique,对于索引表达式相同的记录,只选第一个记录,表的索引,VF表的基本操作,4,例题1:就学生表,显示入学成绩最高的5名学生的记录 Use student Index on 入学成绩 to sy List next 5 例题2: 1)按学号的升序排序,不允许有编号相同

20、的记录 2)先按性别排序,性别相同再按入学成绩降序排序 Use student Index on 学号 tag sy1 unique List Index on 性别+str(1000-入学成绩) tag sy2 List,表的索引,VF表的基本操作,4,1、索引文件的打开: Use index Set index to additive 2、主控索引 Set order to tag of 3、关闭索引文件 Close index Set index to,表的索引,VF表的基本操作,4,4、删除索引 Delete file 删除单索引文件 Delete tag all 删除复合索引文件 5

21、、更新索引:Reindex compact 6、索引定位查询:Seek 举例:就学生表查询1983年9月7日出生的学生的记录 Use student Index on 出生日期 tag sy4 D=1983-09-07 Seek D Disp,表的索引,VF表的基本操作,5,1)每条命令必须以命令动词开头,以回车键结束,若一行不能写完,可以用“;”标注,在下一行继续输入该命令。一条VFP的最大长度为8192个字符。 2)命令动词与子句、子句与子句、子句内的各部分之间必须用空格隔开。 3)命令动词与各子句中的保留字等都可简写为前4个字 符,而且不区分大小写。 4)命令格式中以“|”分隔的两项表示两者之中选其一; 用中括号“ ”括起来的部分表示可选项; 用尖括号“”括起来的部分表示不能省略的内容。 5)命令行中所出现的标点符号必须是英文状态的,VFP的命令格式,实验作业,1.p55页:6 2.p55页:7 3.第四章重要例题,课件制作,数据库系统概论,数据库系统简明教程,数据库技术与应用,参考书目:,谢谢,我们见证: 计算机应用已进入菜鸟时代!,http:/

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

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1