数据库与表的基本操作.ppt

上传人:za****8 文档编号:15635932 上传时间:2020-08-27 格式:PPT 页数:39 大小:252.50KB
返回 下载 相关 举报
数据库与表的基本操作.ppt_第1页
第1页 / 共39页
数据库与表的基本操作.ppt_第2页
第2页 / 共39页
数据库与表的基本操作.ppt_第3页
第3页 / 共39页
点击查看更多>>
资源描述
第3章 数据库和表的基本操作,目 录,上一页,下一页,退 出,本 章 要 点,3.1 VFP6数据库和表的基本概念 3.2 数据库的基本操作 3.3 表的基本操作 3.4 表间关系和参照完整性 3.5 工作区与多表操作,3. 3 表的基本操作,3.3.1 表的创建 3.3.2 表结构的修改 3.3.3 表的打开浏览关闭 3.3.4 使用命令方式操作表 3.3.5 数据库表索引的创建和使用 3.3.6 数据库表的属性设置,3.3.5 数据库表索引的创建和使用,1. 索引文件的类型 2. 索引的类型 3. 索引的创建 4. 索引的修改和删除 5. 索引的使用,索引是指根据索引表达式的值使表中的记录有序排列的一种技术。 索引的实现:根据索引表达式的值将记录重新排序,并建立索引表用于存储排序后索引关键字的值和记录号之间的对应关系,再将索引表保存在索引文件中。,3.3.5 数据库表索引的创建和使用,对COURSE表按学时索引,索引,索引表,3.3.5 数据库表索引的创建和使用,1. 索引文件的分类 1)复合索引文件 复合索引文件是指包含一个或多个索引表达式的索引文件,以CDX为文件扩展名。 分为结构化复合索引文件和非结构化复合索引文件: 结构化复合索引文件的主名与表文件相同,它能随着表的打开而自动打开,随表的关闭而自动关闭;在对表中记录进行增加、删除和修改时,会自动进行更新维护。 非结构化复合索引文件的主名与表文件不同,使用不方便。,3.3.5 数据库表索引的创建和使用,2)独立索引文件 独立索引文件(也称单一索引文件)是指仅包含一个索引表达式的索引文件,以IDX为文件扩展名。一个表可以建立多个独立索引文件。只在建立临时索引时才用。本课程不做介绍。 课程主要介绍结构化复合索引文件的建立和使用。,3.3.5 数据库表索引的创建和使用,2. 索引的类型 1)主索引 能对记录进行唯一标识,在表中起主关键字的作用并决定记录的逻辑顺序。用于建立主索引的字段表达式无NULL值和重复值,确保字段输入值的唯一性。只有数据库表才能建立主索引,且只能有一个主索引。 2)候选索引 候选索引同主索引一样,它的索引表达式无NULL值和重复值,在表中起候选关键字的作用。数据库表和自由表都可以建立候选索引,一个表可以建立多个候选索引。,3.3.5 数据库表索引的创建和使用,3)普通索引 普通索引决定记录的逻辑顺序,但它允许索引表达式有重复值。数据库表和自由表都可以建立候选索引,一个表可以建立多个普通索引。 4)唯一索引 允许索引表达式有重复值,但重复的索引字段值只有唯一一个值出现在索引表中,即含有相同索引表达式的多条记录只有第一条有效。数据库表和自由表都可以建立唯一索引,一个表可以建立多个唯一索引。,3.3.5 数据库表索引的创建和使用,唯一索引和普通索引只能起到索引排序的作用,而主索引和候选索引除了具有排序的功能外,还可以用于保证记录的唯一性及主键、候选键无空值。 VFP正是利用主索引和候选索引实现关系的实体完整性。,3.索引的创建 1)使用表设计器建立结构化复合索引 索引名:可以与字段同名,必须是唯一的 索引类型:主索引、候选索引、普通索引、唯一索引 排序方式:升序或降序 索引表达式:一个或多个字段组成 筛选,3.3.5 数据库表索引的创建和使用,2)使用命令方式建立索引 INDEX ON TAG OF FOR ASCENDING|DESCENDING UNIQUE|CANDIDATE ADDITIVE 命令既能创建结构化复合索引,也能创建非结构化复合索引,但命令不能建立主索引。,3.3.5 数据库表索引的创建和使用,例3.15 对STUDENT表,按出生日期建立索引,索引名为RQ USE STUDENT INDEX ON 出生日期 TAG RQ 例3.16 对STUDENT表,先按专业再按姓名建立索引,索引名为ZYXM INDEX ON 专业+姓名 TAG ZYXM,3.3.5 数据库表索引的创建和使用,3.索引的修改和删除 1)修改索引 可以在表设计器中直接修改结构化复合索引的索引名、索引表达式、排序等。 2)删除索引 可以在表设计器中直接删除结构化复合索引; 或者可以使用命令删除索引,命令格式如下: DELETE TAG OF ,3.3.5 数据库表索引的创建和使用,4.索引的使用 1)设置主控索引 结构化复合索引文件中允许有多个索引,但某一时刻,只能有一个索引可以使用,称该索引为主控索引。 设置为主控索引的方法: (1)打开已建好索引的表,打开“浏览器”,从“表”菜单中选择“属性”,打开“工作区属性”。,3.3.5 数据库表索引的创建和使用,(2)在数据工作期中,选择表,单击“属性”按钮,打开“工作区属性”。 (3)用命令设置主控索引 SET ORDER TO ,3.3.5 数据库表索引的创建和使用,2)利用索引快速定位记录 SEEK 查找主控索引表达式的值与SEEK命令指定表达式的值相匹配的第一条记录,若找到,将指针指向该记录,否则指向文件结束位置。 注意:在使用SEEK命令前,必须建立相应的索引,索引表达式的值与SEEK表达式的值必须是同类型且含义相同,并将该索引设置为主控索引。,3.3.5 数据库表索引的创建和使用,例3.17 查找STUDENT表“社会学”专业的记录 USE STUDENT INDEX ON 专业 TAG ZY SET ORDER TO ZY SEEK 社会学,3.3.5 数据库表索引的创建和使用,3 .3. 6 数据库表的属性设置,数据库表的属性包括字段属性和记录属性。字段属性包括字段的显示属性和字段有效性规则;而记录属性包括记录的有效性规则和触发器。 1. 字段属性的设置 2. 记录属性的设置,1.字段属性 字段的显示属性 (1)格式:控制字段在浏览器、表单、报表等界面中显示时的格式。 (2)输入掩码:控制向字段输入数据的格式,用于限制输入数据的范围,控制输入的正确性,输入掩码是按位来定制。 (3)标题:浏览表时字段显示的列标题,3 .3. 6 数据库表的属性设置,字段有效性规则 字段有效性规则,在插入或修改字段值时进行正确性检查,它是Visual FoxPro实现域完整性的手段。 (1)规则:用于检查输入的字段数据的正确性。 (2)信息:当在该字段输入了不符合“规则”的数据时,显示给用户的提示信息,设置时必须使用定界符。 (3)默认值:用于指定字段的默认值,提高输入速度。 例P72,3 .3. 6 数据库表的属性设置,2. 记录属性 记录有效性规则 记录的有效性规则用于检查同一记录中不同字段之间的逻辑关系。 (1)规则:用于检查输入的记录数据是否符合要求。 (2)信息:根据规则进行检查时,若记录的数据不符合“规则”,显示给用户的提示信息。,3 .3. 6 数据库表的属性设置,触发器 当对记录进行操作时,若设置了触发器,则对触发器设置的条件表达式进行验证,若其值为真.T.,则允许进行相关操作,否则,则拒绝操作。 插入触发器:当向表中插入或追加记录时,判断其表达式的值,为“真”允许插入或追加,为“假”不允许插入或追加。 更新触发器:当要修改记录时,判断其表达式的值,为“真”允许修改,为“假”不允许修改。 删除触发器:当要删除表中记录时,判断其表达式的值,为“真”允许删除,为“假”不允许删除。,3 .3. 6 数据库表的属性设置,本 章 要 点,3.1 VFP6数据库和表的基本概念 3.2 数据库的基本操作 3.3 表的基本操作 3.4 表间关系和参照完整性 3.5 工作区与多表操作,3.4 永久关系与参照完整性,数据库表间的永久关系是体现多表间联系的一种方法,永久关系作为数据库的一部分被保存在数据库中。 参照完整性的作用:在增加、删除和修改一个表中的数据时,通过参照相互关联的另一个表的数据,来检查对数据的操作是否正确,它是关系完整性约束的一个重要部分。,3.4.1 永久关系的建立,永久关系分为两种类型: 一对一关系和一对多关系 在数据库表之间建立永久关系时,发起关联的表称为父表(主表),被关联的表称为子表。父表和子表要有一个共同属性。 (1)一对一关系 父表和子表均按共同属性建立主索引或候选索引。 (2)一对多关系 作为一方的父表按共同属性建立主索引或候选索引,而作为多方的子表则按共同属性建立普通索引。,3.4.1 永久关系的建立,例3.19 在“教学管理”数据库中,为STUDENT和GRADE表建立一对多的永久关系。步骤如下: 打开“教学管理”数据库。 首先确定STUDENT表为父表(一方)、GRADE表为子表(多方)、共同的属性为学号字段,然后分别为STUDENT表和GRADE表按学号字段建立主索引和普通索引。 在数据库设计器中,用鼠标将STUDENT表的“学号”索引拖动到GRADE表的“学号”索引,3.4.1 永久关系的建立,两张表之间的连线即为永久关系,3.4.2 参照完整性的定义及操作,由于参照完整性涉及两个相关的表,因此首先需要建立两表间的永久关系。 在建立参照完整性之前必须首先清理数据库即物理删除数据库各个表中所有带删除标记的记录。 用鼠标右键单击永久关系,从快捷菜单中选择“编辑参照完整性“ 参照完整性规则包括更新规则、删除规则和插入规则。,本 章 要 点,3.1 VFP6数据库和表的基本概念 3.2 数据库的基本操作 3.3 表的基本操作 3.4 表间关系和参照完整性 3.5 工作区与多表操作,3.5 工作区与多表操作,1工作区 工作区是内存中的独立存储区域,在一个工作区中只能打开一张表,要打开多张表,就必须使用多个工作区,Visual FoxPro系统设置了32767个工作区。 为了区别不同的工作区,系统规定了三种识别工作区的方法: (1)区号:用数字132767表示; (2)区名:对于前10区,分别用字母AJ表示; (3)别名:用在工作区中打开的表的别名,若无别名,系统以表名为别名。,3.5 工作区与多表操作,2当前工作区 系统允许使用多个工作区打开多张表,但在某一时刻只能在一个工作区中进行操作,该工作区为当前工作区。系统默认第一个工作区为当前工作区,要选择其它工作区为当前工作区,需用使用命令: SELECT |0 注意:命令SELECT 0表示选择尚未使用过的工作区中区号最小的工作区为当前工作区。,3.5 工作区与多表操作,例3.20 在1号和2号工作区打开STUDENT表和GRADE表,然后将1号工作区设置为当前工作区。 CLOSE TABLE ALL SELECT 1 USE STUDENT ALIAS STUD SELECT 0 等价命令:SELECT 2|SELECT B USE GRADE SELECT STUD 等价命令:SELECT 1|SELECT A,3.5 工作区与多表操作,3引用非当前工作区的字段 用户可以对当前工作区中的表直接进行操作,要访问其它工作区的表,就必须采用: .或者- 例,在当前工作区显示STUDENT表首记录的学号字段,GRADE表首记录的成绩和课程号字段的内容。 ? 学号,B.成绩,GRADE.课程号 或者 ? 学号,B-成绩,GRADE-课程号,3.5 工作区与多表操作,4表间的临时关系(也称关联) 要建立临时关系的两张表也有父表(主表)与子表之分,但这种关系并不固定,可根据实际应用进行改变。 建立临时关系的前提是父表和子表要有共同属性。,临时关系与永久关系的区别: 1)临时关系可以在自由表之间、库表之间或自由表与库表之间建立,而永久关系只能在库表之间建立。 2)临时关系在表打开之后使用set relation命令建立,随表的关闭而解除;永久关系永久地保存在数据库中而不必在每次使用表时重新创建。 3)临时关系是用来在打开的两张表之间控制相关表之间记录的访问;而永久关系主要是用来存储相关表之间的参照完整性。,3.5 工作区与多表操作,要建立临时关系有三种常用的方法 (1)使用数据工作期 (2)使用命令方式(P78,例3.22) SET RELATION TO INTO (3)使用数据环境设计器,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!