《表的基本操作》PPT课件.ppt_第1页
《表的基本操作》PPT课件.ppt_第2页
《表的基本操作》PPT课件.ppt_第3页
《表的基本操作》PPT课件.ppt_第4页
《表的基本操作》PPT课件.ppt_第5页
已阅读5页,还剩77页未读 继续免费阅读

下载本文档

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

文档简介

第4章表的基本操作 主讲教师 张琳制作时间 2013 03 表的基本操作 教学安排 教学目标掌握表的建立 修改和记录的输入掌握表的打开 关闭及表的各种操作掌握表的排序和索引掌握多表操作重点难点分析表的基本操作 表的索引和排序 多表操作学时安排4学时 理论 4学时 实践 表的基本操作 本章内容 表的建立与修改记录的输入表的基本操作表的排序与索引多工作区操作 作业 表的基本操作 4 1表的建立与修改 表的相关概念表结构的创建表结构的显示 修改和复制 本节内容 学生档案表 表的基本操作 4 1 1表的相关概念 VisualFoxPro的数据存储在表中 表文件的扩展名为 DBF VisualFoxPro的表有两种类型 自由表和数据库表 二维表组成 表结构和记录 表结构由若干字段组成 一列称为一个字段 一行称为一条记录 1 表 字段 记录 表的基本操作 表结构由字段决定 字段是描述表文件的数据项 也就是表格中的列 如 学号 姓名 等 字段组成 由字段名 字段类型 字段宽度 小数位数及是否允许为NULL 空 值等内容组成 字段名表中的每个字段都是有名称的 比如 人才档案 表中的 编号 字段 编号 即为这个字段的字段名 字段名可以是以字母或汉字开头 由汉字 字母 数字或下划线组成 自由表中的字段名不能超过10个字符 数据库表字段名长度不能超过128个字符 字段名中不接受空格字符 2 字段 注意 字段名一般命名为英文缩写或汉语拼音缩写 表的基本操作 字段类型字段的数据类型应与存储其中的数据类型相匹配 VisualFoxPro支持十三种不同类型的数据 每种均有不同的目的和用途 应为表中的每个字段选取最适合于该字段数据用途的数据类型 这些类型有 字符型 货币型 数值型 浮点型 整形 日期型 逻辑型 通用性 备注型等 字段的类型选择 表的基本操作 字段宽度字段宽度是表为字段预留存储空间的长度 它规定了字段能够输入数据的最大字符数 对于字符型 数值型和浮点型字段 应根据实际需要设置适当的宽度 逻辑型字段的宽度为1 日期型字段的宽度为8 备注型和通用型字段宽度均为4个字节 它存放的是一个指向备注文件的指针 其实际数据存放在一个扩展名为 FPT的与表文件同名的备注文件中 表的基本操作 小数位数对于数值型 浮点型和双精度型字段还可以设置小数位 小数位 正负号在字段宽度中都要占用一位 故如果一个字段中含有小数位 其字段宽度应该是整数位数加小数位数再加一位 小数点 例如 一个学生的最高成绩为100分 如果成绩可以准确到0 5分 则字段宽度应该是5位 表的基本操作 一条记录是一行数据的所有字段值的集合 表有若干记录组成 3 记录 学生档案表 记录 记录集合 表的基本操作 4 1 2表结构的创建 VisualFoxPro提供了三种建立对象的方法 向导 设计器 命令 三种方法各有特点 可单独使用 也可混合使用 通常用 向导 生成对象 用 设计器 加工对象 在应用程序中用命令来管理对象 同样 建表也可以使用这三种方法 既可以使用 表设计器 也可以使用 表向导 还可以通过在命令窗口输入命令的方法来建表 表的基本操作 1 利用表设计器 打开 表设计器 项目管理器 自由表 新建 表 Create为表指定名字和位置定义表结构 定义字段名 类型 宽度 小数位数 完成设计VFP中保存的表文件的扩展名为 dbf 当第一次创建表时 VFP先创建表的 dbf文件 如果表中包含了备注型字段或通用型字段 VFP自动创建与表相关联的 fpt文件 以自由表创建为例 介绍表的建立方法 表的基本操作 创建表结构 student dbf 示例 表的基本操作 2 利用表向导 向导是一个交互式程序 由一系列对话框组成 表向导能够基于典型的表结构创建表 在有样表可供利用的条件下 可以使用表向导来定义表结构 允许用户从样表中选择满足需要的字段 也允许用户在执行向导的过程中修改表的结构和字段 利用表向导保存生成的表之后 用户仍可启动表设计器来进一步修改表 表的基本操作 4 1 3表结构的显示 修改与复制 表结构显示语句DISPLAY LISTSTRUCTURE修改表结构MODIFYSTRUCTURE复制表结构COPYSTRUCTURETO复制表结构及记录COPYTO 表的基本操作 4 2记录的输入 浏览方式编辑方式命令方式 本节内容 表的基本操作 4 2 1浏览方式 通过 文件 打开 命令打开表 选择 显示 浏览 命令 出现 浏览 窗口 选择 表 追加方式 命令 在空白记录上输入数据日期型数据按 月 日 年 格式输入 逻辑性可以输入 T t Y y 4个字母之一 备注型字段双击该记录的备注字段 进入备注字段的编辑窗口 编辑完后按 或单击窗口的 关闭 按钮结束并保存输入的新内容 通用型字段双击进入编辑窗口 可通过剪贴板或执行 编辑 插入对象 菜单命令来插入图形或其他对象 在浏览方式下输入记录就像填写二维表 直观 操作步骤如下 表的基本操作 4 2 2编辑方式 通过 文件 打开 命令打开表 选择 显示 编辑 命令 出现 编辑 窗口 选择 表 追加方式 命令 在空白记录上输入数据 编辑方式操作过程和浏览方式大致相同 只是显示方式不同 其操作过程如下 浏览方式 编辑方式 表的基本操作 4 2 3命令方式 追加命令APPEND BLANK 功能 在表尾增加一条或多条记录 说明 选Blank增加一条空白记录 插入新纪录INSERT BLANK BEFORE 功能 在当前记录后插入一条记录 说明 选BLANK增加一条空记录 选BEFORE在当前记录前增加 成批追加记录APPENDFROM 表的基本操作 4 3表的基本操作 表的打开与关闭浏览记录记录定位修改记录删除与恢复记录过滤数据 本节内容 打开关闭 记录显示 记录修改 记录删除 记录过滤 替换修改 表的基本操作 4 3 1表的打开与关闭 选择 文件 打开 命令 或单击工具栏上的 打开 按钮 1 使用 打开 对话框 打开位置 打开类型 表的基本操作 格式USE EXCLUSIVE SHARED 功能 打开指定的表文件 说明 使用 会打开指定的表文件 如果系统已经打开一个表 则先关闭已打开表 再打开指定表 使用 选项会出现 使用 对话框 要求用户选择一个表文件 选用EXCLUSIVE以 独占 方式打开的表文件 可以进行浏览 输入和编辑等操作 不允许别人再打开该文件 只选用USE关闭当前打开的表文件 2 使用命令方式 表的基本操作 语句一 USE功能 关闭当前工作区已打开的表文件 语句二 CLOSEALL功能 关闭所有工作区的所有各类型文件 同时释放内存变量 语句三 CLOSETABLES功能 关闭所有数据库中打开的表文件 语句四 CLEARTABLESALL功能 关闭所有表文件 3 表的关闭 表的基本操作 4 3 2浏览记录 在项目管理器 选择表 单击 浏览 按钮 打开表 选择 显示 浏览 命令 以二维表形式浏览选择 显示 编辑 命令 以编辑方式浏览 两种方式都可以边浏览 边修改 1 使用菜单命令浏览 表的基本操作 格式 LIST DISPLAY FIELDS FOR WHILE 功能 显示当前表中记录 说明 Field子句指定显示的字段 范围字句表示命令对表文件进行操作的记录范围 有4个短语 ALL 所有记录 NEXT 从当前记录开始的N条记录 RECORD 第N条记录 REST 从当前记录一直到最后 2 使用LIST命令显示记录 表的基本操作 说明 FOR条件语句显示符合条件的记录 while条件语句从当前记录开始显示符合条件的记录 到不符合条件的记录终止显示 使用OFF选项时 只显示记录内容不显示记录号 LIST与DISPLAY的区别 若范围和条件短语均缺省 LIST显示所有记录 DISPLAY只显示当前记录 若记录很多 一屏显示不下 LIST命令连续显示 DISPLAY命令分屏显示 并提示 按任意键继续 阅读完当前屏幕内容后按空格键或回车键继续显示其它内容 表的基本操作 显示命令示例 例4 1 执行 list 命令 例4 2 如果显示从第3条记录后面的4条记录 例4 3 显示所有男生的学号 姓名和性别 例4 4 显示所有非团员学生记录 不显示记录号 LIST 3LISTNEXT4 LISTFIELDSsno sname ssexFORssex 男 LISTFORNOTsmemberOFF 表的基本操作 格式Browse Fields For 功能 浏览显示表中记录 说明 范围 字段 条件子句的用法同LIST LIST命令显示在屏幕上 BROWSE命令以二维表形式显示 BROWSE命令有若干子句可以在浏览时禁止修改记录 NOEDIT 添加记录 NOAPPEND 锁定修改字段 FREEZE 等 3 使用BROWSE命令浏览记录 表的基本操作 浏览命令示例 例4 5 执行 BROWSE 命令 例4 6 浏览记录 但不能添加和删除记录 例4 7 浏览男生的学号 姓名和性别 例4 8 浏览显示所有记录 只允许修改年龄字段 BROWSE BROWSEALLNOAPPENDNODELETE BROWSEFIELDSsno sname ssexFORssex 男 BROWSEALLFREEZEsage 表的基本操作 4 3 3记录定位 表的逻辑结构表中第一条记录是首记录 记为TOP 最后一条记录是尾记录 记为BOTTOM 在第一条记录之前有一个文件起始标识 称为文件头BOF BeginningofFile 在最后一条记录的后面有一个文件结束标识 称为文件尾EOF EndofFile 记录指针可以在文件头尾之间自由移动 通过移动指针可以把指针定位在某个记录上 指针指向的记录是当前记录 1 记录指针 记录定位就是将记录指针移到某条记录上 使其成为当前记录 刚打开表文件时 记录指针总是指向第一条记录 表的基本操作 表的逻辑结构示意图 Top Bottom 记录指针 记录指针 当前记录 当前记录 表的基本操作 格式1 GO TO TOP BOTTOM格式2 GO TO 说明 GOTOP命令把指针定位在首记录GOBOTTOM命令把指针定位在末记录的值是正整数 指针定位在指定记录 2 用命令方式实现记录定位 举例 usestudentexclusivego5dispgobottomdisp 1 绝对定位 表的基本操作 格式 SKIP 说明 的值取正或负的整数 表示指针从当前记录开始移动多少条记录 的值大于零时指针向文件尾移动 小于零时指针向文件头移动 当缺省时表示1 2 相对定位 表的基本操作 格式 LOCATE FOR功能 将记录指针定位在满足条件的第一条记录上 说明 LOCATE命令可以和CONTINUE命令配合使用 LOCATE命令只能查找满足条件的第一条记录 CONTINUE可以用来继续查找满足条件的其它记录 CONTINUE必须在LOCATE命令之后使用 并且可以多次使用 直到指针到了表文件或指定范围末尾 可以使用Found 函数测试是否找到记录 3 条件定位 表的基本操作 条件定位示例 例4 9 查找并显示年龄等于20岁的学生记录 locateforsage 20 查找年龄等于20岁的第一位学生display 显示第4条记录内容continue 继续查找display 显示第6条记录内容continue 继续查找disp 没有记录显示 found 显示 F 没有找到记录 eof 显示 T 文件结束 表的基本操作 打开表 使其处于 浏览 状态 选择 表 转到记录 命令 出现窗口 3 菜单操作 表的基本操作 4 和表有关的测试函数 表的基本操作 4 3 4修改记录 编辑修改命令格式 EDIT CHANGE FIELDS FOR WHILE 浏览修改命令格式 BROWSE FIELDS FOR WHILE 1 手工修改记录命令 修改记录可以在浏览窗口或编辑窗口中以手工方式进行 也可以使用replace命令自动修改 表的基本操作 格式 REPLACE WITH WITH FOR WHILE 功能 用相应表达式的值更新指定字段的内容 说明 如果不选用范围和条件短语 则只修改当前记录 表达式的数据类型必须和字段的类型相同 2 自动替换命令 1 命令方式 表的基本操作 自动替换命令示例 例4 10 将所有学生年龄加1 usestudentreplaceallsagewithsage 1 例4 11 将赵丹的年龄改为20 usestudentreplacesagewith20forsname 赵丹 表的基本操作 以浏览方式打开表 选择 表 替换字段 打开 替换字段 对话框 2 菜单方式 替换字段 替换表达式 替换范围 替换条件 表的基本操作 4 3 5删除与恢复记录 1 在浏览窗口中删除记录 1 逻辑删除记录 记录删除 1 打删除标记 逻辑删除 2 彻底删除 物理删除 若不想删除可以去掉删除标记 单击记录左边的矩形区 显示为黑色已作删除标记 再次单击 矩形黑色区域显示为白色 去掉删除标记 表的基本操作 以浏览方式打开表 选择 表 删除 命令 打开 删除 对话框 2 通过删除对话框删除记录 删除范围 删除条件 表的基本操作 格式 DELETE FOR WHILE 说明 省略范围和条件 只给当前记录加删除标记 在浏览窗口删除标记为黑色矩形块 使用LIST命令时 有删除标记的记录前有 号 执行setdeleteon 默认off 有删除标记的记录不被处理 3 使用删除命令 例4 12 逻辑删除非团员的学生记录 usestudentdeletefornotsmemberbrows 表的基本操作 选择 表 彻底删除 命令 打开确认对话框 单击 是 按钮 2 物理删除记录 1 菜单方式 格式 PACK 2 命令方式 3 物理删除全部记录 格式 ZAP功能 物理删除当前表所有记录 不管记录是否带删除标记 该命令相当于执行 deleteallpack 表的基本操作 在浏览方式下 选择 表 恢复记录 命令 在 浏览 窗口中单击记录左边删除标记区的删除标记 4 记录恢复 1 菜单法与鼠标单击法 格式 RECALL FOR WHILE 说明 缺省所有子句只恢复当前记录 2 命令方式 例4 13 恢复逻辑删除非团员的学生记录 recallfornotsmember 表的基本操作 4 3 6过滤数据 1 命令方式 1 记录过滤 格式 SETFILTERTO 功能 设置当前表中访问记录的过滤条件 说明 缺省是取消过滤条件 选择条件表达式 则以后操作只对满足条件的那些记录起作用 使用FILTER 函数可以返回过滤表达式 表的基本操作 以浏览方式打开表 选择 表 属性 命令 打开 工作区属性 对话框 2 通过菜单命令 表的基本操作 1 命令方式 2 字段过滤 格式 SETFIELDSTO 功能 为当前表设置过滤字段 说明 使用SETFIELDSON OFF命令可以决定设置字段是否有效 ON状态时 只能显示筛选的字段 OFF表示取消字段表 恢复原来状态 SETFILDESTO会取消所有字段的显示 SETFILDESTOALL可以显示所有字段 表的基本操作 以浏览方式打开表选择 表 属性 命令 打开 工作区属性 对话框 2 通过菜单命令 表的基本操作 4 4表的排序与索引 排序索引的概念索引的建立索引的使用索引的删除索引查询 本节内容 无序 有序 表的基本操作 4 4 1排序 概念 根据表中某些字段 重新排列记录的次序 产生一个新表 排序后新表的记录按新的顺序排列 原来的表文件不发生变化 格式 SORTTOON A D C A D C 功能 根据排序字段产生排序文件 说明 ON子句中的字段名是排序字段 ON子句中可以使用多个字段名 选项 A和选项 D分别用来指定是升序还是降序 默认为升序排序 选项 C表示不区分字段值中字母的大小写 排序字段不能是备注型和通用型字 表的基本操作 排序示例 例4 9 对学生表按以下要求进行排序 先按年龄降序排序 年龄相同时则按学号升序排序 USEstudentSORTTOstu1ONsage D sno 原表student 排序后 按排序字段生成新表stu1 原表student仍保留 表的基本操作 4 4 2索引的概念 索引 是根据索引关键字的值进行逻辑排序 不改变记录的物理顺序 索引后会产生索引文件 索引文件 由索引关键字和记录号两个字段组成 所有关键字值按升序或降序排列 每个值对应原表中一个记录号 同排序的区别 排序生成一个新的表文件 新表记录顺序按排序字段发生变化 索引不生成表文件 原表记录顺序不变 索引会生成索引文件 记录索引后记录的逻辑顺序 1 基本概念 表的基本操作 索引示例 索引值记录号1 6241 6391 6551 67101 7321 7571 7581 8011 8031 826 物理顺序 记录的原始顺序 索引后 按身高建立升序索引 逻辑顺序 索引文件 表的基本操作 索引分为复合索引和单索引两类 其对应的索引文件的扩展名分别是 CDX和 IDX 复合索引又分为结构复合索引和非结构 独立 复合索引 2 索引的分类 早期版本所用 结构复合索引和非结构复合索引的不同点 结构复合索引的索引文件名与表同名 而非结构复合索引名由用户指定 结构复合索引文件随表的打开而自动打开 而非结构复合索引不能 VFP多用结构复合索引文件 表的基本操作 索引的功能是对数据表中的内容进行逻辑排序 以提高查询速度 索引的类型主索引 在指定字段或表达式中不允许出现重复值的索引可确保字段中输入值的唯一性 自由表没有主索引 候选索引 与主索引类似 也保证表中索引值的记录是唯一的 一个表只能建立一个主索引 一个表允许建立多个候选索引 普通索引 允许表中有重复索引值的记录 在一个表中可以加入多个普通索引 唯一索引 允许表中索引值的记录不唯一 但索引文件中不能有相同的索引值 即对索引值相同的记录 只有记录号最小的记录号才能存于索引文件中 这是为兼容旧版本而保留的一种形式 3 索引的功能和类型 表的基本操作 4 4 3索引的建立 格式 INDEXON索引表达式TO索引文件名 FOR 功能 建立一个扩展名为 IDX的单索引文件说明 单索引命令建立的都是升序索引 乃早期版本的索引文件 1 创建单索引文件 例4 10 对学生表姓名为关键字段建立索引文件xmidxINDEXONsnametoxmidx 表的基本操作 2 创建复合索引文件 基于一个字段基于多个字段 会生成与数据库同名的 CDX索引文件 多个字段要变成同一种类型 索引名可以修改 1 在表设计器中建立 表的基本操作 2 使用命令建立复合索引 格式 INDEXONTAG OF FOR ASCENDING DESCENDING UNIQUE CANDIDATE 功能 建立复合索引文件 说明 ASCENDING DESCENDING 用来指定某一索引表达式为升序还是降序 缺省时为升序 使用OF子句表示建立非结构复合索引 缺省时将建立结构化复合索引 使用UNIQUE子句表示建立唯一索引 如果多条记录具有相同的关键字段值 索引时只取其中的第一条记录 不选此项 索引时包括所有记录 使用CANDIDATE子句表示创建候选索引 表的基本操作 建立复合索引示例 例4 10 为表student dbf建立结构复合索引文件 usestudentIndexonsnotagxhcandidateIndexonsnametagxmcandidateIndexonssex DTOC sdate tagxbrqIndexonsagetagnldescending 表的基本操作 4 4 4索引的使用 主控索引定义 正在起作用的索引 使用哪个索引就是把该索引确定为主控索引 确定主控索引的方法菜单法 选择 表 属性 命令法 表的基本操作 格式1 USEORDER TAG ASCENDING DESCENDING 格式2 SETORDERTO TAG 功能 指定结构化复合索引文件的主控索引标记 说明 格式一在打开数据表的同时指定主控索引标识 其中TAG项可选可不选 格式二是在打开了数据表之后 指定主控索引标识 使用setorderto可以取消主控索引 显示原表顺序 ASCENDING DESCENDING 重新指定索引关键字表达式值的排列顺序 结构复合索引文件的使用 表的基本操作 结构复合索引文件使用示例 例4 12 结构复合索引文件使用方法示例 USEstudentORDERTAGxmDESCList 按姓名降序显示SETORDERTOTAGxhList 按学号升序显示SETORDERTOTAGxbrqList 按性别出生日期显示Setorderto 取消主控索引List 记录按物理顺序显示 表的基本操作 4 4 6删除索引 首先使用SETINDEXTO关闭索引文件 然后使用DELETEFILE删除索引文件 1 删除索引文件 2 删除索引标识 格式 DELETETAGall 功能 删除复合索引文件中的索引标记 说明 All删除所有索引标识 包括主索引 也可指定删除某个索引标识 表的基本操作 4 4 7索引查询 Locate命令是一个顺序查询命令 速度很慢 索引查询是在索引文件中进行的 查询速度很快 格式 FIND或SEEK功能 查找索引关健字值与指定条件匹配的第一条记录 说明 首先要打开数据表 并指定需要搜索的索引文件 FIND后面只能使用常量 一般用来查找字符型和数值型数据 SEEK后面使用表达式 使用字符常量时需要加定界符 FIND和SEEK命令找到了满足条件的记录后 函数FOUND 返回 T 否则返回 F 表的基本操作 索引查询示例 打开表 指定姓名索引为主控索引 表的基本操作 4 5多工作区操作 工作区数据工作期多表数据查询表的关联 本节内容 表的基本操作 工作区概念 实际上就是一块内存区域 VisualFoxPro系统通过它与磁盘上的表进行数据交换 在内存中 最多可以开辟32767个工作区 每个工作区只能打开一个表 工作区的命名 分别用1 2 3 4 32767 同时还可以使用工作区别名 用A B J共10个字母分别表示前10个工作区的别名 1 工作区编号和别名 4 5 1工作区 表的基本操作 格式 USE ALIAS 说明 不使用可选项 原表名就是它的别名 若使用可选项 则别名由ALIAS短语指定 2 表的别名 打开表的同时为表指定一个别名 例如 USEstudentaliasxs 为student表指定别名xs 表的基本操作 格式1 SELECT 格式2 USE IN0 说明 格式1先选择工作区 然后使用打开表命令打开表 格式2是在打开表的同时选择工作区 格式二中使用IN0选项表示选择当前没有使用的最小工作区 3 选择工作区 一个工作区同一时刻只能打开一个表 在一个工作区中打开另一个表时 将自动关闭原来已经打开的表 要同时打开多个表 就必须选择工作区 在不同的工作区打开数据表 表的基本操作 用户可以通过 数据工作期 窗口完成对多表的操作

温馨提示

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

评论

0/150

提交评论