FoxPro 数据库管理系统介绍
第2章VFP数据库管理系统概述

第 一 节 VFP的操作环境
VFP主要特点 ▲ 数据库技术方面 完善了关系型数据库概念,严格区分数据库与 数据表; 采用Rushmore技术和复合索引技术; SQL(结构化查询语言)命令的引入。 ▲ 数据操作方面 灵活多样的数据交换手段,支持众多的与其它 应用程序进行数据交换的文件格式。
▲ 程序设计方面 快速创建可视化应用程序,并可进行编译;具 有面向对象的程序设计功能。 ▲ 操作使用方面 提供了一个功能相对完善的集成环境及丰富的 开发工具,如向导、设计器、生成器和管理器等。
●浏览 在浏览窗口打开选定的表或视图,且仅当 选定一张表或视图时可用; ●关闭 关闭一个已打开的数据库,且仅当选定一 个数据库时可用。若选定的数据库已关闭,则此 按钮变为“打开”; ●打开 打开一个数据库,且仅当选定一个数据库 时可用。若选定的数据库已打开,此按钮变为 “关闭”; ●移去 从项目中移去选定的文件或对象;移去时 系统会提问是仅从项目中移去,还是同时将其从 磁盘上删除;
●设置主文件 把选定的 程序 、 表单、 查询或 菜单 指定为主文 件。 主文件是在已编译的应用程序中作为主执行程 序执行的,即为应用程序的“入口”。一个项目 中只能设置一个主文件(第二次设置时,第一次 的设置自动作废)。 ●重命名 修改所选项的名称。 在改名时,不仅修改项目中该项的名称,而且 修改该项所对应的所有文件的文件名,即可对多 个相关文件进行同步改名。
主菜单栏
工具栏
主窗口
命令窗口
状态栏 是一个动态的菜单系统, 命令窗口用于显示输出结果。 主窗口 工具栏按钮的功能与某些 工具栏 用于显示VFP的当前状态。 菜单栏 只能显示在主窗口中, 用户可在命令窗口中输入命令。 菜单命令相对应,可完成常用的操 在操作过程中,随当前被操作的对 作。 象而进行调整。
FoxPro数据库管理系统介绍

FoxPro 数据库管理系统介绍1.FoxPro简介FoxPro2.5是Microsoft公司1993年推出的产品。
1993年1月发布了FoxPro2.5for DOS和FoxPro2.5for windows两个版本,成为目前微机上最快、使用最广泛的数据库管理系统。
FoxPro2.5的新特点:增强32位产品的特性;跨平台的开发;新增或增强的命令与函数;新的生成器命令;新的系统内存变量。
由于FoxPro for DOS与FoxPro for windows相互兼容,下面就只简单地介绍一下FoxProˉfor windows的一些功能。
FoxPro for windows的常用工具集(菜单生成器、屏幕生成器、报表生成器)充分发挥Winˉdows的图形能力。
这些能力包括图象显示、字模使用以及Windows元素与控制的应用,还可以用Bitmaps 作为屏幕的背景。
FoxPro的附属工具传递器(Transporter)支持FoxPro2.5for DOS 和它的DOS环境下的姐妹产品之间的交叉平台上的开发。
FoxPro for DOS程序在大多数情况下可以不必修改而直接在FoxPro for windows 环境下运行。
独特的Rushmore查询优化技术支持复杂的检索并大幅度提高了运行速度,图形环境并不影响FoxPro底层的速度。
FoxPro加入了Windows的一些动态功能,如OLE(对象连接与嵌入)、DDE(动态数据交换)、DLL(动态链接库)和Windows打印驱动程序等。
FoxPro for windows包括字型字体控制、拖放式编辑和块功能。
Windows的全范围的各种字模(Font)在FoxPro2.5中都是有效的,包括True Type字模,这些字模对所有的FoxPro的工具和程序语言都是支持的。
FoxPro提供联机帮助文件。
)提供流水过程,提供安装和启动例发行工具箱(Distribution kit程。
第 2 章 VisualFoxPro 数据库管理系统概述

第2章 Visual FoxPro 数据库管理系统概述2.1 Visual FoxPro 6.0操作环境1.VFP6.0的用户界面界面组成:标题栏、主菜单栏、工具栏、主窗口、命令窗口、状态栏2.VFP 6.0的工作方式(1)菜单操作方式根据所需的操作从菜单中选择相应的命令(与WORD类似)。
每执行一次菜单命令,命令窗口中一般都会显示出与菜单对应的命令内容。
(2)命令交互方式采用人机对话方式根据所要进行的各项操作,在命令窗口中按格式要求逐条输入所需命令,按回车后,机器逐条执行。
(3)程序执行方式先在程序编辑窗口中编完程序,再从程序菜单中选择执行,或从命令窗口中输入DO命令,让机器执行。
3. VFP 6.0 的一些规则(1)命令和子句的书写规则1)以命令动词开始;2)各部分之间要用空格隔开;3)命令、子句、函数名都可简写为前4个字符,大、小写等效;4)一行只能写一条命令,总长度不超过8192个字符,超过屏幕宽度时用续行符“;”5)变量名、字段名和文件名应避免与命令动词、关键字或函数名同名,以免运行时发生混乱。
6)命令格式中的符号约定:命令中的[ ] 、| 、…符号都不是命令本身的语法成分,使用时不能照原样输入,其中:[ ]表示可选项,根据具体情况决定是否选用| 表示两边的部分只能选用其中的一个…表示可以有任意个类似参数,各参数间用逗号隔开(2)命令工作方式中的常见错误(1)命令动词写错(2)格式不符合要求♦标点符号不对(一定要用半角标点符号)♦缺少必需的空格或添加了不该有的空格♦数据类型不一致,要注意字符型、数值型、日期型、逻辑型数据的书写格式(3)打不开所需文件:没有正确输入盘符和路径或文件名输错4. VFP6.0几个常用的命令5.配置VFP操作环境常用的配置操作是设置系统默认路径:工具菜单→选项→文件位置→默认目录→修改→钩上“使用默认目录”→选择→确定→设为默认值→关闭窗口。
2.2VFP 6.0常用文件类型VFP 6.0常用的文件扩展名及其关联的文件类型2.3 VFP的项目管理及其操作1.项目管理器简介项目:是一种文件,用于跟踪创建应用系统所需要的所有程序、表单、菜单、库、报表、标签、查询和一些其他类型的文件。
第二章.VFP数据库管理系统概述

二、常量与变量
3)访问变量
• 在VFP中,若变量与字段同名,字段具有更高的优先权。 • 要访问变量,可在变量前加上:m.
eg: 当前打开的表中有XS字段,且当前记录的XS值为 • “高山”,在命令窗口中下命令:
XS=12.5 ?XS,m.XS 返回结果为:“高山” 12.5
• 4)内存变量的保存与恢复 • save to
• 应将日期值放在花括号{}中。 如:birthday={2003/03/01}
– dDate={09/10/2001} – dBlank={}:空日期 • 可通过SET DATE 、SET MARK TO、SET CENTURY命令设 置日期格式,或通过系统的“选项”对话框中的“区域”卡中 设置。 eg: set date to 日期格式
eg: run /n calc &&运行计算器 11、QUIT
关闭VFP应用程序窗口。
三、配置操作环境 • 工具-选项
用户可以 查看和更 改环境设
置哦!
2.2 VFP文件类型
扩展名 文件类型
.app
.exe .pjx .pjt .dbc
.dct
.dcx .dbf
生成的应用程序
可执行程序 项目 项目备注 数据库
5.逻辑型数据
是描述客观事物真假的数据,是用来进行各种逻辑判断的数 据,只有两个值,即真(.T.)和假(.F.),长度固定为1位,占 用1个字节。
第2章VFP数据库管理系统概述

第8章 数据库管理系统Visual FoxPro 6.0
•(2) 内存变量:主要用于存储在命令或程序执行中临时使用的输入、
输出或中间数据。它不同于字段变量,它存在于内存之中,独立于数据库文件。 同样内存变量也有多种类型。
第8章 数据库管理系统Visual FoxPro 6.0
设置默认目录的命令操作
• 在命令窗口输入下列命令: • set default to [ 文件夹 ] • 例:
md d:\mypro &&在D盘建立子目录mypro set default to d:\mypro && 文件夹名称中不能有空格或其他不可用符 号
第8章 数据库管理系统Visual FoxPro 6.0
设置日期显示格式
• (2)设置日期显示格式
–用户可以调整、设置日期值和时间值的显示输出格式。 既可以用命令方式设置,也可以用菜单方式设置。 –命令格式: –SET DATE [TO] AMERICAN | ANSI | BRITISH | FRENCH | GERMAN | ITLIAN | JAPAN | USA | MDY | DMY | YMD | SHORT | LONG –命令功能:设置日期型和日期时间型数据的显示输出 格式。系统默认为AMERICAN美国格式。 –如果日期格式设置为SHORT或LONG格式,Visual FoxPro系统将按Windows系统设置的短日期格式或长 日期格式显示输出日期数据,而且SET CENTURY命 令的设置被忽略。
第8章 数据库管理系统Visual FoxPro 6.0
第2章 Visual FoxPro数据库管理系统概述

日期型常量和日期时间型常量(3)
设置命令: SET STRICTDATE TO 0|1|2
空日期: ?{ }
习 题
指出下列常数的类型:
(1) 56 (4) .T. (7) .f. (10) .n. (2) {^1997/07/20} (5) 123.123 (8) ”汉字ABC!” (11) -3.1415926 (3) ”12+3.4” (6) $456.123 (9) .y. (12) „.F.‟
2.3 Visual FoxPro 的项目管理及操作
2.4 Visual FoxPro 语言基础
结束放映?
YES(是) NO(否)
2.1 Visual FoxPro的操作环境
VFP 6.0的启动 VFP 6.0的退出
2.1.1 Visual FoxPro操作界面
VFP提供了一个可视化的集成操作环境,其 操作界面的风格和常规操作完全遵循Windows设 计规范。 主窗口 ‚命令‛窗口 菜单栏 工具栏
CD
CD C:\ CD ..
常用命令(6)
6. COPY FILE / RENAME / DELETE FILE
COPY FILE:复制文件。 COPY FILE FileName1 TO FileName2 RENAME :对文件重命名。 RENAME FileName1 TO FileName2
(1)年月日用斜杠(/),也可以用连字符(-)或 空格分隔; (2)时分秒之间用冒号(:)分隔。
日期型常量和日期时间型常量(2)
VFP支持的日期型常量和日期时间型常量有
两种格式:
1.传统的日期格式 {mm/dd/yy [hh[:mm[:ss]][a|p]} 2.严格的日期格式 {^yyyy/mm/dd [hh[:mm[:ss]][a|p]}
第2章VFP数据库管理系统概述

3 变量
• 变量是用户定义的内存中的一个存储单 元的位置,变量名是存储位置的符号标 识。该存储位置中存放的数据在程序操 作期间通过该名称来读写。 • VFP中的变量称为内存变量。变量可以是 任意数据类型,并且可以在任何时候改 变它的值。
一. 变量的创建
• STORE • = STORE 3 TO N1,N2,N3 C1=―VFP‖ 区别
• 字符函数
ALLTRIM(― VFP ‖),TRIM(― VFP ‖), LEN(―VFP‖),AT(―A‖,‖FHJAK‖), SUBSTR(―ADFDFD‖,3,1),LEFT(―WEHFG‖,3) RIGHT(―WEHFG‖,3),SPACE(4)
• 日期/时间函数: DATE();DATETIME();DOW(DATE()); DAY(DATE());MONTH(DATE()), YEAR(DATE());TIME(); • 数据类型转换函数 ASC(‗A‘);CHR(65);VAL(‗3.14‘); DTOC(DATE());TTOC(DATETIME()); CTOD(‗3/19/05‘) ;CTOT(‗3/19/05 10:25‘) STR(314.15,8,2) • 其他函数:
三. 日期型(Date)
• 日期数据类型用于存储有关年月日的数据。 • 日期的格式有许多种,可以在环境选项中设置或使 用SET DATE TO 命令设置:
• • • • • • AMERICAN mm/dd/yy ANSI yy.mm.dd BRITISH/FRENCH dd/mm/yy GERMAN dd.mm.yy ITALIAN dd-mm-yy JAPAN yy/mm/dd
传统的日期格式(VFP5.0以下默认): {MM/DD/YY[HH[:MM[:SS]][A|P]]} 严格的日期格式(VFP6.0以上默认): {^YYYY/MM/DD [HH[:MM[:SS]][A|P]]} SET STRICTDATE TO 0|1|2 是否对日期进 行格式检查 0不进行;1和2进行
#二VisualFoxPro数据库管理系统概述

主窗口:用于 输出结果
状态 栏
16.05.2019
命令 窗口
6
命令窗口介绍
关闭命令窗口方法:
按命令窗口右上角的“
关闭”按钮可关闭命令
窗口
显示命令窗口方法:
1.可选命令窗口是用来直接输入
命令窗口按钮
Visual FoxPro命令的用户
命令窗口命令执行结3.使果用显快示捷键Ctrl+F2。接口,在命令窗口输入命
整数
4
Logical
逻辑型
L
真或假
1
Memo
备注型* M
超过254的不定长字符串
4
General
通用型* G
OLE图象、多媒体对象
4
*仅有于表的字段
16.05.2019
25
2.4.2 常量与变量 大多数程序设计语言允许使用常量、变量和数组 来存储数据,VFP还可以使用记录和对象。
1. 名称命名规则(P41) 名称中只能包含字母、下划线“_”、数字和汉字 名称开头只能是字母、下划线或汉字,不能是数字
16.05.2019
4
操作使用方面 完善的IDE(菜单、工具条或快捷键)
丰富的开发工具 –向导:表单向导 –设计器:表设计器 –生成器:表达式生成器 –管理器:项目管理器
16.05.2019
5
2.1 Visual FoxPro的操作环境
2.1.1 Visual FoxPro操作界面
菜单 栏
工具 栏
15
2.1.3 配置Visual FoxPro操作环境
Visual FoxPro的配置决定了Visual FoxPro系统运行时 的外观和行为。Visual FoxPro启动以后,还可以使 用“选项”对话框”或SET命令进行附加的配置设 定。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
FoxPro 数据库管理系统介绍1.FoxPro简介FoxPro2.5是Microsoft公司1993年推出的产品。
1993年1月发布了FoxPro2.5for DOS和FoxPro2.5for windows两个版本,成为目前微机上最快、使用最广泛的数据库管理系统。
FoxPro2.5的新特点:增强32位产品的特性;跨平台的开发;新增或增强的命令与函数;新的生成器命令;新的系统内存变量。
由于FoxPro for DOS与FoxPro for windows相互兼容,下面就只简单地介绍一下FoxProˉfor windows的一些功能。
FoxPro for windows的常用工具集(菜单生成器、屏幕生成器、报表生成器)充分发挥Winˉdows的图形能力。
这些能力包括图象显示、字模使用以及Windows元素与控制的应用,还可以用Bitmaps 作为屏幕的背景。
FoxPro的附属工具传递器(Transporter)支持FoxPro2.5for DOS 和它的DOS环境下的姐妹产品之间的交叉平台上的开发。
FoxPro for DOS程序在大多数情况下可以不必修改而直接在FoxPro for windows 环境下运行。
独特的Rushmore查询优化技术支持复杂的检索并大幅度提高了运行速度,图形环境并不影响FoxPro底层的速度。
FoxPro加入了Windows的一些动态功能,如OLE(对象连接与嵌入)、DDE(动态数据交换)、DLL(动态链接库)和Windows打印驱动程序等。
FoxPro for windows包括字型字体控制、拖放式编辑和块功能。
Windows的全范围的各种字模(Font)在FoxPro2.5中都是有效的,包括True Type字模,这些字模对所有的FoxPro的工具和程序语言都是支持的。
FoxPro提供联机帮助文件。
发行工具箱(Distribution kit)提供流水过程,提供安装和启动例程。
FoxPro适用于多用户及网络环境。
2.FoxPro的基本原理FoxPro数据库是表的集合,这些表协同工作,一起来完成某项任务。
这里的表是一种列表,在该表中的每项叫做一个记录,而每个记录又由许多字段组成,字段是数据库的最小数据单位。
在FoxPro 中支持八种数据类型的字段。
(1)FoxPro的数据类型①字符型字段。
②数字型字段。
③日期型字段。
④逻辑型字段。
⑤备注字段。
⑥通用字段。
⑦图形类型字段。
⑧浮点数值字段。
(2)工作区在FoxPro中,组成某个数据库的各种表可以打开在多达255个工作区中,可以用编号1到255引用工作区,也可按A~J和11~255引用工作区。
在某一时刻每个工作区只能容纳一张表。
在工作区中打开表后,工作区和表实际上成了同义语,可以通过表的别名(有时就是该表的名),来引用或选择工作区。
别名可在打开表时指定。
通常选择一个工作区为当前工作区,该工作区中打开的表,即为FoxPro 操作的缺省表。
FoxPro的缺省操作都是针对该表的。
(3)View窗口该窗口是用来查看数据库,而且可以显示在各个工作区打开的表的别名,也可通过Browse按钮查看这个表的内容。
此外,View窗口也允许用户输入数据,仔细观察表内容,创建和修改单个的表。
在主菜单中选Windows/View后即可进入View窗口。
Setup按钮可修改表的结构。
Browse按钮可浏览当前工作区(Workareas中以亮条标出)中的表内容。
Open按钮可在当前工作区中打开一已存在的表或创建一新表。
Close按钮则关闭当前工作区中的表。
Relation按钮可使当前工作区的表与其它表相关联。
用户常常需要同时打开两个或更多的表,按照某种特殊的顺序来显示表的内容。
利用View文件可以保存用户在各工作区打开的表的信息。
用户想打开所有这些表时只须打开用户存的View文件,再进入View窗口即可。
方法如下:保持View窗口活动,在各工作区内打开所需的表,然后选择File/Save as…菜单选项,Save as菜单即会出现,在Save View as栏中添入文件名,之后确认Save,即可产生用户的View文件。
(4)表的互斥和共享打开的表要么互斥(Exclusive)使用,要么共享(Shared)使用。
如果互斥使用,那么在关闭该表之前任何其他人都不得再重新打开该表。
缺省状态下。
FoxPro打开的表是互斥使用的。
要命名打开的表能共享使用,必须加载DOS SHARE程序。
工作在不需SHARE的网络上则不用加载。
同时要在Command窗口中敲入SET EXCLUSIVE OFF,那么后续打开的所有表都能共享使用,已经打开的表依然互斥使用。
在USE命令后加入SHARED,使用户能够替换对指定文件的EXCLUSIVE设置。
也可从View窗口中打开表用于共享使用,这可以取消File/open 对话框中Exclusive复选框的标记而实现。
某些FoxPro命令需要互斥使用表,如DELETE TAG、INDEX ON…TAG、INSERT [BLANK]、MODIFY STRUCTURE,PACK,REINDEX,ZAP等。
在表被打开用于共享之后,必须处理记录争用的问题。
但目前读者还只需要知道在交互地增加和修改的据时,FoxPro为用户处理大多数这种问题。
注意:如果用户保证EXCLUSIVE已关闭(SET OFF),但状态栏仍旧显示表是EXCLUˉSIVE的话,那么或许SHARE程序没有加载,或许表是在EXCLUSIVE打开(SET ON)状态时打开的,也可能所使用的表刚刚创建。
用户创建表打开时是互斥使用的,直到关闭该表;但下一次打开该表时,可使表用于共享。
(5)Browse窗口Browse窗口是FoxPro功能最强、最富生机的特征之一。
在Browse 窗口中不仅可以浏览表的内容,还可以向表中增加记录、删除记录、修改字段等。
进入Browse窗口有多种方法,既可从主菜单中Database/Browse进入,也可从View窗口中的Browse按钮进入,还可以在查询时进入。
Browse窗口在FoxPro中是最有用的窗口之一。
用户应在进入FoxPro后,就打开Browse窗口,这样会给用户带来许多方便。
事实上,FoxPro的所有表,都是以单独的文件存放在磁盘中的,数据库实质上只是一个目录名而已。
FoxPro对文件的保护比较弱,有时拷贝表时,会丢失某些信息,以至于到另外一台机器上不能打开,这时就应重新拷贝,把所有相关的文件,如FPT、IDX等文件一并拷走。
这样数据库才能在另外一台机器上安全地运行。
3.使用FoxPro数据库(1)建立数据库建立数据库要决定需存储在数据库中的信息的结构,即数据库的结构。
(2)RQBE窗口尽管使用Browse可以浏览表,但毕竟只能做一些简单的检索,为此FoxPro提供了RQBE(Relational Query By Example)。
RQBE是一种交互式工具,避免了写复杂检索程序的麻烦,可以很方便地检索数据。
RQBE的功能很强,RQBE是用户和SQL SELECT命令间的接口,FoxˉPro支持SQL。
另外,RQBE可以把语句保存在.QPR文件中。
(3)报表的设计与制作使用RQBE可制作出报表,还可以利用FoxPro功能强大的Report Writer来制作一张符合需要的报表。
4.创建应用程序(1)建立数据库编写数据库应用程序的第一步是确定该系统必须使用的数据库文件和索引。
(2)菜单生成器FoxPro为用户提供了很简洁的丰富的菜单编程命令,但这些繁杂的命令很容易令人厌烦。
如果使用菜单生成器,将会使构造菜单系统变得容易许多。
菜单生成器的启动有两种方式:(1)通过在Command窗口键入Create menu[〈文件名〉],键入回车即可。
(2)通过系统菜单启动。
(3)屏幕生成器大多的应用程序都是围绕着用户界面屏幕来建立的。
有些屏幕用来录入或编辑数据,有些屏幕用以显示信息,有些屏幕用于表的维护等等。
FoxPro的屏幕生成器就是用来创建大多数上述屏幕的工具。
在各类界面设计中,输入屏幕算是比较繁而且又很常用的界面屏幕了。
(4)项目管理器项目管理器主要有以下两个作用:①维护项目使用的所有文件。
②建立应用程序项目管理器具有优秀编程工具的特点,它为用户做了许多工作,并且易于使用。
可以通过选择File_ New_ Project、New或在命令窗口键入Creat project命令来创建一个新的项目。
然后使用Add按钮开始创建该项目中的新文件或将已有的文件添加到该项目中。
首先,将主文件添加到项目中。
由此,项目管理器就可以沿着程序的执行步骤(即嵌入在文件中的函数和过程调用)来一步步跟踪,直到找到当前项目所需的所有文件为止。
生成项目文件非常容易,在项目管理器窗口中按下Build按钮,选择Re-build project,Build Application或Build Executable 选项。
另外,项目管理器能方便的发现和修改编译错误。
应该指出,一个项目并不一定要生成应用程序;而一个完整的“应用程序”可以包含若干个项目和若干个生成类。
因此,逻辑上的解决办法是将应用程序拆成许多的项目,这就是应用程序的分级设计方法。