第三章-数据表-VFP课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《第三章-数据表-VFP课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第三 数据表 VFP 课件
- 资源描述:
-
1、第三章数据表的创建与维护目 录上一页下一页退 出 本本 章章 要要 点点建立数据建立数据表表表字段的基本操作表字段的基本操作表记录的基本操作表记录的基本操作排序与索引排序与索引查询查询数据统计与计算数据统计与计算目 录上一页下一页退 出建立一个表文件首先第一步就是建立表结构,然后再输入表记录。建立表结构的方法有很多,在这里主要讲述三种方法:命令方式、菜单方式和使用项目管理器的方式。1命令方式命令方式【格式】CREATE|?【功能】建立一个新的、扩展名为.DBF的表文件。【说明】指定生成的表文件名,若缺省扩展名,则默认为.DBF。如果使用“?”或末指定表文件名,Visual FoxPro系统会弹
2、出创建对话框,以便用户输入表名。建立表结构目 录上一页下一页退 出stud.dbf表。表内容如下:学号姓名性别班级名系别代号地址出生日期是否团员照片备注011110李建国男计012101湖北武汉09/28/84T 011103李宁女电013402江西九江05/06/85F 011202赵娜女英011203广西南宁02/21/84F 021204孙亮男电013402湖南长沙09/08/86T 011111赵琳女计012101江苏南京11/18/85T 021405罗宇波男英011203江苏南通12/12/85F 目 录上一页下一页退 出表设计器对话框中包含“字段”、“索引”、“表”三个选项卡。1
3、)“字段”选项卡:适用于建立表结构,确定表中每个字段的字段名、字段类型、字段宽度和小数位数等。字段名:是某字段的名字。在表中必须为唯一的,字段名必须以汉字、字母和下划线开头,由汉字、字母、数字和下划线组成,对于数据库表支持长字段名,字段名最多为128个字符,自由表不支持长字段名,字段名最多为10个字符。当数据库表转化为自由表时截去超长部分的字符。字段名不能使用系统的保留字。字段类型:表示该字段中存放数据的类型。一个字段即二维表中的一列,其中的数据应具有共同的属性。若存放的是一些符号,不进行数值运算,则定义为字符型;若需要进行数值运算,则根据数值表示的实际意义,选择数值型、货币型、浮点型、双精度
4、型、整型中的一种。对描述日期的字段,可根据需要定义为日期型或日期时间型。对取值只有两种情况,为“真”或为“假”的数据定义为逻辑型。若目 录上一页下一页退 出 存储的字符超过254,为节省存储空间可定义为备注型。若要保存图片或OLE对象,可定义为通用型。备注型和通用型字段的信息都没有直接存放在表文件中,而是存放在一个与表文件同名的.FPT文件中。字段宽度:表示该字段所允许存放数据的最大宽度。由数据的最大宽度决定。过大浪费存储空间,过小数据溢出。字符型字段的最大宽度254个字符,数值型字段和浮点型字段的宽度为20位,逻辑型字段的宽度固定为1,日期型字段的宽度固定为8,通用型字段和备注型字段的宽度固
5、定为4。小数位数:只对数值型字段和浮点型字符等数值类型有效,允许最大宽度20。在计算数值型字段和浮点型字段的宽度时,小数点本身也算作一个字符。数值型字段的小数位数由数据的精度决定位数。目 录上一页下一页退 出 字段有效性 规则:限制该字段的数据的有效范围。在规则中输入:性别=男.OR.性别=女。这样当给“性别”字段输入记录值时就只能输入“男”或“女”。信息:当向设置了规则的字段输入不符合规则的数据时,就会将所设置的信息显示出。默认值:当往表中添加记录时,系统向该字段预置的值。在“性别”字段中输入默认值为“男”。输入记录时只有女生才需要改变默认值,可以减少输入。字段有效性的设置如图3-6所示。2
6、)表选项卡:字段选项卡上主要介绍的是字段属性,它控制了字段值的输入,表选项卡则对表的记录属性进行描述,控制记录数据。在这里主要介绍记录有效性和触发器。目 录上一页下一页退 出3.1.7 表的打开与关闭表的打开与关闭1表的打开表的打开 表文件建好后,以文件的形式保存在磁盘上,在进行各种操作之前,首先必须打开表。打开表的过程实质上就是将表从磁盘调入内存,这样就可以对表中的数据进行各种操作。系统在任何时刻都只能对内存中的表进行访问。(1)命令方式【格式】USE【功能】打开指定磁盘的指定路径下的表和相关的索引文件。【说明】和:指定表文件所在的驱动器及路径,若省略盘符和路径参数,则打开当前盘、当前路径下
7、的表文件。表的打开与关闭表的打开与关闭目 录上一页下一页退 出数据库名!表文件名:指定打开指定数据库中的表文件。若末指定数据库名,则在当前数据库中查找,没有则在自由表中查找。两者同名,则打开数据库中的表。若不指定表文件名而使用“?”,系统会弹出“使用”对话框,以便用户指定打开表的文件名。【例3-1】打开在E盘VFP子目录中STUD.DBF表。USE E:VFPSTUD(2)用项目管理器打开表在项目管理器中选中需要打开的表,选择“浏览”或“修改”都能直接打开表且进行浏览或修改,关闭浏览或修改窗口后,该表仍处于打开状态。目 录上一页下一页退 出2表的关闭表的关闭 表文件操作完成后,或暂时不用时,必
8、须将其关闭,保存到外存中以确保数据的安全性。关闭表就是将表文件从内存中调出,保存在磁盘上。关闭表文件有以下几种方式:(1)打开另一个表文件 如果工作区中已打开有表文件,打开另一表文件时,系统将自动将先前打开的表文件关闭。(2)使用不带任何选项的USE命令【格式】USE【功能】关闭当前已打开的表文件。(3)使用CLEAR命令【格式】CLEAR ALL 目 录上一页下一页退 出【功能】关闭所有工作区中已打开的表文件、索引文件、格式文件及备注文件等,同时释放所有的内存变量。并选择工作区1为当前工作区。(4)使用CLOSE命令【格式1】CLOSE ALL【功能】关闭各种类型文件,并选择工作区1为当前工
9、作区。【格式2】CLOSE DATABASES【功能】关闭所有已打开的数据库文件、表文件、索引文件、格式文件及备注文件等,并选择工作区1为当前工作区。(5)退出Visual FoxPro系统QUIT【功能】退出Visual FoxPro系统,并关闭所有打开的文件,返回操作系统。目 录上一页下一页退 出(6)在数据工作窗口中关闭 在数据工作窗口中选择要关闭的表文件,然后选择“关闭”按钮,系统将关闭所选择的表文件。3.1.8 表的删除表的删除1删除自由表【格式】DELETE FILE 表文件名|?【功能】将指定的表文件从磁盘上删除。【说明】如果删除的表文件存在有与之相关的.fpt备注文件和(.cd
10、x或.idx)索引文件,则同时删除这些文件。删除一个表文件,应保证该表文件是处于关闭状态的。要删除的表文件如果不是在默认的路径下,则文件名应指明路径。表文件名不能包含通配符表的删除表的删除目 录上一页下一页退 出 若不指定文件名或使用“?”,系统会弹出“删除”对话框,选择要删除的表文件路径、文件类型及文件名后,单击“删除”按钮。2删除数据库表 先将数据库表从数据库中移去,然后再用删除自由表的方法进行删除。移去数据库表的命令是:【格式】REMOVE TABLE 表文件名|?DELETERECYCLE【功能】从当前数据库中移去一个表。【说明】表文件名:准备从数据库中移去的表文件名。选择?将出现移去
11、对话框,从中选择一个要从当前数据库中移去的表。选择DELETE在移去数据库表的同时,从磁盘上删除。选择RECYCLE在移去数据库表的同时,不会立即从磁盘上删除,而是放入回收站中。目 录上一页下一页退 出3在项目管理器中删除表在项目管理器中删除表 在项目管理器中选中需要删除的表,选择“移去”按钮或选择主菜单中【项目】|【移去文件】命令,出现一个选择对话框,若选择“移去”按钮,则将表文件移出项目文件,若选择“删除”按钮,则将表文件从磁盘上删除。3.2.1 表结构的显示表结构的显示在表的使用过程,要经常查看表的结构和记录,以随时了解表的变化情况。【格式】LIST|DISPLAY STRUCTURE
12、TO PRINT PROMPT|TO FILE【功能】显示或打印当前表文件的结构。表结构的显示目 录上一页下一页退 出 在执行以上命令时,如果系统中没有已打开的表文件,系统提示输入文件名。用LIST命令,所有信息连续显示,信息较多时,屏幕停止在最后一屏;用DISPLAY命令,如果信息较多则分屏显示,敲任意键继续显示下一屏。【例3-2】显示表STUD.DBF的结构。USE STUDLIST STRUCTURE 需要指出的是,最后一行显示出的记录字节数是所有字段宽度之和再加1。这额外的一个字节是用来存放记录的删除标记(*)的。3.2.2 表结构的修改表结构的修改表结构的改变有时会引起表记录的变化,
13、所以在一般情况下不轻易进行修改。但在确实需要时也可以进行修改。无论进行何种修改,使用的命令都是一个。表结构的修改表结构的修改目 录上一页下一页退 出1命令方式命令方式【格式】MODIFY STRUCTURE【功能】将当前已打开的表文件的表设计器打开进行修改。【说明】要修改表结构必须要先打开需要修改结构的表文件。如果当前工作区中没有已打开的数据库,执行此命令时系统会弹出“打开”对话框,以便用户选择需要修改表结构的文件名及路径等信息,用户选择完成后,系统将弹出表设计器对话框。目 录上一页下一页退 出3.3.5 表的复制表的复制1表结构的复制表结构的复制【格式】COPY STRUCTURE TO F
14、IELDS WITH CDX|WITH PRODUCTION【功能】复制当前表文件的结构作为新表文件的结构。【说明】命令执行前,需复制的表文件必须是打开的。执行后,生成的新表文件只有结构。:确定新表结构的字段名,中的字段必须是原表文件中具有的字段名。若省略该选项,则原样复制当前表文件的结构。【例3-17】用复制命令将STUD.DBF中的学号、姓名、性别、出生日期等四个字段,构成一个新表结构。表的复制表的复制目 录上一页下一页退 出 USE STUD COPY STRUCTURE TO STUD1 FIELDS 学号,姓名,性别,出生日期2表文件的复制表文件的复制【格式】COPY TO FIEL
15、DS FOR WHILE WITH CDX|WITH PRODUCTION【功能】将当前打开的表文件全部或部分复制到一个新生成的表文件中。【说明】新生成表文件中的字段顺序由FIELDS选择项确定,缺省表示新表的结构与原表的结构完全相同,新表文件中的记录由选择项以及选择项确定。同时缺省、表示将原表的全部记录都复制到新表中。若、和都缺省,则表示将原表进行备份。目 录上一页下一页退 出 指定新生成的表文件。若当前原表文件中有备注型字段,则相应的备注文件(.FPT文件)将同时被复制。新表文件名不能与被复制的原表文件同名,省略盘符和路径表示在当前盘当前目录下生成新表文件。【例3-18】复制STUD.DB
16、F中所有女同学的记录到STUD2.DBF中。USE STUD COPY TO STUD2 FOR 性别=“女”目 录上一页下一页退 出2菜单方式菜单方式(1)打开表。(2)选择【显示】|【浏览】命令,系统弹出记录浏览窗口,显示当前表中的记录。这时还可以选择【显示】|【浏览】或【编辑】来改变显示方式。3利用项目管理器利用项目管理器 在项目管理器中,选择需要显示的表文件,单击“浏览”按钮或选择主菜单中【项目】|【浏览】命令,系统弹出记录浏览窗口,显示当前表中的记录。3.3.2 记录指针的定位 记录号用于标识数据记录在表文件中的物理顺序。记录指针是一个指示器,它始终指向当前表中正在操作处理的那条记录
17、,此记录被称为当前记录。如果要对某条记录进行处理,必须移动记录指针,使其指向该记录。在任意时刻指针只能指向唯一的一条记录。记录指针的定位目 录上一页下一页退 出3.5.3 3.5.3 3.5.3 记录指针定位记录指针定位记录指针定位记录指针定位记录指针定位记录指针定位 记录定位就是将记录指针移到指定的记录上,记录指针指向的记录称为当前记录。VFP提供了下列绝对定位和相对定位两类命令。1、记录指针的绝对定位 格式一格式一:GOTO RECORD /TOP/BOTTOM 格式二:格式二:GO RECORD /TOP/BOTTOM格式三:格式三:功能:将记录指针直接定位到指定的记录上。参数描述:指定
18、一个物理记录号,记录指针移至该记录上。TOP:将记录指针定位在表的第一个记录上。BOTTOM:将记录指针定位在表的最后一个记录上。说明:RECORD可省略。的值必须大于0,且不大于当前表文件的记录个数。目 录上一页下一页退 出2、记录指针的相对定位 相对定位与当前记录有关,它是把记录指针从当前位置作相对移动。格式格式:SKIP 功能:将记录指针向前或向后作相对若干条记录的移动。参数描述:指定记录指针作相对移动的记录数据。说明:1、移动的记录数等于的值,其值为正数时,记录指针向下移动,当是负数时,记录指针向上移动。2、省略选择项,约定为向下移动一条记录,即SKIP 等价于SKIP 1。返返返返返
19、返 回回回回回回目 录上一页下一页退 出相对定位与是否打开索引文件有关。如果打开有索引,记录指针按索引文件中顺序移动。否则按表文件中物理顺序移动。【例3-8】绝对定位命令的用法。USE STUD GOTO 2 GO 3【例3-9】相对定位的用法。USE STUD SKIP 4 SKIP 3 SKIP 8 go top&系统主窗口显示为5&系统主窗口显示为2&超出了记录总数6&系统主窗口显示为1目 录上一页下一页退 出录入记录录入记录录入记录录入记录录入记录录入记录 表的数据录入有多种方法:第一种方法是在表结构建立时录入数据;第二种方法是在表结构建成并存盘关闭了“表设计器”之后,利用命令向表中追
20、加记录。格式:格式:APPEND BLANK 参数描述:BLANK:在当前表的末尾添加一条空记录。功能:在表的末尾添加一个或多个新记录。说明:可以在只有表结构而没有记录的空表中添加记录,也可以在已经录入数据的表中的尾部追加记录;它可以向当前表的尾部追加一条或多条新记录。省略可选项,目 录上一页下一页退 出则在当前表的尾部追加任意新记录,追加记录的方法及操作与用CREATE命令建立表时输入数据的方法相同;当发出APPEND或APPEND BLANK命令,并且在选定工作区中没有打开的表时,将显示一个“打开”对话框,我们可以在对话框中选择一个要添加记录的表。APPEND命令打开一个编辑窗口,我们可以
21、在其中输入一个或多个新记录。增加新记录后,VFP将自动修改打开的所有索引。打开浏览窗口后通过追加方式添加记录方法:在项目管理器中选定一个要添加记录的表,然后单击【浏览】,然后在系统菜单中选择【显示】|【追加方式】。添加记录的数据学号 姓名 性别 出 生 日 班级 宿舍 电话 说明 99041001 李娟 女 10/17/8 99 电子 4-201 2356122 9904王坚 男 04/21/8 99 机械 3-305 2356300 9804谢少文 男 02/23/8 98 电子 3-304 2356404 9805欧阳南 女 02/07/8 98 计算机 4-411 2356188 990
22、6李磊 男 10/04/8 99 英语 2-222 2356234 9904王向阳 男 03/29/8 99 机械 3-310 2356333 目 录上一页下一页退 出2 2、从另一个表中追加记录、从另一个表中追加记录 格式:格式:APPEND FROM/?FIELDS FOR 功能:功能:从一个表中读入记录,追加到当前表的尾部。参数描述:参数描述:指定要向当前表中追加记录的数据源。:显示“打开”对话框,从中选择从哪个表中读入数据。FIELDS :指定添加哪些字段数据。FOR:为当前选定表中每一条为“真”的记录追加新记录,直至达到当前选定表的末尾。如果省略FOR子句,则整个源文件记录都追加到当
23、前表中。目 录上一页下一页退 出在表中插入记录在表中插入记录在表中插入记录在表中插入记录在表中插入记录在表中插入记录 1 1、INSRETINSRET命令命令 格式格式:INSERT BLANK BEFORE 功能:在当前记录之前或之后插入一条或多条新记录。参数描述:选择BEFORE子句,新记录插在当前记录之前,当前记录和其后的记录向后顺序移动;否则插在当前记录之后,当前记录之后的记录顺序向后移动。选择BLANK子句,则插入一条空记录。说明:1、省略所有可选项,则在当前记录之后插入新记录。2、在VFP中,如果数据库具有表缓冲或行缓冲功能,则INSERT命令不能用于该数据库的表;对于具有参照完整
24、性规则的表也不能使用INSERT命令。目 录上一页下一页退 出【说明】INSERT是在当前记录之后插入新记录,INSERT BEFORE是在当前记录之前插入新记录,INSERT BLANK是在当前记录之后插入空记录。若表文件建立了索引,则插入的新记录按索引值进行排列。【例3-20】在表STUD.DBF的第2号记录前插入一条新记录,在第4号记录后插入一条新记录。USE STUD GOTO 2 INSERT BEFORE&在2号记录前插入一条新记录 GOTO 5&因已插入了一条新记录,原4号现为5号 INSERT&在4号记录后插入一条新记录目 录上一页下一页退 出2 2、INSERTINSERTS
25、QLSQL命令命令 格式一:格式一:INSERT INTO(,)VALUES(,)格式二:格式二:INSERT INTO FROM ARRAY/FROM MEMVAR 功能:功能:在表尾追加一个包含指定字段值的记录。参数描述:参数描述:指定要追加记录的表文件名。中可以包含路径,也可以是一个名称表达式。(,):指定要插入值的字段名。VALUES(,):新插入记录的字段值。FROM ARRAY:指定一个数组,数组中的数据将被插入到新记录中。FROM MEMVAR:把内存变量的内容插入到与它同名的字段中。说明:说明:目 录上一页下一页退 出1、如果指定的表没有打开,则VFP先在一个新工作区中以独占方
展开阅读全文