1、Visual FoxPro 6.0Visual FoxPro 6.0数据库与程序设计数据库与程序设计数据库与程序设计数据库与程序设计目录目录课程简介课程简介第第1 1章章 数据库系统数据库系统第第2 2章章 VFPVFP语言基础语言基础第第3 3章章 VFPVFP数据库及其操作数据库及其操作第第4 4章章 查询和视图查询和视图第第5 5章章 结构化查询语言结构化查询语言SQLSQL第第6 6章章 结构化程序设计结构化程序设计第第7 7章章 面向对象程序设计面向对象程序设计第第8 8章章 表单设计与应用表单设计与应用第第9 9章章 报表设计与应用报表设计与应用第第1010章章 菜单设计与应用菜单
2、设计与应用第第1111章章 应用系统的开发应用系统的开发课程简介课程简介课程简介课程简介计算机应用基础计算机应用基础(VF)VF)课程目标课程目标 学习程序设计技术学习程序设计技术 掌握科学研究工具掌握科学研究工具 培养逻辑思维能力培养逻辑思维能力 提高现代文化素质提高现代文化素质 培养良好工作风格培养良好工作风格 提高创新创造精神提高创新创造精神课程性质课程性质 计算机应用基础计算机应用基础_核心核心公共课公共课 计算机应用基础计算机应用基础_必修必修公共课公共课 文科文科_Visual FoxProVisual FoxPro 理科理科_Visual BasicVisual Basic课程课
3、程教材教材 Visual FoxPro 6.0Visual FoxPro 6.0数据库与程序设计数据库与程序设计 卢湘鸿卢湘鸿 主编主编 电子工业出版社电子工业出版社第第1 1章章 数据库系统数据库系统第第2 2章章 VFPVFP语言基础语言基础第第3 3章章 VFPVFP数据库及其操作数据库及其操作第第4 4章章 查询和视图查询和视图第第5 5章章 结构化查询语言结构化查询语言SQLSQL第第6 6章章 结构化程序设计结构化程序设计第第7 7章章 面向对象程序设计面向对象程序设计第第8 8章章 表单设计与应用表单设计与应用第第9 9章章 报表设计与应用报表设计与应用第第1010章章 菜单设计
4、与应用菜单设计与应用第第1111章章 应用程序的开发应用程序的开发课程课程内容内容第第1 1章章 数据库系统数据库系统第第2 2章章 VFVF语言基础语言基础第第7 7章章 面向对象程序设计面向对象程序设计第第3 3章章 VFVF数据库及其操作数据库及其操作第第4 4章章 查询和视图查询和视图第第5 5章章 结构化查询语言结构化查询语言SQLSQL第第6 6章章 结构化程序设计结构化程序设计第第8 8章章 表单设计与应用表单设计与应用第第9 9章章 报表设计与应用报表设计与应用第第1010章章 菜单设计与应用菜单设计与应用第第1111章章 应用程序的开发应用程序的开发章次章次内内 容容周数周数
5、1 1数据库系统数据库系统0.50.52 2VFVF语言基础语言基础0.50.53 3VFVF数据库及其操作数据库及其操作2 24 4查询和视图查询和视图1 15 5结构化查询语言结构化查询语言SQLSQL2 26 6结构化程序设计结构化程序设计3 37 7面向对象程序设计面向对象程序设计1 18 8表单设计与应用表单设计与应用2 29 9报表设计与应用报表设计与应用1 11010菜单设计与应用菜单设计与应用2 2机动机动1 1课程课程进度进度 程序设计为主程序设计为主 实际应用为重实际应用为重 典型案例引路典型案例引路 基本概念梳理基本概念梳理教学方法教学方法学习方法学习方法 抓住重点,突出
6、应用抓住重点,突出应用 实验自学,相辅相成实验自学,相辅相成 认真练习,注意观察认真练习,注意观察 举一反三,触类旁通举一反三,触类旁通 掌握规律,融会贯通掌握规律,融会贯通 归纳整理,善于总结归纳整理,善于总结 理论、操作综合测验理论、操作综合测验 实验、实验报告、考勤均计成绩实验、实验报告、考勤均计成绩 平时上机平时上机 20%20%上机考试上机考试 30%30%期末理论考试期末理论考试 50%50%测验方法测验方法第第第第1 1 1 1 章章章章 数据库系统数据库系统数据库系统数据库系统1.1 1.1 数据库基础知识数据库基础知识1.2 1.2 Visual FoxPro 6.0Visu
7、al FoxPro 6.0的特点、安装和运行的特点、安装和运行1.3 1.3 Visual FoxPro 6.0Visual FoxPro 6.0的集成开发环境的集成开发环境1.4 1.4 Visual FoxPro 6.0Visual FoxPro 6.0系统的配置系统的配置1.5 1.5 Visual FoxPro 6.0Visual FoxPro 6.0的文件类型的文件类型1.1 1.1 数据库基础知识数据库基础知识 随着计算机技术的发展,计算机的主要应用已从科学计算转变为事务随着计算机技术的发展,计算机的主要应用已从科学计算转变为事务数据处理。在事务处理过程中,并不需要进行复杂的科学计
8、算,而是要进数据处理。在事务处理过程中,并不需要进行复杂的科学计算,而是要进行大量数据的存储、查找、统计等工作,如教学管理、人事管理、财务管行大量数据的存储、查找、统计等工作,如教学管理、人事管理、财务管理等,就需要对大量数据进行管理,而数据库技术就是目前最先进的数据理等,就需要对大量数据进行管理,而数据库技术就是目前最先进的数据管理技术管理技术 Microsoft Microsoft公司推出的公司推出的Visual FoxPro 6.0Visual FoxPro 6.0是一个可运行于是一个可运行于Windows Windows 95/98/NT95/98/NT平台的平台的3232位数据库开发
9、系统,也是目前微机上最优秀的数据库管位数据库开发系统,也是目前微机上最优秀的数据库管理系统之一理系统之一 1.1.1 1.1.1 基本概念基本概念_1._1.信息与数据信息与数据 信息信息 信息泛指通过各种方式传播的、可被感受的声音、文字、图像、符号信息泛指通过各种方式传播的、可被感受的声音、文字、图像、符号等所表征的某一特定事物的消息、情报或知识等所表征的某一特定事物的消息、情报或知识 数据数据 数据是指表达信息的某种物理符号。在计算机中,数据是指能被计算数据是指表达信息的某种物理符号。在计算机中,数据是指能被计算机存储和处理的、反映客观事物的物理符号序列机存储和处理的、反映客观事物的物理符
10、号序列 数据反映信息,而信息依靠数据来表达数据反映信息,而信息依靠数据来表达 表达信息的符号可以是数字、字母、文字和其它特殊字符组成的文本表达信息的符号可以是数字、字母、文字和其它特殊字符组成的文本形式的数据,还可以是图形、图像、动画、影像、声音等多媒体数据形式的数据,还可以是图形、图像、动画、影像、声音等多媒体数据 在计算机中,主要使用磁盘、光盘等外部存储器来存储数据,通过计在计算机中,主要使用磁盘、光盘等外部存储器来存储数据,通过计算机软件和应用程序来管理及处理数据算机软件和应用程序来管理及处理数据 数据处理数据处理是对各种类型的数据进行收集、整理、存储、分类、加工、是对各种类型的数据进行
11、收集、整理、存储、分类、加工、检索、维护、统计和传播等一系列活动的总称检索、维护、统计和传播等一系列活动的总称 数据处理的数据处理的目的目的是从大量的、原始的数据中抽取对人们有价值的信息,是从大量的、原始的数据中抽取对人们有价值的信息,并以此作为行为和决策的依据并以此作为行为和决策的依据 数据处理的数据处理的核心问题核心问题是数据管理是数据管理 数据库技术数据库技术主要研究在计算机环境下如何合理组织数据、有效管理数主要研究在计算机环境下如何合理组织数据、有效管理数据和高效处理数据据和高效处理数据1.1.1 1.1.1 基本概念基本概念_2._2.数据处理数据处理 数据管理技术经历了三个阶段:数
12、据管理技术经历了三个阶段:人工管理人工管理 文件系统文件系统 数据库管理数据库管理 主要解决的问题是:主要解决的问题是:数据冗余度数据冗余度 数据独立性数据独立性 数据一致性数据一致性1.1.1 1.1.1 基本概念基本概念_2._2.数据处理数据处理 应用程序应用程序1 1文件文件1 1应用程序应用程序2 2文件文件2 2文件文件n n应用程序应用程序n n文件文件系统系统应用程序应用程序1 1数据集数据集1 1应用程序应用程序2 2数据集数据集2 2应用程序应用程序n n数据集数据集n n数据库数据库管理系管理系统统DBMSDBMS应用程序应用程序1 1应用程序应用程序2 2应用程序应用程
13、序n n 数据库数据库DataBaseDataBase1.1.1 1.1.1 基本概念基本概念_3._3.数据库系统数据库系统 数据库系统包括以下几个部分:数据库系统包括以下几个部分:数据库数据库(DB)DB)指以一定的组织方式存储在计算机存储设备上、能为指以一定的组织方式存储在计算机存储设备上、能为多个用户所共享的、与应用程序彼此独立的相关数据的集合。它不仅包括描多个用户所共享的、与应用程序彼此独立的相关数据的集合。它不仅包括描述事物的数据本身,而且包括相关事物之间的联系述事物的数据本身,而且包括相关事物之间的联系 数据库管理系统数据库管理系统(DBMS)DBMS)是为数据库的建立、使用和维
14、护而配置的是为数据库的建立、使用和维护而配置的软件,是数据库系统的核心组成部分软件,是数据库系统的核心组成部分 数据库系统数据库系统(DBS)DBS)指引进数据库技术后的计算机系统指引进数据库技术后的计算机系统 数据库应用系统数据库应用系统 指系统开发人员利用数据库系统资源开发出来的,指系统开发人员利用数据库系统资源开发出来的,面向某一类信息处理问题而建立的软件系统面向某一类信息处理问题而建立的软件系统数据库数据库管理系管理系统统DBMSDBMS应用程序应用程序1 1应用程序应用程序2 2应用程序应用程序n n 数据库数据库DataBaseDataBase1.1.2 1.1.2 数据模型数据模
15、型 数据模型是用来描述现实世界中的事物及其联系的,它将数据库中的数据模型是用来描述现实世界中的事物及其联系的,它将数据库中的数据按照一定的结构组织起来,以能反映事物本身及事物之间的各种联系数据按照一定的结构组织起来,以能反映事物本身及事物之间的各种联系 1 1层次模型层次模型 用树型结构表示实体及其之间的联系用树型结构表示实体及其之间的联系 2 2网络模型网络模型 用网状结构表示实体及其之间的联系用网状结构表示实体及其之间的联系 3 3关系模型关系模型 用二维表结构来表示实体及其之间的联系用二维表结构来表示实体及其之间的联系 关系数据模型以关系数学理论为基础,一个二维表就是一个关系,不关系数据
16、模型以关系数学理论为基础,一个二维表就是一个关系,不仅能描述实体本身,而且还能反映实体之间的联系,模型简单、使用方便,仅能描述实体本身,而且还能反映实体之间的联系,模型简单、使用方便,应用也最广泛应用也最广泛1.1.2 1.1.2 数据模型数据模型学生学生层次模型层次模型学号学号姓名姓名性别性别出生日期出生日期籍贯籍贯社会关系社会关系学籍学籍称呼称呼姓名姓名工作单位工作单位专业专业班级班级课程名课程名成绩成绩个人简历个人简历学校学校入学时间入学时间毕业时间毕业时间政治面貌政治面貌个人鉴定个人鉴定学生学生课程课程网状模型网状模型学号学号姓名姓名性别性别出生日期出生日期籍贯籍贯课程号课程号课程名课
17、程名学时学时学分学分社会关系社会关系学籍学籍称呼称呼姓名姓名工作单位工作单位专业专业班级班级个人简历个人简历成绩成绩学校学校入学时间入学时间毕业时间毕业时间政治面貌政治面貌个人鉴定个人鉴定课程号课程号成绩成绩1.1.2 1.1.2 数据模型数据模型学生学生学号学号姓名姓名出生日期出生日期籍贯籍贯关系模型关系模型个人简历个人简历学号学号学校学校入学时间入学时间毕业时间毕业时间政治面貌政治面貌个人鉴定个人鉴定社会关系社会关系学号学号称呼称呼姓名姓名工作单位工作单位学籍学籍学号学号专业专业班级班级课程课程课程号课程号课程名课程名学时学时学分学分成绩成绩学号学号课程号课程号成绩成绩1.1.3 1.1.
18、3 关系数据库及其特点关系数据库及其特点_1._1.关系数据库关系数据库 由关系模型组成的数据库就是关系数据库由关系模型组成的数据库就是关系数据库 关系数据库由包含数据记录的多个数据表组成,用户可在有相关数据关系数据库由包含数据记录的多个数据表组成,用户可在有相关数据的多个表之间建立相互联系的多个表之间建立相互联系 在关系数据库中,数据被分散到不同的数据表中,以便使每一个表中在关系数据库中,数据被分散到不同的数据表中,以便使每一个表中的数据只记录一次,从而避免数据的重复输入,减少冗余的数据只记录一次,从而避免数据的重复输入,减少冗余1.1.3 1.1.3 关系数据库及其特点关系数据库及其特点_
19、2._2.关系术语关系术语 表表:存放一组同类实体的集合:存放一组同类实体的集合 记录记录:记载某个实体属性的一组信息(表中的一行):记载某个实体属性的一组信息(表中的一行)字段字段:记载某个实体的一个属性的数据项(表中的一列):记载某个实体的一个属性的数据项(表中的一列)关系关系:指各数据表之间的连接方法,用二维表表示:指各数据表之间的连接方法,用二维表表示 关系模式关系模式:关系名:关系名(属性属性1 1,属性,属性2 2,属性,属性n)n)例如,学生例如,学生(学号学号,姓名姓名,性别性别,出生日期出生日期,籍贯籍贯)主关键字主关键字:用来惟一标识关系中记录的字段或字段组合:用来惟一标识
20、关系中记录的字段或字段组合 外部关键字外部关键字:用于连接:用于连接另一个关系,并且在另一个关另一个关系,并且在另一个关系中为主关键字的字段系中为主关键字的字段课程号课程号课程名课程名学时学时学分学分101101英语英语2002006 6102102高等数学高等数学1201205 5103103大学语文大学语文80803 3104104商务学商务学42422 2105105软件工程软件工程72723 3106106材料力学材料力学42422 21.1.3 1.1.3 关系数据库及其特点关系数据库及其特点_3._3.主要特点主要特点 关系中每个属性必须是不可分割的数据单元关系中每个属性必须是不可
21、分割的数据单元 关系中每一列元素必须是类型相同的数据关系中每一列元素必须是类型相同的数据 同一个关系中不能有相同的字段和记录同一个关系中不能有相同的字段和记录 关系的行、列次序可以任意交换,不影响其信息内容关系的行、列次序可以任意交换,不影响其信息内容课程号课程号课程名课程名学时学时学分学分101101英语英语2002006 6102102高等数学高等数学1201205 5103103大学语文大学语文80803 3104104商务学商务学42422 2105105软件工程软件工程72723 3106106材料力学材料力学42422 21.3.1 1.3.1 VFPVFP的工作方式的工作方式_1
22、._1.人机交互方式人机交互方式 交互方式下,输入或选择一条命令后可立即执行,并显示结果,操作交互方式下,输入或选择一条命令后可立即执行,并显示结果,操作便捷、直观,但不适于解决复杂的信息管理问题便捷、直观,但不适于解决复杂的信息管理问题菜单命令菜单命令工具按钮工具按钮命令窗口命令窗口1.3.1 1.3.1 VFPVFP的工作方式的工作方式_2._2.程序执行方式程序执行方式 将多条命令有序地编写成一个程序存放在磁盘上将多条命令有序地编写成一个程序存放在磁盘上(.(.PRG)PRG),通过运行该,通过运行该程序,系统可连续地自动执行一系列操作,完成程序所规定的任务程序,系统可连续地自动执行一系
23、列操作,完成程序所规定的任务 在程序执行方式下,一个程序可以被反复执行,且在执行过程中一般在程序执行方式下,一个程序可以被反复执行,且在执行过程中一般不需要人为干预不需要人为干预 1.3.2 1.3.2 VFPVFP的窗口、菜单和工具栏的窗口、菜单和工具栏_1._1.窗口窗口 主窗口主窗口:显示命令执行的结果:显示命令执行的结果 命令窗口命令窗口:输入交互命令:输入交互命令 数据浏览和编辑窗口数据浏览和编辑窗口:浏览或修改数据表中的记录:浏览或修改数据表中的记录 代码窗口代码窗口:显示或编辑程序代码:显示或编辑程序代码数据浏览和数据浏览和编辑窗口编辑窗口代码窗口代码窗口命令窗口命令窗口主窗口主
24、窗口1.3.2 1.3.2 VFPVFP的窗口、菜单和工具栏的窗口、菜单和工具栏_2._2.菜单菜单 VFP VFP的菜单系统以交互方式提供了数据库操作的各种命令,启动系统后的菜单系统以交互方式提供了数据库操作的各种命令,启动系统后主窗口的菜单栏中一般包含主窗口的菜单栏中一般包含8 8个菜单项。随着当前执行的任务不同,菜单栏个菜单项。随着当前执行的任务不同,菜单栏中的各个选项也随之动态变化中的各个选项也随之动态变化1.3.2 1.3.2 VFPVFP的窗口、菜单和工具栏的窗口、菜单和工具栏_3._3.工具栏工具栏 工具栏工具栏中显示了一些常用的功能。默认情况下,中显示了一些常用的功能。默认情况
25、下,“常用常用”工具栏随系统工具栏随系统启动时一起打开,其它工具栏则随着某一种类型的文件打开后自动打开。启动时一起打开,其它工具栏则随着某一种类型的文件打开后自动打开。选择选择“显示显示/工具栏工具栏”菜单命令,打开菜单命令,打开“工具栏工具栏”对话框,可以选择需对话框,可以选择需要的工具栏;取消选中则可关闭该工具栏要的工具栏;取消选中则可关闭该工具栏 1.3.3 1.3.3 VFPVFP的向导、设计器和生成器的向导、设计器和生成器_1._1.向导向导 向导向导是一个交互式程序,能帮助用户快速完成一般性的任务。通过是一个交互式程序,能帮助用户快速完成一般性的任务。通过在向导的一系列屏幕显示中回
26、答问题或选择选项,向导会自动建立一个在向导的一系列屏幕显示中回答问题或选择选项,向导会自动建立一个文件,或者根据用户的文件,或者根据用户的响应完成一项任务响应完成一项任务1.3.3 1.3.3 VFPVFP的向导、设计器和生成器的向导、设计器和生成器_2._2.设计器设计器 设计器设计器是一种可视化的设计工具,用户无需涉及命令即可快速、方便是一种可视化的设计工具,用户无需涉及命令即可快速、方便地创建并定制应用程序的组件地创建并定制应用程序的组件设计器名称设计器名称功功 能能数据库设计器数据库设计器建立数据库,在不同的表之间创建关联建立数据库,在不同的表之间创建关联表设计器表设计器创建自由表或数
27、据库表,设置表中的索引创建自由表或数据库表,设置表中的索引查询设计器查询设计器创建基于本地表的查询创建基于本地表的查询视图设计器视图设计器创建基于远程数据源的可更新的查询创建基于远程数据源的可更新的查询表单设计器表单设计器创建表单和表单集,哑语查看或编辑表中的数据创建表单和表单集,哑语查看或编辑表中的数据报表报表/标签设计器标签设计器创建报表或标签创建报表或标签,用于显示和打印数据,用于显示和打印数据菜单设计器菜单设计器创建菜单栏或快捷菜单创建菜单栏或快捷菜单连接设计器连接设计器可为远程视图创建连接可为远程视图创建连接数据环境设计器数据环境设计器帮助用户创建和修改表单、表单集以及报表的数据环境
28、帮助用户创建和修改表单、表单集以及报表的数据环境1.3.3 1.3.3 VFPVFP的向导、设计器和生成器的向导、设计器和生成器_3._3.生成器生成器 生成器生成器是一种带有选项卡的对话框,用于简化对表单、复杂控件和参照是一种带有选项卡的对话框,用于简化对表单、复杂控件和参照完整性代码的创建和修改过程完整性代码的创建和修改过程生成器名称生成器名称功功 能能表达式表达式生成器生成器创建或编辑表达式创建或编辑表达式组合框组合框生成器生成器构造组合框构造组合框列表框列表框生成器生成器构造列表框构造列表框命令按钮命令按钮生成器生成器构造命令按钮组构造命令按钮组文本框文本框生成器生成器构造文本框,用于
29、显示和编辑表中的字符型、数值型和日期型字段构造文本框,用于显示和编辑表中的字符型、数值型和日期型字段编辑框编辑框生成器生成器构造文本编辑框,用于显示或编辑长字段和构造文本编辑框,用于显示或编辑长字段和Memo型字段型字段表单表单生成器生成器构造表单构造表单表格表格生成器生成器构造表格构造表格选项按钮组选项按钮组生成器生成器构造选项按钮组,用于选择若干互斥选项中的一个构造选项按钮组,用于选择若干互斥选项中的一个参照完整性参照完整性生成器生成器帮助设置触发器,以控制如何在相关表中插入、更新或删除记录帮助设置触发器,以控制如何在相关表中插入、更新或删除记录自动格式自动格式生成器生成器格式化一组控件格
30、式化一组控件应用程序应用程序生成器生成器创建应用程序或应用程序框架创建应用程序或应用程序框架1.3.4 1.3.4 VFPVFP的项目管理器的项目管理器_1._1.启动项目管理器启动项目管理器 项目项目是文件、数据、文档以及是文件、数据、文档以及VFPVFP对象的集合,项目可作为文件对象的集合,项目可作为文件(.PJXPJX)保存在磁盘中保存在磁盘中 项目管理器项目管理器是创建和管理项目的一个极为便利的工作平台,开发一个应是创建和管理项目的一个极为便利的工作平台,开发一个应用系统时,通常都是先从创建项目文件开始,利用用系统时,通常都是先从创建项目文件开始,利用“项目管理器项目管理器”来组织和来
31、组织和管理项目中的各类数据和对象管理项目中的各类数据和对象 1.1.启动项目管理器启动项目管理器 通过新建项目文件或打通过新建项目文件或打开已有的项目文件可启动项开已有的项目文件可启动项目管理器目管理器1.3.4 1.3.4 VFPVFP的项目管理器的项目管理器_2._2.项目管理器的组成项目管理器的组成项目名称项目名称选项卡选项卡 以分层结构视图显示当前项目中的各类数据以分层结构视图显示当前项目中的各类数据 单击数据项前面的单击数据项前面的“+”可展开此项的列表,单击数据项前面的可展开此项的列表,单击数据项前面的“-”可可折叠展开的列表折叠展开的列表1.3.4 1.3.4 VFPVFP的项目
32、管理器的项目管理器_3._3.定制项目管理器定制项目管理器 移动移动和和缩放缩放项目管理器项目管理器 展开展开或或折叠折叠项目管理器项目管理器 拆分拆分项目管理器项目管理器 停放停放项目管理器项目管理器1.3.4 1.3.4 VFPVFP的项目管理器的项目管理器_4.4.项目管理器的操作项目管理器的操作 移去或删除文件移去或删除文件 按按“移去移去”按钮,将选定的对象从项目中移去按钮,将选定的对象从项目中移去 按按“删除删除”按钮,将选定的对象从硬盘上删除,并且不可恢复按钮,将选定的对象从硬盘上删除,并且不可恢复 创建和修改文件创建和修改文件 按按“新建新建”按钮,将创建制定类型的文件按钮,将
33、创建制定类型的文件 按按“修改修改”按钮,将对选定的文件进行修改按钮,将对选定的文件进行修改 为文件添加说明为文件添加说明 选择选择“项目项目/编辑说明编辑说明”菜单命菜单命令,或文件快捷菜单的令,或文件快捷菜单的“编辑说明编辑说明”命令命令1.4 1.4 VFPVFP系统的配置系统的配置 VFPVFP安装和启动之后,系统自动用一些默认值来设置环境。也可以重新安装和启动之后,系统自动用一些默认值来设置环境。也可以重新设置参数以满足不同工作方式或工作环境的需要设置参数以满足不同工作方式或工作环境的需要 1.1.使用使用“选项选项”对话框对话框配置系统配置系统 选择选择“工具工具/选项选项”菜单命
34、令,打开菜单命令,打开“选项选项”对话框,其中有对话框,其中有1212个选项个选项卡,用于不同类别环境的设置卡,用于不同类别环境的设置 2 2保存设置保存设置 将设置保存为仅在当前工作将设置保存为仅在当前工作期有效:期有效:“确定确定”将设置保存为永久性设置:将设置保存为永久性设置:“设置为默认值设置为默认值”也可以在命令窗口或程序中使也可以在命令窗口或程序中使用用SETSET命令配置环境,设置结果仅在命令配置环境,设置结果仅在当前工作期有效当前工作期有效1.5 1.5 文件类型文件类型扩展名扩展名文件类型文件类型扩展名扩展名文件类型文件类型.DBFDBF表文件表文件.HLPHLP图形方式帮助
35、文件图形方式帮助文件.CDXCDX、.IDX.IDX符合索引文件、单索引文件符合索引文件、单索引文件.PJXPJX、.PJT.PJT项目、项目备注文件项目、项目备注文件.FPTFPT表备注文件表备注文件.FRXFRX、.FRT.FRT报表文件、报表备注文件报表文件、报表备注文件.DBCDBC数据库文件数据库文件.LBXLBX、.LBT.LBT标签文件、标签备注文件标签文件、标签备注文件.DCTDCT、.DCX.DCX数据库备注文件数据库备注文件/索引文件索引文件.MNXMNX、.MNT.MNT菜单文件、菜单备注文件菜单文件、菜单备注文件.MEMMEM内存变量文件内存变量文件.MPRMPR、.M
36、PX.MPX菜单程序文件、编译后的菜单程序文件菜单程序文件、编译后的菜单程序文件.DLLDLLWindowsWindows动态链接库文件动态链接库文件.OCXOCXOLEOLE控件文件控件文件.ERRERR编译错误文件编译错误文件.QPRQPR、.QPX.QPX查询程序文件、编译后的查询程序文件查询程序文件、编译后的查询程序文件.ESLESLVFPVFP支持的库文件支持的库文件.SCXSCX、.SCT.SCT表单文件、表单备注文件表单文件、表单备注文件.FLLFLLFoxProFoxPro动态链接库文件动态链接库文件.SPRSPR、.SPX.SPX表单程序文件、编译后的表单程序文件表单程序文件
37、、编译后的表单程序文件.PRGPRG解释执行的程序文件解释执行的程序文件.TXTTXT文本文件文本文件.FXPFXP编译后的程序文件编译后的程序文件.VCXVCX、.VCT.VCT可视类库文件、可视类库备注文件可视类库文件、可视类库备注文件.APPAPP生成的应用程序文件生成的应用程序文件.VUEVUEFoxPro 2.XFoxPro 2.X视图文件视图文件.EXEEXE可执行程序文件可执行程序文件.H H头文件(头文件(VFPVFP或或C/C+C/C+程序需要包含的)程序需要包含的)第第第第2 2 2 2 章章章章 VFPVFPVFPVFP语言基础语言基础语言基础语言基础2.1 2.1 数据
38、类型数据类型2.2 2.2 数据存储数据存储2.3 2.3 运算符和表达式运算符和表达式2.4 2.4 函数函数2.5 2.5 命令命令2.1 2.1 数据类型数据类型数据类型数据类型说说 明明长度长度(字节字节)字符型字符型CharacterCharacter用各种文字字符表示的数据。由字母、数字、用各种文字字符表示的数据。由字母、数字、汉字、符号和空格等组成汉字、符号和空格等组成1 1254254数值型数值型NumericNumeric可以进行算术运算的数据。由数字可以进行算术运算的数据。由数字0 09 9、小、小数点和正负号构成数点和正负号构成8 8货币型货币型CuyencyCuyenc
39、y采用表示货币量的数据来代替用数值型数据采用表示货币量的数据来代替用数值型数据表示货币表示货币8 8逻辑型逻辑型LogicLogic用来进行各种逻辑判断的数据。只有两个值:用来进行各种逻辑判断的数据。只有两个值:真或假真或假1 1日期型日期型DateDate用来表示日期的数据。存储格式为用来表示日期的数据。存储格式为“YYYYMMDDYYYYMMDD”8 8日期时间型日期时间型DateTimeDateTime描述日期和时间的数据,存储格式为描述日期和时间的数据,存储格式为“YYYYMMDDHHMMSSYYYYMMDDHHMMSS”8 82.1 2.1 数据类型数据类型数据类型数据类型说说 明明
40、长度长度(字节字节)整型整型IntegerInteger 是指不包含小数点部分的数值,以二进制形式存储是指不包含小数点部分的数值,以二进制形式存储4 4浮点型浮点型FloatFloat是数值型数据的一种,与数值型数据完全等价,但在是数值型数据的一种,与数值型数据完全等价,但在存储形式上采取浮点格式,由尾数、阶数及字母存储形式上采取浮点格式,由尾数、阶数及字母E E组成组成8 8双精度双精度DoubleDouble 是具有更高精度的数值型数据是具有更高精度的数值型数据8 8备注型备注型MemoMemo用于存储字符型数据块,用来存储指向实际数据存放用于存储字符型数据块,用来存储指向实际数据存放位置
41、的地址指针,实际数据存放在与数据表文件同名位置的地址指针,实际数据存放在与数据表文件同名的的.FPTFPT文件中,其长度仅受磁盘空间的限制文件中,其长度仅受磁盘空间的限制4 4通用型通用型GeneralGeneral用于存储用于存储OLEOLE对象,可以是文档、图片、电子表格等。对象,可以是文档、图片、电子表格等。用来存储指向用来存储指向.FPTFPT文件位置的地址指针文件位置的地址指针4 4字符型字符型二进制二进制 用于存储任意不经过代码页修改而维护的字符型数据用于存储任意不经过代码页修改而维护的字符型数据1 1254254备注型数据备注型数据 二进制二进制 用于存储任意不经过代码页修改而维
42、护的备注型数据用于存储任意不经过代码页修改而维护的备注型数据4 42.2.1 2.2.1 常量常量 常量常量是指在数据处理过程中其值始终保持不变的量是指在数据处理过程中其值始终保持不变的量 1.1.数值型常量数值型常量:数学中的十进制整数或小数:数学中的十进制整数或小数 如:如:10.2510.25,-123.567-123.567 2.2.浮点型常量浮点型常量:数值型常量的浮点格式:数值型常量的浮点格式 如:如:1.2341.234E+15E+15,1.234E-151.234E-15 3.3.字符型常量字符型常量:用单撇号、双撇号、方括号括起来的字符串:用单撇号、双撇号、方括号括起来的字符
43、串 如:如:“ABCDABCD”、12341234、中国北京中国北京 4.4.逻辑型常量逻辑型常量:用下圆点作为定界符,只有真和假两个值:用下圆点作为定界符,只有真和假两个值 如:如:.T.T.、.t.t.、.Y.Y.、.y.(.y.(真真);.F.F.、.f.f.、.N.N.、.n.(.n.(假)假)5.5.日期型常量日期型常量/日期时间型常量日期时间型常量:表示一个确切的日期和时间,用花括号作为定界符表示一个确切的日期和时间,用花括号作为定界符 如:如:2003-03-032003-03-03、1996-03-20 12:30:15 1996-03-20 12:30:15 也可以用也可以用
44、CTODCTOD函数进行转换,如函数进行转换,如 CTOD(CTOD(”03/03/200303/03/2003”)2.2.2 2.2.2 变量变量 变量变量是指在数据处理过程中其值可以改变的量是指在数据处理过程中其值可以改变的量 变量用标识符标识,标识符是以字母(汉字)或下划线开头,由字母、变量用标识符标识,标识符是以字母(汉字)或下划线开头,由字母、汉字、数字和下划线组成的字符串,长度不能超过汉字、数字和下划线组成的字符串,长度不能超过128128个字符个字符 VFPVFP中的变量分为字段变量和内存变量两种中的变量分为字段变量和内存变量两种 1.1.字段变量字段变量 存在于数据表中。当定义
45、好一个数据表的结构,该表中的各个字段名存在于数据表中。当定义好一个数据表的结构,该表中的各个字段名就形成了各个字段变量就形成了各个字段变量 字段变量必须先定义然后才能使用字段变量必须先定义然后才能使用 2.2.内存变量内存变量 是一种临时信息存储单元,独立于数据表,可以根据需要随时建立。是一种临时信息存储单元,独立于数据表,可以根据需要随时建立。其类型取决于变量值的类型,可以把不同类型的数据赋给同一个变量其类型取决于变量值的类型,可以把不同类型的数据赋给同一个变量 当内存变量名与数据表中的字段变量名相同时,要访问该内存变量,当内存变量名与数据表中的字段变量名相同时,要访问该内存变量,必须在变量
46、名前加上前缀必须在变量名前加上前缀M.M.或或M-M-,否则系统将优先访问同名的字段变量否则系统将优先访问同名的字段变量2.2.2 2.2.2 变量变量 建立内存变量建立内存变量 格式格式1 1:=格式格式2 2:STORE STORE TO TO 功能:在定义内存变量的同时确定内存变量的值和类型功能:在定义内存变量的同时确定内存变量的值和类型 例如,例如,X=5&X=5&定义变量定义变量X X,并把数值并把数值5 5赋给赋给X X STORE X+10 TO Y&STORE X+10 TO Y&定义变量定义变量Y Y,并将表达式并将表达式X+10X+10的值赋给的值赋给Y Y STORE S
47、TORE”北京北京”TO A,B,C&TO A,B,C&定义变量定义变量A,B,CA,B,C,并赋于相同的字符数据并赋于相同的字符数据 X=.F.&X=.F.&重新定义变量重新定义变量X X,并赋逻辑值并赋逻辑值 2.2.2 2.2.2 变量变量 输出内存变量的值输出内存变量的值 格式格式1 1:?格式格式2 2:?功能:计算功能:计算 中各表达式的值并在屏幕上显示出来中各表达式的值并在屏幕上显示出来 显示或打印内存变量显示或打印内存变量 格式:格式:LIST|DISPLAY MEMORY LIKE LIST|DISPLAY MEMORY LIKE TO PRINTE|TO FILE TO P
48、RINTE|TO FILE 功能:显示或打印内存变量的当前信息功能:显示或打印内存变量的当前信息 例如,在命令窗口中输入命令:例如,在命令窗口中输入命令:LIST MEMORY LIKE X*LIST MEMORY LIKE X*将在主窗口中显示所有以将在主窗口中显示所有以X X打头的内存变量打头的内存变量2.2.2 2.2.2 变量变量 清除内存变量清除内存变量 格式格式1 1:CLEAR MEMORYCLEAR MEMORY 格式格式2 2:RELEASE RELEASE 格式格式3 3:RELEASE ALL LIKE RELEASE ALL LIKE|EXCEPT EXCEPT 功能:
49、释放所有内存变量或指定的内存变量。功能:释放所有内存变量或指定的内存变量。例如,例如,RELEASE X1&RELEASE X1&释放内存变量释放内存变量X1X1 RELEASE ALL LIKE X*&RELEASE ALL LIKE X*&释放所有第释放所有第1 1个字母为个字母为X X的内存变量的内存变量 RELEASE ALL&RELEASE ALL&释放所有内存变量释放所有内存变量 3.3.系统变量系统变量 以字符以字符“_ _”开头的、由开头的、由VFPVFP系统自动定义生成的变量,其名称也是系系统自动定义生成的变量,其名称也是系统事先定义好的统事先定义好的 例如,例如,_ _PA
50、GENOPAGENO,_ALIGNMENT_ALIGNMENT2.2.2 2.2.2 变量变量 4 4数组数组 内存中连续的一片存储区域,由一组称为内存中连续的一片存储区域,由一组称为数组元素数组元素的变量组成。通过的变量组成。通过赋值语句可以为各个元素分别赋值,且所赋值的数据类型可以不同赋值语句可以为各个元素分别赋值,且所赋值的数据类型可以不同 定义:定义:DIMENSION DIMENSION(,)2),(,)4)数组必须先定义后使用,且使用时下标不能超界数组必须先定义后使用,且使用时下标不能超界 每个数组元素通过数组名和相应的索引编号被引用每个数组元素通过数组名和相应的索引编号被引用 例