VFP第3章数据管理与维护-表的基本操作.ppt
《VFP第3章数据管理与维护-表的基本操作.ppt》由会员分享,可在线阅读,更多相关《VFP第3章数据管理与维护-表的基本操作.ppt(74页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1/27/20231表的操作包括创建表,修改表、修改记录、删除表、表的操作包括创建表,修改表、修改记录、删除表、删除记录、增加表记录、复制表文件等。删除记录、增加表记录、复制表文件等。Visual FoxProVisual FoxPro表表(Table)(Table)由由“表结构表结构”和和“数据数据”两部分构成。两部分构成。创建一个数据表,分两步进行:创建一个数据表,分两步进行:第第1 1步,设计和建立表结构;步,设计和建立表结构;第第2 2步,输入表数据。步,输入表数据。3.1数据表结构的基本操作数据表结构的基本操作1/27/20232一一.表结构的设计表结构的设计 例如:表学生例如:表学
2、生.DBF.DBF结构为:学生结构为:学生(学号学号 C(8),C(8),姓名姓名 C(8),C(8),性别性别 C(2),C(2),出生年月出生年月 D,D,入校总分入校总分 N(3),N(3),三好生三好生 L,L,特长特长 M,M,照片照片 G)G)。1/27/202331.1.字段属性:字段属性:字段名:字段名:以字母或汉字开头,由字母、汉字、数字以字母或汉字开头,由字母、汉字、数字和下划线组成,自由表字段名的长度最多和下划线组成,自由表字段名的长度最多1010个字符,个字符,数据表字段名的长度最多数据表字段名的长度最多128128个字符。个字符。字段类型:字段类型:常用的字段类型有常
3、用的字段类型有C C型、型、N N型、型、L L型、型、D D型、型、M M型和型和G G型等。型等。字段宽度:字段宽度:允许字段存储的最大字节数。允许字段存储的最大字节数。小数位数:小数位数:N N型字段有小数位数,当只取整数部分型字段有小数位数,当只取整数部分时,小数部分定义为时,小数部分定义为0 0。1/27/20234【说明】【说明】M M型型/G/G型字段宽度为型字段宽度为4 4个字节,用于存储一个指针个字节,用于存储一个指针(即即地址地址),该指针指向,该指针指向.FPT.FPT文件中存储备注型文件中存储备注型/通用型字通用型字段内容的地址。段内容的地址。备注型备注型/通用型内容存
4、放在与表同名、扩展名为通用型内容存放在与表同名、扩展名为.FPT.FPT的备注文件中。备注文件随着表文件的打开而自的备注文件中。备注文件随着表文件的打开而自动打开,如果备注文件被破坏或丢失,则表就再也打动打开,如果备注文件被破坏或丢失,则表就再也打不开了。不开了。1/27/20235二二.建立表结构建立表结构 1.1.命令方式命令方式命令命令1 1:CREATECREATE 功能:打开表设计器创建一个新表结构。功能:打开表设计器创建一个新表结构。(自由表自由表)命命令令2(SQL2(SQL命命令令):CREATE CREATE TABLETABLE(),),()(数据库表数据库表)参考参考P.
5、107P.107108108功能:直接创建一个新表结构。功能:直接创建一个新表结构。例:例:创建学生创建学生.DBF.DBF的表结构。的表结构。1/27/202362.2.菜单方式:菜单方式:例:例:用菜单方式创建表结构,表文件名为学生用菜单方式创建表结构,表文件名为学生.dbf.dbf。1/27/20237完成字段属性的设定后,单击完成字段属性的设定后,单击“确定确定”按钮,出现按钮,出现“现在输入数据记录吗?现在输入数据记录吗?”对话框,回答对话框,回答Y Y,进入记进入记录编辑窗口开始输入数据。回答录编辑窗口开始输入数据。回答N N,退出记录编辑窗退出记录编辑窗口,磁盘上保存了一个只有表
6、结构的数据表文件口,磁盘上保存了一个只有表结构的数据表文件“学学生生.dbf”.dbf”。1/27/20238三三.表数据的输入表数据的输入 字段名右边的字段名右边的“光带光带”表示该字段的宽度。表示该字段的宽度。1/27/20239编辑编辑M M型型/G/G型字段,型字段,M M型字段标识变为大写型字段标识变为大写MemoMemo,G G型字段标识型字段标识gengen变为大写变为大写GenGen。数据保存在备注文件。数据保存在备注文件.FPT.FPT中。中。MM型字段是一个可变的长字段型字段是一个可变的长字段(最大最大64KB)64KB),剪切、,剪切、复制、粘贴其中的文本。复制、粘贴其中
7、的文本。1/27/202310例:例:在学生在学生.DBF.DBF的的G G型字段照片中插入图形。型字段照片中插入图形。鼠标双击鼠标双击G G型字段,利用型字段,利用“编辑编辑”菜单的菜单的“插入插入对象对象”命令,在命令,在“插入对象的对话框插入对象的对话框”中选择图像。中选择图像。1/27/202311一一.表的打开与关闭表的打开与关闭对一个表操作之前,必须打开它。打开表文件是对一个表操作之前,必须打开它。打开表文件是将表从外存调入内存工作区。将表从外存调入内存工作区。结束表文件的操作后,要关闭表。关闭表就是将内结束表文件的操作后,要关闭表。关闭表就是将内存工作区的数据保存到表文件存工作区
8、的数据保存到表文件(外存外存)中,并释放该中,并释放该文件所占的内存空间。文件所占的内存空间。3.2表的基本操作表的基本操作1/27/2023121.1.打开表打开表命令:命令:USE USE 索引文件名表索引文件名表 功能:在当前工作区打开一个表文件功能:在当前工作区打开一个表文件打开表中如果含有打开表中如果含有M M型型/G/G型字段,与之相关的型字段,与之相关的.FPT.FPT文件也随之打开。文件也随之打开。任何时候,一个工作区只允许打开一个表。任何时候,一个工作区只允许打开一个表。打开表时,记录指针总是指向表的第一条记录。打开表时,记录指针总是指向表的第一条记录。修改表结构时,应选择打
9、开对话框修改表结构时,应选择打开对话框“独占独占”选项,选项,否则,该数据文件不可修改。否则,该数据文件不可修改。1/27/202313界面操作方式界面操作方式“文件文件”“打开打开”选择表名。选择表名。利用数据工作期命令打开表。利用数据工作期命令打开表。1/27/2023142.2.关闭表关闭表USE USE 关闭当前工作区表关闭当前工作区表CLERA ALL CLERA ALL 关闭所有打开表,并释放内存变量,关闭所有打开表,并释放内存变量,但不释放系统变量。但不释放系统变量。CLOSE ALL CLOSE ALL 关闭所有打开文件,但不释放内存。关闭所有打开文件,但不释放内存。CLOSE
10、 DATABASE ALL CLOSE DATABASE ALL 关闭指定数据库中的表关闭指定数据库中的表和自由表。和自由表。CLOSETABLES ALL CLOSETABLES ALL 关闭表关闭表 1/27/202315利用数据工作期命令关闭表利用数据工作期命令关闭表QUIT QUIT 关闭所有文件,并退出关闭所有文件,并退出Visual FoxProVisual FoxPro。菜单方式:菜单方式:“文件文件”“”“退出退出”命令,或单击命令,或单击程序窗口的关闭按钮,通过退出程序窗口的关闭按钮,通过退出Visual FoxProVisual FoxPro来来关闭表。关闭表。1/27/2
11、02316二、修改表结构二、修改表结构1.1.利用表设计器:利用表设计器:1/27/2023172.2.利用命令修改表结构利用命令修改表结构命令:命令:MODIFY STRUCTUREMODIFY STRUCTURE提示:提示:使用命令方式修改表结构时,表文件必须使用命令方式修改表结构时,表文件必须事先打开。事先打开。1/27/202318修改表结构时,应注意几个问题:修改表结构时,应注意几个问题:修改字段类型,原数据信息全部丢失;减少字段修改字段类型,原数据信息全部丢失;减少字段宽度,原数据中超宽部分丢失;删除字段,原数据宽度,原数据中超宽部分丢失;删除字段,原数据信息全部丢失。信息全部丢失
12、。新增加的字段数据全部为空。新增加的字段数据全部为空。修改表结构,将产生扩展名为修改表结构,将产生扩展名为.BAK.BAK的备份文件。的备份文件。利用命令利用命令LIST STRUCTURELIST STRUCTURE可以显示表结构。可以显示表结构。总计字段总计字段=各字段字节数各字段字节数+1+11/27/202319三三.记录定位记录定位表文件中,任何时候只有一条记录是当前可操作表文件中,任何时候只有一条记录是当前可操作对象,这条记录称为对象,这条记录称为“当前记录当前记录”。打开表文件,记录指针总是指向第一条记录。将打开表文件,记录指针总是指向第一条记录。将记录指针移向指定操作的记录,叫
13、记录指针移向指定操作的记录,叫:记录定位。记录定位。记录定位分为记录定位分为“绝对定位绝对定位”和和“相对定位相对定位”。1/27/2023201.1.绝对定位绝对定位命令命令1 1:GO GO 命令命令2 2:GO TOPGO TOP命令命令3 3:GO BOTTOMGO BOTTOM菜单方式:打开表,利用菜单操作进行记录定位。菜单方式:打开表,利用菜单操作进行记录定位。1/27/202321例:例:记录指针绝对移动示例。记录指针绝对移动示例。USE USE 学生学生?RECNO()?RECNO()当前记录的记录号为当前记录的记录号为1 1GO 4 GO 4 指针定位到第指针定位到第4 4条
14、记录条记录?RECNO()?RECNO()当前记录的记录号为当前记录的记录号为4 4。GO BOTTOM GO BOTTOM 指针定位到记录尾指针定位到记录尾(最后最后1 1条记条记录录)?RECNO()?RECNO()显示最后一条记录的记录显示最后一条记录的记录号。号。GO TOP GO TOP 指针定位到记录首指针定位到记录首(第第1 1条记录条记录)?RECNO()?RECNO()显示首记录的记录号显示首记录的记录号USE USE 1/27/2023222.2.相对定位相对定位 命令命令:SKIPn:SKIPn 菜单方式菜单方式:打开表,利用菜单操作进行记录定位。打开表,利用菜单操作进行
15、记录定位。功能功能:将记录指针从将记录指针从当前记录位置开始当前记录位置开始移动移动n n个位置。个位置。n0n0时,指针向下移动时,指针向下移动n n个位置;个位置;n0n0时,指针向上移动时,指针向上移动n n个位置;个位置;省略省略n n时,指针向下移动一个位置。时,指针向下移动一个位置。1/27/202323例:例:记录指针相对移动示例。记录指针相对移动示例。USEUSE学生学生?RECNO(),BOF()?RECNO(),BOF()当前记录号为当前记录号为1 1,.F.F.SKIP 5 SKIP 5 指针相对定位到指针相对定位到6 6号记录号记录SKIP-3 SKIP-3 指针定位指
16、针定位3 3号记录号记录SKIP SKIP 指针定位到指针定位到4 4号记录号记录区别文件头区别文件头(BOF)(BOF),文件尾,文件尾(EOF)(EOF),记录首,记录首(TOP)(TOP),记录尾记录尾(BOTTOM)(BOTTOM)。BOF=TOP-1BOF=TOP-1EOF=BOTTOM+1EOF=BOTTOM+1 1/27/202324四四.记录的显示记录的显示1.1.显示记录命令显示记录命令 命令:命令:DISPLAY|LISTFIELDSDISPLAY|LISTFIELDSFOR/WHILEFOR/WHILEOFFTO PRINTOFFTO PRINT功能:显示表中指定范围内、
17、满足条件的记录,或功能:显示表中指定范围内、满足条件的记录,或指定记录送至指定目的地。指定记录送至指定目的地。1/27/2023252.2.浏览窗口浏览窗口命令:命令:BROWSE FIELDSBROWSE FIELDSFORFOR 菜单:文件菜单:文件打开打开表表显示显示浏览浏览 1/27/202326BROWSEBROWSE有有2020多个命令子句。多个命令子句。浏览窗口有编辑和浏览两种格式。浏览窗口有编辑和浏览两种格式。一窗两区:一窗两区:1/27/202327五五.复制文件复制文件从表文件中选取某些记录或某些字段构成一个新表,从表文件中选取某些记录或某些字段构成一个新表,叫叫“表的复制
18、表的复制”;从表文件中只选取某些字段构成一;从表文件中只选取某些字段构成一个新的表结构,叫个新的表结构,叫“表结构的复制表结构的复制”。1.1.复制任何类型的文件复制任何类型的文件格式:格式:COPY FILE COPY FILE TO TO 2如果如果 1是表文件,则须关闭该表文件后再是表文件,则须关闭该表文件后再复制。复制。1和和 2均可使用通配符均可使用通配符?、*。1/27/202328例:例:USEUSECOPY FILE COPY FILE 学生学生.DBF TO.DBF TO 学生情况学生情况.DBF.DBFCOPY FILE COPY FILE 学生学生.FPT TO.FPT
19、TO 学生情况学生情况.FPT.FPT 或:或:COPY FILE COPY FILE 学生学生.*TO.*TO 学生情况学生情况.*.*COPY COPY FILE139.prgTO139_1.prgFILE139.prgTO139_1.prg1/27/2023292.2.复制表文件复制表文件从一个表复制得到另一个表或其它文件从一个表复制得到另一个表或其它文件 命令:命令:COPY TO COPY TO 范围范围FORFORFIELDS FIELDS 例:例:复制表文件示例。复制表文件示例。USE USE 学生学生COPY TO XS1COPY TO XS1LISTLISTUSE XS1US
20、E XS11/27/202330USE USE 学生学生COPY TO XSH2 FIELDS COPY TO XSH2 FIELDS 学号学号,姓名姓名,性别性别 FOR FOR 三好生三好生USE XSH2USE XSH2LISTLIST1/27/202331例:例:将将XSCJ.DBFXSCJ.DBF中学号中学号,姓名姓名,微机基础和微机基础和XSDA.DBFXSDA.DBF中该学生的奖惩情况复制到中该学生的奖惩情况复制到XSNX.DBFXSNX.DBF中。中。SELE 1SELE 1USE XSCJUSE XSCJSELE 2SELE 2USE XSDAUSE XSDASELE 1SE
21、LE 1COPY TO XSNX FIELDS COPY TO XSNX FIELDS 学号学号,姓名姓名,微机基础微机基础,B.,B.奖惩情况奖惩情况 FOR FOR 学号学号=B.=B.学号学号SELE 3SELE 3USE XSNXUSE XSNXLISTLIST1/27/202332(3)(3)复制表结构复制表结构命令命令:COPY STRUCTURE TO COPY STRUCTURE TO FIELDSFIELDS命令执行后,新表中只有表结构,没有记录。命令执行后,新表中只有表结构,没有记录。1/27/202333例:例:由学生由学生.dbf.dbf复制得到新表复制得到新表xsh3
22、xsh3,该表结构包含,该表结构包含学号学号,姓名姓名,性别性别,出生年月出生年月4 4个字段。个字段。USE USE 学生学生COPY STRU TO xsh3 FIELDS COPY STRU TO xsh3 FIELDS 学号学号,姓名姓名,性别性别,出生出生年月年月USE xsh3USE xsh3LIST STRULIST STRU1/27/202334六六.表数据的修改表数据的修改1.1.记录的插入和追加记录的插入和追加 插人新记录插人新记录格式格式:INSERTBEFOREBLANKINSERTBEFOREBLANK例:例:USE USE 学生学生GO 4GO 4INSERT BE
23、FORE BLANKINSERT BEFORE BLANK1/27/202335追加新记录追加新记录APPENDAPPEND命令命令格式:格式:APPEND BLANKAPPEND BLANK键盘操作命令:键盘操作命令:YY界面操作方式:表菜单界面操作方式:表菜单“追加新记录追加新记录”命令命令追加一条新记录。追加一条新记录。1/27/202336INSERT-SQLINSERT-SQL命令命令(参考参考P.111)P.111)格式格式1 1:INSERT INTO INSERT INTO 表名表名(字段名字段名1,1,字段名字段名2,)VALUES(2,)VALUES(表达式表达式1,1,表
24、达式表达式2,)2,)功能:在表尾追加一条新记录,把表达式值直接馈功能:在表尾追加一条新记录,把表达式值直接馈入指定字段名中。入指定字段名中。1/27/202337例:例:在学生在学生.DBF.DBF表中末尾追加表中末尾追加1 1条记录。条记录。INSERT INTOINSERT INTO 学生学生(学号学号,姓名姓名,性别性别,出生年月出生年月,入校入校总分总分,三好生三好生)VALUESVALUES(s0201111,(s0201111,唐日新唐日新,女女,CTOD(09/11/1984),555,.T.),CTOD(09/11/1984),555,.T.)1/27/202338格式格式2
25、 2:INSERT INTO INSERT INTO 表名表名 FROM ARRAY FROM ARRAY 数组名数组名|内内存变量存变量功能:将数组功能:将数组/内存变量值追加到当前记录尾部。内存变量值追加到当前记录尾部。例:例:DIME ASD(3)DIME ASD(3)ASD(1)=98129123ASD(1)=98129123ASD(2)=ASD(2)=李林李林 ASD(3)=ASD(3)=女女 INSERT INTO XUESGENG FROM ARRAY ASDINSERT INTO XUESGENG FROM ARRAY ASD1/27/202339APPEND FROM APP
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VFP 数据管理 维护 基本 操作
限制150内