1、数据库原理-VFP-VFP全册配套最 完整精品课件 第0章 数据库基本理论 0.1 数据库的基本概念 一、数据管理的发展历程一、数据管理的发展历程 无整体数据结构,不同文件数据间的相关关系无整体数据结构,不同文件数据间的相关关系 无体现,数据冗余较大;无体现,数据冗余较大; 数据独立性差,即数据与程序严重地相互依赖,数据独立性差,即数据与程序严重地相互依赖, 一旦数据结构有所变化相关的程序都得修改。一旦数据结构有所变化相关的程序都得修改。 3 3、数据库管理阶段、数据库管理阶段 最早的数据库系统出现在最早的数据库系统出现在6060年代未。年代未。 19681968年,美国年,美国IBMIBM公
2、司研制了世界上第一个数据库管理系统公司研制了世界上第一个数据库管理系统 IMSIMS(Information Management SystemsInformation Management Systems)。)。 19691969年,美国数据系统语言委员会年,美国数据系统语言委员会CODASYLCODASYL(Conference on Conference on Data Systems LanguagesData Systems Languages)组织的数据库工作小组发表了关于)组织的数据库工作小组发表了关于 数据库的权威性报告数据库的权威性报告DBTGDBTG(Data Base T
3、ask GroupData Base Task Group);); 19701970年,美国年,美国IBMIBM公司研究员公司研究员E EF CoddF Codd发表了著名的关系数发表了著名的关系数 据库理论的论文。据库理论的论文。 这三件事是数据库发展历史上的里程碑,是由文件系统这三件事是数据库发展历史上的里程碑,是由文件系统 进入到数据库系统阶段的标志。进入到数据库系统阶段的标志。 自那时以来,数据库技术一直蓬勃发展。传统数据库系自那时以来,数据库技术一直蓬勃发展。传统数据库系 统的功能不断加强完善界面不断改进,新型数据库技术不断统的功能不断加强完善界面不断改进,新型数据库技术不断 出现。
4、出现。 数据库 二、数据库的概念二、数据库的概念 数据库是长期储存在计算机内的、有组织的、数据库是长期储存在计算机内的、有组织的、 能共享的数据集合。能共享的数据集合。 数据库中的数据按一定的数据模型组织、描述数据库中的数据按一定的数据模型组织、描述 和储存,具有较小的冗余度、较高的数据独立性和和储存,具有较小的冗余度、较高的数据独立性和 易扩展性,并可为各种用户共享。易扩展性,并可为各种用户共享。 数据库 l数据库系统的特点数据库系统的特点 l 数据的结构化数据的结构化 l 数据共享数据共享 l 数据独立性数据独立性 l 可控冗余度可控冗余度 三、数据库系统的分代三、数据库系统的分代 数据库
5、 表(Table) 四、数据库系统的分类四、数据库系统的分类 关系型数据库系统关系型数据库系统 面向对象数据库系统面向对象数据库系统 分布式数据库分布式数据库 演绎式数据库系统演绎式数据库系统 0.2 数据库管理系统和数据库应用系统 一、数据库管理系统一、数据库管理系统 (DBMSDBMS) 使用数据库语言也需要一个特定的支持软件。这就是使用数据库语言也需要一个特定的支持软件。这就是 “数据库管理系统数据库管理系统”DBMSDBMS(Database Management SystemDatabase Management System)。)。 一般地说数据库管理系统应该具有下列功能:一般地说
6、数据库管理系统应该具有下列功能: l数据定义功能:简称数据定义功能:简称DDLDDL,用于描述数据库的结构。,用于描述数据库的结构。 l数据操作功能数据操作功能 :简称:简称DMLDML,支持用户对数据库中的数,支持用户对数据库中的数 据进行查询、更新(包括增加、删除、修改)等操作。据进行查询、更新(包括增加、删除、修改)等操作。 l控制和管理功能控制和管理功能 :简称:简称DCLDCL,有必要的控制和管理功,有必要的控制和管理功 能,其中包括:在多用户使用时对数据进行的能,其中包括:在多用户使用时对数据进行的“并发并发 校正校正”;对用户权限实施监督的;对用户权限实施监督的“安全性检查安全性
7、检查”;数;数 据的备份、恢复和转储功能;对数据库运行情况的监据的备份、恢复和转储功能;对数据库运行情况的监 控和报告等。控和报告等。 二、数据库应用系统(二、数据库应用系统(DBASDBAS) 数据库应用系统(数据库应用系统(Database Application SystemsDatabase Application Systems, 简称简称DBASDBAS)专指基于数据库的应用系统。一个)专指基于数据库的应用系统。一个DBASDBAS通常由通常由 数据库和应用程序两部分组成,它们都需要在数据库和应用程序两部分组成,它们都需要在DBMSDBMS支持下支持下 开发。开发。 1 1、设计数
8、据库、设计数据库 概念结构设计概念结构设计逻辑结构设计逻辑结构设计物理结构设计物理结构设计 2 2、开发应用程序、开发应用程序 功能分析功能分析总体设计总体设计模块设计模块设计编码调试编码调试 通过本章学习,应掌握的主要内容如下: 数据管理的发展历程数据管理的发展历程 数据库的概念数据库的概念 关系型数据库的特点关系型数据库的特点 数据库管理系统的概念及功能数据库管理系统的概念及功能 数据库应用系统的概念数据库应用系统的概念 主讲:张主讲:张 泳泳 教材:教材:Visual FoxPro及其应用系统开发(清华)及其应用系统开发(清华) 参考书目:参考书目:数据库系统概论数据库系统概论,萨师煊、
9、王珊(高教),萨师煊、王珊(高教) VFP 6.0中文版语言参考手册中文版语言参考手册,微软(希望电脑),微软(希望电脑) 首先要明确的几个问题 数据库技术原理与应用课程的主要内容是什么?数据库技术原理与应用课程的主要内容是什么? Visual FoxProVisual FoxPro是什么?是什么? Visual FoxProVisual FoxPro能做什么?能做什么? 为什么要学习为什么要学习Visual FoxProVisual FoxPro? 课程学习完毕要达到什么目的?课程学习完毕要达到什么目的? 在工程类管理专业知识体系中,本课程居于什么在工程类管理专业知识体系中,本课程居于什么
10、位置?位置? 第1章 数据库管理系统-VFP 1.1 微机Xbase关系数据库系统 一、一、XbaseXbase数据库的演变数据库的演变 DbaseDbaseFoxBASEFoxBASEFoxProFoxProVisual FoxProVisual FoxPro 最终版本:最终版本: 二、二、Visual FoxPro Visual FoxPro 的特点的特点 1 1、功能强大的自含型命令式开发语言、功能强大的自含型命令式开发语言 VFPVFP则拥有近则拥有近500500条命令,条命令,200200余种函数使其功余种函数使其功 能达到空前地强大。能达到空前地强大。 支持支持SQLSQL应用。应
11、用。 2 2、支持面向对象的程序设计、支持面向对象的程序设计 3 3、通过、通过COMCOM控件实现应用集成控件实现应用集成 4 4、支持网络应用、支持网络应用 5 5、拥有大量的可视化辅助设计工具、拥有大量的可视化辅助设计工具 1.2 VFP的界面组成、操作 一、窗口一、窗口 1 1、程序窗、程序窗 (1 1)标题栏:显示)标题栏:显示Microsoft Visual FoxProMicrosoft Visual FoxPro等,表等,表 明它是明它是VFPVFP的程序窗。的程序窗。 (2 2)控制按钮:标题栏右端的)控制按钮:标题栏右端的3 3个控制按钮。个控制按钮。 (3 3)菜单栏:显
12、示)菜单栏:显示VFPVFP系统菜单中的菜单选项。系统菜单中的菜单选项。 (4 4)工具栏:由若干工具按钮组成。每个按钮对应)工具栏:由若干工具按钮组成。每个按钮对应 于一项特定的功能。于一项特定的功能。 (5 5)窗口工作区)窗口工作区 亦称主窗口。主要用于:亦称主窗口。主要用于: l显示命令或程序的执行(运行)结果显示命令或程序的执行(运行)结果 l显示显示VFPVFP提供的工具栏。提供的工具栏。 (6 6)窗口围框)窗口围框 即窗口的外边,移动外边线可即窗口的外边,移动外边线可 缩放窗口的大小。缩放窗口的大小。 (7 7)窗口角)窗口角 位于两条边线的交点,移动交点位于两条边线的交点,移
13、动交点 可使角两边的边线同时伸长或缩短。可使角两边的边线同时伸长或缩短。 2 2、命令窗、命令窗 命令窗是一个标题为命令窗是一个标题为“命令命令”(CommandCommand)的)的 小窗口。它的主要作用是:小窗口。它的主要作用是: (1 1)当用户选择命令操作方式时,显示用户)当用户选择命令操作方式时,显示用户 从键盘发出的命令;从键盘发出的命令; (2 2)当用户选择界面操作方式时,每当操作)当用户选择界面操作方式时,每当操作 完成,系统将自动把与操作相对应的命令在命令完成,系统将自动把与操作相对应的命令在命令 窗内显示。窗内显示。 3 3、工具窗、工具窗 VFPVFP的工具栏有条形与窗
14、形两种。除的工具栏有条形与窗形两种。除“常用常用” 工具栏与工具栏与“表设计表设计”工具栏为条形外,其余的均工具栏为条形外,其余的均 采用工具窗的形式。采用工具窗的形式。 二、图标二、图标 图标是用来表示不同程序和文件的小图像。图标是用来表示不同程序和文件的小图像。 三、菜单三、菜单 1 1、VFPVFP主要使用两类菜单:下拉式菜单和弹出式菜主要使用两类菜单:下拉式菜单和弹出式菜 单。单。 (1 1)系统菜单为下拉式菜单。)系统菜单为下拉式菜单。 它平时只显示菜单栏中的若干选项。如果有某个选它平时只显示菜单栏中的若干选项。如果有某个选 项被选中,该选项下方就会拉伸出一个子菜单。这也是项被选中,
15、该选项下方就会拉伸出一个子菜单。这也是 下拉式菜单名称的由来。下拉式菜单名称的由来。 (2 2)弹出式菜单平时不在屏幕上显示,仅当使用)弹出式菜单平时不在屏幕上显示,仅当使用 时再弹出。时再弹出。 2 2、说明:、说明: (1 1)子菜单的内容可变。)子菜单的内容可变。 (2 2)菜单项的颜色可变。菜单项可有深、浅)菜单项的颜色可变。菜单项可有深、浅 两种显示颜色,随当时的数据环境而变化。如果某两种显示颜色,随当时的数据环境而变化。如果某 一菜单项当前为灰色,表示它暂时不能使用。一菜单项当前为灰色,表示它暂时不能使用。 (3 3)VFPVFP还允许在菜单中使用下列符号:还允许在菜单中使用下列符
16、号: 菜单项名称中带下划线的英文字母代表访问键;菜单项名称中带下划线的英文字母代表访问键; 菜单项名称前带有选择标记(菜单项名称前带有选择标记(),表示该菜),表示该菜 单项提供的功能目前有效,单项提供的功能目前有效, 菜单项名称后带有省略号(菜单项名称后带有省略号(),表示该菜单),表示该菜单 项选中后将打开一个对话框。项选中后将打开一个对话框。 四、对话框四、对话框 对话框是以人对话框是以人机对话为主要目的的一类窗口,机对话为主要目的的一类窗口, 在在VFPVFP中有广泛的应用。中有广泛的应用。 典型的对话框由若干按钮和矩形框构成。每个典型的对话框由若干按钮和矩形框构成。每个 按钮代表一种
17、操作命令,故有时也称为命令钮按钮代表一种操作命令,故有时也称为命令钮 (Command ButtonCommand Button)。矩形框一般可分为)。矩形框一般可分为3 3类,即类,即 文本框、选择柜与列表框。文本框、选择柜与列表框。 (例如,表向导对话框)(例如,表向导对话框) 五、五、VFPVFP的界面操作的界面操作 1 1、鼠标操作、鼠标操作 2 2、窗口操作、窗口操作 3 3、菜单操作、菜单操作 4 4、对话框操作、对话框操作 1.3 VFP的工作方式 一、一、VFPVFP中的命令中的命令 1 1、命令格式:、命令格式: VFP VFP的命令由一个称为命令字的动词开头,后的命令由一个
18、称为命令字的动词开头,后 随一个宾语和若干子句(称为命令子句),用来说随一个宾语和若干子句(称为命令子句),用来说 明命令的操作对象、操作结果与操作条件。明命令的操作对象、操作结果与操作条件。 例如:例如:useuse shb shb list list listlist for for 价格价格1000010000 copycopy to zsb for to zsb for 主要设备主要设备 replacereplace all for all for 价格价格 with with 价格价格* *1.21.2 2 2、命令特点:、命令特点: (1 1)采用英文祈使句的形式,命令的各部分)采
19、用英文祈使句的形式,命令的各部分 简洁规范(最简单的命令仅含一个命令字),简洁规范(最简单的命令仅含一个命令字),VFPVFP中中 文版允许命令中的专用名词使用汉字,但其余词汇文版允许命令中的专用名词使用汉字,但其余词汇 仍用英文。仍用英文。 (2 2)操作对象、结果(目的地)和条件均可)操作对象、结果(目的地)和条件均可 用命令子句的形式来表示。命令子句的数量不限用命令子句的形式来表示。命令子句的数量不限 (有些命令有二三十条子句),顺序不拘。它们使(有些命令有二三十条子句),顺序不拘。它们使 命令的附属功能可以方便地增删,十分灵活。命令的附属功能可以方便地增删,十分灵活。 二、二、VFPV
20、FP的工作方式的工作方式 1 1、交互操作方式、交互操作方式 交互操作方式即是指命令执行方式。用户只需交互操作方式即是指命令执行方式。用户只需 记住命令的格式与功能,从键盘上发送所需的命令,记住命令的格式与功能,从键盘上发送所需的命令, 即可在屏幕上显示执行的结果。即可在屏幕上显示执行的结果。 VFPVFP进一步完善了界面操作,使交互操作方式进一步完善了界面操作,使交互操作方式 的内涵逐渐从以命令方式为主转变为以界面操作为的内涵逐渐从以命令方式为主转变为以界面操作为 主、命令方式为捕。由主、命令方式为捕。由VFPVFP提供的向导、设计器等辅提供的向导、设计器等辅 助设计工具,其直观的可视化界面
21、正被越来越多的助设计工具,其直观的可视化界面正被越来越多的 用户所熟悉和欢迎。用户所熟悉和欢迎。 2 2、程序执行方式、程序执行方式 在实际工作中常常根据需要解决的问题,将在实际工作中常常根据需要解决的问题,将 VFPVFP的命令编成特定的序列,并将它们存入程序文件的命令编成特定的序列,并将它们存入程序文件 (或称命令文件)。用户需要时,只需通过特定的(或称命令文件)。用户需要时,只需通过特定的 命令(例如命令(例如DoDo命令)调用程序文件,命令)调用程序文件,VFPVFP就能自动就能自动 执行这一程序文件执行这一程序文件, ,把用户的介入减至最小限度。把用户的介入减至最小限度。 1.4 V
22、FP的辅助设计工具 一、向导一、向导 向导是一种快捷设向导是一种快捷设 计工具。它通过一组计工具。它通过一组 对话框依次与用户对对话框依次与用户对 话,引导用户分步完话,引导用户分步完 成成VFPVFP的某项任务的某项任务 。 VFPVFP有有2020余种向导余种向导 工具。其具体参见教工具。其具体参见教 材表材表1.11.1。(。(P26P26) 二、设计器二、设计器 设计器一般比向导具有更强的功能,可用来创建设计器一般比向导具有更强的功能,可用来创建 或者修改或者修改VFPVFP应用程序所需要的构件。应用程序所需要的构件。 VFPVFP中的设计器的类型参见表中的设计器的类型参见表1.21.
23、2。(。(P27P27) 三、三、 生成器生成器 生成器也可译为生成器也可译为 构造器,均来源于构造器,均来源于 英文英文BuilderBuilder一词。一词。 它的主要功能,是它的主要功能,是 在在VFPVFP应用程序的应用程序的 构件中生成并加入构件中生成并加入 某类控件。某类控件。 VFPVFP中生成器中生成器 的类型参见表的类型参见表1.31.3。 (P28P28) 通过本章学习,应掌握的主要内容如下: 掌握掌握VFPVFP系统窗口的构成及使用方法系统窗口的构成及使用方法 掌握掌握VFPVFP系统的工作方式及每种工作方式的特点系统的工作方式及每种工作方式的特点 第2章 表的基本操作
24、2.1 表的建立与修改 一、建立表结构一、建立表结构 1 1、设计表结构、设计表结构 由于由于VFPVFP采采用关系型数据模型,用关系型数据模型,故故能方便地将能方便地将 二二维维表作为表作为“表表”存储到存储存储到存储器器中。中。 建表时,二建表时,二维维表标题表标题栏栏的列标题将成为表的的列标题将成为表的字字 段段。标题。标题栏栏下方的内容输入到表中成为表的数据,下方的内容输入到表中成为表的数据, 每一行数据称为表的一个每一行数据称为表的一个记录记录。也就是说,表由结。也就是说,表由结 构和数据两部分组成。构和数据两部分组成。 建立表结构就是定义各个字段的属性建立表结构就是定义各个字段的属
25、性, ,主要是主要是 字段名、类型、字段名、类型、宽宽度等内容。度等内容。 (1 1)字段名)字段名 字段名用来标字段名用来标识识字段,它是一个以字字段,它是一个以字母母或或汉汉字字 开开头头,长度不,长度不超超过过1010的字的字母母、汉汉字、数字、下字、数字、下划线划线 序列。序列。 注注意:表名的意:表名的命命名规则名规则随随操作系统而定。即在操作系统而定。即在 WindowsWindows操作系统中文件名最多可操作系统中文件名最多可达达255255个字符、个字符、仅仅 :?x?x”|等字符不能使用。等字符不能使用。 (2 2)类型与)类型与宽宽度度 字段类型、字段类型、宽宽度及小数度及
26、小数位位数等属性都用来描述数等属性都用来描述 字段值。字段值。 字段字段宽宽度用以表明允许字段存储的最大字节数。度用以表明允许字段存储的最大字节数。 对于对于字符型、数值型、字符型、数值型、浮浮点型点型这这3 3种字段,在建立表种字段,在建立表 结构时应结构时应根根据要存储的数据的实际需要设定合适的据要存储的数据的实际需要设定合适的 宽宽度。度。 其它类型字段的其它类型字段的宽宽度度均均由由VFPVFP规定,规定,例例如如日日期期 型型宽宽度为度为8 8,逻辑型,逻辑型宽宽度为度为1 1等。等。 注注意,意,备备注注型与通用型字段的型与通用型字段的宽宽度一度一律律为为4 4个个 字节,用于表字
27、节,用于表示示数据在数据在FPTFPT文件中的存储地文件中的存储地址址。 具体具体参见参见P34P34表表2.22.2 (3 3)小数值数)小数值数 只有数值型与只有数值型与浮浮点型字段点型字段才才有小数值数。应有小数值数。应注注意意 小数点和正小数点和正负负号号都都须须在字段在字段宽宽度中度中占占一一位位。 例例如,设备最大价格若为如,设备最大价格若为6 6位位整数与整数与2 2位位小数则小数则 该字段的该字段的宽宽度应设定度应设定9 9位位。由此可。由此可知知。 对于对于纯纯小数,其小数小数,其小数位位数数至至少应比字段少应比字段宽宽度小度小1 1, 若字段值都是整数,则应定义小数若字段值
28、都是整数,则应定义小数位位数为数为0 0。 虽虽然然双精双精度型允许输入度型允许输入浮浮点数(带小数的数),点数(带小数的数), 但不需事但不需事先先定义小数定义小数位位数,小数点将在输入数据时数,小数点将在输入数据时键键 入。入。 2 2、建立表结构、建立表结构 (1 1)设置操作)设置操作环境环境: SET DEFAULT TO SET DEFAULT TO 路径路径 () 或修改系统或修改系统配配置文件置文件 (2 2)建立表结构)建立表结构 使用使用菜菜单单命令命令,“文件文件”“新建新建”“”“表表”; 使用使用交交互互命令命令,CREATE CREATE 文件名文件名 ,如:,如:
29、CREATE CREATE SHBSHB (3 3)表设计)表设计器器的的选选项项卡卡 3 3、表文件的说明、表文件的说明 表中的数据表中的数据保保存在扩展名为存在扩展名为.dbf.dbf的文件中,如的文件中,如果果表表 中有备中有备注注类型的字段,系统会自动生成一个与表文件同类型的字段,系统会自动生成一个与表文件同 名,扩展名为名,扩展名为.fpt.fpt的文件,用来的文件,用来保保存备存备注注字段中的内容。字段中的内容。 特特别注别注意,如意,如果果有备有备注注文件,两个文件必文件,两个文件必须须在一在一起起 才才能能打打开表文件。开表文件。 二、数据的输入二、数据的输入 1 1、数据输入
30、要点、数据输入要点 (1 1)表的数据可通过记录编辑)表的数据可通过记录编辑窗口窗口按记录逐按记录逐 个字段输入。一旦在最后一个记录的任个字段输入。一旦在最后一个记录的任何位何位置上输置上输 入数据,入数据,VFPVFP即自动提供下一记录的输入即自动提供下一记录的输入位位置。置。 (2 2)逻辑型字段只能接)逻辑型字段只能接受受T T、Y Y、F F、N N这这4 4个字个字 母之母之一(不论大小一(不论大小写写)。)。T T与与Y Y同义若输入同义若输入Y Y也显也显示示 T T;同;同样样,F F与与N N同义,若同义,若键键入入N N也显也显示示F F。 2 2、备、备注注型字段数据的输
31、入型字段数据的输入 打打开当前记录的备开当前记录的备注注型字段编辑型字段编辑窗口窗口就可以输就可以输 入或修改备入或修改备注注信息。信息。 当当光光标标停停在备在备注注型型memomemo时,若不时,若不想想输入数据可输入数据可 按按回车键跳回车键跳过;若要输入数据,按过;若要输入数据,按CTRL+PgDnCTRL+PgDn或用或用 鼠鼠标标双双击都能击都能打打开相应的字段编辑开相应的字段编辑窗口窗口。 某某记录的备记录的备注注型,其字段标志型,其字段标志首首字字母母格以大格以大写写 显显示示,即显,即显示示为为MemoMemo。 3 3、编辑、编辑窗口窗口的的打打开和关开和关闭闭 前已前已涉
32、涉及表的记录编辑及表的记录编辑窗口窗口、宇宇段编辑段编辑窗口窗口的的 打打开。不同的编辑开。不同的编辑窗口窗口其其打打开的方法可能不同,而开的方法可能不同,而 关关闭闭的方法的方法却却是一致的,表是一致的,表2.42.4列出了这列出了这些窗口些窗口的开的开 关方法。关方法。 4 4、表的、表的打打开和关开和关闭闭 只有在表只有在表打打开后开后才才能能打打开编辑开编辑窗口窗口对它修改或对它修改或 检索;但编辑检索;但编辑窗口窗口的关的关闭闭并不意并不意味着味着表也会关表也会关闭闭; 表关表关闭闭时数据会自动存盘。时数据会自动存盘。 (1 1)用)用USEUSE命令命令来来打打开或关开或关闭闭表表
33、 命令命令格式:格式:USE USE () 功能:在当前工作功能:在当前工作区区中中打打开或关开或关闭闭表。若该表表。若该表 有备有备注注文件,则自动文件,则自动打打开同名的开同名的.FPT.FPT文件。文件。 说明:说明: 表表示示被被打打开的表的名字,开的表的名字,缺缺省省 表表示示关关闭闭当前工作当前工作区区(工作(工作区区的概念)。的概念)。 例例如在如在命令窗口键命令窗口键入入命令命令USE SBUSE SB即即打打开表开表 SB.DBFSB.DBF,若要关,若要关闭闭该表可该表可键键入入命令命令USEUSE。 打打开一个表时,该工作开一个表时,该工作区区中原来中原来打打开的表自动开
34、的表自动 关关闭闭。 已已打打开的表总有一个记录指开的表总有一个记录指针针,指,指针针所指的记所指的记 录称为当前记录录指录称为当前记录录指针针指向第一个记录。指向第一个记录。 表操作结表操作结束束后应及时关后应及时关闭闭以便将内存的数据以便将内存的数据 保保存到表中。存到表中。 (2 2)打打开表的其它常用方法开表的其它常用方法 通过文件通过文件菜菜单的单的打打开开命令命令来来打打开表。开表。注注意,若要意,若要 修改结构或记录修改结构或记录还还应应选选定定打打开对开对话柜话柜中的中的“独独占占” 复复选框选框否否则则打打开的表是只开的表是只读读的,不能修改。的,不能修改。 通过通过窗口菜窗
35、口菜单的数据工作期单的数据工作期命令命令来来打打开表。开表。 (3 3)关)关闭闭表的其它方法表的其它方法 A A、可用以下、可用以下命令之命令之一来关一来关闭闭表表 CLEAR ALLCLEAR ALL:关:关闭闭所有的表,并所有的表,并选择选择工作工作区区1 1; 从内存从内存释释放所有内存变量及用户定义的放所有内存变量及用户定义的菜菜单和单和 窗口窗口。但不。但不释释放系统变量。放系统变量。 CLOSE ALLCLOSE ALL:关:关闭闭所有所有打打开的数据库与表,并开的数据库与表,并选选 择择工作工作区区1 1;关;关闭闭表单设计表单设计器器,查询设计,查询设计器器,报,报 表设计表
36、设计器器,项,项目目管理管理器器。 三、表结构的修改三、表结构的修改 表建立后若要修改结构,表建立后若要修改结构,例例如改变字段属性、如改变字段属性、 增加或删除字段等,可以增加或删除字段等,可以打打开表设计开表设计器器或利用表向或利用表向 导来操作。导来操作。 1 1、打打开表设计开表设计器器来修改表结构来修改表结构 打打开表以后,使用以下方法开表以后,使用以下方法打打开表设计开表设计器器进行:进行: 使用使用“显显示示”菜菜单中的单中的“表设计表设计器器”命令命令; 使用使用命令命令:MODIFY STRUCTUREMODIFY STRUCTURE () 2 2、利用表向导来修改表结构、利
37、用表向导来修改表结构 四、表数据的修改四、表数据的修改 1 1、两种记录显、两种记录显示示方式方式 2 2、浏览窗口浏览窗口的操作的操作 (1 1)打打开开浏览浏览 界面操作方式界面操作方式 命令命令方式:方式:键键入相应入相应命令命令,如,如BROWSEBROWSE ()等。等。 (2 2)滚滚动查看:内容较多时,动查看:内容较多时,采采用多种方法查看。用多种方法查看。 (3 3)一)一窗窗两两区区 3 3、在、在浏览窗口追浏览窗口追加与删除记录加与删除记录 (1 1)记录的)记录的追追加加 分分别别可以使用可以使用“显显示示”菜菜单中的单中的“追追加方式加方式”命命 令令或表或表菜菜单中的
38、单中的“追追加记录加记录”命令命令来来追追加记录,其加记录,其 差差别别主要是前者可以主要是前者可以连续追连续追加,后者为只加,后者为只追追加一个记加一个记 录。也可以使用录。也可以使用APPENDAPPEND ()命令命令进行。进行。 2.2 表达式 一、常量一、常量 常量是常量是固固定不变的数据。定不变的数据。 1 1、数值型常量:整数、小数或用科学计数法表、数值型常量:整数、小数或用科学计数法表达达 的数都是数值型常量。的数都是数值型常量。 2 2、字符型常量:、字符型常量:字符型常量是用字符型常量是用双引双引号、单号、单引引导导 或方括(或方括(“ )号等定界符括)号等定界符括起起来的
39、字符来的字符串串,VFPVFP字符字符 串串的最大长度为的最大长度为254254个字符。个字符。 若字符若字符串串中含有定界符,则中含有定界符,则须须用用另另一种定界符括一种定界符括 起起来。来。 3 3、日日期型和期型和日日期时间型常量期时间型常量 日日期型常量必期型常量必须须用用花花括号括括号括起起来,来,空白空白的的日日期期 时间可表时间可表示示为为或或 。 还还有一种有一种“严格的严格的日日期格式期格式”为:为: yyyy-mm-dd,hh:mm:ssa|pyyyy-mm-dd,hh:mm:ssa|p 必必须注须注意,意,执执行行命令命令时时VFP6.0VFP6.0默认默认使用严格的使
40、用严格的 日日期格式,如期格式,如果果要使用通常的要使用通常的日日期格式必期格式必须先执须先执 行行SET STRICTDATE TO 0SET STRICTDATE TO 0 ()命令命令; 否否则会则会引起引起出出错错。若要设置严格的。若要设置严格的日日期格式可期格式可 以使用以使用命令命令SETSET STRICTDATE TO 1STRICTDATE TO 1。 4 4、逻辑型常量:、逻辑型常量: 逻辑型常量只有逻辑型常量只有真真和和假假两种值。用两种值。用T T、Y Y、N N、F F表表 示均示均可,但是其前后用可,但是其前后用“. .”与其他与其他隔隔开。开。 5 5、货币货币型
41、常量(不要型常量(不要求求):): 货币货币型常量以型常量以$ $符号开符号开头头,并四,并四舍五舍五入到小数入到小数4 4位位。 二、变量二、变量 在在命令命令操作和程序运行过程中其值允许变化的操作和程序运行过程中其值允许变化的 量称变量。量称变量。 1 1、内存变量、内存变量 内存变量可用来存储数据,定义内存变量时需内存变量可用来存储数据,定义内存变量时需 为它取名并为它取名并赋初赋初值,内存变量建立后存储于内存中。值,内存变量建立后存储于内存中。 (1 1)VFPVFP的的命命名规则名规则 在在VFPVFP中除字段和文件外,所有的用户中除字段和文件外,所有的用户命命名,名, 例例如内存变
42、量、如内存变量、函函数的取名,数的取名,均遵守均遵守以下规则:以下规则: (2 2)内存变量)内存变量赋赋值值命令命令 命令命令格式格式1 1: (内存变量)(内存变量) () 命令命令格式格式2 2: STORE STORE TO TO(n n存变量表)存变量表) 功能:计算(表功能:计算(表达达式),然后将计算结式),然后将计算结果赋给果赋给 内存变量。内存变量。 (3(3)表)表达达式值显式值显示命令示命令 命令命令格式:格式:?| |? () 功能:计算表功能:计算表达达式的值,并将其显式的值,并将其显示示在在屏幕屏幕上。上。 说明:说明: ? ?表表示示从从屏幕屏幕下一行的第一列下一
43、行的第一列起起显显示示结结果果。 ?表表示示从当前行的当前列从当前行的当前列起起显显示示结结果果。 表表达达式表式表表表示示可用可用逗逗号来号来隔隔开多个表开多个表达达式,式, 命令执命令执行时行时遇逗遇逗号就号就空空一格。一格。 例例: a=a=“I Im stum stu” ?a ?a ?a ?a store 2 store 2* *3 to n1,n2,n33 to n1,n2,n3 ?n1,n2,n3 ?n1,n2,n3 store 2 store 2* *3,33,3* *4,44,4* *5 to n1,n2,n3 5 to n1,n2,n3 * * 2 2、数组、数组 数组是按一
44、定数组是按一定顺顺序排列的一组内存变量,数组中序排列的一组内存变量,数组中 的各个变量称为数组的各个变量称为数组元素元素。数组必数组必须先须先定义后使用定义后使用。 (1 1)数组的定义)数组的定义 命令命令格式:格式: DIMENSION | DECLAREDIMENSION | DECLARE () 功能;定义一功能;定义一维维或二或二维维数组、及其下标的上界。数组、及其下标的上界。 (2 2)数组的)数组的赋赋值值 VFPVFP不不仅仅允许同一数组的允许同一数组的元素元素取不同类型而取不同类型而 且同一个且同一个元素元素的前、后类型也允许改变。在定的前、后类型也允许改变。在定 义数组时,
45、系统将各数组义数组时,系统将各数组元素元素的的初初值设置值设置 为为.F.F.。 用用赋赋值值命令命令可为数组可为数组元素元素单个地单个地赋赋值,也可为值,也可为 整个数组的各个整个数组的各个元素赋元素赋以相同值。以相同值。 二二维维数组各数组各元素元素在内存中按行的在内存中按行的顺顺序存储,而序存储,而 且也可按一且也可按一维维数组来表数组来表示示其数组其数组元素元素。 例例:dimension x(3),a(2,3)dimension x(3),a(2,3) ?x ?x ?a ?a x(1)=2 x(1)=2 x(2)=hqu x(2)=hqu x(3)=03/04/99 FROM; SH
46、B,dx,bmdm WHERE (dx. SHB,dx,bmdm WHERE (dx.编号编号=shb.=shb.编号编号) .AND. ;) .AND. ; (bmdm. (bmdm.代码代码=shb.=shb.部门部门) ) b b、查询编号前、查询编号前3 3位位小于小于038038的设备名称及大修的设备名称及大修费费用合计,按用合计,按 照大修合计的照大修合计的费费用用降降序排列序排列 SELECT shb.SELECT shb.名称名称, SUM(dx., SUM(dx.费费用用) FROM shb,dx;) FROM shb,dx; WHERE (shb. WHERE (shb.编
47、号编号=dx.=dx.编号编号) .AND. LEFT(shb.) .AND. LEFT(shb.编编 号号,3)038 GROUP BY dx.,3)038 GROUP BY dx.编号编号 ORDER BY 2ORDER BY 2 DESC DESC 注注意:此处由于排序的条件意:此处由于排序的条件SUMSUM(价格)不能直接使用,此(价格)不能直接使用,此 处的处的2 2是指排序以查询结是指排序以查询结果果中的第二列作为依据。中的第二列作为依据。否否则会提则会提示示 “SQLSQL:找找不到列不到列” 3 3、联接方式(、联接方式(T3.5T3.5) 联接可以实现两个表的联接,即在一个查
48、询联接可以实现两个表的联接,即在一个查询涉涉及两个以上表及两个以上表 时,将其按照一定条件联系在一时,将其按照一定条件联系在一起起进行操作。进行操作。VFPVFP的的SQLSQL可以使用可以使用 多种类型的联接形式,多种类型的联接形式,示例示例 SELECT a1.d1,a2.d2 FROM a1 INNER JOIN a2 ON a1.d1=a2.d2SELECT a1.d1,a2.d2 FROM a1 INNER JOIN a2 ON a1.d1=a2.d2 SELECT a1.d1,a2.d2 FROM a1 LEFT JOIN a2 ON a1.d1=a2.d2SELECT a1.d1
49、,a2.d2 FROM a1 LEFT JOIN a2 ON a1.d1=a2.d2 SELECT a1.d1,a2.d2 FROM a1 RIGHT JOIN a2 ON a1.d1=a2.d2SELECT a1.d1,a2.d2 FROM a1 RIGHT JOIN a2 ON a1.d1=a2.d2 SELECT a1.d1,a2.d2 FROM a1 FULL JOIN a2 ON a1.d1=a2.d2SELECT a1.d1,a2.d2 FROM a1 FULL JOIN a2 ON a1.d1=a2.d2 二、查询设计器 用户可通过用户可通过VFPVFP提供的查询设计提供的查询设
50、计器器来进行数据查询。查询设计来进行数据查询。查询设计 器器产生的查询结产生的查询结果果除可当除可当场浏览场浏览外,外,还还有多种输出方式。查询设有多种输出方式。查询设 置也可以置也可以保保存在文件中,供以后存在文件中,供以后打打开查询设计据使用或修改。开查询设计据使用或修改。 1 1、查询设计、查询设计器器的操作步的操作步骤骤 “打打开查询设计开查询设计器器”- -“进行查询设置进行查询设置”(即设置被查询的表、(即设置被查询的表、 联接条件、字段等输出要联接条件、字段等输出要求求和查询结和查询结果果的的去去向)向)- -执执行查询行查询- -保保存存 查询设置。查询设置。 2 2、查询设计