




已阅读5页,还剩36页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2020 2 20 1 第3章数据库与表的创建与使用 2020 2 20 2 表记录数据输入 利用交互方式建立表结构后 若在出现输入记录询问对话框时按 是 按钮 则出现记录编辑窗口 供用户输入数据记录 以rsb dbf为例 则记录编辑窗口如图所示 在数据输入窗口中 光标首先停留在第一个记录的第一个字段上 输入相应的数据后 移动光标到其它字段并输入数据 依此方法完成一条记录的数据输入 重复上述操作 依次输入其它数据记录 3 3 5记录处理 2020 2 20 3 3 3 5记录处理 在浏览窗口中追加数据单击菜单栏 显示 浏览 选项 打开表记录窗口 再单击菜单栏 显示 追加方式 选项 可输入记录数据 2020 2 20 4 INSERT SQL命令INSERTINTO语句用于向表格中插入新的行 记录 命令格式INSERTINTO表名称VALUES 常量1 常量2 也可以指定所要插入记录的字段 INSERTINTOtable name 字段1 字段2 VALUES 常量1 常量2 其功能是将新记录插入指定表中 其中记录的字段1的值为常量1 字段2的值为常量2 INTO子句中没有出现的字段 新记录在这些字段上将取空值 3 3 5记录处理 2020 2 20 5 例将学生张成民的信息插入到S表中 INSERTINTOSVALUES 200915126 张成民 M 18 CS 例将一个新学生记录 学号 200915128 姓名 陈冬 性别 M 所在系 IS 年龄 l8 插入到S表中 INSERTINTOS SNO SNAME SEX SDEPT AGE VALUES 200915128 陈冬 M IS l8 在INTO子句中指出了表名S 指出了新增加的记录在哪些字段上要赋值 字段的顺序可以与CREATETABLE中的顺序不一样 VALUES子句对新元组的各字段赋值 字符串常数要用单引号 英文符号 括起来 3 3 5记录处理 2020 2 20 6 EPPEND命令追加记录在表的末尾添加一个或多个新记录 命令格式APPEND BLANK INnWorkArea cTableAlias 参数BLANK在当前表的末尾添加一个空记录 VisualFoxPro在发出APPENDBLANK命令时并不打开编辑窗口 可以使用BROWSE CHANGE或EDIT命令编辑新记录 INnWorkArea指定要添加新记录的表所在的工作区 INcTableAlias指定要添加新记录的表的别名 如果省略nWorkArea和cTableAlias 新记录将添加到当前选定工作区的表中 如果发出APPEND命令 空记录将添加到由nWorkArea或cTableAlias指定的工作区的表中 并且自动选定该表 3 3 5记录处理 2020 2 20 7 APPENDFROM使用该命令可以将其它文件 表文件 文本文件 Excel文件等 中的数据导入到当前工作区的表中 命令格式APPENDFROMFileName FIELDSFieldsFieldList FORlExpression DELIMTED XLS 其中DELIMTED说明用于追加文件为文本文件 XLS用于说明追加文件为Excel文件 缺省时说明追加文件为表文件 利用菜单命令 表 追加记录 3 3 5记录处理 2020 2 20 8 备注型与通用型字段输入备注型字段的输入 打开表后 在命令窗口执行browse命令 弹出browse窗口 在该窗口中 用鼠标双击字段区域中的 memo 即打开编辑窗口 可在该窗口中输入任意长的文字 输完后 关闭该编辑窗口 或按ctrl w结束保存 此时 可看到browse窗口中的备注字段的 memo 变为 Memo 第一个字母大写 表明备注字段中已包含内容 通用型字段的输入 通用型字段 如 职工档案 表中的 照片 中的数据用鼠标双击browse窗口中字段区域中的 gen 打开通用字段的编辑窗口 插入图像 波形声音 MIDI音乐 视频剪辑等多媒体内容 通用型字段中添加完图片后 gen 会变成 Gen 表明该通用字段中已经包含内容 3 3 5记录处理 2020 2 20 9 浏览窗口 P882 BROWSE FIELDSFieldList FORlExpression FREEZEFieldName NOAPPEND NODELETE NOEDIT NOMODIFY NOLGRID NOMODIFY TITLEcTitleText 参数FIELDSFieldList 指定显示在浏览窗口中的字段 这些字段以Fieldlist指定的顺序显示 在该字段列表中可包含其他相关表中的字段 在包含一个相关表的字段时 应在字段名前面放一个句号及相关表的别名 如果忽略FIELDS子句 表中的所有字段按其在表结构中出现的顺序显示 FORlExpression 指定一个条件 只有lExpression为 真 的记录才显示于浏览窗口 包含FOR子句使记录指针移向符合该条件的第一条记录 3 3 5记录处理 2020 2 20 10 FREEZEFieldName 允许在浏览窗口中只修改一个字段 使用FieldName指定该字段 其他字段可显示但不能编辑 NOAPPEND 禁止用户通过如下方式添加表记录 按CTRL Y键 或选择 表 菜单的 追加记录 命令 NODELETE 禁止在浏览窗口中为记录作删除标记 NOEDIT NOMODIFY 禁止用户修改表 NOEDIT等同于NOMODIFY 包含其中任何一个子句 用户可以浏览或搜索表 可以添加或删除记录 但不能编辑 TITLEcTitleText 以cTitleText指定的标题改写显示于浏览窗口标题栏中的默认表名或别名 否则 要浏览的表的名称或别名显示于标题栏中 3 3 5记录处理 2020 2 20 11 记录的筛选 P883 如果只想查看某一类型的记录 可以通过设置过滤器对 浏览 窗口中显示的记录进行限制 若要设置一个过滤器 可从 表 菜单中选择 属性 进入 工作区属性 对话框 单击 数据过滤器 文本框右边的带有 的 表达式生成器 按钮 进入筛选表达式生成器 例如想查看农林专业的学生 筛选就显得非常有用 3 3 5记录处理 2020 2 20 12 利用命令SETFILTER筛选命令格式 SETFILTERTO条件功能 设置条件过滤后 只有满足条件的记录才会显示 该命令不带任何选项 则清除过滤条件 不再对记录过滤 例use职工档案setfilterto性别 女 browsesetfiltertobrowseuse限制对字段的访问 P894 命令格式SETFIELDTO字段名表 3 3 5记录处理 2020 2 20 13 VisualFoxPro为每一个表都设置了一个指针 称为记录指针 VisualFoxPro通过记录指针来标识操作的记录对象 记录指针所指向的记录称为当前记录 记录定位就是将记录指针指向某个记录 使其成为当前记录 记录定位命令有绝对定位命令和相对定位命令2种 表刚打开时 记录指针指向第一个记录 1 绝对定位命令命令格式1 GO TO TOP BOTTOM功能 将记录指针定位在表的第一个记录或最后一个记录 命令格式2 GO TO 功能 将记录指针定位在指出的记录 记录指针定位 P89 3 3 5记录处理 定位命令仅仅是对记录指针进行定位的一种操作 它并不能显示定位的记录内容 如要显示 则需要使用并且只能使用Display命令 2020 2 20 14 文件头第1号记录第2号记录 记录结束标志 记录开始标志 记录指针 3 3 5记录处理 2020 2 20 15 例如 USErsb 打开rsb 当前记录为第一个记录 RECNO 显示记录号1GOBOTTOM 指针移动到最后一个记录 RECNO 显示最后一个记录的记录号GOTO4 指针移动到4号记录 RECNO 显示当前记录号42 指针移动到2号记录 RECNO 显示当前记录号2注 例中函数RECNO 返回当前记录的记录号 记录指针定位例子 3 3 5记录处理 2020 2 20 16 命令格式 SKIP 功能 从当前记录开始相对移动记录指针 说明 当为负值时 指针向文件头移动 当为正值时 指针向文件尾移动 缺省时默认为1 例如 USErsb 打开rsb 当前记录为第一个记录SKIP 1 指针向文件头移动1 RECNO BOF 显示1 T SKIP2 指针向文件尾移动2 RECNO BOF 显示3 F GOBOTTOM 当前记录为最后一个记录 RECNO EOF 显示最后一个记录的记录号 F SKIP 指针向文件尾移动1 RECNO EOF 显示最后一个记录的记录号 1 T BOF 和EOF 函数见表2 5逻辑型测试函数 相对定位命令 3 3 5记录处理 2020 2 20 17 顺序 直接 定位所谓顺序定位是指在表中从第一条记录开始 按照顺序搜索表 把记录指针定位在满足条件的第一条记录上 顺序定位适合于复杂条件或小型表的定位 命令格式 1 找首条 LocateFor 范围 2 找后续 继续查询 Continue 按照Locate指定的条件继续定位下一条记录 3 3 5记录处理 2020 2 20 18 参数说明 Locate是直接在表文件 不需要对表进行排序或索引 中 按照 范围 For从表文件的头至尾顺序来定位符合条件的第一条记录 如果存在多条满足For的记录 可以使用Continue命令继续定位下一条记录 Continue命令的作用是从当前相匹配记录的下一条记录位置开始 继续执行由Locate命令指定的范围 满足条件的下一条记录的定位操作 Continue只能和Locate配套使用 不能单独使用 3 3 5记录处理 2020 2 20 19 例 在学生挡案表 Dbf表中 定位显示班级为 99212 并且籍贯为 浙江 的记录 Use学生挡案表LocateFor班级 99212 And 籍贯 浙江 Display 显示第一条满足条件的记录 Found 返回逻辑真 T Eof 返回逻辑假 FContinueDisplay 无记录显示 Found 返回逻辑假 F Eof 返回逻辑真 TUse 3 3 5记录处理 2020 2 20 20 例 在学生挡案表 Dbf表中 定位计算机系99级或98级并且年龄小于20的学生 注 学号的第一 二位表示年级 第三位为 2 的表示计算机系 Use学生挡案表LocateFor Subs 学号 1 3 992 Or Subs 学号 1 3 982 And 年龄 20 Found 如Found 函数为 T Eof Eof 的结果是什么 Display 是否有记录显示 Continue 继续定位下一个记录 如果不用Continue而用LocateFor Subs 学号 1 3 992 Or Subs 学号 1 3 982 And 年龄 23 其结果会如何 Found Found 函数为 F说明什么 Eof Eof 的结果是什么 3 3 5记录处理 2020 2 20 21 例 在学生挡案表 Dbf表中 查找姓 王 的学生 Use学生挡案表LocateForSubs 姓名 1 2 王 如果用LocateFor 王 姓名可能会产生什么问题 Display 显示查询结果Continue 继续定位查询下一个记录 Found Found 函数为 T Display 显示第二条 王 姓记录Continue EndOfLocateScope 显示定位结束 Eof Eof 函数为 T 3 3 5记录处理 2020 2 20 22 记录的修改 P92 界面方式的记录修改浏览窗口中可以对记录进行修改 对所有几轮或满足魔咒中条件的记录的某个字段内容进行有规律的修改 步骤为 在浏览状态下 表 替换字段 如图 3 3 5记录处理 2020 2 20 23 使用修改命令UPDATE命令格式 UPDATETableNameSET字段1 表达式1 字段2 表达式2 WHERE条件表达式 功能 将指定表名字段1的值用表达式1的值替换 字段2的值用表达式2的值替换 例将学生200915121的年龄改为22岁 UPDATESSETAGE 22WHERESNO 200915121 例将所有学生的年龄增加l岁 UPDATESSETAGE AGE 1 3 3 5记录处理 2020 2 20 24 使用替换命令REPLACE命令格式 REPLACE字段名1WITH表达式值1 ADDITIVE 字段名2 WITH表达式值2 ADDITIVE Scope FOR条件表达式 参数字段名1WITH表达式值1 ADDITIVE 字段名2 WITH表达式值2 指定用表达式值1的值来代替字段1中的数据 用表达式表达式2的值来代替字段2中的数据 依此类推 3 3 5记录处理 2020 2 20 25 ADDITIVE 把对备注字段的替代内容追加到备注字段的后面 ADDITIVE只对替换备注字段有用 如果省略ADDITIVE 则用表达式的值改写备注字段原有内容 Scope 指定要替换内容的记录范围 只替换指定范围内记录字段的内容 范围子句有 ALL NEXTnRecords RECORDnRecordNumber和REST REPLACE的默认范围是当前记录 NEXT1 FOR条件表达式 只有当指定记录使表达式lExpression1求值结果为 真 T 时 它的字段才会被替换为新的内容 例 用替换命令实现表中工资低于3000且是工程师的所有记录工资增加500 replaceall工资with工资 500where工资 3000and职称 工程师 3 3 5记录处理 2020 2 20 26 记录的删除与恢复 P937 操作方法 先标记要删除的记录 再彻底删除标记要删除的记录 逻辑删除 界面方式命令方式DELETEFROM表名WHERE条件表达式彻底删除记录 物理删除 浏览窗口打开的情况下 表菜单 彻底删除命令PACKZAP 3 3 5记录处理 2020 2 20 27 恢复带删除标记的记录表菜单 恢复记录命令RECALLRECALL范围FOR条件表达式或WHILE条件表达式对带删除标记记录的访问DELETE 函数SETDELETEDON OFFON 忽略标有删除标记的记录OFF 默认值 允许访问标有删除标记的记录恢复带删除标记的记录表菜单 恢复记录命令RECALLRECALL范围FOR条件表达式或WHILE条件表达式 3 3 5记录处理 2020 2 20 28 例将表rsb1 dbf中姓名是 陈宏 的记录删除 代码如下 DELETEFROMrsb1WHERE姓名 陈宏 做删除标记SELECTrsb1LISTPACK 彻底删除有删除标记的记录LISTUSE 3 3 5记录处理 2020 2 20 29 数据的复制 P958 命令格式 COPYTO新表名 范围 FIELDS字段表 FOR条件 范围包括 RECORDn 第几号记录 NEXTn 当前记录开始的几个记录 REST 自当前记录开始至文件末尾的所有记录 ALL所有的记录 不选范围则隐含范围为ALL 例 把当前表中 应发合计 大于1000元的记录复制到C盘新数据表GZ2中 COPYTOC GZ2FOR应发合计 1000 3 3 5记录处理 2020 2 20 30 索引概述表中记录的存储顺序称为物理顺序 记录号表示了记录的物理顺序 表打开后被使用时 记录的处理顺序称为逻辑顺序 逻辑顺序可以与物理顺序相同 也可以不同 为了能实现对表记录的快速查找 查询 让表中的记录按某个字段值或某些字段值有序排列 这种方法叫排序 实现有两种方法 3 3 6索引的创建与使用 2020 2 20 31 sort命令 将原表记录按某个逻辑顺序重新写到一个新的表文件中 index命令 生成一个索引文件 它保存的是一个逻辑顺序号与原始表物理顺序的记录号的对照表 VFP索引的几个概念索引是由一系列记录号组成的一个列表 索引关键字IndexKey索引关键字是用来作为建立索引的依据 它通常是一个字段或字段表达式 有时也叫索引表达式 3 3 6索引的创建与使用 2020 2 20 32 在索引文件中保存的是索引号和表中的记录号 例 学生表 xs dbf 中有8个记录如下表 3 3 6索引的创建与使用 2020 2 20 33 以学号为关键字按升序建立索引 索引文件内容如下 index tablerecord 1125364453627788 其中第一列是索引号 第二列对应于表中的记录号 3 3 6索引的创建与使用 2020 2 20 34 建立索引时要注意以下几点 表达式的顺序将影响索引的结果 如 xs ximing xs xb 和 xs xb xs ximing 不同类型字段构成一个表达式时 必须转换数据类型 如 xh dtoc csrq 若用多个 数值型 字段求和建立索引表达式 索引将按照字段的和对记录进行排序索引标识索引标识是索引关键字的名称 也称为索引名 3 3 6索引的创建与使用 2020 2 20 35 可以任意指定 但必须以下划线 字母或汉字开头 并且不能超过去10个字节 索引的类型主索引 PrimaryIndexes 在数据库表中 每张表中只能创建一个主索引 组成主索引的字段或表达式 在所有记录中不能有重复的值 只能用于数据库表 候选索引在指定的关键字段或表达式中不允许有重复的索引 一张表中可建立多个候选索引 可用于数据库表和自由表 3 3 6索引的创建与使用 2020 2 20 36 普通索引可以决定记录的处理顺序 但是允许关键字段或表达式有重复的值 一张表可建立多个普通索引 在普通索引上查找的记录不具有唯一性 唯一索引参加索引的关键字段或表达式在表中可以有重复值 但在索引对照表中 具有重复值的记录仅存储其中的第一个 3 3 6索引的创建与使用 2020 2 20 37 在 索引名 文本框中输入索引标识名 在 类型 列表框中 选定索引类型 在 表达式 文本框中 输入索引关键字表达式
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 象山室内装修知识培训课件
- 谢谢你课件教学课件
- 2025年防水材料行业技术培训与咨询服务合同
- 2025版汽车吊吊装设备租赁服务合同规范
- 2025不锈钢罐体定制加工、安装及验收标准合同范本
- 2025版新型环保外墙保温与瓷砖装饰一体化工程合同
- 2025年度房产建筑工程质量保修与售后咨询服务合同
- 2025年房地产项目绿色节能改造工程承包合同
- 2025短视频平台广告投放效果跟踪及评估合同
- 2025年绿色环保产品展示会场地布置与服务合作协议
- 国庆节英语介绍模板
- 《油气管道无人机智能巡检系统技术管理规范》
- 巡察工作基本流程课件
- 游艇火灾安全知识培训课件
- (2025年标准)学生玩耍纠纷协议书
- GB 46030-2025建筑用安全玻璃安全技术要求
- 2025年新《中华人民共和国安全生产法》知识竞赛测试题库含答案
- (2025年标准)茶楼入股合同协议书
- 养老院员工奖惩管理制度范本
- 2025全球人形机器人企业能力画像整机能力评估模型V2.0
- 统编版(2024)七年级上册语文教学计划及进度表
评论
0/150
提交评论