第4章 数据库的创建与使用
1、数据库的概念与创建 2、数据库的使用 3、数据库表 4、数据库的完整性
4.1 数据库概述
淮 工 东 港 计 算 机 系 课 件 VFP
?数据库与表 ? 数据库的产生:VFP3.0以后,管理系统的需要 ? 数据库的构成:表、视图、关系等
系名表
系代码 系代码
教师表
教师代码 课程代码
课程表
课程代码
学生表
专业代码
教师任 课表
成绩表
专业表
教学
管理系统逻辑模型
4.2 数据库的创建
淮 工 东 港 计 算 机 系 课 件 VFP
?创建
? 可视化(界面)操作方式—项目管理器、新建 ? 命令方式:
? CREATE DATABASE 数据库名|? ? 生成文件:DBC—数据库/DCT—备注/DCX—索引
?组成
? 数据库表:从属于某一数据库的表
? 与数据库的链接:前链—数据库中记录保存表的相关信息; 后链—表文件头中记录与数据库的相关信息 ? 一个表只能与属于一个数据库
? 视图:从不同的表中取得的以满足一定
查询要求的相关数 据集合的映象—虚表,包括本地与过程两类 ? 连接:描述一个远程数据源的定义说明,其目的是使用远 程数据。 ? 存储过程:与数据库及对象相关的过程代码,包括自定义 函数、反映表间关系与完整性的
系统函数等
4.3 数据库的使用
淮 工 东 港 计 算 机 系 课 件 VFP
?数据库的打开 ? 项目管理器 ? 命令:open database 数据库名 ?当前数据库的设定 ? SET DATABASE TO 数据库名 ?检查数据库:数据库打开或使用出现问题时 ? 1、打开相应的数据库 ? 2、VALIDATE DATABASE [RECOVER] ?关闭数据库 只检查更新 ? CLOSE DATABASE 链接 ?删除数据库:项目管理器
4.5 数据库表
淮 工 东 港 计 算 机 系 课 件 VFP
?数据库表及创建:界面法与命令法
? 完整的创建命令CREATE TABLE
?数据库表的扩展属性设置
? 显示属性
? 字段格式:显示字段时的格式(表4-1) ? 输入掩码:指定字段中数据的输入格式(表4-2) ? 字段标题与注释:解决字段名选择与可读性的矛盾
? 字段验证:限定字段的取值与范围
? 字段有效性规则与信息(对已有记录的表设置注意) 例:成绩必须在0—100之间:规则—cj>=0 and cj<=100 信息:“成绩必须在0—100之间” ? 默认值:
– 字段本身的默认值(表4-3)
– 默认值的改变:当字段的大部分记录的值相同或类似时,减少 输入的工作量。如性别(xb)、记帐日期(jzrq)
4.5.2 数据库表扩展属性的设置
淮 工 东 港 计 算 机 系 课 件 VFP
?数据库的扩展属性设置 ? 字段的默认控件类 ? 数据库扩展属性的设置命令
? CREATE TABLE中
– CHECK子句、DEFAULT子句,紧跟在字段说明之后
? ALTER TABLE中
– SET|DROP CHECK、SET|DROP DEFAULT
4.5.3
数据库表的表属性设置
淮 工 东 港 计 算 机 系 课 件 VFP
?
问题:扩展属性通常是针对某个字段的,如
何设置针对整个表的相关属性?
? 长表名 ? 记录验证 ? 触发器:插入、删除、更新
?设置方法:表设计器、命令 ?1、长表名与注释 ? 表设计器 ? 命令:NAME子句,紧跟在表名之后
4.5.3 数据库表的表属性设置
淮 工 东 港 计 算 机 系 课 件 VFP
?2、记录验证:记录有效性规则与信息,反
映字段之间关系的规则。移动记录指针或关闭 表时起作用
? 例如:教师表(js)中设置:
? gzrq > csrq &;&;
工作日期应该大于出生日期
?3、触发器 ? 规则是针对字段或记录而言,而触发器则针对 操作而言,有三类:插入、删除、更新 ? 触发时机:执行了指定操作并且进行了其他所 有的检查后执行,所以它是最后触发的。 ? 设置方法(不能设置提示信息)
? 表
设计器 ? 命令:CREATE TRIGGER ON 表名
4.5.4 数据库表的约束机制与激活时机
淮 工 东 港 计 算 机 系 课 件 VFP
?约束机制与激活
约束机制
NULL
字段有效性 记录有效性 候选/主索引 VALID子句
对象
字段
字段 记录 记录 表单
激活时机
字段值改变或经过该字段后
同上 记录的值改变后 同上 移出记录时
触发器
表
执行了相应操作造成记录的值改变后
4.5.5-6 数据库表的索引与对象的增减
淮 工 东 港 计 算 机 系 课 件 VFP
?1、索引:可以设置