设计数据库对表进行分类管理.PPT

上传人:天*** 文档编号:299623 上传时间:2018-09-20 格式:PPT 页数:35 大小:1.99MB
下载 相关 举报
设计数据库对表进行分类管理.PPT_第1页
第1页 / 共35页
设计数据库对表进行分类管理.PPT_第2页
第2页 / 共35页
设计数据库对表进行分类管理.PPT_第3页
第3页 / 共35页
设计数据库对表进行分类管理.PPT_第4页
第4页 / 共35页
设计数据库对表进行分类管理.PPT_第5页
第5页 / 共35页
点击查看更多>>
资源描述

1、设计数据库对表进行分类管理,内容提要: 数据库、数据库表和自由表的建立和管理以及它们之间的关系 数据完整性的内容和实现方法 多工作区的概念和表之间的关联学习目的与要求: 了解数据库的相关基础知识 理解并熟悉数据完整性的概念、多工作区的概念 掌握数据库的基本操作及数据完整性的设置重点:掌握数据库的基本操作及数据完整性的设置难点:理解数据完整性及多工作区的概念,数据库及其操作,数据完整性及多表使用,任务四 设计数据库对表进行分类管理,第一讲,第二讲,实训五,实训六,数据库的建立及表间永久联系,工作区基本操作,stop,第一讲 认识数据库并熟悉数据库的使用,授课内容: 数据库基础知识 数据库基本操作

2、 数据库表的操作学习目的: 了解数据库设计的目的、原则、过程 熟悉数据库操作中的相关命令 掌握数据库的创建、修改、删除等操作方法重点:掌握数据库的相关操作方法难点:命令的使用,任务一:创建学籍管理数据库,在学籍管 理数据库中创建成绩表和教师表任务二:将第三章中创建的学生表和课程表 移入学籍管理数据库中,并将教师 表从数据库中移出任务三:创建学生管理项目,并将学籍管理 数据库移入该项目,4.1 Visual FoxPro数据库设计,数据库是表的集合。把若干个关系比较固定的表集中起来放在一个数据库中管理,在表间建立关系,设置属性和数据有效性规则使相关联的表协同工作。 数据库文件具有.dbc扩展名,

3、其中可以包含一个或多个表、关系、视图和存储过程等。,一、数据库设计的目的和原则1、关系数据库设计应遵从概念单一化的”一事一地”的原则2、避免在表之间出现重复字段3、表中的字段必须是原始数据和基本数据元素4、用“外部关键字”保证有关联的表之间的联系,二、数据库设计过程1、分析数据需求2、确定需要的表3、确定所需字段4、确定联系5、设计求精,三、数据库中表间的关系联系是表之间的一种链接,它允许用户不仅能从当前选定表中访问数据,而且可以访问其他表中的数据,VFP利用数据库将相关的表联系在一起,只有把相关的表存放在同一个数据库中,确定了他们的关系,数据库中的数据才能被充分利用。1、一对一关系:例如校长

4、和学校2、一对多的关系:例如经理和部门3、多对多的关系:例如老师和班级,4.2 数据库及其操作,一、数据库的建立1、在项目管理器中建立数据库 打开已建立的项目文件,出现项目管理器窗口,在“数据”选择卡中选择“数据库”,然后单击“新建”按钮。在如下图示的“新建”对话框中进行相应的操作即可。,2、通过“新建”对话框建立 单击常用工具栏上的“新建”按钮或执行“文件”菜单中的“新建”命令,打开“新建”对话框进行选择。3、使用命令交互建立数据库格式:CREATE DATABASE 数据库文件名|?功能:建立一个新的扩展名为.DBC的数据库文件并打开此数据库。 说明: 指定生成的数据库文件,若省略扩展名,

5、则默认为.DBC,同时也自动建立相关联的数据库备注文件扩展名.DCT,关联的索引文件扩展名为.DCX。如果未指定数据库文件名或用“?”代替数据库名,Visual FoxPro系统会弹出创建对话框,以便用户选择数据库建立的路径和输入数据库名。保存后该数据库文件被建立,并且自动以独占方式打开该数据库及相应的数据库设计器。,二、数据库的打开打开数据库设计器的方法有以下三种:1命令方式格式:OPEN DATABASE |? EXCLUSIVE|SHARED功能:将磁盘上一个扩展名为.DBC的指定数据库文件打开。说明:打开一个数据库文件。 数据库打开后,在常用工具栏中可以看见当前正在使用的数据库名,同时

6、当数据库设计器为当前窗口时,系统菜单上出现【数据库】菜单项。2菜单方式 执行“文件”菜单中的“打开”命令,在出现的“打开”对话框中选择所要打开的数据库文件名,单击“确定”按钮。3利用项目管理器打开数据库 打开已建立的项目文件,出现项目管理器窗口,选择“数据”标签,选择要打开的数据库名,然后单击“打开”按钮。,三、 修改数据库在VFP中,修改数据库其实就是打开数据库设计器。用户可以在数据库设计器中完成各种数据库对象的建立、修改和删除等操作。数据库设计器是交互修改数据库对象的界面和工具,其中显示数据库中包含的全部表、视图和联系。可以用三种方法打开数据库设计器:1利用项目管理器打开数据库 打开已建立

7、的项目文件,出现项目管理器窗口,选择“数据”标签,选择要打开的数据库名,然后单击“修改”按钮。2菜单方式 执行“文件”菜单中的“打开”命令,在出现的“打开”对话框中打开数据库则会自动打开数据库设计器。3命令方式格式:MODIFY DATABASE |? NOWAIT|NOEDIT功能:将磁盘上一个扩展名为.DBC的指定数据库文件打开。说明:打开一个指定数据库文件的数据库设计器。,四、 关闭数据库数据库文件暂时不用或操作完成后,必须将其关闭,保存在外部存贮器中以确保数据的安全性。关闭数据库文件有以下几种方式:1命令方式【格式】CLOSE ALL|DATABASE 【功能】关闭当前打开的数据库。【

8、说明】ALL用于关闭所有对象。如数据库、表、索引、项目管理器等。 DATABASE关闭当前数据库和数据库表;如果当前没有打开的数据库,则关闭所有打开的自由表、所有工作区内所有索引和格式文件。2利用项目管理器关闭数据库 打开已建立的项目文件,出现项目管理器窗口,选择“数据”标签,选择“数据库”下面需要关闭的数据库名,然后单击“关闭”按钮。在常用工具栏上的当前数据库下拉列表框中该数据库名消失,同时在项目管理器中“关闭”按钮变成“打开”按钮。,五、 删除数据库 1命令方式【格式】DELETE DATABASE DELETETABLESRECYCLE【功能】从磁盘上删除一个扩展名为.DBC的数据库文件

9、。【说明】 被删除的数据库不能处于打开状态。被删除的数据库中的表将成为自由表。 DELETETABLES选项表示在删除数据库的同时从磁盘上该库中所包含的表。 RECYCLE选项表示将删除的数据库和表放入回收站,需要的时候可以还原。2使用项目管理器 打开已建立的项目文件,出现项目管理器窗口,单击“数据”标签,选择要删除的“数据库”,然后单击“移去”按钮。在出现的选择对话框,若选择“移去”仅将数据库从项目中移去,若选择“删除”将从磁盘上删除数据库。被删除的数据库中的表成为自由表。,1 、 将自由表添加到数据库,有三种方法:通过项目管理器添加在数据库设计器窗口添加 在数据库设计器窗口空白的地方右击,

10、在快捷菜单中执行“添加表”命令,在弹出的“打开”对话框中选择要添加的表单击“确定”按钮即可。使用命令添加格式:ADD TABLE 功能:将指定的表添加到当前的数据库中使之成为一个数据库表。例如:把自由表TTT.DBF添加到当前的数据库中。ADD TABLE TTT,六、在数据库中新建表、添加表和移去表,2、 从数据库中移出表,有三种方法:从项目管理器移出从数据库设计器窗口中移出 在数据库设计器要移出的表上右击,在快捷菜单中执行“删除”命令,在弹出的对话框中单击“移去”按钮即可。使用命令移出格式:REMOVE TABLE DELETERECYCLE功能:将指定的表从当前的数据库中移出使之成为一个

11、自由表。说明:DELETE选项指把表从数据库中移出后,还要从磁盘上删除;RECYCLE指把表从数据库中移出后放到回收站中。例如:把数据库表TTT.DBF从当前的数据库中移出。REMOVE TABLE TTT,在项目中添加或移去数据库1、在项目管理器中添加数据库2、移去或删除数据库数据库表与自由表数据库表是隶属于某数据库的表;自由表是不属于任何数据库的表,两者相比数据库表有以下特点:1、数据库表支持长字段名和长表名,最多可达128个字符;自由表字段最大长102、可为数据库表的字段指定标题和添加注释3、可为数据库表的字段指定默认值和输入掩码4、可为数据库表规定字段级规则和记录级规则;5、数据库表支

12、持主关键字、参照完整性和表之间的联系;6、数据库表支持INSERT ,UPDATE,DELETE事件的触发器,返回,结束,第二讲 数据完整性及多表使用,授课内容: 实体完整性 域完整性 参照完整性 多工作区、表之间的关联学习目的: 了解数据完整性及工作区的相关概念 熟悉实体完整性、域完整性、参照完整性的概念及多工作区的使用 掌握实体完整性、域完整性、参照完整性的保证方法重点:掌握域完整性、参照完整性的保证方法难点:对三种数据完整性含义及表之间关联的理解,任务一:在学生表中以学号建立主索引,课程表中 以课程编号建立主索引,成绩表中以学号 和课程编号建立普通索引任务二:设置学生表中的性别字段只能输

13、入“男”或 “女”,否则,提示“性别输入错误!性别必 须是男或女”任务三:在学籍挂历数据库中建立学生表、成绩 表、课程表之间的永久联系,并使得在修 改学生表中的学号值时,成绩表中的该学 号自动更新,当删除课程表中的某记录 时,成绩表中如果有相同课程编号的记录 则禁止删除课程表中的该记录任务四:同时打开学生、成绩、课程表,并指定成 绩表为当前表,4.3.1 实体完整性与主关键字,实体完整性是保证表中记录唯一的特性,即在一个表中不允许有重复的记录。在VFP中用主关键字或候选关键字保证记录的唯一性,即保证实体唯一性。主关键字:从候选关键字中选择一个作为本表的主关键字。候选关键字:如果一个字段的值或几

14、个字段的值能够唯一标识表中的一条记录,则称其为候选关键字。在VFP中将主关键字称为主索引,将候选关键字称为候选索引。,4.3 数据完整性,数据完整性是指保证数据正确的特性,数据完整性一般包括实体完整性、域完整性和参照完整性等。,4.3.2域完整性与约束规则,数据类型的定义属于域完整性的范畴。 域约束规则也称作字段有效性规则,在插入或修 改字段值时被激活,主要用于数据输入正确性的检验。在表设计器中建立字段有效性规则。在“字段”选项卡中有一组定义字段有效性规则的项目,它们是“规则” (字段有效性规则)、“信息”(违背有效性规则的提示信息)、“默认值”(字段的默认值)三项。 具体操作如下:首先单击选

15、择要定义字段有效性规则的字段,然后分别输入和编辑规则、信息和默认值等项目。字段有效性规则的项目可以直接输入,也可以单击输入框旁边的按钮打开表达式生成器对话框编辑、生成相应的表达式。,注意: 这里的“规则”是逻辑表达式:“信息”是字符表达式;“默认值”的类型则以字段的类型确定。例如:以XSXK.DBC中的选课表为例,设成绩字段的值在0到100之间,当输入的学生成绩不在此范围时给出出错信息“成绩应在0到100之间”,默认成绩为60。该字段的有效性设置如图所示。,4.3.3 参照完整性与表之间的关联,1、含义:当插入、删除或修改一个表中的数据时,通过参照引用相互关联的另一个表中的数据,来检查对该表的

16、数据操作是否正确。 例如,一个职工表由仓库号、职工号和工资三个字段构成。当插入一条这样的记录时,如果没有参照完整性检查,可能会插入一个并不存在的仓库的职工记录,这时插入的记录肯定是错误的。2、参照完整性是关系数据库管理系统的一个重要功能。在VFP中为建立参照完整性,必须建立表之间的联系。 在关系数据库中通过连接字段来体现和表示联系。连接字段在父表中一般是主关键字,在子表中是外部关键字。如果一个表中的字段或字段的组合不是本表的关键字,而是另一个表的关键字,则这样的字段称为外部关键字。,3.建立表之间的联系 在数据库设计器中设计表之间的联系时,要在父表中建立主索引,在子表中建立普通索引,然后通过父

17、表的主索引和子表的普通索引建立两个表之间的联系。 如图显示了XSXK数据库的设计器中已经建立好的这三个表。在这三个表中,学生表和选课表之间是一对多联系,连接字段是学号;课程表和选课表之间是一对多联系,连接字段是课程号。,在上图中的数据库设计器中用鼠标左键选中学生表中的主索引学号,保持按住鼠标左键,并拖动鼠标到选课表的学号索引上,鼠标箭头变成小矩形,最后释放鼠标。同样可以建立另一个联系。 建立好联系的表如图所示。观察连接表的连线,这里建立的是一对多联系。,4. 设置参照完整性约束 在建立参照完整性之前必须首先清理数据库。所谓清理数据库是物理删除数据库各表中所有带删除标记的记录。只要数据库设计器为

18、当前窗口,主菜单栏上就会出现“数据库”菜单,这时可以在“数据库”菜单下选择“清理数据库”。在清理完数据库后,用鼠标右键单击表之间的联系并从快捷菜单中选择“编辑参照完整性”,打开参照完整性生成器界面如图所示。,参照完整性包括更新规则、删除规则和插入规则。更新规则规定了当更新父表中的连接字段(主关键字)时,如何处理相关子表中的记录;删除规则规定了当删除父表中的记录时,如何处理子表的相关记录;插入规则规定了当在子表中插入记录或更新记录时,是否进行参照完整性检查;,4.4 多个表的同时使用,前面所讲述的对表的操作都是在一个工作区进行的。每个工作区最多只能打开一个表文件,用USE命令打开一个新的表,同时

19、也就关闭了前面已打开的表。 在实际应用中,用户常常需要同时打开多个表文件,以便对多个表文件的数据进行操作。为了解决这一问题,Visual FoxPro引入了工作区的概念。Visual FoxPro允许用户在表间建立临时关系也称关联。,4.4.1 多工作区的概念,1工作区和当前工作区 VFP最多能同时提供32767个工作区,系统默认值当前工作区为1区。在任意时刻,只有一个工作区是当前工作区,用户只能在当前工作区对打开的当前库进行操作。每一个工作区都可以并且只能打开一个数据表文件,各工作区中打开的数据表彼此相互独立(指针不受影响)。2选择当前工作区 每一个工作区可用工作区号或别名来标识。利用数字1

20、32767来标识32767个不同的工作区;如用别名来标识,前10个工作区用字母AJ10个字母表示,后面的工作区使用W11 W32767表示。也可采用该工作区中已打开的表的名字来作别名。【格式】SELECT/【功能】选择一个工作区作为当前工作区。【说明】指定当前工作区。此命令允许选用“0”号工作区。如果指定“0”,则表示选用当前未使用过的编号最小的工作区作为当前工作区。,例如:在1号和2号工作区内分别打开学生.DBF和选课.DBF表文件,并选择1号工作区为当前工作区。 SELECT 1 & 或 SELECT A USE 学生 SELECT 2 USE 选课 SELECT 13非当前工作区字段的引

21、用Visual FoxPro系统对当前工作区上的表可以进行任何操作,也可以对其他工作区中的表文件的数据进行访问。在主工作区可通过以下两种格式访问其他工作区表中的数据。格式:- 或 . ,通过用工作区别名指定欲访问的工作区,所得到的字段值为指定工作区打开的表当前记录的字段值。 例如:在1号和2号工作区打开学生.DBF和课程.DBF,在1号工作区内查看当前记录的学号、姓名、性别、出生日期、课程号、成绩等字段内容。SELECT AUSE 学生 & 在1号工作区中打开学生表SELECT BUSE 课程 & 在2号工作区中打开课程SELECT A & 选择1号工作区为当前工作区DISPLAY 学号,姓名

22、,性别,出生日期,B-课程号,课程.成绩,4.4.3 表之间的关联,1关联的概述 所谓表文件的关联是把当前工作区中打开的表与另一个工作区中打开的表进行逻辑连接,而不生成新的表。当前工作区的表和另一工作区中的打开表建立关联后,当前工作区中表的记录指针移动时,被关联工作区的表记录指针也将自动相应移动,以实现对多个表的同时操作。 在多个表中,必须有一个表为关联表,此表常称为父表,而其他的表则称为被关联表,常称为子表。在两个表之间建立关联,必须以某一个字段为标准,该字段称为关键字段。表文件的关联可分为一对一关联、一对多关联和多对多关联。 可使用SET RELATION TO 命令建立表之间的关联。,2

23、建立表间的关联【格式】SET RELATION TO INTO |【功能】将当前主工作区中的表与多个其他工作区中的表建立关联。表示与别名表文件建立关联时的关键字段表达式。建立关联时,关键字段必须是两个表文件的共有字段,且别名表文件已按关键字段建立了索引文件,并已指定为主控索引。当父表文件的记录指针移动时,子表文件的记录指针根据各自的主索引文件指向关键字段值与父表文件相同的记录。如果执行SET RELATION TO命令,则取消表的关联。例如:SELECT A USE 学生 SELECT B USE 成绩 Set order to tag 学号 SELECT A Set relation to

24、学号 into B LIST 学号,姓名,性别,出生日期,B-课程号,课程.成绩,3、使用”数据工作期”建立关联例如:要在“课程”表和“成绩”表之间建立关联,课程表为父表(1)在数据工作期窗口中单击“打开”按钮,弹出打开对话框,分别打开课程表和成绩表(2)按“课程编号”建立关联,首先对“成绩”表按“课程编号”建立索引并将其设置为当前索引(3)在“别名”栏中选择“课程”,单击“关系”按钮,表示要以“课程”表为父表与其它表建立临时关系,在窗口“”关系“栏中给出相应表示。然后在”别名“栏中选择字表”成绩“,系统弹出”表达式生成器“窗口(4)在set relation :栏中输入关联关键字表达式“课程

25、.课程编号”,单击“确定”,4、关联与永久关系联系:建立关系的两个表之间在客观上确实存在一种关系区别:(1)关联是用来在打开的两个表之间控制相关记录的访问;而永久关系用来存储相关表之间的参照完整性,也可作为查询中默认的联接条件 (2)关联在表打开后使用set relation 命令建立,随表的关闭而解除;永久关系永久的保存在数据库中,不需要每次使用表时重新建立 (3)关联可在自由表之间、数据库表之间或自由表与数据库表之间建立;而永久关系只能在数据库表之间建立。,结束,返回,实训五 数据库的建立与表间的永久联系,一、实训目的了解数据库的设计步骤及设计方法 熟练掌握数据库的创建方法 熟练掌握数据库中表之间永久关系的创建及建立参照完整性二、实训内容创建一个数据库在数据库中新建表在数据库中添加表,建立索引;在表之间创建永久关系和参照完整性将表从数据库中移出三、实训步骤参照实训书,结束,返回,实训六 工作区基本操作,一、实训目的掌握工作区、数据工作期、多工作区和当前工作区的概念掌握选定当前工作区的方法熟练掌握使用命令方式和数据工作期方式建立表之间的关联二、实训内容在不同工作区中打开多个表并进行浏览是用命令方式和数据工作期建立表之间的关联,实现表间的信息查询三、实训步骤参照实训书,返回,结束,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 重点行业资料库 > 1

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。