关系数据库管理系统VFP全套PPT教学课件

上传人:1666****666 文档编号:65859472 上传时间:2022-03-25 格式:PPT 页数:226 大小:4.36MB
收藏 版权申诉 举报 下载
关系数据库管理系统VFP全套PPT教学课件_第1页
第1页 / 共226页
关系数据库管理系统VFP全套PPT教学课件_第2页
第2页 / 共226页
关系数据库管理系统VFP全套PPT教学课件_第3页
第3页 / 共226页
资源描述:

《关系数据库管理系统VFP全套PPT教学课件》由会员分享,可在线阅读,更多相关《关系数据库管理系统VFP全套PPT教学课件(226页珍藏版)》请在装配图网上搜索。

1、2022-3-25Visual FoxPro 6.0 1江苏科技大学江苏科技大学 经济管理学院经济管理学院2022-3-25Visual FoxPro 6.0 2予人以鱼予人以鱼不如予人以渔不如予人以渔2022-3-25Visual FoxPro 6.0 3章节导航章节导航1 数据库系统及数据库系统及VFP概述概述2 VFP语言基础语言基础 4 数据库的创建和使用数据库的创建和使用5 查询和视图查询和视图3 表的创建和使用表的创建和使用 6 对象模型和事件模型对象模型和事件模型7 表单表单 8 控件控件 10 类的创建和应用类的创建和应用11 菜单和工具栏菜单和工具栏9 报表和标签报表和标签

2、12 建立应用程序建立应用程序2022-3-25Visual FoxPro 6.0 4第第1章章 数据库系统及数据库系统及Visual FoxPro 概述概述1.1 VFP的发展概述及启动的发展概述及启动 1.2 数据库系统的组成数据库系统的组成 1.4 主流主流DBMS产品产品1.5 Visual FoxPro概述概述1.3 数据模型数据模型 1.6 项目管理器项目管理器返回返回2022-3-25Visual FoxPro 6.0 51.1 VFP6.0的发展概述及启动的发展概述及启动1、1986年6月推出了FoxBASE+ 1.0版 2、1987年7月推出了FoxBASE+ 2.0版 3、

3、1988年7月推出了FoxBASE+ 2.1版4、1992年下半年推出了FoxPro 2.5版5、1994年下半年推出了FoxPro 2.6版6、1995年6月推出了Visual FoxPro 3.0 7、1996年8月推出了Visual FoxPro5.0 8、1998年9月推出了Visual FoxPro6.0目前已发展到Visual FoxPro9.0 Beta返回返回2022-3-25Visual FoxPro 6.0 6Visual FoxPro 6.0 系统启动系统启动返回返回单击单击双击桌面双击桌面快捷方式快捷方式或或2022-3-25Visual FoxPro 6.0 71.2

4、 数据库系统的组成(数据库系统的组成(1)应用程序应用程序1应用程序应用程序2应用程序应用程序n数据库数据库管理系统管理系统操作系统操作系统数据库数据库数据库系统数据库系统 返回返回数据库系统的基本组成包括数据库系统的基本组成包括: :v数据库数据库v数据库管理系统数据库管理系统v数据库管理员数据库管理员2022-3-25Visual FoxPro 6.0 81.2 数据库系统的组成数据库系统的组成 (2)用户程序用户程序A1工作区工作区用户程序用户程序A2工作区工作区用户程序用户程序A3工作区工作区用户程序用户程序A4工作区工作区用户程序用户程序A5工作区工作区外部模式外部模式A外部模式外部

5、模式B模式模式内部模式内部模式系统缓冲区系统缓冲区操作操作系统系统DBMS数据库数据库数数据据库库管管理理系系统统结结构构 返回返回2022-3-25Visual FoxPro 6.0 91.3 数据模型数据模型ABCD网状模型:网状模型: ABCDE层次模型:层次模型: 学号学号姓名姓名民族民族专业代号专业代号01404099010140409901张三张三汉汉04010101404099020140409902李四李四汉汉04010101404099030140409903王五王五汉汉04010101404099040140409904赵六赵六回回040101关系模型:关系模型: 关键字关

6、键字数据模型体现了数据的组织形式及数据之间的联系数据模型体现了数据的组织形式及数据之间的联系. .返回返回2022-3-25Visual FoxPro 6.0 101.4 主流主流DBMS产品产品OracleDB2SybaseMS-SQL ServerAccessVisual FoxPro返回返回2022-3-25Visual FoxPro 6.0 111.5 Visual FoxPro概述概述 集成操作环境集成操作环境返回返回菜单栏菜单栏工具栏工具栏主窗口主窗口“命令命令”窗窗口口状态栏状态栏2022-3-25Visual FoxPro 6.0 121.5 Visual FoxPro概述概述

7、 命令示例命令示例* , &引导注释内容引导注释内容? , ?在在VFP主窗口中显示表达式的值主窗口中显示表达式的值CLEAR清除当前清除当前VFP主窗口中的信息主窗口中的信息DIR在在VFP主窗口中显示文件的目录主窗口中显示文件的目录MD/RD/CD创建文件夹创建文件夹/删除文件夹删除文件夹/改变当前工作文件夹改变当前工作文件夹COPY FILE/RENAME/DELETE FILE复制复制/更名更名/删除文件删除文件RUN调用外部调用外部DOS命令命令QUIT关闭所有文件关闭所有文件,并结束当前并结束当前VFP系统的运行系统的运行USE xs打开名为打开名为xs的表文件的表文件COUNT

8、ALL FOR 性别性别=“女女”统计统计xs中女生的人数中女生的人数USE关闭表文件关闭表文件Cj ,将其保存在磁盘上,将其保存在磁盘上返回返回2022-3-25Visual FoxPro 6.0 13从当前记录开始,按记录顺序从上向下从当前记录开始,按记录顺序从上向下处理,一旦遇到不满足条件的记录,就处理,一旦遇到不满足条件的记录,就停止搜索并结束该命令的执行停止搜索并结束该命令的执行1.5 Visual FoxPro概述概述 一般语法式一般语法式返回返回 命令动词命令动词 ; 表达式表表达式表 ; 范围范围 ;FOR 条件条件 ;WHILE 条件条件 ;TO FILE 文件名文件名 /T

9、O PRINTER/TO ARRAY; 数组名数组名 /TO 内存变量内存变量 ;ALL LIKE/EXCEPT 通配符通配符 ;IN 别名别名 计算机要完成的操作计算机要完成的操作执行该命令所操作的结果参数执行该命令所操作的结果参数只对满足条件的记录进行操作只对满足条件的记录进行操作操作结果的输出去向操作结果的输出去向包括或不包括与通包括或不包括与通配符相匹配的文件、配符相匹配的文件、字段或内存变量字段或内存变量允许在当前工作区操作指允许在当前工作区操作指定工作区定工作区ALL/NEXT /RECORD /REST2022-3-25Visual FoxPro 6.0 141.5 Visual

10、 FoxPro概述概述 常用文件类型常用文件类型返回返回生成的应用程序生成的应用程序 .app复合索引复合索引 .cdx数据库数据库 .dbc .dct .dcx表表 .dbf .fpt报表报表.frx .frt标签标签 .lbx .lbt菜单菜单 .mnt .mnx .mpr .mpx内存变量内存变量 .mem程序程序 .prg .fxp .qpr .qpx项目项目 .pjt .pjx可视类库可视类库 .vcx .vct表单表单 .scx .sctRN_123-lyx主文件名主文件名.DBF分隔符分隔符扩展名扩展名主文件名最长由主文件名最长由10个个字符组成,可以大、字符组成,可以大、小写字

11、母子混合使用小写字母子混合使用文件命名示例:文件命名示例:2022-3-25Visual FoxPro 6.0 151.6 项目管理器项目管理器(1) 是是VFP中处理数据和对象的主要组织工具,其管理中处理数据和对象的主要组织工具,其管理信息以项目文件保存,是信息以项目文件保存,是VFP的控制中心(的控制中心(Control Center)。)。项目管理器的创建方法项目管理器的创建方法 :1、用【文件】菜单中的【新建】菜单命令。、用【文件】菜单中的【新建】菜单命令。2、用、用“常用常用”工具栏上的工具栏上的“新建新建”按钮。按钮。3、在、在“命令命令”窗口中利用如下命令:窗口中利用如下命令:C

12、REATE PROJECT 项目管理器的打开方法项目管理器的打开方法 :1、用【文件】菜单中的【打开】菜单命令。、用【文件】菜单中的【打开】菜单命令。2、用、用“常用常用”工具栏上的工具栏上的“打开打开”按钮。按钮。3、在、在“命令命令”窗口中利用如下命令:窗口中利用如下命令:MODIFY PROJECT 返回返回2022-3-25Visual FoxPro 6.0 16返回返回1.6 项目管理器项目管理器(2)创建新文件或对象创建新文件或对象在相应是设计器中打在相应是设计器中打开选定项开选定项将已存在且不被当前将已存在且不被当前项目所管理的文件添项目所管理的文件添加到项目管理器加到项目管理器

13、打开打开/关闭指定的数据库、浏览关闭指定的数据库、浏览指定的表、运行指定的查询指定的表、运行指定的查询/表表单单/程序等程序等从项目中移去或删除从项目中移去或删除选定项选定项连编一个项目或应用程序连编一个项目或应用程序 折叠折叠/展开项目管理器展开项目管理器选项卡选项卡2022-3-25Visual FoxPro 6.0 17小小 结结1 1、VFPVFP从从FoxBASEFoxBASE开始发展大致经过了十一个阶段。开始发展大致经过了十一个阶段。2 2、VFPVFP的使用方法,的使用方法,VFPVFP功能强大,使用简单。功能强大,使用简单。3 3、VFPVFP的启动通常可以通过的启动通常可以通

14、过WindowsWindows的开始菜单或桌面快捷方的开始菜单或桌面快捷方式实现。式实现。4 4、VFPVFP退出可以通过在命令窗口中执行退出可以通过在命令窗口中执行QUITQUIT、系统菜单的退出、系统菜单的退出菜单项或主窗口的菜单项或主窗口的“关闭关闭”按钮实现。按钮实现。5 5、VFPVFP的文件类型。的文件类型。6 6、应掌握、应掌握VFPVFP的一些基本概念。的一些基本概念。7 7、VFPVFP的命令构成。的命令构成。8 8、可以用菜单方式和命令方式创建和打开项目管理器。、可以用菜单方式和命令方式创建和打开项目管理器。返回返回2022-3-25Visual FoxPro 6.0 18

15、2.2 数据存储容器数据存储容器 2.3 运算符运算符 2.1 常用数据类型常用数据类型2.4 函数函数2.5 表达式表达式2.6 空值空值第第2章章 VFP语言基础语言基础2.7 程序设计基础程序设计基础返回返回2022-3-25Visual FoxPro 6.0 191、字符型数据(、字符型数据(Character,简写为,简写为C)2、数值型数据(、数值型数据(Numeric,简写为,简写为N)3、逻辑型数据(、逻辑型数据(Logic,简写为,简写为L)4、日期型数据(、日期型数据(Date,简写为,简写为D)5、日期时间型数据(、日期时间型数据(DateTime,简写为,简写为T)6、

16、整形数据(、整形数据(Integer,简写为,简写为I)7、备注型数据(、备注型数据(Memo,简写为,简写为M)8、通用型数据(、通用型数据(General,简写为,简写为G)2.1 常用数据类型常用数据类型返回返回2022-3-25Visual FoxPro 6.0 202.2 数据存储容器数据存储容器2.2.2 常量常量 2.2.3 内存变量内存变量 2.2.1 名称命名规则名称命名规则2.2.4 数组数组返回返回2022-3-25Visual FoxPro 6.0 21名称中只能包含字母、下划线、数字符号和汉字符号名称中只能包含字母、下划线、数字符号和汉字符号名称的开头只能是字母、汉字

17、或下划线,不能是数字名称的开头只能是字母、汉字或下划线,不能是数字除自由表的字段名、表的索引标识名至多除自由表的字段名、表的索引标识名至多10个字符,其余名个字符,其余名称长度称长度1128个字符个字符应避免使用系统保留字应避免使用系统保留字例:例:cVar、nVar2、x_2、sum_of_score、nSum_Score、_aver_2x、2_x、num-of-xs、nSum&Score、_aver#gz、use、DO合法合法非法非法2.2.1名称命名规则名称命名规则返回返回2022-3-25Visual FoxPro 6.0 22 一个不变的数值或字符串。常量表达式中包括常一个不变的数值

18、或字符串。常量表达式中包括常量和操作符,但不包含变量,而且计算结果总是常值。量和操作符,但不包含变量,而且计算结果总是常值。Visual FoxPro支持多种类型的常量,如支持多种类型的常量,如:数值常量、数值常量、字符常量、日期常量、逻辑常量、货币常量、日期时字符常量、日期常量、逻辑常量、货币常量、日期时间常量等。间常量等。 2.2.2 常量常量例:例:3.12E-8、$1000 、8*7 、.F. 、08-25-2003 3.1210-8返回返回2022-3-25Visual FoxPro 6.0 232 控制变量访问控制变量访问 3 保存内存变量保存内存变量1 变量的创建变量的创建 4

19、恢复内存变量恢复内存变量 2.2.3 内存变量内存变量 返回返回2022-3-25Visual FoxPro 6.0 24在赋值的同时完成了内存变量的创建,并确定了在赋值的同时完成了内存变量的创建,并确定了该变量的数据类型以及目前变量的值该变量的数据类型以及目前变量的值STORE 表达式表达式 TO 内存变量名表内存变量名表 例例:STORE 0 TO a,b将数值将数值0赋给变量赋给变量a,bSTORE “张三张三” TO NAME 将字符串将字符串“张三张三”赋给赋给NAME 内存变量名内存变量名 = 表达式表达式 例例:A=.T. 将逻辑真值赋给变量将逻辑真值赋给变量AcSoft = “

20、VFP”产生一个字符型变量产生一个字符型变量1 变量的创建变量的创建返回返回2022-3-25Visual FoxPro 6.0 252 控制变量的访问控制变量的访问变量只在它的作用域范围内才有效:变量只在它的作用域范围内才有效:LOCAL:定义局部变量定义局部变量访问变量:访问变量:PRIVATE:定义私有变量定义私有变量?换行显示,换行显示,PUBLIC:定义全局变量定义全局变量?不换行显示不换行显示 AA.prgLOCAL aPUBLIC b,cDO bbBB.prgLOCAL dPRIVATE bRETURNa仅在仅在AA.prg中有效中有效,b在全局有效,但在在全局有效,但在AA.p

21、rg和和BB.prg中的值不一样,中的值不一样,私有的私有的b在在BB.prg及其子及其子程中有用程中有用c在全局有效在全局有效d仅在仅在BB.prg中有效中有效返回返回2022-3-25Visual FoxPro 6.0 26SAVE TO FileName ALL LIKE Skeleton |ALL EXCEPT Skeleton3 保存内存变量保存内存变量 文件扩展名的缺文件扩展名的缺省值为省值为 .mem变量名通配符变量名通配符例:例:假设存在自定义变量假设存在自定义变量a,b,ab,baSAVE TO v1 将所有内存变量保存到将所有内存变量保存到v1.mem文件中文件中SAVE

22、TO v2 ALL LIKE ?a* 将所有第一个字符是任意字符,第二个字符是将所有第一个字符是任意字符,第二个字符是a的内存变量保存的内存变量保存到到v2.mem文件中,即文件中,即baSAVE TO v3 ALL EXCEPT ?a*将所有第二个字符不是将所有第二个字符不是a的内存变量保存到的内存变量保存到v3.mem文件中,即文件中,即a,b,ab返回返回2022-3-25Visual FoxPro 6.0 27RESTORE FROM FileName ADDITIVE 4 恢复内存变量恢复内存变量 保留当前内存中的内存变量,将指定文件中的内存变量添加到保留当前内存中的内存变量,将指定

23、文件中的内存变量添加到当前内存变量之后。当前内存变量之后。 若省略若省略ADDITIVE选择项,则内存中已有选择项,则内存中已有的内存变量全部释放,将指定文件中的内存变量调入内存的内存变量全部释放,将指定文件中的内存变量调入内存 。例:例:RESTORE FROM v1此时内存中存在变量此时内存中存在变量a,b,ab,baRESTORE FROM v2此时内存中存在变量此时内存中存在变量baRESTORE FROM v3 ADDITIVE此时内存中存在变量此时内存中存在变量a,b,ab,ba返回返回2022-3-25Visual FoxPro 6.0 282 为数组元素赋值为数组元素赋值 1

24、数组的声明数组的声明 2.2.4 数组数组 返回返回2022-3-25Visual FoxPro 6.0 29 数组可以为一维数组或二维数组。在绝大多数情况下,数数组可以为一维数组或二维数组。在绝大多数情况下,数组在使用时必须预先声明。组在使用时必须预先声明。1 数组的声明数组的声明 返回返回DECLAER | DIMENSION | PUBLIC | LOCAL 数组名数组名(行数行数,列数列数)私有数组私有数组私有数组私有数组全局数组全局数组局部数组局部数组维数和大小维数和大小例:例:DECLAER XX(4)定义一个一维数组定义一个一维数组XXPUBLIC A(6,3)定义一个定义一个6

25、行行3列的一维数组列的一维数组ADIMENSION B(3),),C(2,3)定义一个一维数组定义一个一维数组B和一个和一个 2行行3列的二维数组列的二维数组C2022-3-25Visual FoxPro 6.0 302 为数组元素赋值为数组元素赋值数组在声明之后,每个数组元素的默认值均为逻辑值数组在声明之后,每个数组元素的默认值均为逻辑值.F.DECLAER XX 6,3XX1,2 = 1113使用数组名和元素位置为数组元素赋值使用数组名和元素位置为数组元素赋值XX = 1113用一个语句为所有数组元素赋相同的值用一个语句为所有数组元素赋相同的值 此外,可以使用此外,可以使用SCATTER、

26、GATHER、COPY TO ARRAY 、APPEND FROM ARRAY等命令在数组元素与表的等命令在数组元素与表的记录之间进行值的传递记录之间进行值的传递返回返回2022-3-25Visual FoxPro 6.0 31 运算符可用于操作同类型数据,分为:数值运算符、关系运运算符可用于操作同类型数据,分为:数值运算符、关系运算符、逻辑运算符算符、逻辑运算符、字符运算符和日期(时间)运算符字符运算符和日期(时间)运算符 数值运算符数值运算符+ + 加加 - - 减减* * 乘乘/ / 除除* * *或或 乘方乘方% % 模运算模运算 ()()括号括号2.3运算符运算符 关系运算符关系运算

27、符 小于小于= 等于等于 # 不等于不等于大于大于 不等于不等于 != 不等于不等于 = 大于或等于大于或等于= 精确等于精确等于 “=” “=”必须是字符串间的比较,其他的可以为字符串、数值必须是字符串间的比较,其他的可以为字符串、数值或日期(时间)数据间的比较。或日期(时间)数据间的比较。关系运算产生逻辑结果关系运算产生逻辑结果 “真真”或或“假假” 。 返回返回2022-3-25Visual FoxPro 6.0 32逻辑运算符逻辑运算符 AND 逻辑与逻辑与NOT逻辑非(单边运算符)逻辑非(单边运算符)OR 逻辑或逻辑或 !逻辑非(单边运算符)逻辑非(单边运算符)字符运算符字符运算符+

28、 字符串精确字符串精确连接连接- - 字符串非精确连接字符串非精确连接$ 属于属于 (查看左边字符串是否包含在右边字符串中)(查看左边字符串是否包含在右边字符串中)日期(时间)运算符日期(时间)运算符+ 加加- 减减说明:说明:日期加上数值得到将来的日期;日期减去数值得到过日期加上数值得到将来的日期;日期减去数值得到过去的日期;两日期相减得到两个日期相差的天数。去的日期;两日期相减得到两个日期相差的天数。 返回返回2022-3-25Visual FoxPro 6.0 332.4 函数函数函数是预先编好的程序代码,可供用户或程序调用。函数是预先编好的程序代码,可供用户或程序调用。函数名(函数名(

29、参数参数1,参数,参数2,)例:例:?MOD(36,10)&显示显示6?MAX(6,9)&显示显示9?SUBSTR(Hello world, 7,5)&显示显示world?YEAR(DATE()()&显示显示2003?STR(123.456,5,2) &显示显示123.4MESSAGEBOX(Hi!,A)&显示标题显示标题为为A内内容为容为Hi!的!的对话框对话框MOD(a,b) = a-INT(a/b)-IIF(a/b MOD(3,2)x = “OFF”SET TALK &x即即SET TALK OFF,不可,不可SET TALK (x)返回返回2022-3-25Visual FoxPro

30、6.0 352.6 空值空值NULLNULL值不是一种数据类型,它值不是一种数据类型,它0 0、空字符串(、空字符串(”)或空格不同,表示什么都没有,排序优先于其他数据,或空格不同,表示什么都没有,排序优先于其他数据,NULLNULL值会影响命令、函数、逻辑表达式和参数的行为。值会影响命令、函数、逻辑表达式和参数的行为。NULLNULL不是一种数据类型,当给字段或变量赋不是一种数据类型,当给字段或变量赋.NULL.NULL.时,该字段或变量的数据类型不变,只是值变时,该字段或变量的数据类型不变,只是值变为为.NULL.NULL.。 针对针对NULLNULL值时,值时,ISBLANKISBLAN

31、K()、()、ISDIGIT()ISDIGIT()、ISLOWER()ISLOWER()、ISUPPER()ISUPPER()、ISALPHA()ISALPHA()和和ISEMPTY()ISEMPTY()返回返回“假假”(.F.F.),而),而ISNULLISNULL()返回()返回“真真”(.T.T.)。)。 返回返回2022-3-25Visual FoxPro 6.0 362.7.1 创建与运行程序创建与运行程序2.7.2 程序结构程序结构2.7.3 过程与用户自定义函数过程与用户自定义函数 2.7 程序设计基础程序设计基础返回返回2022-3-25Visual FoxPro 6.0 37

32、 程序是为完成某一具体任务而编写的一系列指令。程序是为完成某一具体任务而编写的一系列指令。VFP程程序由一系列代码组成,代码可以包括以命令形式出现的指令、序由一系列代码组成,代码可以包括以命令形式出现的指令、函数或函数或VFP可以理解的任何操作。可以理解的任何操作。创建程序的方法有:创建程序的方法有:1、通过、通过“文件文件”菜单中的菜单中的“新建新建”命令命令2.7.1 创建与运行程序创建与运行程序2、利用项目管理器创建程序文件、利用项目管理器创建程序文件选择选择“程序程序”选项,然后单击选项,然后单击“新建文件新建文件”按钮打开程序编按钮打开程序编辑窗口辑窗口在在“代码代码”选项卡选择选项

33、卡选择“程序选项,然后单击程序选项,然后单击“新建新建”按钮打开程序编按钮打开程序编辑窗口辑窗口输入程序代码,输入程序代码,并保存即可并保存即可3、在命令窗口中通过命令打开程序编辑窗口、在命令窗口中通过命令打开程序编辑窗口MODIFY COMMAND FIleName | ? 运行程序的方法有:运行程序的方法有:1、当程序处于、当程序处于VFP编辑窗口时,单击编辑窗口时,单击“常用常用”工具栏上的工具栏上的 按按钮钮2、在项目管理器中选择程序文件,单击、在项目管理器中选择程序文件,单击“运行运行”按钮按钮3、在命令窗口中使用、在命令窗口中使用DO命令命令DO ProgramName WITH

34、ParameterList 返回返回2022-3-25Visual FoxPro 6.0 38VFP的程序结构可以分为三种:顺序结构、分支结构、循环结构。的程序结构可以分为三种:顺序结构、分支结构、循环结构。1、顺序结构、顺序结构按照顺序依次执行程序中的命令,按照顺序依次执行程序中的命令,例:例: STORE 4.12 TO ps = p * p * 3.14?”圆的面积为:圆的面积为:” ,s2、分支结构、分支结构包括单条件分支结构和多条件分支结构包括单条件分支结构和多条件分支结构单条件分支结构:单条件分支结构:IF lExpression THEN Commands1 ELSE Comma

35、nds2 ENDIF2.7.2 程序结构程序结构返回返回例:例: x = 9IF x 10 THEN ? x ELSE x = x + 1 ENDIF2022-3-25Visual FoxPro 6.0 39多条件分支语结构:多条件分支语结构:DO CASE CASE lExpression1 Commands1 CASE lExpression2 Commands2 CASE lExpressionN CommandsN OTHERWISE Commands ENDCASE 该语句从第一各该语句从第一各CASE开始,开始,判断其后条件表达式的值是否判断其后条件表达式的值是否为为.T. ,当遇

36、到第一各结果为,当遇到第一各结果为.T.的的CASE表达式时,就执行它后表达式时,就执行它后面的命令组,然后跳过下一个面的命令组,然后跳过下一个CASE到到ENDCASE之间的所有之间的所有语句。当包含语句。当包含OTHERWISE语语句时,当所有句时,当所有CASE表达式的值表达式的值都为都为.F.时,执行时,执行OTHERWISE后面的命令组。后面的命令组。返回返回2022-3-25Visual FoxPro 6.0 40例例:根据一元二次方程的系数根据一元二次方程的系数a,b,c判断方程根的情况:判断方程根的情况: delta = b*b 4*a*cDO CASE CASE delta

37、0? “方程有两个不等的实数根:方程有两个不等的实数根:”?(?(-b + SQRT(delta)/(2*a)?(?(-b - SQRT(delta)/(2*a) CASE delta = 0 ? “方程有两个不等的实数根:方程有两个不等的实数根:” ? b/(2*a) CASE delta 0 ? “方程有两个复根:方程有两个复根:”real_part = -b/(2*a)&实部实部 img_part = SQRT(-delta)/(2*a)&虚部虚部?ALLTRIM(STR(real_part)+”+”+ ALLTRIM(STR(img_part)+”i”?ALLTRIM(STR(real

38、_part)+”-”+ ALLTRIM(STR(img_part)+”i”ENDCASE 返回返回2022-3-25Visual FoxPro 6.0 413、循环结构、循环结构有三类命令:基于条件的循环、基于计数的循环和基于表的循环有三类命令:基于条件的循环、基于计数的循环和基于表的循环1)基于条件的循环:)基于条件的循环:DO WHILE lExpression CommandsLOOPEXITENDDO 例:例:计算连续自然数之和,并且显示和刚大于计算连续自然数之和,并且显示和刚大于1000的最后一个自的最后一个自然数。然数。 STORE 0 TO AA,BBDO WHILE AA 80

39、 TO a1统计统计80分以上人数分以上人数AVERAGE cj TO a2 FOR cj 80 统计统计80以上平均分以上平均分3.3.7 3.3.7 数据的统计数据的统计 3.3.6 3.3.6 数据的复制数据的复制 返回返回2022-3-25Visual FoxPro 6.0 72索引文件有二种:索引文件有二种:独立索引独立索引文件和文件和复合索引复合索引文件,而复合索引文文件,而复合索引文件又可分为件又可分为结构复合索引结构复合索引文件和非文件和非结构复合索引结构复合索引文件两种。文件两种。VFP对结构复合索引文件提供了四种类型:对结构复合索引文件提供了四种类型:主索引、候选索引、主索

40、引、候选索引、唯一索引、普通索引唯一索引、普通索引结构复合索引文件的建立结构复合索引文件的建立INDEX ON eExpression TO TAG TagName FOR lExpression ASCENDING | DESCENDING UNIQUE CANDIDATE 3.4 3.4 表的索引表的索引 返回返回2022-3-25Visual FoxPro 6.0 73转转移移焦焦点点(1)利用表设计器的字段选项卡建立索引文件)利用表设计器的字段选项卡建立索引文件在项目管理器中建立索引在项目管理器中建立索引在在“数据数据”选选项卡中选择要项卡中选择要建立索引的表建立索引的表单击单击“修改

41、修改”按钮,打开表按钮,打开表设计器设计器单击单击“索索引引”选项选项卡卡输入索引标识输入索引标识选择索引类型选择索引类型输入索引表达式输入索引表达式也可选择表达式也可选择表达式生成器进行表达生成器进行表达式的生成式的生成返回返回2022-3-25Visual FoxPro 6.0 741 在打开表时打开索引文件在打开表时打开索引文件复合索引文件在打开表时将自动被打开。复合索引文件在打开表时将自动被打开。USE TableName INDEX ASCENDING| DESCENDING 2、打开表后设置主控索引、打开表后设置主控索引 如果在打开索引文件时未指定主控索引,打开索引文件之后需如果在

42、打开索引文件时未指定主控索引,打开索引文件之后需要指定主控索引,或者希望改变主控索引,可使用下面的命令。要指定主控索引,或者希望改变主控索引,可使用下面的命令。 SET ORDER TO TagName INnWorkArea |cTableAlias ASCENDING | DESCENDING 说明:说明:如果命令中不使用任选项,只写如果命令中不使用任选项,只写SET ORDER TO,那么,那么不会指定主索引,记录仍按照记录号的顺序显示,但并未关闭不会指定主索引,记录仍按照记录号的顺序显示,但并未关闭索引文件索引文件使用索引使用索引 返回返回2022-3-25Visual FoxPro

43、6.0 753 索引文件的重建或更新索引文件的重建或更新格式:格式:REINDEX 功能:功能:重建当前打开的所有索引文件。重建当前打开的所有索引文件。说明:说明:使用使用REINDEX命令之前,必须首先打开需要重建索引命令之前,必须首先打开需要重建索引的全部索引文件。对使用包含的全部索引文件。对使用包含UNIQUE关键字的关键字的INDEX命令或命令或SET UNIQUE ON命令创建的索引文件,在重建索引时,仍保命令创建的索引文件,在重建索引时,仍保持持UNIQUE状态。状态。 4 利用索引快速定位记录利用索引快速定位记录格式:格式:SEEK eExpression ORDER TagNa

44、me ASCENDING | DESCEN-DING IN nWorkArea|cTableAlias例:例:USE xs ORDER xhSEEK “030102”返回返回2022-3-25Visual FoxPro 6.0 76小小 结结1 1、建立表前要做好准备,将每个表的字段名、类型、宽度、建立表前要做好准备,将每个表的字段名、类型、宽度、小数位、等以表格的形式进入充分的描述。小数位、等以表格的形式进入充分的描述。2 2、可以通过项目管理器和使用、可以通过项目管理器和使用CREATECREATE命令建立表,也可以命令建立表,也可以通过通过COPY STRUCTURECOPY STRUC

45、TURE命令从其它表中复制表结构,还可命令从其它表中复制表结构,还可以使用以使用CREATECREATE带带FROMFROM子句从一个表结构文件中得到表结子句从一个表结构文件中得到表结构。构。3 3、表在使用前要先打开,表中的记录可以用、表在使用前要先打开,表中的记录可以用APPENDAPPEND、INSERT INTOINSERT INTO等命令进行追加,也可以使用等命令进行追加,也可以使用DELETEDELETE命令进命令进行删除,还可以使用行删除,还可以使用BROWSEBROWSE命令打开全屏幕编辑窗口进命令打开全屏幕编辑窗口进行修改和浏览,可以用行修改和浏览,可以用REPLACEREP

46、LACE命令替换数据。命令替换数据。4 4、在、在USEUSE命令中可以用命令中可以用ININ了句指定工作区,用了句指定工作区,用ALIASALIAS子句指子句指定别名。定别名。5 5、可以使用、可以使用SELECTSELECT命令选择一个工作区。命令选择一个工作区。返回返回2022-3-25Visual FoxPro 6.0 774.1 VFP数据库概述数据库概述 4.2 数据库的创建数据库的创建 4.3 数据库的使用数据库的使用4.4 数据库表数据库表 4.5 永久关系与参照完整性永久关系与参照完整性 第第4章章 数据库的创建和使用数据库的创建和使用 返回返回2022-3-25Visual

47、 FoxPro 6.0 78数据库设计步骤数据库设计步骤 第第1步:确定建立数据库的目的。步:确定建立数据库的目的。这有助于确定需要这有助于确定需要VFP保存哪保存哪些信息;些信息;第第2步:确定需要的表。步:确定需要的表。在明确了建立数据库的目的之后,就可在明确了建立数据库的目的之后,就可以着手把信息分成独立的主题,例如以着手把信息分成独立的主题,例如“xs”(学生)或(学生)或“cj”(成(成绩)等。每个主题都可以是数据库中的一个表。绩)等。每个主题都可以是数据库中的一个表。第第3步:确定表的字段。步:确定表的字段。确定在每个表中保存哪些信息。在表中,确定在每个表中保存哪些信息。在表中,每

48、类信息称为一个字段,浏览表时在表中显示为一列。例如,在每类信息称为一个字段,浏览表时在表中显示为一列。例如,在xs表中,可以有这样的字段:表中,可以有这样的字段:“学号学号”、“姓名姓名”、“性别性别”等。等。第第4步:确定表之间的关系。步:确定表之间的关系。分析每个表,确定一个表中的数据分析每个表,确定一个表中的数据和其它表中的数据有何关系。必要时,可以在表中加入字段或创和其它表中的数据有何关系。必要时,可以在表中加入字段或创建一个新表来明确关系。建一个新表来明确关系。第第5步:改进设计。步:改进设计。对设计进一步分析,查找其中的错误。创建对设计进一步分析,查找其中的错误。创建表时,在表中加

49、入几个示例记录,看能否从表中得到所需的结果。表时,在表中加入几个示例记录,看能否从表中得到所需的结果。 返回返回2022-3-25Visual FoxPro 6.0 794.1 VFP数据库概述数据库概述 jxgl数据库数据库xs表表js表表kc表表cj表表rk表表zy表表数据库是一个容器,数据库是一个容器,是许多相关的数据库是许多相关的数据库表及其关系的集合。表及其关系的集合。数据库中的表叫数据数据库中的表叫数据库表,不但包括自由库表,不但包括自由表的各种属性,还有表的各种属性,还有一些增强特性。数据一些增强特性。数据库中不仅有表,还包库中不仅有表,还包含有表之间的关系。含有表之间的关系。返

50、回返回2022-3-25Visual FoxPro 6.0 804.2 数据库的创建数据库的创建 第一步:在项目管理器中选择【数据】选项卡第一步:在项目管理器中选择【数据】选项卡第二步:第二步:单击单击“数数据库据库”项项第三步:第三步:单击项目单击项目管理器中管理器中的【新建】的【新建】按钮按钮第四步:第四步:单击【新单击【新建数据库】建数据库】按钮按钮第五步:第五步:输入数据输入数据库名后,库名后,单击【保单击【保存】按钮存】按钮返回返回2022-3-25Visual FoxPro 6.0 814.3 数据库的使用数据库的使用 语法:语法:打开数据库:打开数据库:OPEN DATABASE

51、 DatabaseName EXCLUSIVE | SHAREDNOUPDATEVALIDATE设置当前数据库:设置当前数据库:SET DATABASE TO DatabaseName检查数据库的有效性:检查数据库的有效性: VALIDATE DATABASE RECOVER TO PRINTER|TO FILE FileName关闭数据库:关闭数据库:CLOSE DATABASE例:例:OPEN DATABASE jxgl打开打开jxgl数据库数据库OPEN DATABASE hqgl打开打开hqgl数据库数据库SET DATABASE TO jxgl设置设置jxgl为当前数据库为当前数据库

52、CLOSE DATABASE关闭关闭jxgl数据库数据库返回返回2022-3-25Visual FoxPro 6.0 82语法:语法:第一步:第一步:OPEN DATABASE DatabaseName第二步:第二步:CREATE TABLE-SQL系统打开表设计器系统打开表设计器第一步:选择第一步:选择【数据】选项卡【数据】选项卡第二步:单击第二步:单击 “表表”选项选项第三步:单击第三步:单击【新建】按钮【新建】按钮4.4 数据库表数据库表 返回返回2022-3-25Visual FoxPro 6.0 83数据库表的字段扩展属性数据库表的字段扩展属性 字段字段显示显示属性属性字段字段验证验

53、证指定与指定与字段相字段相应的控应的控件类件类以下属以下属性性 不存不存在于自在于自由表设由表设计器中计器中返回返回2022-3-25Visual FoxPro 6.0 84为字段设置有效性规则为字段设置有效性规则语法:语法:CREATE TABLE cj(xh C(6) DEFAULT “030000”,kcdh C(6), cj N(3,0);CHECK cj=0 AND cj =0 AND cj =100返回返回2022-3-25Visual FoxPro 6.0 85数据库表的表属性数据库表的表属性 记录记录验证验证插入、插入、更新或更新或删除记删除记录时进录时进行的检行的检验规则验规

54、则长表名,可通过长表名,可通过CREATE TABLE 表名表名 NAME 长表名长表名( )定义定义返回返回2022-3-25Visual FoxPro 6.0 86为记录设置有效性规则为记录设置有效性规则语法:语法:ALTER TABLE xs SET CHECK csrq100=MESSAGEBOX(“输入的数字超过上限输入的数字超过上限 ”,64,“数字输入错误数字输入错误)RETURN 0ENDIF 返回返回2022-3-25Visual FoxPro 6.0 1602.编辑框编辑框 (EditBox)与文本框相似,但它可以输入或编辑长)与文本框相似,但它可以输入或编辑长字段或备注字

55、段,允许自动换行并能用光标移动键、操作滚动条字段或备注字段,允许自动换行并能用光标移动键、操作滚动条来浏览文本。如果将编辑框的来浏览文本。如果将编辑框的Control Source属性设置为该备注属性设置为该备注字段,就可以利用编辑框来显示或编辑备注字段。编辑框控件的字段,就可以利用编辑框来显示或编辑备注字段。编辑框控件的ScrollBar属性决定编辑框是否有垂直的滚动条。属性决定编辑框是否有垂直的滚动条。 设置文本框和编辑框的设置文本框和编辑框的ReadOnly属性为属性为“真真” ,可以显示,可以显示那些只能查看而不能修改的信息。如果编辑框无效用户就不能滚那些只能查看而不能修改的信息。如果

56、编辑框无效用户就不能滚动文本。动文本。返回返回2022-3-25Visual FoxPro 6.0 161返回返回列表框列表框组合框组合框2022-3-25Visual FoxPro 6.0 162填充列表框或组合框填充列表框或组合框通过设置通过设置RowSourceType和和RowSource属性,可以用不同数据属性,可以用不同数据源中的项填充列表框。源中的项填充列表框。RowSourceType属性决定列表框或组合属性决定列表框或组合框的数据源类型,如数组或表,设置好框的数据源类型,如数组或表,设置好RowSourceType后,设后,设置置RowSource属性可指定列表项的数据源。属

57、性可指定列表项的数据源。RowSourceType共共有十种类型:有十种类型:0-无,表示没有,由程序向列表中添加项;无,表示没有,由程序向列表中添加项;1-值;值;2-别名;别名;3-SQL语句;语句;4-查询;查询;5-数组;数组;6-字段;字段;7-文件;文件;8-结结构;构;9-弹出式菜单弹出式菜单(见书(见书P204表表8-3)。创建具有多列的列表框创建具有多列的列表框若要在列表框中显示多列,可以:若要在列表框中显示多列,可以:将将ColumnCount属性设置为所需的列数。属性设置为所需的列数。设置设置ColunWidths属性。例如,如果列表框中有三列,下面的属性。例如,如果列表

58、框中有三列,下面的命令将各列宽度分别设置为命令将各列宽度分别设置为60、45和和80。THISFORM.LIST1.ColumnWidths=”60,45,80”将将RowSourceType属性设置为属性设置为“6-字段字段”。8.2.3 列表框与组合框列表框与组合框 返回返回2022-3-25Visual FoxPro 6.0 163 选项按钮组(选项按钮组(OptionGroup)包含选项按钮的容器控件,允)包含选项按钮的容器控件,允许用户从中选择一个按钮。许用户从中选择一个按钮。 根据选项组的根据选项组的Value属性可以判断用户选定了哪个按钮。如属性可以判断用户选定了哪个按钮。如果按

59、钮的控件源为数值型,且组中有五个按钮,如果选定了第果按钮的控件源为数值型,且组中有五个按钮,如果选定了第三个按钮,则选项组的三个按钮,则选项组的Value属性值为属性值为3。如果没有选定选项按。如果没有选定选项按钮,选项组的钮,选项组的Value属性为属性为0。8.2.4 选项按钮组选项按钮组 ButtonCount = 5,即选项按钮数目为即选项按钮数目为5Value = 3,即用户选定了第三个按钮即用户选定了第三个按钮返回返回2022-3-25Visual FoxPro 6.0 164SET FILTER TO xb=男男GO TOPTHISFORM.Refresh SET FILTER

60、TO xb=“女女GO TOPTHISFORM.Refresh SET FILTER TOGO TOPTHISFORM.Refresh 筛选条件是在选筛选条件是在选项按钮的项按钮的Click事件事件代码中设置的,当用代码中设置的,当用户选择选项按钮时,户选择选项按钮时,执行对表格中数据进执行对表格中数据进行筛选的事件代码。行筛选的事件代码。 返回返回2022-3-25Visual FoxPro 6.0 165可利用复选框(可利用复选框(CheckBox)指定或显示一个逻辑状态。)指定或显示一个逻辑状态。Caption属性为属性为“必修必修课课”,Control属性为属性为bxk字段字段8.2.

61、5 复选框复选框 返回返回2022-3-25Visual FoxPro 6.0 166表格(表格(Grid)是一个按行和列显示数据的容器对象。是一个按行和列显示数据的容器对象。ColumnCount:设置表格列数值即表格列数。默认值设置表格列数值即表格列数。默认值-1表示在表示在运行时,表格将包含与其链接的表中字段同样数量的列。运行时,表格将包含与其链接的表中字段同样数量的列。Width,Height:设置列和行对象的高度和宽度的属性,也可以设置列和行对象的高度和宽度的属性,也可以在设计表格时可视地设置这些属性。在设计表格时可视地设置这些属性。RecordSourceType :设置表格中显示

62、的数据源的类型。设置表格中显示的数据源的类型。RecordSource:设置表格中显示的数据源,可以是表、视图或设置表格中显示的数据源,可以是表、视图或查询。除为整个表格设置数据源外,也可以为每个列单独设置查询。除为整个表格设置数据源外,也可以为每个列单独设置数据源:设置列的数据源:设置列的ControlSource属性,选择或输入作为列的数属性,选择或输入作为列的数据源的别名、表名或字段名。据源的别名、表名或字段名。AlIowAddNew:为为“真真”(.T.)时可以允许用户向表格中显示)时可以允许用户向表格中显示的表中添加新的记录。即当用户选中了最后一个记录,并且按的表中添加新的记录。即当

63、用户选中了最后一个记录,并且按下光标【下光标【】键时,就向表中添加新记录。】键时,就向表中添加新记录。DeleteMark:指定在表格控件中是否出现删除列标志,指定在表格控件中是否出现删除列标志,.T.出现。出现。DynamicFontName,DynamicFontSize,DynamicFontColor:用于动态设置字体、字号、颜色。用于动态设置字体、字号、颜色。8.2.6 表格表格 返回返回2022-3-25Visual FoxPro 6.0 167可使用微调(可使用微调(Spinner)接受给定范围的数据输入。)接受给定范围的数据输入。KeyBoardHighValue:指定从键盘输

64、入微调框的最大值指定从键盘输入微调框的最大值KeyBoardLowValue:指定从键盘输入微调框的最小值指定从键盘输入微调框的最小值SpinnerHighValue:指定通过单击微调按钮输入的最大值指定通过单击微调按钮输入的最大值SpinnerLowValue:指定通过单击微调按钮输入的最小值指定通过单击微调按钮输入的最小值Increment:指定单击箭头时,数值的增加指定单击箭头时,数值的增加/减少量,默认减少量,默认1.008.2.7 微调框微调框 返回返回2022-3-25Visual FoxPro 6.0 168 命令按钮(命令按钮(CommandButton)通常用来启动一个事件以

65、完成)通常用来启动一个事件以完成某种功能。使用命令按钮组(某种功能。使用命令按钮组(CommandGroup)控件可创建一)控件可创建一组命令按钮。命令按钮其主要工作是设计其事件的处理代码组命令按钮。命令按钮其主要工作是设计其事件的处理代码. 例如,让用户关闭一个表单、打开另一个表单、在表中浏览、例如,让用户关闭一个表单、打开另一个表单、在表中浏览、保存或取消编辑、运行报表或查询以及其他的操作。此时可借助保存或取消编辑、运行报表或查询以及其他的操作。此时可借助命令按钮或命令按钮组控件来进行。命令按钮和命令按钮组的特命令按钮或命令按钮组控件来进行。命令按钮和命令按钮组的特定操作代码通常放置在命令

66、按钮的定操作代码通常放置在命令按钮的Click事件中。事件中。 将命令按钮的将命令按钮的Default属性设置为属性设置为“真真”(.T.),那么按),那么按Enter键后,将执行这个命令按钮的键后,将执行这个命令按钮的Click事件。事件。 将命令按钮的将命令按钮的Cancle属性设置为属性设置为“真真”(.T.),那么按),那么按Esc键后,将执行这个命令按钮的键后,将执行这个命令按钮的Click事件。事件。8.2.8 命令按钮与命令按钮组命令按钮与命令按钮组 返回返回2022-3-25Visual FoxPro 6.0 169 命令按钮组包含有两命令按钮组包含有两个命令按钮,命令按钮组个命令按钮,命令按钮组的的Value属性指明单击了哪属性指明单击了哪个按钮。个按钮。在其在其Click事件中有如下代事件中有如下代码:码:IF THIS.Value = 1 THENAPPEND BLANKELSEDELETEENDIFTHISFORM.RefreshDefault=.T.,Caption=“退出退出”,Enabled=.T.表示能选择此按钮,表示能选择此按钮,Click事件代码如下

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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