。第18章 SQL Server应用实 18-1数据库规划与设计 18-2SMS需求分析与功能结构 18-3SMIS数据结构设计及实现 18-4SMIS应用程序的编制 18-5 SQL Server数据库对象设计 数据库设计是数据库应用的关键技术。本章首先 介绍了数据库设计的基本过程,而后基于数据库设技术 和 SQL Server2000知识系统地介绍了学生管理信息系统 实例的需求分析、功能结构、数据结构设计与具体实现、 应用程序的编制等内容
第18章 SQL Server 应用实 例 18-1 数据库规划与设计 18-2 SMIS需求分析与功能结构 18-3 SMIS数据结构设计及实现 18-4 SMIS应用程序的编制 18-5 SQL Server 数据库对象设计 数据库设计是数据库应用的关键技术。本章首先 介绍了数据库设计的基本过程,而后基于数据库设技术 和SQL Server 2000知识系统地介绍了学生管理信息系统 实例的需求分析、功能结构、数据结构设计与具体实现、 应用程序的编制等内容
第18章 SQL Server应用实例 数据库设计是数据库应用的关键技术。本章首先介绍了数据库设计的基本过程, 而后基于数据库设技术和 SQL Server2000知识系统地介绍了学生管理信息系统实例 的需求分析、功能结构、数据结构设计与具体实现、应用程序的编制等内容。 18-1数据库规划与设计 数据库规划与设计是数据库应用、信息系统开发和建设的关键问题与核心技术。数 据库规划是确定整个系统的数据信息需求,完成系统下数据库及其对象的的设计、系统 中关键实体的梳理、属性和它们的组成关系等。数据库设计是指在一个给定的应用环境 下,确定一个最优数据模型和处理模式,建立数据库及其应用系统,使之能够安全、有 效、可靠地存储数据,满足各种用户的应用需求。数据库设计的内容主要包括两个方面 其一是结构设计,即设计数据库框架或数据库结构;其二为行为设计,也就是应用程序 和事务处理等的设计。数据库设计方法较多,不同法其设计数据库系统的步骤划分也各 不相同。著名的新奥尔良方法将数据库设计划分为需求分析、概念设计、逻辑设计和物 理逻辑设计四个步骤。随着数据库设计技术的发展与完善,人们又据此导出了新的、更 贴近实际的设计步骤。通常采用六个步骤的数据库设计方法,即需求分析、概念结构设 计、逻辑结构设计、物理结构设计、数据库实施、数据库运行和维护,图18-1所示为 数据库设计的过程
第18章 SQL Server 应用实例 数据库设计是数据库应用的关键技术。本章首先介绍了数据库设计的基本过程, 而后基于数据库设技术和SQL Server 2000知识系统地介绍了学生管理信息系统实例 的需求分析、功能结构、数据结构设计与具体实现、应用程序的编制等内容。 18-1 数据库规划与设计 数据库规划与设计是数据库应用、信息系统开发和建设的关键问题与核心技术。数 据库规划是确定整个系统的数据信息需求,完成系统下数据库及其对象的的设计、系统 中关键实体的梳理、属性和它们的组成关系等。数据库设计是指在一个给定的应用环境 下,确定一个最优数据模型和处理模式,建立数据库及其应用系统,使之能够安全、有 效、可靠地存储数据,满足各种用户的应用需求。数据库设计的内容主要包括两个方面: 其一是结构设计,即设计数据库框架或数据库结构;其二为行为设计,也就是应用程序 和事务处理等的设计。数据库设计方法较多,不同法其设计数据库系统的步骤划分也各 不相同。著名的新奥尔良方法将数据库设计划分为需求分析、概念设计、逻辑设计和物 理逻辑设计四个步骤。随着数据库设计技术的发展与完善,人们又据此导出了新的、更 贴近实际的设计步骤。通常采用六个步骤的数据库设计方法,即需求分析、概念结构设 计、逻辑结构设计、物理结构设计、数据库实施、数据库运行和维护,图18-1所示为 数据库设计的过程
需求分析 概念结构设计 逻辑设计 逻辑结构设计 数据模型优化 物理设计 物理结构设计 设计、性能预测 数据库实施 物理实现 试验性运行 --------- 数据库运行和维护 图18-1数据库设计过程
物理设计 物理结构设计 设计、性能预测 需求分析 概念结构设计 逻辑设计 逻辑结构设计 数据模型优化 数据库实施 物 理 实 现 试验性运行 数据库运行和维护 图18-1 数据库设计过程
18-1-1需求分析 用户对数据库的使用要求主要包括对数据及其处理的要求,对数据完整性、安全 性的要求。在需求分析阶段主要通过仔细调査准确掌握每一个用户对数据库的要求, 提供后续设计阶段所需的一些内容,主要涉及应用环境分析、数据流程分析、数据 需求的收集与分析等。需求分析是整个设计过程的基础,是最困难、最耗损时间的 步,其准确与否将直接影响后续各个设计阶段。最终将影响到设计结果是否合理 和实用。 18-1-2概念结构设计 在准确抽象出现实世界的需求并完成需求设计后,就可以考虑如何实现用户的具体要求,进 行概念设计了。该阶段要做的各种工作不是直接将需求分析得到的数据存储格式转换成数据 库管理系统(DBNS)能处理的数据库模式,而是将需求分析得到的用户需求抽象为反映用 户观点的概念模型,即实施概念结构设计。概念结构设计是整个数据库设计的关键。如前所 述,描述概念结构设计的有力工具是实体-联系(E-R)模型,在此,概念结构设计就归结为 E-R模型、方法的分析与设计。 ER方法是面向问题的概念性模型,与数据的存储组织、存取方法、效率等无关,即它不考虑 这些数据在DBMS中态势如何。 运作ER方法的基本步骤如下: (1)划分和确定实体类型与关系类型。实体与实体间联系最好为一对多关系。 (2)确定属性。找出该实体所融涵的实际属性。 (3)画出E-R图 (4)重复步骤(1)到(3),找出所有实体、关系、属性及属性值集合
18-1-1 需求分析 用户对数据库的使用要求主要包括对数据及其处理的要求,对数据完整性、安全 性的要求。在需求分析阶段主要通过仔细调查准确掌握每一个用户对数据库的要求, 提供后续设计阶段所需的一些内容,主要涉及应用环境分析、数据流程分析、数据 需求的收集与分析等。需求分析是整个设计过程的基础,是最困难、最耗损时间的 一步,其准确与否将直接影响后续各个设计阶段。最终将影响到设计结果是否合理 和实用。 18-1-2 概念结构设计 在准确抽象出现实世界的需求并完成需求设计后,就可以考虑如何实现用户的具体要求,进 行概念设计了。该阶段要做的各种工作不是直接将需求分析得到的数据存储格式转换成数据 库管理系统(DBMS)能处理的数据库模式,而是将需求分析得到的用户需求抽象为 反映用 户观点的概念模型,即实施概念结构设计。概念结构设计是整个数据库设计的关键。如前所 述,描述概念结构设计的有力工具是实体-联系(E-R)模型,在此,概念结构设计就归结为 E-R模型、方法的分析与设计。 E-R方法是面向问题的概念性模型,与数据的存储组织、存取方法、效率等无关,即它不考虑 这些数据在DBMS中态势如何。 运作E-R方法的基本步骤如下: (1)划分和确定实体类型与关系类型。实体与实体间联系最好为一对多关系。 (2)确定属性。找出该实体所融涵的实际属性。 (3)画出E-R图。 (4)重复步骤(1)到(3),找出所有实体、关系、属性及属性值集合
18-1-3逻辑结构设计 逻辑结构设计的任务是将概念结构(如E-R图)转换为与选用数据库管理系统(DBMS) 所支持的薮据模型相符的逻辑数据模型,并同时进行数据模型优化。究竟选择哪种数据库管理 系统,一般由系统分析员、系统管理员和用户(企业、公司或政府部门的高级管理人员)决定 的,需要综合考虑数据库管理系统的性能及所设计的应用系统的功能复杂程度。 在关系型数据库管理系统( RDBMS)中,逻辑结构的设计系指设计数据库中所应包含的各个 关系模式的结构,包括关系模式的名称、每一种关系模式各属性的名称、数据类型和取值范围 等内容。通常,逻辑结构设计中,概念结构转换过程分成两步进行。首先把概念结构向一般的 数据模型转换,然后向特定的数据库管理系统支持下的数据模型转换并进行数据模型优化。 18-1-4物理结构设计 物理结构设计是为所给定的逻辑结构模型选择最适合应用环境的物理结构,主要是对数据库在 物理设备上的存储结构和存取方法的设计。物理结构设计是以逻辑结构设计的结果作为输入, 结合具体数据库管理系统功能及其提供的物理环境与工具、应用环境与数据存储设备,进行数 据的存储组织和方法设计,并实施设计与性能预测。 18-1-5数据库实施 数据库实施的主要任务是根据逻辑结构设计与物理结构设计的结果,在系统中建立数据库 的结构,载入数据,编制、测试与调试应用程序,对数据库应用系统进行试运行等
逻辑结构设计的任务是将概念结构(如E-R图)转换为与选用数据库管理系统(DBMS) 所支持的数据模型相符的逻辑数据模型,并同时进行数据模型优化。究竟选择哪种数据库管理 系统,一般由系统分析员、系统管理员和用户(企业、公司或政府部门的高级管理人员)决定 的,需要综合考虑数据库管理系统的性能及所设计的应用系统的功能复杂程度。 在关系型数据库管理系统(RDBMS)中,逻辑结构的设计系指设计数据库中所应包含的各个 关系模式的结构,包括关系模式的名称、每一种关系模式各属性的名称、数据类型和取值范围 等内容。通常,逻辑结构设计中,概念结构转换过程分成两步进行。首先把概念结构向一般的 数据模型转换,然后向特定的数据库管理系统支持下的数据模型转换并进行数据模型优化。 18-1-4 物理结构设计 物理结构设计是为所给定的逻辑结构模型选择最适合应用环境的物理结构,主要是对数据库在 物理设备上的存储结构和存取方法的设计。物理结构设计是以逻辑结构设计的结果作为输入, 结合具体数据库管理系统功能及其提供的物理环境与工具、应用环境与数据存储设备,进行数 据的存储组织和方法设计,并实施设计与性能预测。 18-1-5 数据库实施 数据库实施的主要任务是根据逻辑结构设计与物理结构设计的结果,在系统中建立数据库 的结构,载入数据,编制、测试与调试应用程序,对数据库应用系统进行试运行等。 18-1-3 逻辑结构设计
数据库实施的具体步骤如下: (1)数据库数据的载入和应用程序的编制与调试 建立数据库结构; 将原始数据载入数据库 实施应用程序的编制与调试 (2)数据库应用系统的试运行 测试系统逻辑功能的完善性; 考察用户需求的吻合程度; 对数据库进行备份 18-1-6数据库运行和维护 经过数据库实施阶段的试运行后,系统逻辑功能的完善性与用户需求的吻合程度均 已显现并逼近系统要求,且系统已处于一个比较稳定的状态,此时,就可以将系统投入 正式运行了。在数据库系统步入运行后,尚需对数据库作经常性的维护,必须不断对其 进行评价、调整、修改。该阶段主要涉及如下工作 (1)数据库的转储、恢复及数据库的安全性和完整性控制 (2)数据库性能的检测、分析、完善,甚至还得对数据库实施更新性操作。 设计一个完整的数据库应用系统,往往是这六大阶段重复运用,不断改进、完善的结果
数据库实施的具体步骤如下: (1)数据库数据的载入和应用程序的编制与调试 建立数据库结构; 将原始数据载入数据库; 实施应用程序的编制与调试。 (2)数据库应用系统的试运行 测试系统逻辑功能的完善性; 考察用户需求的吻合程度; 对数据库进行备份。 经过数据库实施阶段的试运行后,系统逻辑功能的完善性与用户需求的吻合程度均 已显现并逼近系统要求,且系统已处于一个比较稳定的状态,此时,就可以将系统投入 正式运行了。在数据库系统步入运行后,尚需对数据库作经常性的维护,必须不断对其 进行评价、调整、修改。该阶段主要涉及如下工作: (1)数据库的转储、恢复及数据库的安全性和完整性控制。 (2)数据库性能的检测、分析、完善,甚至还得对数据库实施更新性操作。 设计一个完整的数据库应用系统,往往是这六大阶段重复运用,不断改进、完善的结果。 18-1-6 数据库运行和维护
18-2SMIS需求分析与功能结构 随着教育事业的不断发展,学校的规模不断扩大,学生数量及其信息量的急剧增加,有 关学生的各种信息管理也随之展开。学生管理信息系统(SMIs: Student Management Information Systen)应运而生了,它可用来管理学生信息与提高系统管理工作的效率。 SNs把 Visual Basic(前台开发)与 SQL Server2000(后台管理)有机地结合,并运 用流行的AD○等相关技术,完成学生信息的规范管理、科学统计和快速査询,从而可大 大减少该管理上的工作量 数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应 用系统的效率以及实现的效果产生影响。合理的数据库结构设计可以提高数据库存储的 效率,保证数据的完整性和一致性。同时,合理的数据结构也将有利于程序的顺利实现。 1.需求分析及主要任务 系统开发的总体任务是实现学生信息关系的系统化、规范化和自动化 需求分析是在系统开发总体任务的基础上完成的,设计数据库系统时应该充分了解用户 的各方面的需求,包括目前及将来可能拓展的需求态势。因而数据库结构势必要充分满 足各种信息的输入和输出。据此,可归结出学生信息管理系统所需完成的主体任务。 SMS主要任务如下: (1)基本信息的输入。包括学籍(学生基本)信息,班级、课程和成绩等信息的输入。 (2)基本信息的修改。包括学籍信息、班级、课程和成绩等信息的修改。 (3)基本信息的査询。包括学籍信息和成绩信息等的查询。 (4)年级信息及班级信息的设置等。 (5)学校基本课程信息的输入、修改和设置 (6)学籍信息与课程信息的统计打印。 (7)班级信息和成绩信息等的统计打印。 (8)软件系统的管理。包括学生信息管理系统的初始化、密码设置、用户管理等。 (9)系统帮助。包括学生信息管理系统的帮助和系统版本说明等
随着教育事业的不断发展,学校的规模不断扩大,学生数量及其信息量的急剧增加,有 关学生的各种信息管理也随之展开。学生管理信息系统(SMIS: Student Management Information System)应运而生了,它可用来管理学生信息与提高系统管理工作的效率。 SIMS把Visual Basic(前台开发)与SQL Server 2000(后台管理)有机地结合,并运 用流行的ADO等相关技术,完成学生信息的规范管理、科学统计和快速查询,从而可大 大减少该管理上的工作量。 数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应 用系统的效率以及实现的效果产生影响。合理的数据库结构设计可以提高数据库存储的 效率,保证数据的完整性和一致性。同时,合理的数据结构也将有利于程序的顺利实现。 1.需求分析及主要任务 系统开发的总体任务是实现学生信息关系的系统化、规范化和自动化。 需求分析是在系统开发总体任务的基础上完成的,设计数据库系统时应该充分了解用户 的各方面的需求,包括目前及将来可能拓展的需求态势。因而数据库结构势必要充分满 足各种信息的输入和输出。据此,可归结出学生信息管理系统所需完成的主体任务。 SIMS主要任务如下: (1) 基本信息的输入。包括学籍(学生基本)信息,班级、课程和成绩等信息的输入。 (2) 基本信息的修改。包括学籍信息、班级、课程和成绩等信息的修改。 (3) 基本信息的查询。包括学籍信息和成绩信息等的查询。 (4) 年级信息及班级信息的设置等。 (5) 学校基本课程信息的输入、修改和设置。 (6) 学籍信息与课程信息的统计打印。 (7) 班级信息和成绩信息等的统计打印。 (8) 软件系统的管理。包括学生信息管理系统的初始化、密码设置、用户管理等。 (9) 系统帮助。包括学生信息管理系统的帮助和系统版本说明等。 18-2 SMIS需求分析与功能结构
2.系统总体功能模块结构 基于需求分析及主要任务的表述,可对上述各项功能按照结构化程序设计的要求进行集中、分层 结构化,自上而下逐层设置得到系统功能模块结构图,如图18-2所示。 学生信息管理系统 成 桑统帮 课程管 班级管理 系 统 派修查打 设添億打添德套系用密退 加询印量加改电 成成成成 统码每 绩绩绩绩程程程 学学学学初管管系 信信∏信管信管信 息息息息息息息 课程信息 信倍点/元∥/理理统 息息息 关 系统说明 加 修改 班班 打印班 级级级 息息息 图18-2系统功能模块结构图
2.系统总体功能模块结构 基于需求分析及主要任务的表述,可对上述各项功能按照结构化程序设计的要求进行集中、分层 结构化,自上而下逐层设置得到系统功能模块结构图,如图18-2所示。 图18-2 系统功能模块结构图 添 加 学 籍 信 息 修 改 学 籍 信 息 查 询 学 籍 信 息 打 印 学 籍 信 息 系 统 初 始 化 用 户 管 理 密 码 管 理 退 出 系 统 打 印 课 程 信 息 设 置 课 程 信 息 添 加 课 程 信 息 修 改 课 程 信 息 添 加 成 绩 信 息 修 改 成 绩 信 息 查 询 成 绩 信 息 打 印 成 绩 信 息 系 统 帮 助 成 绩 管 理 课 程 管 理 学生信息管理系统 班 级 管 理 学 籍 管 理 系 统 管 理 添 加 班 级 信 息 修 改 班 级 信 息 打 印 班 级 信 息 系 统 说 明 关 于
3.系统数据流程 用户的需求具体体现在各种信息的提供、保存、更新、査询和统计打印上,这就要求数据库 结构应充分满足各种信息的输入和输出。系统应定义数据结构、收集基本数据以及设置数据 处理的流程,组成一份详尽的数据字典,为而后的具体设计打下基础与伏笔。在仔细分析 调查有关学生信息管理需要的基础上,得到本系统的数据流程图,如图18-3所示。 18-3SMIS数据结构设计及实现 课程设表 表倍息/查淘 打印 学籍信息表桑统信息表 处理 查询处理信息 成绩信息表班级信息表 学生综合信息 报表综 院系等/合信息 管理员课程信息 数据 学生信息 处理 教务处 学生信息 /学生综合信 学生 系统信息 图18-3系统数据数据流程图
3.系统数据流程 用户的需求具体体现在各种信息的提供、保存、更新、查询和统计打印上,这就要求数据库 结构应充分满足各种信息的输入和输出。系统应定义数据结构、收集基本数据以及设置数据 处理的流程,组成一份详尽的数据字典,为而后的具体设计打下基础与伏笔。在仔细分析、 调查有关学生信息管理需要的基础上,得到本系统的数据流程图,如图18-3所示。 表信息 学生综合信息 查询处理信息 学生综合信息 教务处 学 生 院系等 查询 处理 打印 数据 处理 系统信息 学生信息 管理员 课程信息 学生信息 成绩信息表 班级信息表 学籍信息表 系统信息表 课程设置表 报表综 合信息 图18-3 系统数据数据流程图 18-3 SMIS数据结构设计及实现
1.数据库概念结构设计表信息 概念结构设计就是E一R方法的分析与设计,概念结构设计是整个数据库设计的关键。在此,将使 用实体-联系(E-R)模型来描迒系统的概念结构,同时设计出能够满足用户需求的各种实体,以 及它们之间的关系,为后面的逻辑结构设计打下基础。这些实体包含各种具体实际信息,通过相 互之间的作用形成数据的流动 本程序根据上面的设计规划出的实体有:学籍实体、班级实体、年级实体、课程实体与成绩实体, 它们的ER图如图18-4所示。 学号(姓名)班级编)(性别)联系电话)(出生日期入校时间)(家庭地址X备注 属于 学籍 上课 班号 课程类型 课程描述 年级 属于 班级 分数 <课程名称 教室 考试编号 课程编号 学号 成绩 考试 班主任姓名 年级设置 年级信息 课程设置 课程 年级 课程学分 课程名称 图18-4学生管理信息系统ER图
1.数据库概念结构设计表信息 概念结构设计就是E-R方法的分析与设计,概念结构设计是整个数据库设计的关键。在此,将使 用实体-联系(E-R)模型来描述系统的概念结构,同时设计出能够满足用户需求的各种实体,以 及它们之间的关系,为后面的逻辑结构设计打下基础。这些实体包含各种具体实际信息,通过相 互之间的作用形成数据的流动。 本程序根据上面的设计规划出的实体有:学籍实体、班级实体、年级实体、课程实体与成绩实体, 它们的E-R图如图18-4所示。 学号 课程编号 课程名称 课程描述 课程类型 年级设置 属于 班级 课程设置 上课 课程 姓名 班级编 联系电话 号 学号 性别 出生日期 入校时间 家庭地址 备注 学籍 年级信息 属 于 成绩 考试 班号 年级 班主任姓名 教室 考试编号 分数 年级 课程学分 课程名称 图18-4 学生管理信息系统ER图