收藏 分享(赏)

Visual+FoxPro程序设计幻灯片.徐红波.第1章.ppt

上传人:yjrm16270 文档编号:6372831 上传时间:2019-04-09 格式:PPT 页数:102 大小:202KB
下载 相关 举报
Visual+FoxPro程序设计幻灯片.徐红波.第1章.ppt_第1页
第1页 / 共102页
Visual+FoxPro程序设计幻灯片.徐红波.第1章.ppt_第2页
第2页 / 共102页
Visual+FoxPro程序设计幻灯片.徐红波.第1章.ppt_第3页
第3页 / 共102页
Visual+FoxPro程序设计幻灯片.徐红波.第1章.ppt_第4页
第4页 / 共102页
Visual+FoxPro程序设计幻灯片.徐红波.第1章.ppt_第5页
第5页 / 共102页
点击查看更多>>
资源描述

1、1,Visual FoxPro程序设计,讲师:徐红波 E-mail: x_h_,2,目录,第1章 概述 第2章 表的操作 第3章 数据库的基本操作 第4章 查询与视图 第5章 程序设计基础 第6章 表单 第7章 菜单与工具栏 第8章 报表 第9章 项目管理器 第10章 程序设计实例,3,第1章 概述,计算机科学的发展使得它的应用领域逐步扩大,已进入社会的各个方面。信息化社会用计算机进行数据处理已成为日常工作的内容。数据库系统技术是用计算机进行数据处理的最简单、易学、易掌握的技术。VFP继承了以往传统数据库的优点,采用了面向对象的程序设计思想和可视化的编程工具,操作简单、易学,极大地方便了软件的

2、开发。人们在使用它作为开发工具时,可以高效地开发出 全新的可视化图形界面应用程序。所开发出的软件易于推广和应用。因此VFP应用较为广泛。本章主要介绍相关基本知识,为后续章节的学习打下基础。,4,第1章 概述,1.1 数据库系统的发展与特点 1.2 数据库的基本知识 1.3 数据与数据运算 1.4 小结,5,1.1 数据库系统的发展与特点,1.1.1 数据库系统的发展数据处理技术的形成和发展经历了早期的人工管理、文件系统、数据库系统这三个阶段。人工管理是最原始的数据管理方式,由于数据的不共享性,而被文件系统所代替。文件系统虽然数据具有共享性,但共享性差、独立性差、冗余度高而被数据库系统所代替。由

3、于数据库系统具有共享性高、冗余度小、数据的独立性好的优点使它成为当今数据处理的主要工具。在20世纪60年代末,美国IBM公司成功地研制出第一个商品化的数据库系统IMS (Information Management System),以后又相继出现了DBASE、FoxBASE、FoxPro、VFP等数据库系统。,6,信息化社会的到来,使数据库系统的应用更为广泛,技术更加成熟,它与人工管理、文件系统比较有如下特点:1、数据结构化在文件系统中,各个文件不存在相互联系。从单个文件来看,数据一般是有结构的;但从整个系统来说,数据又是没有结果的。数据库系统则不同,在同一数据库中的数据文件也存在联系,即在整

4、体上服从一定的结构形式。,1.1.2 数据库系统的特点,7,2、数据的共享共享是数据库系统的目的,也是其重要特点。一个数据库中的数据不仅可为同一企业或机构之内的各个部门共享,也可为不同单位、地域甚至不同国家的用户共享。而在文件系统同,数据一般是由特定的用户专用的。 3、数据的独立性在文件应用系统中,数据结构和应用程序相互依赖,一方的改变总是要影响另一方的改变。数据库系统则力求减少这种相互依赖,实现数据的独立性。虽然目前还未能完全做到这一点,但较之文件系统已大有改善。 4、冗余度低数据专用时,每个用户拥有并使用自己的数据,难免有许多数据相互重复,这就是冗余。实现共享后,不必要的重复将全部消除,但

5、为了提高查询效率,有时也保留少量重复数据,其冗余度可由设计人员控制。,8,1.2 数据库的基本知识,1.2.1 数据库系统1.2.2 数据模型1.2.3 VFP启动与主界面,9,1.2.1 数据库系统,数据(Data)是指能存储在计算机系统的物理介质上并能被计算机识别的物理符号。它包括文字、图形、图像、声音等。 数据处理(Data Processing)是指将数据转为对用户来讲有用信息的过程。 数据库(Database)是指存储在计算机存储器中结构化的、能为多个用户共享且又独立于应用程序的相关数据的集合。,10,数据库管理系统(DBMS, DataBase Management System)

6、是指可以对数据库的建立、使用和维护管理的软件。它包括数据定义语言DDL(Data Define Language)、数据操纵语言DML(Data Manipulation Language)、管理与控制程序。 数据库应用系统 (DBAS, DataBase Application System)是指用数据库系统资源,面向某一实际应用而开发的具体应用程序软件系统,如学籍管理系统、工资管理系统等。 数据库系统(DBS即DataBase System)是指在计算机系统中引入数据库后的系统,它由硬件系统、数据库集合、数据库管理系统、相关软件、数据库管理员、用户组成。,11,1、数据模型的基本概念在现实

7、世界中,将研究对象的抽象化、形式化的描述过程称为模型。把表示客观事物及其联系的数据及结构成为数据模型。在数据管理系统中有层次模型、网状模型、关系模型。下面就数据模型相关的基本概念作以介绍。,1.2.2 数据模型,12,实体:客观存在并可以相互区别的事物称为实体。实体可以是实际的事务,如教师、职工、部门、单位等;也可以是抽象的事件,如比赛、订货、选修课程等。 属性:实体所具有的某一特性称为属性,例如学生可以用学号、姓名、性别、出生日期等属性描述。 域:属性的取值范围称为域,如学生的一门课成绩取值为0100之间。 实体型:若干个属性名组成的集合表示一个实体的类型成为实体型。 实体集:同型实体的集合

8、称为实体集,如全班学生实体就是一个实体集。 联系:实体联系有实体内部联系与实体外部联系。实体内部联系是指实体内部各属性之间的联系。实体外部联系也称实体之间的联系,通常是指不同实体集之间的联系。,13,一对一联系:实体集A中的一个实体与实体集B中至多有一个实体相对应,反之亦然,则称实体集A与实体集B有一对一联系,记为1:1。如旅客与车票之间的联系。,实体集之间的联系可分为三类,14,一对多联系:实体集A中的一个实体与实体集B中的N个实体相对应,反之实体集B中的一个实体至多与实体集A中的一个实体相对应,则称实体集A与实体集B有一对多联系,记为1:N。如班级与学生之间的联系。,15,多对多联系(M:

9、N):实体集A中的一个实体与实体集B中的N个实体相对应,反之实体集B中的一个实体与实体集A中的M个实体相对应,则称实体集A与实体集B有多对多联系,记为M:N。如教师与学生之间的联系。,16,数据库管理系统常用的数据模型有下列三种: 层次模型 网状模型 关系模型,2. 数据模型,17,关系模型是以数学理论为基础构造的数据模型,它用二维表格来表示实体集中实体之间的联系。在关系模型中,操作的对象和结果都是二维表,表格与表格之间通过相同的栏目建立联系。下表表名为学生成绩,表中一行称为一个元组,表中一列称为一个属性。如表中有5个属性,即学号、姓名、数学、英语、VFP。,关系模型(Relational M

10、odel),18,学生成绩表,19,关系模型的规范化:,1)关系的每一个分量必须是一个不可分的数据项,即表中不可含表; 2)同一关系中不能有相同的属性名; 3)关系中不允许有相同的元组; 4)在一个关系中元组的次序可任意; 5)在一个关系中列的次序可任意。,20,关系模型的表示形式:,关系名(属性1,属性2,属性N) 例如:学生成绩表壳描述为如下关系: 学生成绩(学号,姓名,数学,英语,VFP),21,3. 关系的完整性,关系的完整性包括实体完整性、参照完整性和用户定义完整性。现在先介绍一下与完整性相关的概念。 (1)概念 1)关键字:在关系中能唯一标识元组的一个或一组属性称为关键字,如学生成

11、绩表中的学号。 2)候选关键字:候选关键字也是关键字,它是具有关键字特性的一个或多个属性的统称。若学生成绩表中学号、姓名都是无重复值,那么学号与姓名就是候选关键字。若姓名有重复值,则姓名就不能是候选关键字。 3)主关键字:主关键字是在多个候选关键字中选出的一个关键字。一个关系中只能有一个主关键字,如在学生成绩表中学号为主关键字。 4)外部关键字:若在一个关系R中一个属性不是本关系的主关键字或候选关键字,而是另外一个关系S的主关键字或候选关键字,则称此属性为本关系的外部关键字,R为参照关系,S为被参照关系。,22,(2)关系的完整性,1)实体完整性:是指关系中的主关键字不能取空值。空值就是不确定

12、的值。由于主关键字为空值,那这个元组是无意义的。如学生成绩表中学号为空值,而其他属性却有值,则该条记录无意义。 2)参照完整性:是用来约束关系与关系之间的关系,是指一个关系R的外部关键字F与另一个关系S的主关键字K相对应(即F是S的主关键字),则对R中的每一个元组在F上的值必须为空值或等于S中某一个元素的主关键字的值,如有以下两个关系(表):学生(学号,姓名,性别,专业代号)专业(专业代号,专业名),23,3)用户定义完整性:是指根据用户的实际需要,属性域的完整性的规定。在VFP数据库表中是指字段的数据类型、宽度、精度、取值范围、是否允许空值。如学生成绩表中的数学,其数值类型可为整型,取010

13、0之间。,24,1.2.3 VFP启动与主界面,1. VFP的功能VFP是一个可视化数据库编程的开发工具,它可以建立表、数据库,对数据库中的表建立联系并进行可视化管理。项目管理器是对多种文档、多种程序进行统一集中管理与维护的工具。VFP运用自身的向导、设计器、生成器等实现可视化编程。VFP运用交互式与自动化工作方式,方便了不同层次、不同应用用户的需求。VFP支持多媒体、网络编程,它能高效、快捷地开发出令人满意的应用软件。,25,处理器:主频为233MHz的奔腾2以上的微机 内存储器:64MB以上内存 外存储器:典型安装需85MB的硬盘空间,最大安装需90MB硬盘空间 显卡:支持800600像素

14、或更高分辨率显示器 操作系统:Win95/98/me/2000/xp/NT 4.0或更高版本的操作系统,2. VFP系统环境,26,1、将VFP系统光盘插入CD-ROM驱动器中 2、通过【我的电脑】找到setup.exe文件,双击该文件以后按照安装向导的进一步提示完成安装即可,3VFP的安装,27,1)单击开始-程序-Microsoft Visual Studio 6.0 - Microsoft Visual FoxPro 6.0 2)双击桌面上的VFP快捷方式图标 ,4VFP的启动,28,5. VFP的退出,1)按Alt+F4 2)在命令窗口中输入QUIT,然后回车 3)从文件菜单-退出 4

15、)双击左上角的控制图标 5)单击左上角控制图标-关闭,29,VFP的主窗口包括:标题栏、菜单栏、工具栏、状态栏、命令窗口和工作区几个组成部分。,6. VFP的主窗口,30,VFP工作方式主要分为两类:一类为交互工作方式,这包括在命令窗口执行和用菜单或工具栏按钮执行命令。另一类为自动化工作方式。它包括用编写的程序、各种生成器等自动生成程序后进行执行。在解决某一个问题时,两种工作方式哪一种或两种方式结合使用都可以得到同一结果。这两种工作方式为不同层次的用户、不同软件开发的用户提供了方便的使用方式,用户可以根据自身的实际情况进行选择使用。,7. VFP工作方式,31,8. 简单的VFP用户程序,例1

16、.1 设计一个表单,显示“欢迎您使用VFP,祝您成为软件开发的精英”。例1.2 设计一个口令系统,若口令正确,显示欢迎您进入学生成绩管理系统,否则显示非法用户。例1.3 设计一个两个串交换的表单。,32,1.3 数据与数据运算,VFP重要的作用就是对数据进行高效的处理。在VFP中按数据存储类型分为整型、浮点型、字符型、日期型等多种。按数据形式分为常量、变量、函数、表达式等;,33,表1.1 数据类型,34,35,36,所谓的常量就是在程序执行中其值不变的量。VFP中有6种类型的常量:数值型常量字符型常量逻辑型常量货币型常量日期型常量日期时间型常量,1.3.1 常量,37,(1)整数:由数字组成

17、,如0,-2,3。 (2)实数: 十进制表示形式:它由数字、正负号、小数点组成。如0.23,-3.14等。 指数表示形式:它由数字、小数点与E或e组成。如1.23103可表示为1.23E3,如-1.2310-2可表示为-1.23e-2。E前要有数字,E后要有整数。,1数值型常量,38,字符型常量是用定界符(双引号“”、单引号、方括号)括起来的一系列有效字符,也称为字符串。如“中国”、“微机”、 PC、abc、计算机、 123、“3.14159”等。 字符串的最大长度为254个字符。 若字符串中含有定界符,则必须用另一种定界符括起来。例如 “学生爱好计算机”Im a student.,2字符型常

18、量,39,3.逻辑型常量,逻辑常量只有真和假两种值。逻辑真:.t. .T. .Y. .y.逻辑假:.f. .F. .N. .n.,40,货币型常量以$符号开头,并四舍五入到小数点后4位例如: $100.12345,计算结果为$100.1235,4. 货币型常量,41,5.日期型、日期时间型常量,日期型常量:必须用花括号括起来 (1)通用格式: mm/dd/yyyy,例如08/08/2008或8/8/08,空白的日期可表示为、/,需执行SET STRICTDATE TO 0命令; (2)严格格式:yyyy-mm-dd,若要设置严格的日期格式,例如2008-8-8,需执行SET STRICTDAT

19、E TO 1命令。,42,日期时间型常量: (1)通用格式: mm/dd/yyyy hh:mm:ssa|p 如9/15/99 8:45 (2)严格格式:yyyy-mm-dd hh:mm:ssa|p ,如2008-8-8 8:8:8 p,43,变量是它的值可以改变的量。 变量可分为两大类,一类为字段变量、另一类为内存变量。 变量是有名的。 标识符是用来标识变量、函数、表、数据库、文件等名子,即标识符就是一个名子。,1.3.2 变量,44,由数字、字母、下划线组成。 以字母、下划线开头。 长度一般为1128个字符,但对于数组名、自由表名、自由表中的字段名、索引标识符名最多为10个字符。 避免使用V

20、FP保留字。 汉字与字母同等待遇(一个汉字占两个字符)。,标识符的组成规则:,45,内存变量有N、C、Y、D、T、L六种类型。 VFP规定内存变量的类型可以改变,即同一变量可以赋予不同类型的值。 当内存变量与字段变量重名时,在访问内存变量时,VFP规定在内存变量名前加M-或M.,否则系统默认是访问字段变量。,46,(1)赋值命令 格式1:= 格式2:STORE TO 功能: 格式1将表达式的值赋给变量。格式2将表达式的值赋给变量表中的所有变量。 说明:1)表达式是运算符与操作对象连接起来的式子,表达式可为变量、常量、也可为表达式。2)变量表中的各变量用逗号分隔。,1. 简单变量与相关命令,47

21、,(2)输出命令,格式:? | ? 功能:显示输出项目表中的各输出项。 说明: 1)输出项可为变量、常量、表达式。 2)输出项目表中的各项是用逗号分隔的,命令执行时遇到逗号就空一格。 3)?是表示在下一行输出各输出项,?是在当前行当前列输出各输出项。,48,例1.4 内存变量的应用,a=1b=.t.c=2005-10-12d=Ae=2005-10-12 12:30:28 astore 10 to f, gh=$123.23?a,b,c,d,e,f,ga=中国b=“哈尔滨“c=123?a,b?“c=“,c?a,b,49,数组是按一定顺序排列的数据集合。 数组中的每一个数据称为一个元素。 数组中每

22、一个元素的序号称为下标。 数组中的所有元素在内存中是连续存放的。,2数组,50,格式: DIMENSION | DECLARE (,) 功能:定义一维或多维数组 说明: 1)数组定义后系统自动为每一个元素赋逻辑假.F.。 2)数组有一个下标称为一维数组,有二个下标称为二维数组。 3)数组的最小下标为1。 4)数组的类型可以通过使用加以改变,同一数组的元素类型可以不同。,数组的定义,51,5)当在赋值、输入命令中只用数组名时,表示数组的所有元素有同一个值。 6)数组名不能与简单变量重名。 7)由于数组各元素在内存中是连续存放的,二维数组可作为一维数组来使用。 8)数组与后面章节中的表可相互传递数

23、据。 9)数组中的每一个元素是简单变量,因为简单变量所有的功能数组元素都具备,简单变量使用的场合数组元素都是用。,52,例1.5 一维数组的应用。dimension a(5), b(5)a=10a(5)=23b(1)=2*a(1)b(3)=中国b(4)=2005-10-6b(5)=$123.2?a(1), a(2), a(3), a(4), a(5)?b(1), b(2), b(3), b(4), b(5),53,(1)内存变量的显示 格式:LIST | DISPLAY MEMORY LIKE TO PRINT | TO FILE 功能:显示内存变量的名、作用域、类型、值。 说明: 1)lik

24、e子句是显示与通配符相匹配的内存变量信息。通配符有?与*,?表示一个任意字符,*表示多个任意字符。 2)to print子句是将显示内存变量的信息同时从打印机输出。 3)to file 子句是将显示内存变量的信息同时存入由文件名指定的文件中。 4)list不管显示的信息有多少,都一次显示完。 5)display显示的信息多于一屏时,分屏显示。每显示一屏就暂停下来,待用户按任意键后继续显示。,3内存变量的显示与释放,54,格式1:CLEAR MEMORY 格式2:RELEASE 格式3:RELEASE ALL EXTENDED 格式4:RELEASE ALL LIKE | EXCEPT 功能:格

25、式1释放所有内存变量。格式2释放由内存变量表指定的内存变量。格式3释放所有内存变量,无任何选项释放所有内存变量,在程序中要选extended,否则不能释放公共变量。格式4当选like 时,释放与相匹配的内存变量;当选except 时,释放与不相匹配的内存变量。,(2)内存变量的释放,55,例1.7 内存变量的显示与应用,a=2abc=6b=“中国“a1=哈尔滨dimension c(3)c(1)=2005-10-20c(2)=22display memory like a? to file qq1display memory like a* to file qq2release all lik

26、e a*display memory like a*release all,56,1.3.3 运算符与表达式,VFP的运算符主要有六种:算术运算符字符串运算符关系运算符逻辑运算符日期与日期时间运算符宏替换运算符,57,1、算术运算符与表达式,算术运算符要求它的的操作数必须为数值。由算术运算符与操作数连接的式子为算术表达式,算术表达式的运算结果为数值。表1.2 算术运算符与表达式,58,例1.8 算术运算符与表达式的应用,x=2y=3?(x+2)*y%6-x,59,字符串运算符用于多个字符串相连接。它的操作数是字符串。由字符串运算符连接起来的式子为字符串表达式。,2、字符串运算符,60,表1.3

27、 字符串运算符与表达式,61,例1.9 字符串运算符与表达式的应用,a=“黑龙江 “b=“哈尔滨 “c=“东方学院 “?a+b+c?a-b-c,62,3、关系运算符与表达式,关系运算符用于操作数之间进行关系比较,它的操作数是同类型的。由关系运算符连接起来的式子为关系表达式。关系表达式的结果是逻辑值。若关系成立,结果为真,否则为假。,63,表1.4 关系运算符与表达式,64,例1.10 关系运算符与表达式的应用,clearx=2y=3?x+3=2, x!=y, xyx=“abcde“y=“ab“z=“cd“?x=y, x=y, z$x, x!=y,65,4、逻辑运算符与表达式,逻辑运算符用于对操

28、作数进行逻辑运算。由逻辑运算符连接起来的式子为逻辑表达式。当逻辑表达式成立时,结果为.T.,否则结果为假.F.。表1.5 逻辑运算符,66,逻辑运算真值表,67,例1.11 逻辑表达式的应用,a=“中国黑龙江“b=“黑龙江“c=3?b$a and c3,68,日期、日期时间运算符可以对操作对象进行加、减运算。用这种运算符连接起来的式子为日期、日期时间表达式。,5 日期、日期时间运算符与表达式,69,表1.6 日期时间运算符与表达式,70,例1.12 日期、日期时间运算符及表达式的应用。,a=2005-11-20b=10?a+b, b+a, 2005-12-20+10, a-10c=2005-1

29、1-20 10:30:30 ad=2005-11-20 10:20:10 a?c+10, 10+d, c-10, c-d,71,1.3.4 常用函数,函数是一段程序代码,用来进行一些特定的运算或操作,支持和完善命令的功能,帮助用户完成各种操作与管理。按函数提供方式,可分为系统函数和用户自定义函数。按函数运算、处理对象和结果的数据类型,可分为数值型函数、字符型函数、逻辑型函数、日期时间型函数、数据转换函数等。,72,1、系统函数的形式函数名(形参表) 2、函数的返回值函数经过运算所得结果称为函数的返回值 3、常用函数的分类通常将常用的函数分为数值函数、字符处理函数、日期和时间函数、数据类型转换函

30、数、测试函数五种。,73,4、常用函数,数值函数 字符函数 日期和时间函数 数据类型转换函数 测试函数,74,(1)数值函数,1)绝对值函数 格式:ABS() 功能:求数值表达式的绝对值 例1.14 ABS的应用x=-2?abs(x), abs(10+x), abs(2+x), abs(2*x),75,2)符号函数 格式:SIGN(数值表达式) 功能:返回数值表达式的值的符号,当数值表达式的值为正、负、0时函数分别为1,-1,0 例1.15 SIGN的应用x=3?sign(x), sign(-1), sign(x-3),76,3)圆周率函数 格式:PI() 功能:返回圆周率。 例1.16 PI

31、()的应用s=pi()*10*10? “s=”, s,77,4)求平方根函数 格式:SQRT() 功能:返回数值表达式值得平方根,数值表达式的值不能为负。 例1.17 SQRT()的应用x=-4y=2.22?sqrt(abs(-4), sqrt(10+y),78,5)求整数函数 格式:INT() 功能:INT()返回数值表达式的整数值 例1.18 求整数函数的应用x=3.9?int(x), int(-x),79,6)四舍五入函数 格式:ROUND(, ) 功能:对数值表达式1四舍五入,保留数值表达式2的值所制定的位数 例1.19 ROUND()函数的应用x=123.456?round(x, 2

32、), round(x, 1), round(x, 0), round(x, -1),80,7)求余函数 格式:MOD(, ) 功能:返回数值表达式1除以数值表达式2的余数,且余数的符号与除数相同。若数值表达式1与数值表达式2同号,函数值为两数的余数。若异号,函数值为两数的余数再加上除数的值。 例1.20 MOD()应用x=10?mod(x, 4), mod(x, -4), mod(-x, 4), mod(-x, -4),81,8)求最大值函数 格式:MAX(, , ) 功能:求数值表达式1,数值表达式2,数值表达式3中的最大值 9)求最小值函数 格式:MIN(, , ) 功能:求数值表达式1,

33、数值表达式2,数值表达式3中的最小值 例1.21 MAX()的应用x=10?max(2, 10, -2, 20, 9, x),82,10)求e的函数 格式:EXP() 功能:求e的数值表达式 例1.22 exp()的应用?exp(2),83,(2)字符函数,1)求字符串长度函数 格式:LEN() 功能:返回字符表达式的长度 例1.23 len()的应用x=“中国哈尔滨”y=“china”?len(x), len(y),84,2)大小写转换函数 格式:LOWER()UPPER() 功能: LOWER()是将字符表达式中的大写字母转为小写字母 UPPER()是将字符表达式中的小写字母转为大写字母

34、例1.24 lower(),upper()的应用x=“123study hard”?lower(x), upper(x),85,3)空格字符串生成函数 格式:space() 功能:返回由数值表达式值指定数目的空格 例1.25 space()的应用x=“We”y=“are”z=“students.”?x+space(2)+y+space(2)+z,86,4)删除前导尾部空格函数 格式:TRIM() LTRIM()ALLTRIM() 功能:TRIM()将字符表达式的值的尾部空格去掉LTRIM()将字符表达式的值的前导空格去掉ALLTRIM()将字符表达式的值的前导与尾部空格同时去掉 例1.26 T

35、RIM(),LTRIM(),ALLTRIM()的应用a=“ 中国”b=“首都 “c=“ 北京 “d=a+b+c?a, b, c, d?trim(a)+ltrim(b)+alltrim(c),87,5)子串函数 格式:LEFT(,)RIGHT(, )SUBSTR(, , ) 功能:LEFT()从字符表达式的左端开始取N个字符。RIGHT()从字符表达式的右端开始取N个字符。SUBSTR()从字符表达式的第N1个位置开始取N2字符。若N2省略,取到最后一个字符。 例1.27 LEFT(),RIGHT(),SUBSTR()的应用x=“中国北京首都”?left(x, 4)+right(x, 4)+su

36、bstr(x, 5, 4),88,6)求子串位置函数 格式: AT(,) 功能:AT()若字符表达式1为字符表达式2的子串时,则返回字符表达式1的首字符在字符表达式2中的位置。否则返回0。数值表达式3是字符表达式1在字符表达式2中第几次出现,默认值为1。 例1.28 AT()的应用x=“This is computer. The computer is our friend.”?at(“is”, x), at(“is”, x, 3), at(“The”, x),89,(3)日期和时间函数,1)日期函数 格式:DATE() 功能:返回当前系统日期 2)时间函数 格式:TIME() 功能:返回当前

37、系统时间 3)日期时间函数 格式:DATETIME() 功能:返回当前系统日期与时间 4)求天数函数 格式:DAY(|) 功能:返回天数 5)年份函数 格式:YEAR(|) 功能:返回年份,90,6)月份函数 格式:MONTH(|) 功能:返回月份 7)小时函数 格式:HOUR() 功能:返回小时 8)分函数 格式:MINUTE() 功能:返回分钟 9)秒函数 格式:SEC() 功能:返回秒数,91,例1.29 日期和时间函数的应用x=2005-10-2 01:30:28 am?date(), time(), datetime(), day(datetime()?year(x), month(

38、x), hour(x), minute(x), sec(x),92,(4)数值类型转换函数,1)数值转换成字符型函数 格式:STR(, , N) 功能:将数值表达式转为长度为L,小数位数为N的字符串。 例1.30 STR()的应用x=-1.278?str(x, 8, 2), str(x, 2),93,2)字符串转为数值函数 格式:VAL() 功能:将字符表达式值转为数值 例1.31 VAL的应用x=“-12.45”y=“b2.6”?val(x), val(y),94,3)将字符串转为日期或时间函数 格式:CTOD() CTOT() 功能:CTOD()将字符表达式转为日期型数据CTOT()将字符

39、表达式转为日期时间型数据 例1.32 CTOD()与CTOT()的应用?ctod(“10/2/2005”), ctot(“10/2/2005 10:30:51 am”),95,4)日期时间转为字符型数据 格式:DTOC(|,1) TTOC(,1) 功能:DTOC()将日期表达式或日期时间表达式转为字符型数据,若选1则字符格式YYYYMMDD共8个字符。TTOC()将日期时间表达式转为字符型数据,若选1则字符格式YYYYMMDD-HHMMSS共14个字符 例1.33 DTOC()与TTOC()的应用?dtoc(date(), ttoc(datetime(),96,(5)测试函数,1)值域测试函数

40、 格式:BETWEEN(, , ) 功能:若表达式1值大于等于表达式2且小于等于表达式3时,函数返回.T.,否则返回.F.。若表达式2,表达式3有一个为NULL,则函数返回NULL。 例1.34 BETWEEN()的应用x=100?between(x, 10, 200), between(x, 1, 20), between(x, NULL, 300),97,2)空值测试函数 格式:ISNULL() 功能:若表达式值为NULL,函数返回.T.,否则返回.F.。 例1.35 ISNULL()的应用x=nully=3?isnull(x), isnull(y),98,3)“空”值测试函数 格式:EM

41、PTY() 功能:若表达式值为空,函数返回.T.,否则返回.F.。 说明:数值型、双精度、货币、浮点、整型为0就认为空。字符型空串、空格、制表、回车、换行认为空。备注型无内容认为空。逻辑型为.F.,日期、日期时间型为空时,认为空。如CTOD(“”),CTOT(“”)都认为空,99,4)数据类型测试函数 格式:VARTYPE() 功能:返回表达式的类型,用大写字母表示类型。C为字符型或备注行,N为数值型、整型、浮点型、双精度型。Y为货币型,L为逻辑型,O为对象型,G为通用型,D为日期型,T为日期时间型,X为NULL值,U为未定义,100,例1.36 VARTYPE()应用a=“abc”b=2c=null?vartype(a), vartype(b), vartype,101,1.4 小结,本章主要介绍了数据库的发展与特点,数据库的基本知识,数据与数据运算。通过学习数据模型可知,关系数据模型就是一张二维表,它是建立在严格的数学概念基础上的,既简单又便于实现。掌握VFP的数据类型及常用函数,在进行数据运算时要严格区分常量、变量、表达式及应用规则,为今后应用VFP开发工具编制应用软件打下良好的基础。,102,习题与上机,P26: 1、2,

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

当前位置:首页 > 网络科技 > Visual Basic

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报