vf全国计算机等级考试二级教程VIsual foxpro程序设计_第1页
vf全国计算机等级考试二级教程VIsual foxpro程序设计_第2页
vf全国计算机等级考试二级教程VIsual foxpro程序设计_第3页
vf全国计算机等级考试二级教程VIsual foxpro程序设计_第4页
vf全国计算机等级考试二级教程VIsual foxpro程序设计_第5页
已阅读5页,还剩175页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、目 录上一页下一页退 出第一章第一章 Visual FoxProVisual FoxPro基础基础 第二章第二章 VF VF 的系统初步的系统初步第三章第三章 数据与数据运算数据与数据运算第四章第四章 VFVF数据库及其操作数据库及其操作目 录上一页下一页退 出 本章要点:本章要点:计算机数据管理的发展计算机数据管理的发展数据库系统基本概念数据库系统基本概念数据模型数据模型关系运算关系运算数据库设计步骤数据库设计步骤Visual FoxPro系统概述系统概述目 录上一页下一页退 出引入引入:为什么要学数据库管理为什么要学数据库管理? 计算机应用领域计算机应用领域任一企事业单位都涉及到数据处理任

2、一企事业单位都涉及到数据处理,称称“五五M管理管理”: 人人 man 财财 money 物物 material 设备设备 machine 方法方法 methodology 制度等制度等 科学计算科学计算过程控制过程控制数据处理数据处理 _占占80%计算机处理份额计算机处理份额目 录上一页下一页退 出数据与数据处理1.数据数据:是描述客观事物的符号记录是描述客观事物的符号记录,是用物理符号记录下来是用物理符号记录下来 的可以鉴别的事物特性。包括的可以鉴别的事物特性。包括:数字、文字、图形、数字、文字、图形、 图像、动画、声音等。图像、动画、声音等。2.信息信息:是数据经过加工处理后的有用结果。或

3、是能表示一定是数据经过加工处理后的有用结果。或是能表示一定 含义的数据。含义的数据。例例:数据描述数据描述: 王阳王阳,9098135,男男1980,江苏江苏,计算机系计算机系,1998。经过简单的推论后经过简单的推论后,可得出这样的信息可得出这样的信息: 王阳是位男大学生王阳是位男大学生,学号为学号为9098135,1980年出生年出生,江苏江苏 人人,1998年考入计算机系。年考入计算机系。3.数据处理数据处理:将数据转换或信息的过程。将数据转换或信息的过程。 目 录上一页下一页退 出数据处理内容包括数据处理内容包括: 数据收集数据收集 数据整理(鉴别)数据整理(鉴别) 存储数据存储数据

4、使用数据(计算、统计、查询等)使用数据(计算、统计、查询等) 维护数据维护数据 故通过数据处理可以获取信息故通过数据处理可以获取信息,然后对信息进行解释、然后对信息进行解释、推论、归纳、分析、综合等而产生决策。推论、归纳、分析、综合等而产生决策。 目 录上一页下一页退 出在一个企事业单位中,数据的处理与作用呈金字塔在一个企事业单位中,数据的处理与作用呈金字塔形,如下图所示:形,如下图所示:高高 层层中中 层层基基 层层战略层战略层 战术层战术层 数据管理任务数据管理任务操作层操作层 目 录上一页下一页退 出人工管理人工管理 20世纪世纪50年代中期以前年代中期以前 程序程序数据数据特点:数据与

5、程序不特点:数据与程序不具有独立性,一组数具有独立性,一组数据对应一组程序,数据对应一组程序,数据不能长期保存。据不能长期保存。目 录上一页下一页退 出计算机数据管理的发展阶段文件系统文件系统 20世纪世纪50年代后期至年代后期至60年代中期年代中期 程序程序数据数据特点:数据与程序不特点:数据与程序不具有独立性,一组数具有独立性,一组数据对应一组程序,数据对应一组程序,数据不能长期保存。据不能长期保存。数据库系统数据库系统20世纪世纪60年代后期至今年代后期至今 应用程序应用程序1应用程序应用程序2应用程序应用程序3数据库管理数据库管理系统系统DBMS数据库数据库DataBase目 录上一页

6、下一页退 出分布式数据库系统分布式数据库系统(采用采用C/S结构结构) 90年代:面向对象的数据库系统年代:面向对象的数据库系统基本思想基本思想:用户程序不应与面向机器的结构如字段和记录直接打交道用户程序不应与面向机器的结构如字段和记录直接打交道,而应该直接对对象和建立在对象之上的操作进行处理。而应该直接对对象和建立在对象之上的操作进行处理。 银行银行银行银行银行银行商店商店商店商店商店商店银行银行银行银行银行银行总库总库总库总库物理分布,逻辑集中物理分布,逻辑集中 物理分布,逻辑分布物理分布,逻辑分布 目 录上一页下一页退 出数据库系统1数据库(数据库(DBDatabase): 定义定义:是

7、存储在计算机存储设备上,结构化的相关数 据集合。它能以最佳的方式、最少的重复为 多种应用服务 特点特点: 1)数据的共享性数据的共享性: 2)独立性独立性: 3)数据冗余数据冗余(重复重复)少少 目 录上一页下一页退 出2数据库应用系统数据库应用系统 定义定义:指系统开发人员利用数据库系统资源开发出指系统开发人员利用数据库系统资源开发出 来的,而向某一类实际应用的应用软件系统。来的,而向某一类实际应用的应用软件系统。 如如:劳资系统、人事管理系统、学生信息系统、员工劳资系统、人事管理系统、学生信息系统、员工培训系统、物资管理系统、教学管理系统、维修培训系统、物资管理系统、教学管理系统、维修系统

8、、客户跟踪系统等。系统、客户跟踪系统等。 目 录上一页下一页退 出3数据库管理系统数据库管理系统(DBMSDatabase Management System) 定义定义:是用来管理数据库数据的大型程序,是用户与数据库是用来管理数据库数据的大型程序,是用户与数据库的接口。的接口。 说明说明:1)DBMS 提供各种命令对DB进行操作,可以帮助用户完成数据库的建立、询问、显示、修改、打印报表等工作。2)DBMS包括数据描述语言及其翻译程序、数据操纵语言及其编译程序、数据库管理例行程序。 3)通俗地说:数据库是存放数据的地方,而DBMS是指在数据库的环境下,如何存取数据等多种管理数据库的功能。 目

9、录上一页下一页退 出4数据库系统数据库系统定义定义:指引进数据库技术后的计算机系统现有组织 地,动态地存储大量相关数据提供数据处理 和信息资源共享的便利手段 组成有五部分组成有五部分:硬件系统、数据库集合、DBMS 及相关软件、数据管理员和用户。 目 录上一页下一页退 出数据库系统如图数据库系统如图1-1所示。所示。图1-1 数据库系统组成用户1用户2用户n.数据库管理系统数据库计算机软硬件系统DBMSDB+DBS目 录上一页下一页退 出数据模型关系模(式)型:用二维表的形式表示实体和实体关系模(式)型:用二维表的形式表示实体和实体 间联系的数据模型。间联系的数据模型。关系关系: 一张二维表一

10、张二维表(.dbf) 数据库数据库 .dbc元组元组: (记录)(记录):对应二维表中的每一行。对应二维表中的每一行。属性属性: (字段或数据项):对应二维表中的每一列(字段或数据项):对应二维表中的每一列 称为属性。称为属性。域域: 属性的取值范围。属性的取值范围。关键字关键字:在表中其值能够惟一地标识一个元组。在表中其值能够惟一地标识一个元组。目 录上一页下一页退 出外部关键字:如外部关键字:如果表中的一个字果表中的一个字段不是本表的主段不是本表的主关键字或候选关关键字或候选关键字,而是另外键字,而是另外一个表的主关键一个表的主关键字或候选关键字或候选关键字,这个字段字,这个字段(属性)就

11、称为(属性)就称为外部关键字。外部关键字。学生表课程表选课表S_NOC_NOSC_NO S_NO(FK) C_NO(FK)目 录上一页下一页退 出关系的特点:关系的特点:关系必须规范化:每个属性必须是不可分割的数据单元,即关系必须规范化:每个属性必须是不可分割的数据单元,即 表中不能再包含表。表中不能再包含表。在同一个关系中不能出现相同的属性名。在同一个关系中不能出现相同的属性名。VF中不允许同一个中不允许同一个表中有相同的字段名。表中有相同的字段名。关系中不允许有完全相同的元组,即冗余。关系中不允许有完全相同的元组,即冗余。在一个关系中元组和属性列的次序无关紧要。在一个关系中元组和属性列的次

12、序无关紧要。姓名实发工资基本工资职称应发工资应扣工资奖金津贴房租 水电 托儿费目 录上一页下一页退 出数据库系统的层次示意图及特点。数据库系统的层次示意图及特点。数据库系统的特点:数据库系统的特点: (1) 实现数据共享,减少数据冗余。(2) 采用特定的数据模型(3) 具有较高的数据独立性(4) 有统一的数据控制功能操作系统硬件数据库集合数据库管理系统用户DBA目 录上一页下一页退 出数据模型及实体之间联系的种类数据模型及实体之间联系的种类数据模型:是数据库管理系统用来表示实体及实体间联系的数据模型:是数据库管理系统用来表示实体及实体间联系的 方法。方法。有且仅有一个结点无双亲,这个结点即树的

13、根。有且仅有一个结点无双亲,这个结点即树的根。 其他结点有且仅有一个双亲其他结点有且仅有一个双亲 可以有一个以上的结点无双亲可以有一个以上的结点无双亲。至少有一个结点有多于一个的双亲至少有一个结点有多于一个的双亲。用二维表结构表示实体与实体之间的联系的模型。用二维表结构表示实体与实体之间的联系的模型。 层次模型层次模型:网状模型网状模型:关系模型关系模型:目 录上一页下一页退 出关系运算关系运算:关系运算:传统的集合运算:传统的集合运算: 并、交、差并、交、差专门的关系运算专门的关系运算选择:从关系中找出满足给定条件的元组的操作选择:从关系中找出满足给定条件的元组的操作投影:从关系模式中指定若

14、干个属性组成新的关系投影:从关系模式中指定若干个属性组成新的关系联接:将两个关系模式拼接成一个更宽的关系模联接:将两个关系模式拼接成一个更宽的关系模 式,生成的新关系中包含满足联接条件的式,生成的新关系中包含满足联接条件的 元组。元组。自然联接:去掉重复属性的联接。自然联接:去掉重复属性的联接。目 录上一页下一页退 出数据库设计步骤1、需求分析、需求分析2、确定需要的表、确定需要的表3、确定所需的字段、确定所需的字段4、确定联系、确定联系a)一对一联系一对一联系 1:1(一个班级只有一个班长,一个班长不能同(一个班级只有一个班长,一个班长不能同时在其他班级再兼任班长)时在其他班级再兼任班长)b

15、)一对多联系一对多联系 1:n(一个部门有多名职工,而一名职工只在一(一个部门有多名职工,而一名职工只在一个部门就职,即只在一个部门)个部门就职,即只在一个部门)c)多对多联系多对多联系 n:m(一个学生可以选修多门课程,一门课程(一个学生可以选修多门课程,一门课程由多个学生选修)由多个学生选修)5、设计求精、设计求精注:VF6.0是一个32位的ODBC(开放数据库连接)目 录上一页下一页退 出本章要点:本章要点:Visual FoxPro的运行环境要求的运行环境要求Visual FoxPro的安装和启动方法的安装和启动方法Visual FoxPro6.0的用户界面和开发环境的用户界面和开发环

16、境项目管理器的建立及其选项卡使用项目管理器的建立及其选项卡使用Visual FoxPro各种生成器、设计器和向各种生成器、设计器和向导导目 录上一页下一页退 出一、计算机中演示一、计算机中演示VF的安装过程的安装过程VF对计算机软、硬基本配置要求如下: (1)处理器:486DX/66MHZ处理器,推荐使用奔腾 或更高档处理器的PC兼容机。 (2)内存储器:16MB以上的内存,推荐使用24MB 内存。 (3)硬盘空间:典型安装85MB,最大安装90MB。 (4)需要鼠标、光驱、推荐使用VGA或更高分辩率 的监视器。 (5)操作系统:VF是32位产品,需要在win98或 winNT4.0或更高版本

17、上运行。目 录上一页下一页退 出二、启动二、启动VF的几种方法的几种方法 (1) 开始程序 VF (2) 创建快捷方式 (3) 通过路径 (4) 资源管理器 (5) 开始运行路径注:35用户必须知道VF的安装路径。目 录上一页下一页退 出三、三、VF的用户界面的用户界面 标题栏、菜单栏、工具栏、主窗口、命令窗口、状态栏。标题栏、菜单栏、工具栏、主窗口、命令窗口、状态栏。 1、菜单操作、菜单操作 鼠标(单击)鼠标(单击) 方法:方法: 键盘(快捷键)键盘(快捷键) 光标(上下键)光标(上下键) (1)选项颜色暗淡选项颜色暗淡 (2)选项后有省略号选项后有省略号 (3)对话框(要求输入信息或作进一

18、步选择)对话框(要求输入信息或作进一步选择) (4)上下文敏感:根据招待的程序不同,菜单也不同。上下文敏感:根据招待的程序不同,菜单也不同。目 录上一页下一页退 出2、命令窗口操作、命令窗口操作显示或隐藏命令窗口显示或隐藏命令窗口(1)点)点(关闭),窗口(关闭),窗口命令窗口(打开命令窗口(打开 )(2)常用工具栏(按钮)常用工具栏(按钮)(3)Ctrl+F4隐藏,隐藏,Ctrl+F2显示显示工作方式:工作方式: 交互式工作方式:交互式工作方式: 菜单菜单 命令窗口命令窗口 程序运行方式:程序运行方式:(第七章第七章) 目 录上一页下一页退 出3、工具栏的使用、工具栏的使用 (1)显示或隐藏

19、)显示或隐藏 显示显示工具栏工具栏 (2)定制工具栏)定制工具栏 显示显示工具栏工具栏 新建(拖动)新建(拖动) (3)修改现有的工具栏)修改现有的工具栏显示显示工具栏工具栏 定制定制目 录上一页下一页退 出四、项目管理器四、项目管理器1、创建项目、创建项目新建新建项目项目起名起名 CREATE PROJECT 2、打开和关闭、打开和关闭 打开:文件打开:文件打开打开项目名项目名 关闭:关闭:(单击)(单击)3、定制项目管理器、定制项目管理器 (1)移动、缩放和折叠)移动、缩放和折叠 (2)拆分)拆分 (3)停放)停放注:在关闭空项目时,VF会显示提示框(删除或保持)目 录上一页下一页退 出4

20、、创建数据库、创建数据库 数据(选项卡)数据(选项卡) 数据库数据库 新建新建 5、添加文件、添加文件6、修改文件、修改文件7、移去文件、移去文件 注:在项目管理器中新建的文件会自动包含在该项目文件中,而用文件新建数据库创建的文件则不属于该项目(在项目之外)注:移去表示文件仍存在于原目录中,删除=移去+磁盘上删除目 录上一页下一页退 出8、添加说明、添加说明 (1)选中)选中右键右键编辑说明编辑说明 (2)选中)选中项目(菜单)项目(菜单)编辑说明编辑说明五、五、VF的配置的配置 工具(菜单)工具(菜单) 选项选项 显示显示 文件位置文件位置注:若不将设置保存为默认值,则下次系统会还原为原始值

21、。目 录上一页下一页退 出六、六、VF的向导、设计器、生成器的向导、设计器、生成器1、向导:是一种交互式程序,用户在一系列向导屏幕、向导:是一种交互式程序,用户在一系列向导屏幕 上回答总是或者选择选项,向导会根据回答上回答总是或者选择选项,向导会根据回答 生成文件或者执行任务,帮助用户快速完成生成文件或者执行任务,帮助用户快速完成 一般性的任务。一般性的任务。2、设计器:(、设计器:(P48)基本工具。)基本工具。3、生成器:(、生成器:(P49)是带有选项卡的对话框,用于简化)是带有选项卡的对话框,用于简化 对表单、复杂控件的创建和修改过程。对表单、复杂控件的创建和修改过程。 目 录上一页下

22、一页退 出七、退出七、退出VF的几种方法的几种方法 1、文件、文件退出退出 2、点、点 3、命令窗口:、命令窗口:QUIT 4、Alt+F4 5、双击狐狸头。、双击狐狸头。 目 录上一页下一页退 出本章要点:本章要点:Visual FoxPro的各种类型常量的书写格式变量的各种类型常量的书写格式变量的种类和类型的种类和类型内存变量常用命令内存变量常用命令数值、字符与日期时间表达式数值、字符与日期时间表达式关系表达式关系表达式逻辑表达式逻辑表达式常用函数:字符处理函数、数值计算函数、日期常用函数:字符处理函数、数值计算函数、日期时间函数、数据类型转换函数和测试函数时间函数、数据类型转换函数和测试

23、函数目 录上一页下一页退 出 将各种形式的数据经过数字化存入计算机,都须确定其:将各种形式的数据经过数字化存入计算机,都须确定其: 型:类型型:类型数据数据 值:取值值:取值在在VFP中中,常量、变量、函数和表达式的类型包括常量、变量、函数和表达式的类型包括6种种:字符字符型、数值型、货币型、逻辑型、回期型、日期型、日期时间型。型、数值型、货币型、逻辑型、回期型、日期型、日期时间型。 目 录上一页下一页退 出常量常量 定义:在程序运行过程中保持不变的量定义:在程序运行过程中保持不变的量 。不同类型的常。不同类型的常 量有不同量有不同 的书写格式。的书写格式。 目 录上一页下一页退 出 表示方法

24、是用半角单引号、双引号或方括号表示方法是用半角单引号、双引号或方括号扩扩 起来的容。起来的容。 ( ,“ ”和称为定界符)和称为定界符)注:定界符只规定常量的类型以及常量的起始和终止界限,它不作为常量本身的内容。且必须要成对匹配,不能一边用单引号而另一边用双引号。若某种定界符本身也是字符串的内容,则需要用另一种定界符为该字符串定界。目 录上一页下一页退 出例例31:显示几个字符型常量:显示几个字符型常量 在命令窗口键入以下两条命令:在命令窗口键入以下两条命令: ?“计算机计算机”,123,数据数据,ABX”abc” ? “学习学习”, 字符串字符串, “”,表示方法表示方法 ?(单问号)的功能

25、:是在下一行显示若干个表达式的值。(单问号)的功能:是在下一行显示若干个表达式的值。 ?(双问号)的功能:是在同一行显示表达式的值。(双问号)的功能:是在同一行显示表达式的值。目 录上一页下一页退 出 组成:由组成:由09、小数点和正负号。如:、小数点和正负号。如:12、3.45、-6.78。 为了表示很大或很小的数值型常量,可以使用科为了表示很大或很小的数值型常量,可以使用科学记数法形式。学记数法形式。 数值型数据的长度为数值型数据的长度为120,内存中用内存中用8个字节表示,个字节表示,其取值范围是其取值范围是-0.9999999999E+190.999999 9999E+20目 录上一页

26、下一页退 出 用来表示货币值,其格式与数值型常量类似,但用来表示货币值,其格式与数值型常量类似,但要加上一个前置的(要加上一个前置的($)符。)符。 货币数据采用货币数据采用4位小数。若一个货币型常量多于位小数。若一个货币型常量多于4位小数,那么系统会自动将多余的小数位四舍五位小数,那么系统会自动将多余的小数位四舍五入。例:入。例:$123.456 789-$123.4568 在内存中占用在内存中占用8个字节,取值范围:个字节,取值范围:-922 337 203 685 477.580 7922 337 203 685 477.580 7目 录上一页下一页退 出 日期型常量的定界符是一对花括号

27、。花括号内包括年、月、日期型常量的定界符是一对花括号。花括号内包括年、月、日三部分内容,各部分内容之间用分隔符分隔。系统默认日三部分内容,各部分内容之间用分隔符分隔。系统默认斜杠(斜杠(/)分隔符。常用的其他日期分隔符有连字号()分隔符。常用的其他日期分隔符有连字号(-)、)、句点(句点(.)和空格。)和空格。 日期型常量有两种格式:日期型常量有两种格式:目 录上一页下一页退 出传统的日期格式:传统的日期格式: (系统默认的日期数据为美国日期格式(系统默认的日期数据为美国日期格式“月月/日日/年年”(mm/dd/yy),其中月、日、年各为两位数字。),其中月、日、年各为两位数字。) 如:如:1

28、0/08/01 对这个日期在不同的设置状态下,计算机会对这个日期在不同的设置状态下,计算机会作出不同的解释。作出不同的解释。2001年年10月月8(月(月/日日/年)日、年)日、2001年年8月月10日(日日(日/月月/年)、年)、2010年年8月月1日(年日(年/月月/日)日) 注:上面的格式要受到命令语句注:上面的格式要受到命令语句SET DATE TO 和和SET CENTURY设置的影响。设置的影响。目 录上一页下一页退 出严格的日期格式严格的日期格式yyyy-mm-dd,用此格式写的日期常量能表达一个确切的日用此格式写的日期常量能表达一个确切的日期,它不受期,它不受SET DATE等

29、语句设置的影响。等语句设置的影响。注:注:1)花括号内第一个字符必须是)花括号内第一个字符必须是() 2)年份必须用)年份必须用4位位 3)年月日的次序不能颠倒、不能缺省。)年月日的次序不能颠倒、不能缺省。2003-12-03 日期型数据用日期型数据用8个字节表示,取值范围是:个字节表示,取值范围是:0001- 01-019999-12-31目 录上一页下一页退 出、的区别:的区别: 严格的日期格式可以在任何情况下使用,而传统的日期格式严格的日期格式可以在任何情况下使用,而传统的日期格式 只能在只能在SET STRICTDATE TO 0状态下使用。所以使用严格状态下使用。所以使用严格 的日期

30、格式十分方便。的日期格式十分方便。影响日期格式的设置命令影响日期格式的设置命令A)SET MARK TO日期分隔符日期分隔符 &用于指定日期分隔符用于指定日期分隔符 “-”.”,系统默认系统默认 “/”B)SET DATE TOAMERICAN|ANSI|BRITISH|FRENCH| &设置日期显示的格式设置日期显示的格式 GERMAN|ITALIAN|JAPAN|USA|MDY|DMY|YMD 目 录上一页下一页退 出表表3.1 常用日期格式常用日期格式短短 语语短短 语语格格 式式格格 式式AMERICANBRITISHFRENCHITLIANUSADMYmm/dd/yydd/mm/yy

31、dd-mm-yymm-dd-yydd/mm/yyANSIGERMANJAPANMDYYMDmm-dd-yyyy-mm-ddyy-mm-dddd.mm.yyyy.dd.mm目 录上一页下一页退 出C)SET CENTURY ON/OFF /设置年份的位数设置年份的位数ON:4位,位,OFF:2位位(系统默认系统默认)D)SET STRICTDATE TO012/设置是否对日期格设置是否对日期格式进行检查(传统日期格式)式进行检查(传统日期格式) 0表示不进行严格的日期格式检查,目的是与早期表示不进行严格的日期格式检查,目的是与早期Visual Foxpro兼容。兼容。 1表示进行严格的日期格式检

32、查,它是系统默认的设置。表示进行严格的日期格式检查,它是系统默认的设置。 2 表示进行严格的日期格式检查,并且对表示进行严格的日期格式检查,并且对CTOD()和和DTOT()函数的格式也有效。函数的格式也有效。目 录上一页下一页退 出例例32设置不同的日期格式设置不同的日期格式 SET CENTURY ON &设置设置4位数字年份位数字年份 SET MARK TO &恢复系统默认的恢复系统默认的斜杠日期分隔符斜杠日期分隔符 SET DATE TO YMD&设置年月日格式设置年月日格式 ?2001-08-26 2001/08/26显示显示: 2001/08/26目 录上一页下一页退 出再在命令窗

33、口键入再在命令窗口键入4条命令条命令,并分别回车执行并分别回车执行:SET CENTURY OFF &设置设置2位数字年份位数字年份SET MARK TO “.”&设置日期分隔符设置日期分隔符为西文句号为西文句号SET DATE TO MDY&设置月日年格式设置月日年格式?2001-08-26显示显示:08.26.01目 录上一页下一页退 出接着在命令窗口键入如下两条命令接着在命令窗口键入如下两条命令,并分别回车执行并分别回车执行:SET STRICTDATE TO 0 &不进行严格的日期格式检查不进行严格的日期格式检查?2001-08-26,09.22.01显示显示: 08.26.01 09

34、.22.01在命令窗口键入如下两条命令在命令窗口键入如下两条命令,并分别回车执行并分别回车执行:SET MARK TO “;” &设置日期分隔符为分号设置日期分隔符为分号?2001-08-26,09.22.01显示显示: 08;26;01; 09;22;01目 录上一页下一页退 出 包括日期和时间两部分内容包括日期和时间两部分内容:, 其中其中与日期型常量相似与日期型常量相似,也有传统和严格也有传统和严格两种格式两种格式. 部分的格式为部分的格式为 hh:mm:ssap,其,其中中hh、mm、ss分别代表时、分和秒,默认值分分别代表时、分和秒,默认值分别为别为12、0和和0。a和和p分别代表上

35、午和下午,默分别代表上午和下午,默认值为认值为a。如果指定的时间大于等于。如果指定的时间大于等于12,则自然,则自然为下午的时间。为下午的时间。目 录上一页下一页退 出例例3.3显示日期时间型常量显示日期时间型常量SET MARK TO ?2001-03-22,11:30p,1999-01-01, ,2000-10-1,3显示显示:03/22/01 11:30:00 PM 01/01/99 12:00:00 AM 10/01/00 03:00:00 AM注:日期时间型数据用注:日期时间型数据用8个字节存储,日期部分的个字节存储,日期部分的取值范围与日期型数据相同,时间部分的取值范取值范围与日期

36、型数据相同,时间部分的取值范围是:围是:00:00:00AM11:59:59PM 目 录上一页下一页退 出只有两个值:真和假。只有两个值:真和假。真的表示形式:真的表示形式:.T. .t. .Y. .y.假的表示形式:假的表示形式:.F. .f. .N. .n.注:前后的定界符必不可少。否则会被误认为变量名,逻辑型数据只占用一个字节。目 录上一页下一页退 出1.浮点型(浮点型(Float) 包括此类型是为了提供兼容性,浮点型在功能上与数值型等价只能包括此类型是为了提供兼容性,浮点型在功能上与数值型等价只能用在表中的字段用在表中的字段2.双精度型(双精度型(Double) 此类型用于取代数值型,

37、以便提供更高的数值精度与数值型不同,此类型用于取代数值型,以便提供更高的数值精度与数值型不同,双精度只能用于数据表中字段的定义每个双精度型数据占双精度只能用于数据表中字段的定义每个双精度型数据占8个字个字节节3.整型(整型(Integer) 整型用于存储无小数部分的数值,只能用于数据表中字段的定整型用于存储无小数部分的数值,只能用于数据表中字段的定义在表中,整型字段占用个字节义在表中,整型字段占用个字节目 录上一页下一页退 出4备注型(备注型(Memo) 备注型用于字符型数据块的存储,只能用于数据表中字段的定备注型用于字符型数据块的存储,只能用于数据表中字段的定义在表中,备注型字段占用义在表中

38、,备注型字段占用4个字节,并用这个字节,并用这4个字节来引用备个字节来引用备注的实际内容实际备注内容的多少只受内存可用空间的限制注的实际内容实际备注内容的多少只受内存可用空间的限制 由于备注型字段的实际内容变化很大,不能直接将备注内容存在由于备注型字段的实际内容变化很大,不能直接将备注内容存在表表.dbf文件中系统将备注内容存放在一个相对独立的文件中,文件中系统将备注内容存放在一个相对独立的文件中,该文件的扩展名为该文件的扩展名为.dbt由于没有备注型的变量,所以对备注型由于没有备注型的变量,所以对备注型字段的处理,需转换成字符型变量,然后使用字符型函数进行处字段的处理,需转换成字符型变量,然

39、后使用字符型函数进行处理理5通用型(通用型(General) 字符型(二进制)字符型(二进制) 备注型(二进制)备注型(二进制)目 录上一页下一页退 出二变量二变量变量是在程序运行过程中其值可以发生改变的量。变量是在程序运行过程中其值可以发生改变的量。VF分为字分为字段变量和内存变量。段变量和内存变量。注:注:VF变量命名规则是:变量命名规则是:1)以字母、数字、下划线组成,中文版)以字母、数字、下划线组成,中文版VF可以使用汉字做变可以使用汉字做变 量名量名2)以字母或下划线开始,中文)以字母或下划线开始,中文VF可以汉字开始可以汉字开始3)长度为)长度为1128个字符个字符4)不能使用)不

40、能使用VF的保留字的保留字目 录上一页下一页退 出 由于表中的各条记录对同一个字段名可能取值不同,因此,由于表中的各条记录对同一个字段名可能取值不同,因此,表中的字段名就是变量,称为字段变量。表中的字段名就是变量,称为字段变量。 内存变量是内存中一个存储区域,变量值就是存放在这个内存变量是内存中一个存储区域,变量值就是存放在这个存储区域里的数据,变量的类型取决于变量值的类型。例:存储区域里的数据,变量的类型取决于变量值的类型。例:当把一个常量赋给一个变量时,这个常量就被存放到该变当把一个常量赋给一个变量时,这个常量就被存放到该变量对应的存储位置中而成为该变量新的取值。在量对应的存储位置中而成为

41、该变量新的取值。在Visual FoxPro中,变量的类型可以改变,也就是说,可以把不同中,变量的类型可以改变,也就是说,可以把不同类型的数据赋给同一个变量。类型的数据赋给同一个变量。 内存变量的数据类型包括字符型(内存变量的数据类型包括字符型(C)、数值型()、数值型(N)、)、货币型(货币型(Y)、逻辑型()、逻辑型(L)、日期型()、日期型(D)和日期时间型)和日期时间型(T)。)。 目 录上一页下一页退 出 1.简单内存变量简单内存变量 每一个变量都有一个名字,可以通过变量名访问变量。如每一个变量都有一个名字,可以通过变量名访问变量。如果当前表中存在一个同名的字段变量,则在访问内存变量

42、果当前表中存在一个同名的字段变量,则在访问内存变量时,必须在内存变量名前加上前缀时,必须在内存变量名前加上前缀.(或(或) 变量的赋值命令有两种格式:变量的赋值命令有两种格式: = 赋值号赋值号 STORE TO 功能注释:功能注释: 等号一次只能给一个内存变量赋值。等号一次只能给一个内存变量赋值。STORE命令可以同命令可以同 时给若干个变量赋予相同的值,各内存变量名之间必须时给若干个变量赋予相同的值,各内存变量名之间必须 用逗号分开。用逗号分开。 在在VF中,一个变量在使用之前不需要特别的声明或定中,一个变量在使用之前不需要特别的声明或定 义。当用命令给变量赋值时,如果该变量并不存在,那义

43、。当用命令给变量赋值时,如果该变量并不存在,那 么系统会自动建立它。么系统会自动建立它。 可以通过对内存变量重新赋值来改变其内容和类型。可以通过对内存变量重新赋值来改变其内容和类型。目 录上一页下一页退 出例例3.4内存变量和字段变量的访问,这里用到一个表文件内存变量和字段变量的访问,这里用到一个表文件“学学生生.DBF”,其结构如下:学生(学号,其结构如下:学生(学号C(8),姓名,姓名C(6),性,性别别C(2),出生日期,出生日期D(8)) 在命令窗口键入命令:在命令窗口键入命令: USE 学生学生&USE是打开表的命令是打开表的命令 LIST &LIST是显示表是显示表 中各条记录的命

44、令中各条记录的命令 ?姓名,性别,学号?姓名,性别,学号 &显示内存变量显示内存变量 目 录上一页下一页退 出显示:显示:STORE “赵小辉赵小辉” TO 姓名姓名&用字符串向内存变量姓名用字符串向内存变量姓名赋值赋值=500 &用数值型常量用数值型常量500赋值内存变量赋值内存变量XM=姓名姓名&用字段变量赋值内存变量用字段变量赋值内存变量STORE 8.88 TO X1,X2 &对两个内存变量对两个内存变量X1、X2赋予相同赋予相同值值STORE .T. TO Q&用逻辑常量赋值内存变量用逻辑常量赋值内存变量?姓名?姓名,m.姓名姓名,x1,x2,y,xm显示:刘明赵小辉显示:刘明赵小辉

45、8.88 8.88 500刘明刘明目 录上一页下一页退 出2.数组数组 数组是内存中连续的一片存储区域,它由一系列元素组成,数组是内存中连续的一片存储区域,它由一系列元素组成,每个数组元素可通过数组名及相应的下标来访问。每个数每个数组元素可通过数组名及相应的下标来访问。每个数组元素相当于一个简单变量,可以给各元素分别赋值。在组元素相当于一个简单变量,可以给各元素分别赋值。在VF中,一个数组中各元素的数据类型可以不同。中,一个数组中各元素的数据类型可以不同。 Dimension a(2,3,4) a(1,1) a(1,2) a(1,3) a(2,1) a(2,2) a(2,3) 与简单内存变量不

46、同的是,数组在使用之前一般要用与简单内存变量不同的是,数组在使用之前一般要用DIMENSION或或DECLARE命令来创建,规定数组的维数,命令来创建,规定数组的维数,数组名和数组大小。数组大小由下标值的上下限来决定,数组名和数组大小。数组大小由下标值的上下限来决定,下限规定为。下限规定为。目 录上一页下一页退 出 创建数组的命令格式为:创建数组的命令格式为:DIMENSION(,),DECLARE(,), 以上两种格式的功能完全相同。数组创建后,系统自动给以上两种格式的功能完全相同。数组创建后,系统自动给每个数组元素赋以逻辑假每个数组元素赋以逻辑假.F. 整个数组的数据类型为(整个数组的数据

47、类型为(Array),而各个数组元素可以而各个数组元素可以分别存放同类型的数据。分别存放同类型的数据。 使用时应注意:使用时应注意: dimention a(5),y(2,3) y(1,1) y(1,2) y(1,3)y(2,1)y(2,2) y(2,3)目 录上一页下一页退 出在一切使用简单内存变量的地方,均可以使用数组元素。在一切使用简单内存变量的地方,均可以使用数组元素。在赋值和输入语句中使用数组名时,表示将同一个值同时在赋值和输入语句中使用数组名时,表示将同一个值同时赋给该数组的全部数组元素。赋给该数组的全部数组元素。在同一个运行环境下,数组名不能与简单变量名重复。在同一个运行环境下,

48、数组名不能与简单变量名重复。在赋值语句中的表达式位置不能出现数组名。在赋值语句中的表达式位置不能出现数组名。x=a 可以用一维数组的形式访问二维数组。如:数组可以用一维数组的形式访问二维数组。如:数组y中的各元中的各元素用一维数组形式可依次表示为:素用一维数组形式可依次表示为:y(1),y(2),y(3),y(4),y(5),y(6),其中其中y(4)与与y(2,1)是同一变量。是同一变量。 目 录上一页下一页退 出三、内存变量常用命令三、内存变量常用命令1.内存变量的赋值内存变量的赋值 格式格式1 STORE TO 格式格式2 = 2.表达式值的显示表达式值的显示格式格式1: ? 区别区别

49、格式格式2: ?3.内存变量的显示内存变量的显示 格式:格式:LIST MEMORYLIKETO PRINTER|TO FILE 格式:格式:DISPLAY MEMORYLIKETO PRINTER|TO FILE目 录上一页下一页退 出功能功能: 显示内存变量的当前信息,包括变量名,作用域,类型,显示内存变量的当前信息,包括变量名,作用域,类型,取值。取值。 LIKE只显示与通配符相匹配的内存变量。通配符包括只显示与通配符相匹配的内存变量。通配符包括*和?。和?。 TO PRINTER或或TO FILE用于显示的同时送往打用于显示的同时送往打印机,或者存入给定文件名的文本文件中。文件的扩展名

50、印机,或者存入给定文件名的文本文件中。文件的扩展名为为.txt 区别区别: LIST MEMORY一次显示与通配符匹配的所有内存变量,一次显示与通配符匹配的所有内存变量,如果内存变量多,一屏显示不下,则自动向上滚动。如果内存变量多,一屏显示不下,则自动向上滚动。DISP MEMORY分屏显示与通配符匹配的所有内存变量,如果内分屏显示与通配符匹配的所有内存变量,如果内存变量多,显示一屏后暂停,按任意键之后再继续显示下存变量多,显示一屏后暂停,按任意键之后再继续显示下一屏。一屏。 目 录上一页下一页退 出4.内存变量的清除清楚内存变量的清除清楚格式:格式:CLEAR MEMORY格式:格式:REL

51、EASE格式:格式:RELEASE ALLEXTENDED格式:格式:RELEASE ALLLIKE|EXCEPT功能功能: 格式清除所有内存变量。格式清除所有内存变量。 格式清除指定的内存变量。格式清除指定的内存变量。 格式清除所有内存变量。一般情况下作用与格式相同。格式清除所有内存变量。一般情况下作用与格式相同。如果出现在如果出现在 程序中则应该加上短语程序中则应该加上短语EXTENDED,否则不能删除公共内否则不能删除公共内存变量。存变量。 格式选用格式选用LIKE短语清除与通配符相匹配的内存变量,选短语清除与通配符相匹配的内存变量,选用用EXCEPT短语短语 清除与通配符不相匹配的内存

52、变量。清除与通配符不相匹配的内存变量。目 录上一页下一页退 出例例:RELEASE ALL LIKE A* RELEASE ALL EXCEPT A?例例3.5CLEAR MEMORYDIMENSION y(2,2)STORE xxx TO x1,y(1,1)y(3)=2001-03-23 y(1,1) y(1,2) y(2,1) y(2,2) x2=$123.23LIST MEMO LIKE y*目 录上一页下一页退 出显示如下:显示如下:YPubA (注意显示结果)(注意显示结果)(1,1)C“xxx”(1,2)L.F.(2,1)D03/23/01(2,2)L.F.RELEASE ALL

53、LIKE y*X=2001-08-22,11:30PLIST MEMO LIKE X*显示如下:显示如下:XPubT08/22/01 11:30:00PMX1PubC“xxx”X2PubY123.2300目 录上一页下一页退 出.表中数据与数组数据之间的交换表中数据与数组数据之间的交换 表文件的数据内容是以记录的方式存储和使用的,而数组表文件的数据内容是以记录的方式存储和使用的,而数组是把一批数据组织在一起的数据处理方法,为了使它们之是把一批数据组织在一起的数据处理方法,为了使它们之间方便地进行数据交换,以利于程序的使用,间方便地进行数据交换,以利于程序的使用,Visual FoxPro提供了

54、相互之间数据传递的功能,可以方便地完成提供了相互之间数据传递的功能,可以方便地完成表记录与内存变量之间的数据交换。表记录与内存变量之间的数据交换。 将表的当前记录复制到数组将表的当前记录复制到数组 格式:格式:SCATTERFIELDSMEMO TO BLANK格式格式: SCATTERFIELDS LIKE|FIELDS EXCEPTMEMO TO BLANK目 录上一页下一页退 出格式格式1的功能的功能:)是将表的当前记录从指定字段表中的第一个字段内容开)是将表的当前记录从指定字段表中的第一个字段内容开始,依次复制到数组名中的从第一个数组元素开始的内存始,依次复制到数组名中的从第一个数组元

55、素开始的内存变量中。若不使用变量中。若不使用FIELDS短语指定字段,则复制除备注型短语指定字段,则复制除备注型M和通用型和通用型G之外的全部字段。之外的全部字段。)若事先没有创建数组,系统将自动创建;若已创建的数)若事先没有创建数组,系统将自动创建;若已创建的数组元素个数少于字段数,系统自动建立其余数组元素;若组元素个数少于字段数,系统自动建立其余数组元素;若已创建的数组元素个数多于字段数,其余数组元素的值保已创建的数组元素个数多于字段数,其余数组元素的值保持不变。持不变。)若选用)若选用MEMO短语,则同时复制备注型字段。若选项用短语,则同时复制备注型字段。若选项用BLANK短语,则产生一

56、个空数组,各数组元素的类型和大短语,则产生一个空数组,各数组元素的类型和大小与表中当前记录的对应字段相同。小与表中当前记录的对应字段相同。目 录上一页下一页退 出格式格式2的功能的功能: 是用通配符指定包括或排除的字段。是用通配符指定包括或排除的字段。FIELDS LIKE和和FIELDS EXCEPT可以同时使用。可以同时使用。例3.6打开表文件“职工.dbf”,包括个字段。 职工号(C,4),姓名(C,6),性别(C,2)婚否(L),政治面貌(C,4),工作日期 (D,8),职称(C,6),基本工资(N,6,2)简历(M). 当前记录为第一记录,把它复制到数组中。 USE职工&打开职工表

57、SCATTER TO ZG ?ZG(1),ZG(2),ZG(3),ZG(4),ZG(5),ZG(6),ZG(7) ,ZG(8)目 录上一页下一页退 出显示如下:显示如下:1001 李小明李小明 男男 .F. 群众群众 10/12/95 助教助教 700.00SCATTER TO ZG MEMO &要求包括备注型字段要求包括备注型字段?zg(1),zg(2),zg(3),zg(5),zg(9)显示如下:显示如下: 1001 李小明李小明 男男 群众群众 1994年北京大学计算机年北京大学计算机系毕业。系毕业。SCATTER TO BB FIELDS LIKE 职职*目 录上一页下一页退 出将数组

58、数据复制到表的当前记录将数组数据复制到表的当前记录格式:格式:GATHER FROM FIELDSMEMO格式:格式:GATHER FROM FIELDS LIKE|FIELDSEXCEPTMEMO格式格式1的功能的功能: 将数组中的数据作为一个记录复制到表的当前记录中。从将数组中的数据作为一个记录复制到表的当前记录中。从第一个数组元素开始,依次向字段名表指定的字段填写数第一个数组元素开始,依次向字段名表指定的字段填写数据。若缺省据。若缺省FIELDS选项,则依次向各个字段复制,若数组选项,则依次向各个字段复制,若数组元素个数多于记录中字段的个数,则多余部分被忽略。若元素个数多于记录中字段的个

59、数,则多余部分被忽略。若选用选用MEMO短语,则依次向备注型字段复制数据。短语,则依次向备注型字段复制数据。目 录上一页下一页退 出例例3.7 打开表文件打开表文件“职工职工.dbf”,追加一条空记录,将数组,追加一条空记录,将数组RR中中的内容复制到空记录中,注意数组中各个数组元素的数据的内容复制到空记录中,注意数组中各个数组元素的数据类型必须与字段的数据类型对应一致。类型必须与字段的数据类型对应一致。DIMENSION RR(1,3)&创建一个二维数组创建一个二维数组RR(1,1)=1088RR(1,2)=”张友谊张友谊”RR(1,3)=”女女”USE 职工职工&打开职工表打开职工表APP

60、ENDBLANK&在表中追加一条空记录在表中追加一条空记录GATHER FROM RR?职工号,姓名,性别职工号,姓名,性别&显示字段变量显示字段变量目 录上一页下一页退 出表达式是由常量、变量和函数通过特定的运算符连接直接表达式是由常量、变量和函数通过特定的运算符连接直接起来的式子。起来的式子。表达式可分为数值表达式、字符表达式、日期时间表达和表达式可分为数值表达式、字符表达式、日期时间表达和逻辑表达式逻辑表达式一、数值、字符与日期时间表达式一、数值、字符与日期时间表达式.数值表达式数值表达式 数值表达由算术运算符将数值型数据连接起来形成,其运算结数值表达由算术运算符将数值型数据连接起来形成

温馨提示

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

评论

0/150

提交评论