VFP60数据库及其操作课件.ppt
《VFP60数据库及其操作课件.ppt》由会员分享,可在线阅读,更多相关《VFP60数据库及其操作课件.ppt(104页珍藏版)》请在三一办公上搜索。
1、1,第四章 VFP6.0数据库及其操作,4.3 自由表4.1 Visual FoxPro数据库及其建立4.2 建立数据库表(重点)4.4 表的基本操作与相关命令(重点)4.5 索引与排序(难点)4.6 数据完整性与表间永久性关系4.7 多个表的同时使用,教学要求:,2,一、建立表1、设计表结构一个数据表由数据表名、数据表的结构、数据表的记录三要素构成。表的结构:定义数据表中的字段个数、各个字段的名称、属性、类型、宽度。,定义数据表的结构需注意的问题:数据表名及字段类型的设置(N、I、C、D、L、M、G、T、Y、B),可以是汉字、英文字母、数字与下划线,数字与下划线不能是第一个字符。小数点和正负
2、号在字段宽度中各占一位,4.3 自由表(.dbf),3,Student表结构,Why?,4,course表结构,5,scores表结构,6,2、创建表表向导表设计器:文件新建表新建文件输入表名保存打开表设计器,7,3、输入表记录在表设计器里设置完后,确定:,如果选择“是”,可以以立即方式向表中输入数据;选择“否”则结束表结构的建立。,表的记录可以通过记录编辑窗口按记录逐个字段输入:显示浏览/编辑追加方式,8,4、特殊数据的输入 逻辑型字段只接受T、Y、F、N 日期型数据必须与日期格式相符,默认为MM/DD/YY,也可自行设置:工具选项区域 备注型数据的输入:memoMemo 通用型数据的输入:
3、genGen,9,二、修改表结构表设计器,表设计器的打开:打开表后,显示表设计器 表打开后,命令窗口中输入MODIFY STRUCTURE修改完后,点击“确定”则:,10,4.1 VFP6.0数据库及其建立,一、数据库的组成结构与相关资源,在数据库开发过程中还会创建和使用查询、报表、表单等资源。,11,数据表同二维表,拥有列(字段(Field)与行(记录)。一个字段由字段名和字段值组成,所有字段名的集合构成了表的第一行(又称为表头),叫做数据表的结构。视图 视图是提取数据库记录、更新数据库数据的一种操作方式,是从一个或多个数据表中导出的“表”。它与数据表不同的是,视图中的数据还是存储在原来的数
4、据表中,因此可以把它看作是一个“虚表”。视图是不能单独存在的,它依赖于数据表而存在,只有打开与视图相关的数据库才能创建和使用视图。,12,存储过程 存储过程类似于编程时的函数,将常用的或很复杂的工作,预先用SQL语句写好并用一个指定的名称存储起来,那么以后要求数据库提供与已定义好的存储过程的功能相同的服务时,只需调用执行,即可自动完成命令。查询 查询是一种相对独立且功能强大、结果多样的数据库资源,利用查询可以实现对数据库中数据的浏览、筛选、排序、检索、统计和加工等操作;利用查询可以为其他数据库提供新的数据表,可以从单个表中提取有用的数据,也可以从多个表中提取综合信息。,13,报表 在对数据库进
5、行操作时,数据和文档的输出通常有两种方式:屏幕显示和打印机打印。报表就是用户使用打印机输出数据和文档的一种实用方式。表单 在Visual FoxPro系统中,表单是数据库应用系统的主要工作界面,表单为数据库信息的显示、输入和编辑提供了非常简便的方式,也可以作为系统流程控制的窗口。,14,二、数据库的创建,在Visual FoxPro中,数据库文件的扩展名是.DBC。在建立数据库时,还会自动建立一个扩展名为.DCT的数据库备注文件和一个扩展名为.DCX的数据库索引文件。这三个文件是供Visual FoxPro管理数据库使用的,用户不能直接使用这些文件。,1、默认目录的设置:要求将默认目录设置到C
6、盘下的学生成绩数据库2、数据库文件的建立:在上一目录下创建一数据库“学生成绩”:文件新建数据库输入数据库名打开数据库设计器也可在项目里创建数据库,15,图4-5数据库设计器,16,3、数据库操作命令:,1)建立数据库:格式:CREATE DATABASE 数据库名说明:其中数据库名是要创建的数据库名称,可以带有路径。,【例4-1】如果数据库Test并不存在,建立该数据库,17,创建数据库Test之前的当前数据库窗口,创建数据库Test之后的当前数据库窗口,注:此时系统将在当前目录下建立Test数据库,但系统并不同时打开Test数据库的数据库设计器。当数据库被创建后,该数据就成为当前打开的数据库
7、,在Visual FoxPro系统中,若要对数据库进行操作,必须先打开数据库。,18,2)打开数据库:格式:OPEN DATABASE 数据库文件名|?EXCLUSIVESHARED说明:如果这个数据库不在当前目录下,那么“数据库文件名”应带有路径,如果不带参数或者使用“?”号,则弹出“打开”对话框,提示用户选择要打开的数据库。如果带参数EXCLUSIVE,则以独占方式打开数据库,其他用户无法访问。如果带参数SHARED,则以共享方式打开数据库,允许其他用户同时访问,19,eg.open database e:vf学生管理 open database e:xldatadatabase TWO
8、set database to e:xldatadatabase TWO一个项目可以建立并打开多个数据库,但是当前数据库只有一个,补充:指定当前数据库set database to 数据库名,20,3)修改数据库:格式:MODIFY DATABASE 数据库文件名|?功能:该命令打开“数据库设计器”窗口,以便修改数据库中的内容,“数据库名”是要修改的数据库名称,如果使用“?”号,则弹出“打开”对话框;不带参数时,则打开当前数据库的“数据库设计器”窗口。,21,4)关闭数据库:格式:CLOSE DATABASES ALL说明:如果不带参数ALL,则关闭当前数据库以及它的所有表;如果当前没有打开的
9、数据库,则关闭所有工作区中的自由表、索引和格式文件;如果带参数ALL,则关闭所有打开的数据库和表、索引、格式文件。,22,补充:删除数据库 delete database,Delete database e:xldatadatabase TWO,dbc()函数,作用:返回当前数据库的名称和路径返回值类型:字符型,如果没有当前数据库,则返回空字符串,Open database e:vf学生管理?dbc(),23,在VFP中,表有两种:数据库表和自由表,区别数据库表与数据库相关联;自由表不属于任何数据库,联系可以相互转换,数据库表,自由表,移出,添加,24,4.2 建立数据库表(.dbf),一、在
10、数据库中建立表数据库表必须先打开数据库,然后再建表(同自由表),也可将已有的自由表变为数据库表,25,数据库表的特性:更规范的管理,长表名和表中的长字段名 表中字段的标题和注释 默认值、输入掩码和表中字段格式化 表字段的默认控件类 字段级规则和记录级规则 支持参照完整性的主关键字索引和表件关系 具有insert、update或delete事件的触发器,26,1、显示设置 显示设置用于指定输入和显示字段的格式。选中相应字段后,就可以设置该字段的显示格式了。注意这里设置的并不是数据存储在磁盘上的格式。显示设置包括“格式”、“输入掩码”和“标题”三项字段属性。格式:设置字段显示时的大小写、字体大小和
11、样式等内容。,27,例4-5,28,输入掩码:字段或控件的一种属性,用于限制或控制用户输入的格式。这样字段中的值就具有了统一的风格,从而可以减少数据输入错误,提高输入效率。,例4-6,29,“输入掩码”属性与“格式”属性间存在着实质性的差异,使用各种“输入掩码”的格式化代码,可以完成对当前字段值的一对一格式化控制;而格式的各类代码所做的是对当前字段值的全局性格式化控制。,例如:设置“Student”数据表的“民族”字段,使其可以输入任何字符,但是所有输入的英文字母都会被转换成大写。,利用“格式”属性,30,“输入掩码”属性与“格式”属性间存在着实质性的差异,使用各种“输入掩码”的格式化代码,可
12、以完成对当前字段值的一对一格式化控制;而格式的各类代码所做的是对当前字段值的全局性格式化控制。,例如:设置“Student”数据表的“民族”字段,使其可以输入任何字符,但是所有输入的英文字母都会被转换成大写。,利用“输入掩码”属性,31,标题:它是显示给用户看的字段标题。如果不设置标题,则当显示数据时,Visual FoxPro自动用字段名作为标题。标题最长可达128个字符。,32,2、字段注释:可以在“字段注释”编辑框中输入该字段的说明文字,主要是为了方便程序员编程和书写系统文档。,33,3、字段有效性:在字段级别对数据的约束,(1)规则:是对字段内容进行有效性检查,可在规则框中输入规则表达
13、式。如果输入的表达式比较复杂,可以单击文本框右端的按钮打开生成器对话框,利用生成器辅助输入表达式,注意:规则表达式的值必为逻辑型,因此应该是逻辑表达式或者关系表达式。(2)信息:当输入的数据违反有效性规则时,显示的错误提示信息。,例4-9,注意双引号的使用,34,(3)默认值:可以节省数据输入人员每次都必须重新键入的时间。要设置字段的默认值,请先选定字段,然后将光标移至“默认值”文本输入框中,直接键入默认值。注意:默认值的类型必须与该字段的数据类型相同,并且不可以和字段的有效性规则相冲突。,例4-10,注意双引号的使用,35,设置记录规则表设计器表选项卡,记录有效性:检查同一记录中不同字段之间
14、的逻辑关系,eg.规则是:left(学号,2)=“89”and year(入学年月)=1989 信息是:“不是89级学生”,可以设置记录的有效性规则及出错提示信息,还可以指定记录插入、更新及删除规则。,规则:指定记录级有效性检查规则,光标离开当前记录时进行校验。,信息:指定出错提示信息。,36,触发器:指定规则,eg.年龄10 and 年龄=50,插入触发器:指定插入记录时触发该规则,看是否满足,如不满足,则提示触发器失败信息框。如,在插入触发器中输入:,表示向表中插入或追加记录时,如果输入的年龄不在指定范围内,则当光标离开该记录时会显示触发器失败信息框.,37,eg.recno()=3,更新
15、触发器:指定一个规则,每次更新记录时触发该规则,表示从第3条记录起才符合条件,前两条记录不允许修改,38,eg.left(学号,2)#“89”,删除触发器:指定一个规则,每次在表中删除记录(添加删除标记)时触发该规则,表示89级的学生记录不能删除,只能删除非89级学生的记录,39,三、使用“浏览”窗口操作表,改变行高和列宽:拖动 两个窗口(浏览和编辑)显示数据:窗口拆分条 改变字段的显示顺序 删除记录:删除标记删除标记(逻辑删除):单击记录左侧矩形框,变成黑框,再次单击,变为白色,取消删除标记彻底删除(物理删除):加上删除标记后,菜单“表”彻底删除,例4-11,40,4.4 表的基本操作与相关
16、命令,一、打开和关闭数据表命令1、打开数据表命令:USE格式:USE 数据库名!表名|视图名 IN EXCLUSIVE|SHARED功能:所谓“打开”,就是将表文件的控制信息和具体内容读入内存的工作区中,以便程序或用户访问数据。所谓“关闭”,就是释放文件所占用的内存区域,将文件更新的内容保存到外存储器中。,例4-12,例4-13,41,工作区:编号区域,标识一个已打开的表。Visual FoxPro最多可以同时打开32767个数据表,每个打开的表都要在存储器中开辟一个存储区域,这个存储区域就叫做工作区。使用数字编号如:1-10,或用字母A-J来表示,称为工作区别名。如果命令中出现的工作区编号是
17、0,表示在当前序号最小的可用空闲工作区中打开文件。,在Visual FoxPro系统中,可以在多个工作区中多次打开一个表文件,但一个工作区中最多只能打开一个表文件。当打开表文件时,如果不人为指定工作区,Visual FoxPro将自动选择序号最小的可用工作区打开数据表文件。当我们浏览表文件时,系统将会自动打开表,该表将占据一个工作区。,42,2、选择工作区:SELECT 格式:SELECT IN 功能:工作区号用于指定工作区的编号,它是一个整数;表别名用于指定工作区中表的别名,它是一个字符串。说明:选择未被占用的最小号工作区可以使用SELECT 0 命令。,例4-14,例4-15,43,二、表
18、中记录操作命令的常用子句 1、显示指定字段内容子句:格式:FIELDS功能:用于指定需要操作的字段。说明:关键字FIELDS可省略,各个字段名称之间请使用逗号分隔,此子句用于在命令中实现投影操作,如果缺省此子句,则操作表中除备注型、通用型字段外的所有字段。,44,45,2、范围子句范围子句可以限定显示记录的范围,即确定该命令涉及的记录,该子句确定的范围共有四种限定法方法,如表所示。,缺省范围子句时默认范围通常默认为ALL,除了删除命令DELETE和显示记录命令DISPLAY在缺省范围子句时默认范围为当前记录。,46,3、FOR子句格式:FOR 功能:在指定范围内查找符合条件的记录,而且只有这些
19、符合条件记录会被命令所操作。说明:要求是一个值为逻辑型的表达式。,4、WHILE子句格式:WHILE 功能:从当前记录开始,逐一测试记录是否满足条件,命令将对包括当前记录在内的一组连续的满足条件的记录进行操作,表中其他记录将不会被操作;如果当前记录不满足条件,将没有任何记录被命令所操作。,47,三、显示记录命令,以列举的形式显示当前表的数据记录LIST|DISPLAY FIELDS FOR WHILE,功能:在表中按指定范围与条件筛选出记录并显示。LIST和DISP区别:LIST命令默认操作范围是所有数据记录(即 ALL),而DISPLAY命令的默认操作范围是当前数据记录(即 NEXT 1);
20、DISPLAY 分页方式显示,并提示用户继续,而LIST滚动显示,直到最后一行记录在屏幕上显示出来为止。,例4-17例4-23,48,命令和子句的书写规则:(重复讲一遍,重点)(1)命令动词与子句、子句与子句、子句的各部分(如NEXT与5,FOR与逻辑条件表达式)之间必须用空格隔开,但各个子句的次序允许任意排列,这对于执行结果没有影响。(2)命令动词与各子句的保留字,包括函数的名字都可以简写为前四个字母,而且对于其中出现的英文字母,使用大小写不区分。,49,(3)一条命令的长度可达8192个字符,若一行写不下,可在适当位置输入续行符“;”并回车,然后在下一行中继续键入该命令。(4)命令或函数格
21、式中以“|”分隔开的两项表示两者之中只选其一,例如EXCLUSIVE|SHARED表示要么使用独占方式,要么使用共享方式;用中括号“”括起来的部分表示可选项;用尖括号“”括起来的部分表示由用户定义的内容,但这些符号并非命令或函数的组成部分。(5)标点符号须是半角状态。,50,四、删除记录命令,逻辑删除和物理删除。,1、为记录加删除标记、执行逻辑删除格式:DELETE FOR 功能:对符合条件的记录加删除标记。相当于在“表”菜单下执行“删除记录”命令。其中子句用于指定范围,而FOR子句用于指出须符合的条件。,例4-24,例4-25,51,2、从磁盘上删除带有删除标记的记录 格式:PACK MEM
22、O DBF功能:将那些被逻辑删除的记录实际移出表,MEMO子句:从和表文件同名的.FPT备注文件中删除未使用的空间,但不从表中删除带有删除标记的记录;DBF子句,则从表中删除所有带删除标记的记录,但不影响备注文件。相当于执行“表”菜单下的“彻底删除”命令。,52,3、取消带有删除标记的记录:恢复被DELETE命令标示成删除状态的记录。格式:RECALL FOR 功能:对当前表在指定范围内满足FOR条件子句的记录去掉删除标记,若各子句都缺省,则只恢复当前记录。说明:RECALL 命令必须在还没有对表使用PACK命令以前执行,否则那些被标示为删除的记录早已被实际移出表外。,例4-26,53,4、彻
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VFP60 数据库 及其 操作 课件
链接地址:https://www.31ppt.com/p-4009870.html