第4章 数据库的创建与操作.ppt_第1页
第4章 数据库的创建与操作.ppt_第2页
第4章 数据库的创建与操作.ppt_第3页
第4章 数据库的创建与操作.ppt_第4页
第4章 数据库的创建与操作.ppt_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

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

文档简介

1、第4章 数据库的创建与操作,辽东学院信息技术学院 崔晓斐,信息技术学院 崔晓斐 制作,复 习,结构复合索引文件 表设计器建立:可以建立四种索引 命令方式建立:不能建立主索引 INDEX ON 索引关键字 TAG 索引名 OF 非结构复合索引文件名 FOR 条件 Ascending/Descending Unique/Candidate 结构复合索引文件特征: 指定主控索引:Set order to 索引名,信息技术学院 崔晓斐 制作,查找 顺序查询(条件定位):locate for 条件 , continue 索引查询:seek 表达式 &注意定界符 分类汇总命令:先建立索引,再汇总 TOTA

2、L ON FIELDS FieldName FOR 条件 TO 表的关联 Set relation to 索引字段名 into 子表名,信息技术学院 崔晓斐 制作,本章基本内容 4.1 数据库的操作 4.2 数据库表与自由表 4.3 数据字典的使用,信息技术学院 崔晓斐 制作,4.1 数据库的基本操作,一、创建数据库 建立数据库的常用方法有以下三种:数据库扩展名:.dbc 1、在项目管理器中建立数据库:数据库/新建 2、通过“新建”对话框建立数据库:新建/文件/数据库新建文件 3、使用命令交互建立数据库 Create Database DatabaseName?,信息技术学院 崔晓斐 制作,二

3、、打开数据库 在数据库中建立表或使用数据库中的表时,都必须先打开数据库,与建立数据库类似,常用的打开数据库的方式也有三种: 在项目管理器中打开数据库:选择数据库名/打开; 通过“打开”对话框打开数据库:文件/打开; 使用命令打开数据库: Open Database 数据库名 三、设置当前数据库:用鼠标选择,信息技术学院 崔晓斐 制作,四、修改数据库 可以用以下三种方法打开数据库设计器: 从项目管理器中打开数据库设计器:数据库名/修改 从“打开”对话框中打开数据库设计器:文件/打开; 使用命令打开数据库设计器:Modify Database 数据库名,信息技术学院 崔晓斐 制作,五、删除数据库(

4、不能删除当前数据库) 如果一个数据库不再使用了随时都可以删除,一般可以在项目管理器中删除数据库,也可以用命令删除数据库: Delete Database 数据库名 注意:被删除的数据库应是关闭的 六、关闭数据库 Close Database all 或 close all all:此选项可以关闭所有打开的数据库,信息技术学院 崔晓斐 制作,4.2 数据库表的基本操作,一、数据库表与自由表 所谓自由表就是那些不属于任何数据库的表,所有由FoxBASE或早期版本的FoxPro创建的数据库文件(.dbf)都是自由表。在Visual FoxPro中创建表时,如果当前没有打开数据库,则创建的表也是自由表

5、。可以将自由表添加到数据库中,使之成为数据库表;也可以将数据库表从数据库中移出,使之成为自由表。,信息技术学院 崔晓斐 制作,当没有数据库打开时,建立的表就是自由表。事实上,数据库表与自由表相比,数据库表具有如下特点: 数据库表可以使用长表名,在表中可以使用长字段名; 可以为数据库表中的字段指定标题和添加注释; 可以为数据库表的字段指定默认值和输入掩码; 数据库表的字段有默认的控件类; 可以为数据库表规定字段级规则和记录级规则; 数据库表支持主关键字、参照完整性和表之间的联系; 支持INSERT、UPDATE和DELETE事件的触发器。 在Visual FoxPro中保留了自由表的概念,完全是

6、为了兼容早期的软件版本。建议尽量使用数据库表。,信息技术学院 崔晓斐 制作,二、将自由表添加到数据库 在项目管理器或数据库设计器中可以将自由表添加到数据库中。 在项目管理器中:将要添加自由表的数据库展开至表,并确认当前选择了“表”。单击“添加”按钮,然后从弹出的“打开”对话框中选择要添加到当前数据库的自由表,即扩展名为.dbf的文件。 在数据库设计器中:可以从“数据库”菜单中选择“添加表”,然后从“打开”对话框中选择要添加到当前数据库的自由表。 用ADD TABLE命令:添加一个自由表到当前数据库中: ADD TABLE TableNamel ?NAME LongTableName 注意:一个

7、表只能属于一个数据库,当一个自由表添加到某个数据库后就不再是自由表了,所以不能把已经属于某个数据库的表添加到当前数据库,否则会有出错提示。,信息技术学院 崔晓斐 制作,三、从数据库中移出表 当数据库不再使用某个表,而其他数据库要使用该表时,必须将该表将数据库中移出,使之成为自由表。 在项目管理器中:将数据库下的表展开,并选择所要移出的具体表,接着单击“移去”按钮,弹出提示对话框,从中选择“移去”即可。 在数据库设计器中:要移出一个表,首先选择该表,然后可以从“数据库”菜单中选择“移去”,或者单击鼠标右键从快捷菜单中选择“删除”,最后从提示的对话框中选择“移去”即可。 将一个表从数据库中移出命令

8、: REMOVE TABLE TableName?DELETERECYCLE,信息技术学院 崔晓斐 制作,问 题,数据库已经打开,但是数据库设计器没打开,现在用命令“create”或“新建-表”建立一个表,则这个表属于自由表还是数据库表?,信息技术学院 崔晓斐 制作,4.3 数据字典的使用,数据字典用于保存对数据库表中各种数据的定义或设置信息,包括表的属性、字段属性、记录规则、表间关系和参照完整性。 一、设置表中字段属性 打开表设计器,可以对每个字段添加 “显示”组框 格式:是字段内容的输入或显示格式。A表示仅输入字母;!表示自动转换字母为大写;A!输入字母且自动转为大写。,信息技术学院 崔晓

9、斐 制作,输入掩码:用以限制或控制用户输入的格式,a字母;9数字 标题:用新的名称代替字段名显示 字段注释:便于日后或其它人对数据库进行维护 字段有效规则 规则:字段或字段之间的有效性检验,逻辑表达式 信息:当违反有效性规则时,用户自定义提示的信息 默认值:定义字段的初始值,信息技术学院 崔晓斐 制作,二设置表的记录属性 1. 记录有效性组框 记录有效性检查规则用于检查同一记录中不同字段之间的逻辑关系,这可以控制记录数据的完整性。只有输入满足记录规则的记录,光标才可以移开当前记录。其设置包括两个方面,即验证规则的设置和出错信息的设置。 (1)验证规则:验证规则可在“规则”文本框中直接可输入记录

10、级有效性检查规则,光标离开当前记录时进行校验。 (2)出错信息:出错信息可在“信息” 文本框处直接输入。在进行记录级有效性规则验证时,若发现输入与规则不符时该信息将会显示出来。,信息技术学院 崔晓斐 制作,2记录触发器组框 记录的触发器指的是在执行与记录有关的操作时应遵循的规则或条件。在Visual FoxPro 中记录的触发器分为3种,即插入触发器、更新触发器和删除触发器,可分别在相应的文本框处进行设置。 插入触发器:用于指定一个规则,每次向表中插入或追加记录时该规则被触发,据此检查插入的记录是否满足规则。 更新触发器:用于指定一个规则,每次更新记录时触发该规则。 删除触发器:用于指定一个规

11、则,每次删除表中记录(打上删除标记)时触发该规则。,信息技术学院 崔晓斐 制作,记录规则:性别=“女” and year(出生日期)1989 or 性别=“男” and year(出生日期)1991 记录出错信息:“所有的女生都是1989年以前出生的,所有的男生都是1991年以前出生的” 插入触发器:substr(学号,7,2)“19” 更新触发器:year(出生日期)=1987 删除触发器:len(alltrim(姓名)=0 例: 将学生信息表的”性别”字段默认值设为”女” 将学生信息表的”出生日期”字段的有效性规则设为1985年以后出生日期有效,如果输入1985年以前的出生日期将出现错误提

12、示:”学生必须是1985年以后出生的”.,信息技术学院 崔晓斐 制作,三、永久关系的设置 一个数据库可以包含多个表,这些属于同一个数据库的表通常有一定的关系 1永久关系的建立 在数据库设计器中建立永久关系,可按如下步骤进行: (1)打开数据库文件,进入“数据库设计器”窗口。 (2)建立索引 一对一的关系:建立联系的两个表具有相同属性的字段,父表的索引应建立为主索引或候选索引,而子表的索引应建立为候选索引。 一对多的关系:建立联系的两个表具有相同属性的字段,父表的索引应建立为主索引或候选索引,而子表的索引应建立普通索引。,信息技术学院 崔晓斐 制作,(3)建立表间关系 只需在“数据库设计器”窗口

13、中将父表的主索引或候选索引字段拖放到子表中与其相匹配的索引上即可。此时,数据库中的两个表间就有了一条相应的“连线”,表示永久关系已经建立成功。 2编辑表之间的永久关系 若在建立关系时操作有误,可以通过“编辑关系”对话框进行修改。方法是:将鼠标箭头指向表的关系连线,单击鼠标左键使连线变粗,然后单击鼠标右键,在弹出的快捷菜单中选择“编辑关系”,即弹出“编辑关系”对话框,以修改指定关系。实际上,直接双击表的关系连线也可以打开该对话框。,信息技术学院 崔晓斐 制作,3删除表之间的永久关系 对于已经建立的永久关系,在必要时也可以将其删除掉。方法是:将鼠标箭头指向表的关系连线,单击鼠标左键使连线变粗,然后

14、单击鼠标右键,在弹出的快捷菜单中选择“删除关系”,或直接按一下Delete键,即可取消永久关系。 例: 建立表的索引及永久关系 在学生信息表中按学号字段建立表的主索引 在学生成绩表中按学号建立普通索引 为两个表建立永久联系,信息技术学院 崔晓斐 制作,四、参照完整性的设置 在数据库中数据完整性是指保证数据正确的特性,数据完整性一般包括实体完整性、域完整性和参照完整性等。 1 实体完整性与主关键字 实体完整性是保证表中记录惟一的特性,即在一个表中不允许有重复的记录。在Visual FoxPro中利用主关键字或候选关键字来保证表中的记录惟一,即保证实体唯一性。 在Visual FoxPro中将主关

15、键字称作主索引,将候选关键字称作候选索引。由上所述,在Visual FoxPro中主索引和候选索引有相同的作用。,信息技术学院 崔晓斐 制作,域完整性与约束规则 域完整性是数据类型的定义属于域完整性的范畴:比如对数值型字段,通过指定不同的宽度说明不同范围的数值数据类型,从而可以限定字段的取值类型和取值范围。但这些对域完整性还远远不够,还可以用一些域约束规则来进一步保证域完整性。域约束规则也称作字段有效性规则,在插入或修改字段值时被激活,主要用于数据输入正确性的检验。 建立字段有效性规则:在表设计器的“字段”选项卡中,有“规则”(字段有效性规则)、“信息”(违背字段有效性规则时的提示信息)、“默

16、认值”(字段的默认值)三项。,信息技术学院 崔晓斐 制作,3 参照完整性与表之间的关联 参照完整性与表之间的联系有关,它的大概含义是:当插入、删除或修改一个表中的数据时,通过参照引用相互关联的另一个表中的数据,来检查对表的数据操作是否正确。 参照完整性的建立是在数据库设计器里完成的 “更新规则”:用于设置修改父表中的关键字值时所应遵循的规则。 “级联”:则在修改父表中的关键字值时,自动更新子表中的有关记录的相关字段值; “限制”:若子表中存在相关的记录,则禁止修改父表中相应的关键字值(更改父表中相应的关键字值就会产生“触发器失败”的提示信息); “忽略”:则无论子表中是否存在相关记录,均允许修

17、改父表中的关键字值。,信息技术学院 崔晓斐 制作,“删除规则” :用于设置删除父表中的记录时所应遵循的规则。在“删除规则”选项卡中包含有“级联”、“限制”和“忽略”3个单选按钮,各单选按钮的功能如下: “级联”,则在删除父表中的记录时,自动删除子表中的相关记录; “限制”,若子表中存在相关的记录,则禁止删除父表中的相应的记录; “忽略”,则不管子表中是否存在相关记录,均允许删除父表中的记录。 “插入规则” :用于设置在子表中插入新的记录或更新已存在的记录时所应遵循的规则。在“插入规则”选项卡中包含有 “限制”和“忽略”2个单选按钮,各单选按钮的功能如下: “限制”,若父表中没有相应的关键字值,则禁止在子表中插入与该关键字值对应的记录,或将原有记录的相关字段值修改为该关键字值; “忽略”,则不管父表中是否存在相关记录,均允许在子表中插入新记录。,信息技术学院 崔晓斐 制作,习 题 编辑参照完整性 更新:级联 删除:级联 插入:限制 将学生成绩表的”计算机”字段默认值设为”70”,设置有效规则为计算机=0 and 计算机=100,出错提示信息设置为:”计算机成绩必须在0到100之间”,标题设为”计算机成绩”,信息技术

温馨提示

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

评论

0/150

提交评论