




已阅读5页,还剩40页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第三章多表与数据库的操作 教学计划 目的 了解工作区 数据库表的基本概念 掌握表的关联的建立及多表间数据的使用重点 表的关联 数据库的基本操作难点 表间关系的建立 多表操作课时 课堂讲授2课时 上机实验2课时方式 课堂讲授 上机实验 本章纲要 数据库的设计 多表操作 数据库的基本操作 数据库表的基本操作 1 工作区的概念表打开时会在内存开辟一块缓冲区 磁盘表数据送入这块缓冲区进行后续处理 这块缓冲区称为工作区 VFP可以开辟多个工作区 进行多表操作 数据工作期中可以查看使用工作区情况 工作区编号 W1 W32767 前10个用A J表示 每个工作区只有一独立的记录指针一工作区只能对一表操作 打开新表时 原来表会关闭 3 5多表操作 3 5 1工作区 1 工作区的概念表打开时会在内存开辟一块缓冲区 磁盘表数据送入这块缓冲区进行后续处理 这块缓冲区称为工作区 当前工作区 VFP正在使用的工作区 唯一性 用户可在一个工作区中打开一个数据表时为该表定义一个别名 该别名也可作为工作区的别名 若未给打开数据表定义别名 则数据表的主名就是别名 格式 USEALIAS USE工资表ALIASGZ 2 选定工作区当需要同时对多个数据表进行操作时 须使用选择工作区的命令 格式 SELECT功能 选择所指定的工作区作为当前工作区 说明 由1 2 3 32767表示 使用别名时 对于1 10号工作区可使用系统给定的别名A Z或数据表的别名 对于是1 10号工作区之外的工作区则使用数据表的别名 命令SELECT0表示选择当前未使用的工作区中的最小号工作区作为当前工作区 工作区的切换不影响各工作区数据表记录指针的位置 在工作区未建立关联时 对当前工作区中数据表进行操作时 不影响其他工作区中数据表的内容和记录指针 例 在1号工作区打开工资表 在2号工作区打开员工表 SELECT1USE工资表SELECT2USE员工表 3 工作区的互访在当前工作区中可以访问其他工作区中已打开的表的数据 可用别名 字段名或别名 字段名来实现 需要注意的是互访时字段前不能使用工作区号 由于两个表的指针之间不存在任何关系 因此 只能分别在二个表中先移动指针到员工编号为 010301 的记录上再进行浏览 命令序列如下 SELECT3USE员工表LOCATEFOR员工编号 010301 SELECT2USE工资表LOCATEFOR员工编号 010301 DISPLAY员工编号 姓名 c 基本工资 3 3 6建立表的临时关系 VisualFoxPro提供在各表之间建立关联的操作 本节所介绍这种关联是表之间的临时关系 因为这种关联未被保存在任何文件中 每次打开表后 若需要使用 都必须重新建立关联 1 关联不同的工作区中打开的数据表都有各自的记录指针 用以指向当前记录 建立关联 就是在不同工作区的记录指针之间建立临时的联动关系 使得当一个工作区的数据表的记录指针移动时 另一个工作区的数据表的记录指针能随之移动 3 3 6建立表的临时关系 1 关联在不同工作区的记录指针之间建立临时的联动关系 使得当一个工作区的数据表的记录指针移动时 另一个工作区的数据表的记录指针能随之移动 便于多表浏览 2 特点 1 临时关系 可以以视图的形式保存 2 表要分为主表 从表 3 主从表之间需要有公共索引字段 指针的联动公共字段值相等为纽带 4 表中的记录可以是一对一 一对多 关联与关联条件 2 建立关联建立关联有两种方法 一种是通过数据工作期窗口建立关联 一种是命令方式来建立关联 1 数据工作期窗口的基本操作数据工作期是一个用来设置数据工作环境的交互操作窗口 利用数据工作期窗口可以打开或显示表或视图 建立表间临时关系以及设置工作区属性等 并且在数据工作期窗口设置的环境能以视图文件的形式保存起来 需要时将视图文件打开就能恢复所保存的环境 数据工作期窗口 属性对话框 2 在数据工作期窗口建立关联在数据工作期窗口 可以建立自由表之间的关联 表间临时关系 也可以建立数据库中各表之间的关联 建立的步骤是 打开需建立关联的多个表 为子表按关联的关键字建立索引或确定为主控索引 选择主表工作区为当前工作区 并建立主表与一个或多个子表的关联 建立一对多的关联 若缺省本步 则默认建立的是多对一的关联 3 用命令方式建立关联格式 SETRELATIONTO 数值表达式 INTO INTO ADDITIVE 格式 SETSKIPTO 功能 建立当前表 主表 与子表之间的一对多的关联 3 5 3表的联接 JOINWITH TO FOR FIELDS 将当前表与指定工作区的表按指定的条件进行联接 联接后产生一个新的数据表 3 6数据库的设计 使用自由表还是数据库表来保存要管理的数据 取决于需要管理的数据之间是否存在关系以及关系的复杂程度 数据库由表 视图 查询 连接和存储过程组成 数据库一般包含多张表 多张表之间具有永久联系 保证数据的完整性 用户数据存在表中 表与表间的联系存在数据库里 3 6 1数据库设计的一般过程 数据库设计过程的关键在于明确关系型数据库管理系统存储数据的方式与关联方式 数据库设计的一般过程如下 需求分析 确定所需要的表 确定字段 确定表之间的关系 改进设计 数据库的基本操作包括建立 打开 关闭和删除数据库 浏览数据库文件以及向数据库中增加 移去表等操作 1 数据库创建菜单方式和命令方式CREATEDATABASE 3 6 2数据库的基本操作 CREATEDATABASEe mydata 工资管理 2 数据库打开 1 菜单方式 文件 打开 DBC 2 命令格式 OPENDATABASE NOUPDATE EXCLUSIVE SHARED 3 数据库关闭 1 菜单方式 2 命令CLOSE ALL DATABASE 4 数据库修改MODIFYDATABASE 3 6 2数据库的基本操作 DELETEDATABASE DELETETABLES RECYCLE 5 数据库删除 项目管理器里添加 数据库设计器 菜单新建 6 数据库表添加 7 数据库表清除 移除 变为自由表删除 永久删除 自由表添加到某一个数据库时变为数据库表 数据库表从某一数据库中移出变为自由表 ADDTABLEMODIFYDATABSE MOVETABLE DELETE 3 6 3数据库的数据完整性 保证数据库数据的正确 有效 相容的特性 实体完整性 行 确保每个实体的实例唯一和精确 即表中记录满足一定条件并且无重复记录域完整性 列 为列指定一组合法的数据值参照完整性 表间关系 控制相互关联表的数据一致性 数据完整性是针对VFP的数据库表而言 数据库表所具有 而自由表不具备的几个属性 1 可以使用长表名和长字段名 2 可为字段指定标题和添加注释 3 可为字段指定默认值和输入掩码 4 有默认的控件类 5 可规定字段级规则和记录级规则 6 数据库表支持参照完整性的主关键字索引和表间关系 7 支持INSERT UPDATE和DELETE事件的触发器等 3 6 3数据库的数据完整性 数据字典设置 1 实体完整性 3 6 3数据库的数据完整性 利用主关键字 主索引 或者候选关键字 候选索引 来保证表中无重复记录 利用记录有效性规则和触发器来保证记录满足要求 2 域完整性 3 6 3数据库的数据完整性 VFP中利用字段数据类型 宽度的定义以及字段有效性规则来限定字段的取值类型和取值范围 从而保证域完整性 1 设置字段属性数据库表设计器中 在字段选项卡的 显示 区域来设置字段属性 包括显示和格式 输入掩码和标题 a 格式在 显示 区域的 格式 文本框用于键入格式表达式 确定当前字段在浏览窗口 表单或报表中输出显示时的格式 包括大小写 字体大小和样式等 3 6 3数据库的数据完整性 3 实体 域完整性的操作介绍 部分格式字符及功能如下表所示 b 输入掩码用来指定字段的输入格式 减少人为的数据输入错误 控制数据输入的正确性 输入掩码必须按位指定 例如 输入掩码设置为999 999 表示在输入时 只能输入数字且最多输入6位数字 中间的 号不是掩码 不必输入 输入时光标会自动跳过 c 标题 标题 文本框中用来指定字段显示时的字段标题 2 设置有效性规则有效性规则是一个与字段或记录相关的表达式 通过对用户的值加以限制 提供数据有效性检查 不满足规则要求的字段或记录 被拒绝输入 有效性规则分两种 字段有效性规则和记录有效性规则 有效性规则只在数据库表中存在 a 字段有效性字段有效性区域包含规则 信息和默认值三个文本框 各文本框均可以直接键入数据 也可以通过单击其右边的对话按钮 字段有效性的设置 b 记录有效性 部门编号的第2位数字与员工编号的第4位数字要相同 c 触发器触发器是在某些事件发生时触发执行的一个表达式或一个过程 用于控制对已经存在的记录所作的非法插入 删除和修改的操作 插入触发器 每次向数据库表中插入或追加记录时 触发该规则 以检查插入的记录是否满足规则 更新触发器 每次更新记录时 触发该规则 删除触发器 每次对表记录进行逻辑删除时 触发该规则 4 参照完整性 参照完整性指数据库表中的相关表之间涉及表间数据的完整性的约束规则 简单说就是当插入 删除或者修改一个表中的数据时 通过参照另外一个表的数据来检查当前的操作是否正确 例如 在职工表中插入记录的部门号在部门表中不存在 怎样处理这条插入记录 VFP建立参照完整性分三步 建立永久关系 清理数据库 编辑参照完整性 1 永久关系与临时关系 永久关系 使相互关联的表协同工作 使数据得到更充分的利用 在查询与视图中起连接作用永久关系被存储在数据库文件中 可以一直使用 除非该永久关系被删除或更改 临时关系 仅用于控制关联表之间的指针联动 运行结束后自动接触 每次要使用时都需要重新建立 4 参照完整性 4 参照完整性 2 永久关系的建立和删除建立前提 主表必须为主索引或侯选索引 子表可为任意一种索引 若子表中的索引类型是主索引或候选索引 则建立一对一关系 如果子表中的索引类型是普通索引 则建立一对多关系 建立方法 在数据库表间建立连线 一对一主表拖向从表 删除方法 去掉连线 连线规则为 在数据库设计器中 从一个表的主索引或候选索引拖到另一表的任一索引 数据库设计器中建立永久关系 在建立参照完整性之前必须首先清理数据库 既物理删除数据库各个表中所有带有删除标志的记录 操作方法是选择 数据库 菜单项中的 清理数据库 命令 清理数据库前需要关闭各表 在数据工作期中可以查看未关闭的表 3 清理数据库 4 设置参照完整性参照完整性生成器窗口有更新规则 删除规则和插入规则三个选项卡 选项卡中有级联 限制和忽略三个单选按钮以及一个表格 表格中每一行代表一个永久关系 如下图 4 参照完整性 a 更新规则 选项卡用于指定更改父表中的某一记录中的关键字段值时所用的规则 对应用3个单选按钮 其各自的功能如下 级联 当更改父表中的某一记录的关键字段值时 子表中相应的记录将会改变 限制 当更改父表中的某一记录的关键字值时 若子表中有相应的记录 则禁止该操作 并给出 触发器失败 的提示信息 忽略 两表更新操作将互不影响 b 删除规则 选项卡用于指定删
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 会展场馆管理师操作考核试卷及答案
- 宝山防静电地坪施工方案
- 减粘裂化装置操作工专项考核试卷及答案
- 钢琴及键盘乐器制作工培训考核试卷及答案
- 地毯剪花工成本预算考核试卷及答案
- 粉末冶金烧结工三级安全教育(班组级)考核试卷及答案
- 棉纤维改性技术趋势分析
- 慈溪年会活动策划方案公司
- 数控水射流切割机操作工协作考核试卷及答案
- 照相机与辅助器材维修工工艺考核试卷及答案
- 气道温湿化管理课件
- 妇产科健康宣教
- 2025版办公楼物业管理与智能化系统集成合同
- 民办教育研究院管理办法
- 2025年上半年入党积极分子培训班结业考试题及答案
- DB65∕T 3119-2022 建筑消防设施管理规范
- 2025方便速食行业线上消费趋势洞察
- 中职女生健康教育
- 单位集中物业管理保洁服务方案方案投标文件(技术方案)
- 外事礼仪培训课程
- 2025至2030中国玄武岩纤维行业发展趋势分析与未来投资战略咨询研究报告
评论
0/150
提交评论