VisualFoxPro数据库、数据表命令操作.ppt_第1页
VisualFoxPro数据库、数据表命令操作.ppt_第2页
VisualFoxPro数据库、数据表命令操作.ppt_第3页
VisualFoxPro数据库、数据表命令操作.ppt_第4页
VisualFoxPro数据库、数据表命令操作.ppt_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第四讲 Visual FoxPro数据库、数据表命令操作,邵明东 学时:2节,教学内容,4.1 建立项目 4.2 Visual FoxPro数据库及其建立 4.3 数据表操作命令 4.4 数据表记录的浏览与显示 4.5 记录定位 4.6 表记录操作 4.7 自由表 4.8 统计与汇总 4.9 数组与数据表记录交互操作,教学难点及教学目标,重点及难点 数据表记录操作命令 记录定位 表记录的查询与浏览 统计与汇总 数组与数据表记录交互操作 教学目标 掌握数据库和数据表操作命令 掌握数据表记录的显示与检索 熟悉统计与汇总 熟悉数组与数据表记录交互操作的使用方法,4.1 建立项目,4.1.1 项目简介

2、 1.Visual FoxPro 的项目是文件、数据、文档和 Visual FoxPro 对象的集合。 2.项目管理器是 Visual FoxPro 中处理数据和对象的主要组织工具,是系统“控制中心”。 3.若要处理项目中某一特定类型的文件或对象,可选择相应的选项卡。在建立表、数据库、查询、表单、报表以及应用程序时,可以用“项目管理器”来组织和管理文件。,项目管理器的选项卡,(1)数据选项卡:包括项目中的所有数据、自由表、查询和视图。 (2)文档选项卡:包括项目中的所有输入界面(表单)和输出界面(报表、标签)。 (3)类选项卡:包括开发人员使用和自己设计的类。 (4)代码选项卡:包括扩展名为.

3、prg、.app的程序和函数库API Libraries。 (5)其它选项卡:包括文本文件、菜单、其它文件。 (6)全部选项卡:包括以上所有内容。,项目管理器窗口,4.1.2 项目的建立及打开,建立项目 命令 Create Project projectname|? 功能 建立一个项目名为projectname的项目 系统自动建立一个.pjx的项目文件和一个.pjt的项目备注文件 打开项目 命令 Modify Project projectname|? 双击扩展名为.pjx的项目文件 功能 打开项目文件,进行数据、文件的组织管理,4.2 Visual FoxPro数据库及其建立,4.2.1 基

4、本概念 Visual FoxPro数据库是一个逻辑上的概念和手段,通过一组系统文件将相互联系的数据库表及其相关的数据库对象统一组织和管理 数据库表是以.dbf为扩展名的文件,简称表 建立数据库时,将建立VFP数据库管理系统管理数据库的三个文件: 扩展名为.dbc的数据库文件 扩展名为.dct的数据库备注(Memo)文件 扩展名为.dcx的数据库索引文件,4.2.2 建立与打开数据库,建立数据库 命令格式: CREATE DATABASE DatabaseName|? 命令功能 创建一个数据库。 数据库建立后处于打开状态 参数介绍: DatabaseName给出要建立的数据库名称 不指定数据名称

5、或使用问号则弹出对话框请用户输入数据库名称 如果系统设置Set Safety Off,则如果指定的数据库名已经存在,则直接覆盖 如果系统设置Set Safety Off,则出现覆盖提示对话框,打开数据库命令,命令格式 OPEN DATABASE 数据库名|? EXCLUSIVE|SHARED NOUPDATE VALIDATE 功能 打开指定的数据库 若没有指定数据库名,带“?”,将显示可以打开的数据库,由用户选择确认。,使用命令打开数据库设计器,语法格式: Modify database DatabaseName|?NowaitNoedit 选项: DatabaseName:给出要修改的数据

6、库名,使用问号”?”或省略参数则打开“打开”对话框 Nowait:该选项只在程序中使用,在交互使用的命令窗口中无效。其作用是在数据库设计器打开后程序继续执行 Noedit:使用该选项中是打开数据库设计器,而禁止对数据库进行修改,4.2.3 删除数据库,命令 Delete Database DatabaseName|?DeletetablesRecycle 功能 指定Deletetables则在删除数据文件的同时从磁盘上删除该数据库所含的表(dbf文件) 指定Recycle将删除的数据库文件和表文件等放入Windows的回收站中,WORKHELPER 办公助手提供,4.3 数据表操作命令,创建数

7、据表命令 Create TableName 打开数据表命令 Use TableName 关闭打开的数据表命令 Use 修改数据表结构命令 Use Studinfo Modify Structure,WORKHELPER 办公助手提供,4.3.1 使用命令建立数据表,操作步骤 设置工作目录 打开数据库 建立数据表 如: Set Default To D:LN Open Database StudScoreDB Create StudInfo,WORKHELPER 办公助手提供,创建表示例(StudInfo),StudInfo(学生信息表) StudInfo(StudNo,StudName,Stu

8、dSex,StudBirthDay,ClassID),表设计器的使用,输入字段名,选择字段类型,输入字段长度,格式:是一个输出掩码,决定字段在表单、浏览窗口等界面的显示风格,输入掩码是字段的一种属性,用以限制或控制用户输入的格式。如:规定教师的编号字母T和1到4位数字,则掩码为T9999,标题用于字段显示时的内容,不指定标题则显示字段名,通常字段名用英文或缩写,则指定标题使界面友好!,字段有效性属于完整性约束内容,以后再介绍,添加注释便于以后对数据库进行维护,命令:Create StudInfo,与表相关的内容及概念,1.字段名 关系的属性名或表的列名 表的各列名不能同名 字段名命名规范: 自

9、由表字段名最长为10个字符 数据库表字段名最长为128个字符 字段名必须以字母或汉字开头 字段名可以由字母、汉字、数字和下划线组成 字段名中不能包含空格 2.字段类型和宽度 字段的数据类型决定存储在字段中的值的数据类型 数据类型通过宽度限制可以决定存储数据的数量或精度,与表相关的内容及概念,3.空值 NULL选项,表示是否允许字段为空值。 空值是缺值或还没有确定值,不能理解为任何意义的数据 与空(或空白)字符串、数值0等具有不同的含义 4.字段有效性组框 定义字段的有效性规则、违反规则时的提示信息和字段的默认值 5.显示组框 格式:是一个输出掩码,决定字段在表单、浏览窗口等界面的显示风格 输入

10、掩码是字段的一种属性,用以限制或控制用户输入的格式。如:规定教师的编号字母T和1到4位数字,则掩码为T9999 标题用于字段显示时的内容,不指定标题则显示字段名,通常字段名用英文或缩写,则指定标题使界面友好! 6.字段注释 添加注释便于以后对数据库进行维护,输入数据表字段,输入记录对话框,在表设计器中,定义完字段名、类型、宽度后,单击确定按钮,会显示“现在输入数据记录吗? ”提示框。 单击“ 是(Y)”按钮,进入输入记录操作;单击“ 否(N)”按钮,暂不输入记录,建立的数据库是一个空表,还没有数据记录的数据库表。,输入记录对话框,在记录输入操作窗口中,显示表中的字段名 当前字段名后面有一条光带

11、,表示在此输入字段的数值 输入数值后,按Tab键或Enter键光标移向下面一个字段的光带 用户按顺序输入各个字段的数值,当输入完一个记录的所有数值后,进入下一个记录的数据输入。 记录输入结束后,单击窗口右上角的“关闭”按钮或按Ctrl+W组合键,关闭窗口。 输入备注字段数据时,首先双击该字段或按Ctrl+PageDown组合键,进入文本编辑窗口,输入文本内容,输入结束按Ctrl+W组合键,关闭窗口,返回记录输入操作窗口。,4.3.2 修改表结构,Use StudInfo Modi Stru,显示表的结构命令,命令: LIST STRUCTURE TO PRINTER | TO FILE 命令功

12、能 显示当前数据库表的结构,包括字段定义数据、记录数、更新时间等相关信息 例:Use StudInfo List Stru,4.4 数据表记录的浏览与显示,4.4.1 使用Browse浏览记录 命令 browse 功能 浏览器窗口中可以进行浏览表中的数据、添加、删除和修改表中的记录等操作。 Use StudInfo Browse Browse NoModify Browse All for studno99070470,浏览数据库表记录,Use StudInfo Browse NoModify,表中记录前带有“”符号的,表示该记录为当前记录。,查询记录(BROWSE),命令 BROWSE 范围

13、 条件 NOMODIFY 功能 显示符合条件的记录 范围: All:全部数据 REST:当前记录和以后的全部记录 NEXT N:当前记录和以后的n-1条记录 条件: For 逻辑条件:FOR StudSex=男 OR StudNo=99070470 示例: USE STUDINFO BROSWE ALL FOR StudNo=9907470,2修改记录,Use StudInfo Browse,将光标定位在要修改的记录和字段值上,直接输入数据,修改即可,4.4.2 表记录显示,命令: LISTDISPLAY FIELDS FOR OFF TO PRINTER PROMPT | TO FILE 命

14、令功能: 显示当前数据库表指定范围内所有满足条件的记录。 LIST 命令为连续显示命令执行结果; DISPLAY命令分屏显示 范围 All:所有记录 Rest:从当前指针记录开始,后面的记录,包括当前记录 Next n:从当前指针记录开始,后面的n-1记录,包括当前记录 FOR条件:显示满足条件的记录,记录显示命令使用示例,OPEN DATABASE StudScoreDB USE StudInfo LIST & 或使用命令:DISPLAY ALL DISPLAY ALL FOR StudSex=男,表记录显示示例,Use StudInfo List ALL Go 2 List rest Go

15、 2 List next 2 List all For StudNo=99070470 Go top Display All,4.5 记录定位,4.5.1 记录绝对定位 命令格式为: GO/GOTO | TOP | BOTTOM 命令功能 将记录指针直接定位到指定的记录。 GOTO和GO命令是等价的 TOP:首记录 Bottom:尾记录,4.5.2 记录相对定位,命令: SKIP n 命令功能 以当前记录位置为基准,将记录指针向前或向后移动,指针移动记录个数由数值 n来确定。 n是正整数,则向表尾方向移动; n是负整数,则向表头方向移动; 默认数值是1,则向表尾方向移动一个记录。,4.5.3

16、条件定位,命令: LOCATE FOR 命令功能 将记录指针定位在指定范围内满足条件的第一条记录上 如果没有满足条件的记录则指针指向文件结束位置。如果缺省范围,指所有记录。 指针定位成功后,如果要使指针指向下一条满足条件的记录,应使用CONTINUE命令。 可以使用函数FOUND()判断是否找到了满足条件的记录。如果有满足条件的记录,该函数返回真(.T.),否则返回假(.F.)。,4.5.4 与记录定位相关的系统测试函数,(1)表文件尾测试函数: EOF ( | ) (2)表文件首测试函数: BOF( | ) (3)记录号测试函数: RECNO(|) (4)记录个数测试函数: RECCOUNT

17、(|) (5)记录删除测试函数: DELETED(|),记录定位示例,USE studinfo GO 3 & 记录指针指向3号记录 DISPLAY & 显示3号记录的数据 ? RECNO( ) & 显示结果为:3 ,即当前记录指针仍指向3号记录 ? BOF( ) & 显示结果为:.F.,4.6 表记录操作,4.6.1 记录的追加、插入与删除 1追加记录 命令:APPEND 命令功能 在当前表的尾部追加记录,交互输入新记录的数据 一次可以连续输入多条记录。 可以使用 箭头移动光标 按键结束输入 2追加一条空白记录 命令:APPEND BLANK 命令功能 在当前表的尾部增加一条空白记录 可以用E

18、DIT、CHANGE或BROWSE命令交互修改空白记录的值,或用REPLACE命令直接替换该空白记录的值。 3插入记录 命令:INSERT BEFORE BLANK,记录插入示例,USE StudInfo GO 6 INSERT BLANK & 在6号记录后面插入空白记录 GO 6 & 记录指针重新指向6号记录 DISPLAY NEXT 4 APPEND,4.6.2 记录的编辑、修改及替换,1单个记录的编辑修改 命令: EDIT /CHANGE FIELDS FOR 命令功能 在指定范围内对满足条件的记录的指定的字段进行编辑修改。 的默认值是当前记录。 2记录替换 命令: REPLACE WI

19、TH , WITH FOR 命令功能 在指定范围内对满足条件的记录直接用的值替换字段的值,一次允许替换多个字段的值。 如果缺省参数,则只对当前记录作替换。,替换示例,USE StudInfo go 6 display replace studname with 李伟,studsex with 男 reco 6 Display &看看下面这条命令是什么意思 Replace all studname with 姓名+studname,4.删除记录,Visual FoxPro 6.0删除记录,分为逻辑删除记录和物理删除记录两种。 1记录的逻辑删除 命令:DELETE FOR 命令功能 对当前数据库表

20、中,指定范围内满足条件的记录作删除标记,如果缺省所有短语,则只给当前一条记录作删除标记。 2恢复逻辑删除记录 命令:RECALL FOR 命令功能 在当前数据库表中恢复指定范围内满足条件的记录,即去掉原来所带的记录删除标记,如果缺省短语,则只恢复当前一条记录。,记录的物理删除,3物理删除带有删除标记的记录 格式: PACK 命令功能 将所有带有删除标记的记录从表中被物理地删除,被物理删除的记录,不可以恢复。 4物理删除表中的全部记录 命令:ZAP 命令功能 物理删除表中的全部记录,即该表成为一个无记录的空表。,删除示例,USE 学生表 DELETE RECORD 7 & 逻辑删除7号记录 PA

21、CK & 物理删除7号记录 DELETE ALL FOR 性别女 LIST & 显示结果如下,所有女学生记录都带有删除标记,4.7 自由表,在Visual FoxPro中要创建一个自由表时,应关闭所有的数据库,如果当前没有打开数据库,则创建的表是自由表。 自由表是不属于任何数据库的表 可以将自由表添加到数据库中,使之成为数据库表;也可以将数据库表从数据库中移出,使之成为自由表。,WORKHELPER 办公助手提供,4.7.1自由表操作,1建立表 命令:CREATE 命令功能:创建一个数据库表,数据库表建立后,处于打开状态。 2打开表 命令:USE 命令功能:打开指定的数据库表,如果没有短语,则

22、关闭当前正在使用的数据库表。 3修改表结构 命令:MODIFY STRUCTURE 命令功能:打开指定的数据库表设计器,通过数据库表设计器选项卡中参数的重新设置,来修改数据库表结构。,4.7.2 数据库表与自由表的区别,数据库表与自由表相比,具有如下特点: 可以为数据库表中的字段指定标题和添加注释; 可以为数据库表的字段指定默认值和输入掩码; 可以为数据库表规定字段级规则和记录级规则; 数据库表可以使用长表名,在表中可以使用长字段名; 数据库表的字段有默认的控件类;数据库表支持主关键字、参照完整性和表之间的联系; 支持INSERT、UPDATE和DELETE事件的触发器。,4.8 统计与汇总,

23、4.8.1 统计记录个数 命令 COUNT FOR | WHILE TO 功能 统计当前数据库表中指定范围内满足条件的记录个数,可以将统计结果存入内存变量中。 示例 COUNT TO CMale All FOR StudSex=男,WORKHELPER 办公助手提供,4.8.2 对表中数值字段求和,对数值字段求和命令格式为: SUM 范围 TO | array FOR | WHILE 命令功能:在当前表中对指定范围内满足条件的N型字段按列求和 。将求和结果分别存入内存变量中。 命令中的默认值为 ALL。如果无 短语,则对数据库表中所有数值字段求和。,4.8.3 对表中数值字段求平均值,对数值字

24、段求平均值命令格式为: AVERAGE 范围 TO | array FOR | WHILE 命令功能:对当前数据库表中指定范围内满足条件的N型数值字段的按列求平均值,将平均值结果分别存入内存变量中。 命令中的默认值为 ALL。如果无 短语,则对数据库表中所有数值字段求平均值。,4.8.4 计算命令Calculate,命令 Calculate范围For|whileTo|array 功能 在打开的表中,分别计算的值。 可以由下列函数之一: 算术平均值AVG(N型表达式) 记录数函数CNT() 最大值函数MAX() 最小值函数MIN () 求和函数SUM(N型表达式) 另外还有STD、VAR、NPV

25、函数。,求最大值,命令 Calculate Max() To 范围 条件 功能 对指定条件的数字字段求最大值 示例 Calclulate Max(StudScore) To MaxScore All For StudNo=99070470,WORKHELPER 办公助手提供,求最小值,命令 Calculate Min() To 范围 条件 功能 对指定条件的数字字段求最小值 示例 Calclulate Min(StudScore) To MaxScore All For StudNo=99070470,4.8.5 排序命令,命令 Sort To On 范围 条件 功能 按指定的字段排序后,输出

26、到一个指定的新表中 排序字段列表:字段名1 /A | /D /C ,字段名2 /A | /D /C A表示升序,D表示降序,C表示排序不区分大小写 示例 Sort To SortStudScoreD ON STUDSCORE /D All For StudNo=99070470 Use SortStudScoreD Browse,4.8.6 分类汇总命令,命令 total on to 汇总文件名 范围For|whilefields 功能 汇总之前必须先按分类字段排序 汇总命令Total可对数据进行分类求和。 在当前表中,对指定范围内满足条件的记录按关键字段名分类汇总求和,并生成一个新表文件,新

27、表文件又称为汇总文件。 示例 Use StudScoreInfo Sort To XX On StudNo Total On StudNo TO StudSumScore Use StudSumScore Brow,4.9 数组与数据表记录交互操作,4.9.1 将当前数据库表中的记录复制到数组 命令格式1:SCATTER FIELDS MEMO TO BLANK 命令功能: 将当前数据库表的当前记录中从第一个字段内容开始,依次复制到数组名的数组元素中。 命令说明 如果不使用FIELDS短语指定字段,则复制除备注型和通用型之外的全部字段。 使用FIELDS短语,则按FIELDS里的字段顺序依次复制。 使用MEMO短语,则同时复制备注字段。 使用BLANK短语,则产生一个空数组,各数组元素的类型和大小与表中当前记录的对应字段相同,WORKHELPER 办

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论