当前位置:文档之家› 表的关联与数据库

表的关联与数据库


等级考试题
设有两个数据库表,父表和子表之间是一对多 的联系,为控制子表和父表的关联,可以设置 “参照完整性规则”,为此要求这两个表 A) 在父表连接字段上建立普通索引,在子表连 续字段上建立主索引 B) 在父表连接字段上建立主索引,在子表连续 字段上建立普通索引 C) 在父表连接字段上不需要建立任何索引,在 子表连接字段上建立普通索引 D) 在父表和子表的连接字段上都要建立主索引
表间关系的编辑
数据库表之间建立的永久关系也可以进行编辑,双击 表之间的连线(或右击表间连线,选择“编辑关系”),则 出现如下对话框,可进行关系编辑。 若要删除表之间的关系,选中此连线后按Delete键(或 右击表间连线,选择“删除关系”)。
设置参照完整性
处理表中的数据时,最大的问题就是
如何保证存储在不同表中的数据的一 致性。
永久关系前提
数据库中两表间建立永久关系时,这两 个表要有公共字段,并在公共字段上建立了 结构复合索引
一 对 一 关 系
子表:主索引
父表:主索引
一对多关系
子表:普通索引 父表:主索引
用鼠标建立索引
索引的类型
索引表达式
在“数据库设计器”中建立永久关 系
方法:
从建立关系的主 索引或候选索引处 开始,按住鼠标左 键拖拉到另一个数 据库表的索引字段 上,此时两个表之 间出现一条线,该 线被称为关系线。
使用数据库
打开数据库命令: OPEN DATABASE <数据库名> 关闭数据库命令: CLOSE DATABASE 修改数据库命令: MODIFY DATABASE <数据库名> 删除数据库命令: DELETE DATABASE <数据库名>

数据库表与自由表
二者可以相互转换 数据库表优越性:
SELECT 3 USE CHOOSE
表的关联
关联的概念: 一个表(子表)的记录指针自
动随另一个表(父表)的记录指针移动而移动。 关联条件:不同表的两个字段值相等。 一对一关联:父1条记录对应子表中1条记录。 一对多关联:父1条记录对应子表中多条记录。 关联类型: 永久联系-在数据库设计器中建立。 临时联系-用set relation 命令建立。
创建数据库
命令格式: CREATE DATABASE <数据库名> 创建数据库时,VF生成三个同名文件, 扩展名分别是: DBC 数据库文件 DCT 数据库备注文件 DCX 数据库索引文件

使用数据库设计器或向导
数据库菜单
向数据库中添加、移去表

命令格式: ADD TABLE <表文件名> REMOVE TABLE <表文件名&数据: 保存、添加、修改、删除记录 处理表数据: 查询记录、合并拆分表、统计汇总表数据

知识回顾
VF命令中的子句 记录指针的定位:GO、SKIP、LOCATE 显示表内容: LIST DISPLAY 修改表记录: BROWSE REPLACE 查看修改表结构: LIST/MODIFY STRUCTURE 插入新记录:INSERT、APPEND 删除表记录:DELETE、RECALL、 PACK、ZAP

USE XSCJ in 2 USE XSCJ ALIAS CJ in 2
非当前工作区字段的引用
格式: <工作区别名>.<字段名> <工作区别名> -><字段名>
例如 A.学号 学生.学号 学生->学号
多个表的打开
数据工作区A-J, 1-10
SELECT 1 USE STUDENT
SELECT 2 USE COURSE
数据库表的基本操作
添加add table、移去remove table
建立表间的永久关系
等级考试题
在Visual FoxPro中,下列关于表的叙述正确的是 ______。 A)在数据库表和自由表中,都能给字段定义有效性 规则和默认值 B)在自由表中,能给表中的字段定义有效性规则和 默认值 C)在数据库表中,能给表中的字段定义有效性规则 和默认值 D)在数据库表和自由表中,都不能给字段定义有效 性规则和默认值

长表名与长字段名(自由表10,数据库表128) 表中字段可以设标题、注释、默认值、字段有
效性规则等
设置标题、默认值、有效性规则
二 定义表间关系 基于索引的永久关系
永久关系是数据库表之间的关系,在数 据库设计器中表现为两个表索引之间的连线, 该关系建立后存储在数据库文件中,只要不 改变数据库表之间的关系就一直保留。
等级考试题
Visual FoxPro的“参照完整性”中“插入规则 “包括的选择是______。 A) 级联和忽略 B) 级联和删除 C) 级联和限制 D) 限制和忽略 在Visual FoxPro中,如果在表之间的联系中设置 了参照完整性规则,并在删除规则中选择了“限 制”,则当删除父表中的记录时,系统反应是___。 A) 不做参照完整性检查 B) 不准删除父表中的记录 C) 自动删除子表中所有相关的记录 D) 若子表中有相关记录,则禁止删除父表中记录
参照完整性用于控制数据库中各相关
表间数据的一致性或完整性。
参照完整性
不允许引用数据库中不存在的外键数据 更新规则 删除规则 插入规则

设置参照完整性
①清理数据库。以删除有删除标记的记录。 选择【数据库】菜单中的【清理数据库】命令;
②打开参照完整性生成器。
选择【数据库】菜单中的【编辑参照完整性】命令
“性别”字段的有效性规则:性别=“男”.or.性别=“女” 信 息:只能输入“男”或“女” 默认值:“男”

对数据库xsgl.dbc中的表设置参照完整性
实验作业



创建一个“学生管理”数据库文件,名字为xsgl.dbc, 并向数据库中添加“student.dbf”、“choose.dbf”、 “course.dbf”三张表 在数据库xsgl.dbc中,为表student.dbf和 choose.dbf,表course.dbf和choose.dbf建立一对多 的关联关系 为数据库xsgl.dbc中表student.dbf的“性别”字段 设置字段有效性规则、信息提示和默认值
打开参照完整性生成器。
参照完整性:更新规则
参照完整性:删除规则
参照完整性:插入规则
小结
工作区选择命令 数据库的基本操作
select <工作区号>
创建create database、打开open database、关 闭close database、修改modify database、删除 delete database

内容提要



多工作区 建立数据库 设置数据库表 建立参照完整性
工作区
设置工作区来实现多个表的操作 VF提供多个工作区,1-10区别名A-J 每个工作区能且只能打开一个表文件 一个表文件不能同时在多个工作区打开

只有一个工作区是当前工作区
工作区的选择与设置

SELE 1 USE STUDENT
相关主题