技术,具体说,数据库设计是指对于一个给定的应用环境,构造最优的数据模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。
数据库建设是硬件、软件和干件的结合三分技术,七分管理,十二分基础数据技术与管理的界面称之为“干件”,数据库设计应该与应用系统设计相结合,结构(数据)设计:设计数据库框架或数据库结构,行为(处理)设计:设计应用程序、事务处理等结构和行为分离的设计
421概念结构设计
概念结构设计的任务是在需求分析阶段产生的需求说明书的基础上,按照特定的方法把它们抽象为一个不依赖于任何具体机器的数据模型,即概念模型。概念模型使设计者的注意力能够从复杂的实现细节中解脱出来,而只集中在最重要的信息的组织结构和处理模式上
对用户要求描述的现实世界可能是一个工厂、一个商场或者一个学校等,通过对其中诸处的分类、聚集和概括,建立抽象的概念数据模型。这个概念模型应反映现实世界各部门的信息结构、信息流动情况、信息间的互相制约关系以及各部门对信息储存、查询和加工的要求等。所建立的模型应避开数据库在计算机上的具体实现细节,用一种抽象的形式表示出来。以扩充的实体联系模型方法为例,第一步先明确现实世界各部门所含的各种实体及其属性、实体间的联系以及对信息的制约条件等,从而给出各部门内所用信息的局部描述在数据库中称为用户的局部视图。第二步再将前面得到的多个用户的局部视图集成为一个全局视图,即用户要描述的现实世界的概念数据模型。
设计概念结构通常有四种方法:自顶向下、自底向上、逐步扩张和混合策略(即将自顶向下和自底向上相结合)。本系统采用的是自底向上的方法,即自顶向下进行需求分析,然后再自底向上的设计概念结构。
数据库的概念设计如图46所示,其反映的是数据库表的关系,具体的表有课程计划表(CourseSchedule)表依赖于课程基本表(Course)学生选课表(Stude
tCourseSchedule)操作表(Appeal)。
18
f天津理工大学2014级软件工程专业设计
图46数据库关系图Figure46Databasediagram
422逻辑结构设计
1可发布课程(编号,名称,状态,授课教师,课序号,学分,课程类别,说明)主键:编号函数依赖编号其他所有属性由函数依赖可知,依赖左端为候选码,所以采购项目属于BCNF2已发布课程(编号,名称,授课教师,课序号,学分,课程类别,开课单位,上课时间,上课地点,选课人数,说明)主键:编号函数依赖r