数据库应用与开发教程(ADO.NET+SQL Server 单元01 数据库设计

上传人:E**** 文档编号:89441956 上传时间:2019-05-25 格式:PPT 页数:48 大小:2.28MB
返回 下载 相关 举报
数据库应用与开发教程(ADO.NET+SQL Server 单元01 数据库设计_第1页
第1页 / 共48页
数据库应用与开发教程(ADO.NET+SQL Server 单元01 数据库设计_第2页
第2页 / 共48页
数据库应用与开发教程(ADO.NET+SQL Server 单元01 数据库设计_第3页
第3页 / 共48页
数据库应用与开发教程(ADO.NET+SQL Server 单元01 数据库设计_第4页
第4页 / 共48页
数据库应用与开发教程(ADO.NET+SQL Server 单元01 数据库设计_第5页
第5页 / 共48页
点击查看更多>>
资源描述

《数据库应用与开发教程(ADO.NET+SQL Server 单元01 数据库设计》由会员分享,可在线阅读,更多相关《数据库应用与开发教程(ADO.NET+SQL Server 单元01 数据库设计(48页珍藏版)》请在金锄头文库上搜索。

1、单元一,数据库设计,课程项目展示,:学生信息系统演示,:图书管理系统演示,课程地位,HTML/ JavaScript,SQL Server,C#/WinForms,程序设计基础,Access,Ajax/Web Service,ASP.Net,数据库工程师,。NET开发工程师,系统维护工程师,桌面数据库系统,B/S系统,课程技能目标,ud,Sql 数据库,为系统设计数据库 Management Studio的基本操作 创建数据库、表、检查约束 创建视图、索引 编写T-SQL执行数据查询 创建存贮过程 创建触发器 管理数据库的安全 备份和恢复数据库,ADO.NET,使用Connecction、Co

2、mmand对象 使用DataAdaper、DataSet对象 使用DataGridView、DataView、DataRelation对象 制作水晶报表 ADO.NET对事务的支持 在ADO.NET调用存贮过程 使用TreeView控件 系统部署,本章任务,任务一 学生信息系统功能设计 任务二 绘制Student数据库的E-R图 任务三 将Student数据库的E-R图转化为数据表 任务四 用三范式规范Student数据库的设计,新增管理员,新增教师,新增学生,本章目标,理解关系型数据库的基本概念 了解设计数据库的主要步骤 掌握绘制数据库的E-R图 理解数据库设计的规范化,任务一 学生信息系统

3、功能设计,任务描述:,任务分析:,广东*职业技术学院是广东省政府批准设立的普通高等学校。近年来,随着教育管理信息化的日益深入和高校招生规模的扩大,传统的人工管理方式己不适合新形势的需要,学校教务处希望建设一套学生信息系统,实现对学生从入学到毕业全过程的系统管理。 建设学生信息系统,首先要根据用户需求,明确系统的功能设计,确定系统的详细功能模块和数据结构,为下阶段开发工作提供依据。,信息系统的建设,首先要分析用户需求,然后进行系统设计,确定系统开发平台和系统功能设计,信息系统的功能设计目的,是为了划分系统的各个功能,以及各工作岗位与各功能模块的关系图,在该阶段,有以下工具可使用。 系统功能结构图

4、 岗位/功能模块使用关系图,1.数据库与数据库信息系统,数据库,就是数据存放的地方。 数据库信息系统是指在计算机系统中引入数据库后构成的系统。 例如:,营业厅打印话费清单,查询银行帐户信息,查询招聘信息,2.目前常用数据库,以商用数据库为主导,SQL Server,针对不同用户群体的多个版本 易用性好,Oracle,Oracle公司的产品 “关系-对象”型数据库 产品免费、服务收费,MySQL,开源社区支持 MySQL 和 php 的结合相当完美,DB2,IBM公司的产品 支持多操作系统、多种类型的硬件和设备,任务实施,1. 系统开发环境 2. 系统功能结构图 3. 系统功能简介 4.项目小组

5、人员分工列表,1. 系统开发环境,.NET 是微软公司推出的平台开发环境 C#是一种强大的、面向对象的程序开发语言,是专为 .NET 开发而设计出的语言,2. 系统功能结构图,学生信息系统功能结构图,3. 系统功能简介,学生信息系统从功能上分为登录模块和主程序模块2大部分。 登录模块:主要用于登录高校学生信息系统,是进入系统的第一步,主要涉及用户类别、用户号、密码的检测判断和用户验证。 主程序模块是整个系统的操作界面,包括班级管理、人员管理、课程管理、成绩管理、奖惩管理、奖学金管理、信息查询、统计报表、系统帮助和退出等模块。下面分别介绍这些模块的功能。 班级管理模块:包括班级信息的增加、班级信

6、息浏览和班级信息查询等功能 人员管理模块:包括新增各类人员(包括学生、教师和管理员)、人员信息维护,该模块还应设计毕业生走向资料录入模块 课程管理模块包括课程设置、课程查询、按年级浏览课程和按任课教师浏览课程等功能 ,4. 项目小组人员分工列表,任务二 绘制Student数据库的E-R图,任务描述:,任务分析:,“建筑行业有施工图,数据库概要设计要有E-R图”,我们需要依据E-R图与教务秘书、老师、学生等沟通,讨论数据库概要设计是否满足客户需求。,E-R图是数据库概要设计的图形化表达方式,要绘制E-R图,首先要了解为什么需要规范的数据库设计,然后掌握数据库概要设计的步骤,最后要掌握E-R图的各

7、要素及绘制方法,标示出实体以及实体之间的联系。,1.为什么需要设计数据库,修建茅屋需要设计吗?,修建大厦需要设计吗?,结论:当数据库比较复杂时我们需要设计数据库,为什么需要设计数据库,良好的数据库设计 节省数据的存储空间 能够保证数据的完整性 方便进行数据库应用系统的开发,糟糕的数据库设计: 数据冗余、存储空间浪费 内存空间浪费 数据更新和插入的异常,2.软件项目开发周期,需求分析阶段:分析客户的业务和数据处理需求; 概要设计阶段:设计数据库的E-R模型图,确认需求信息的正确和完整; 详细设计阶段:将E-R图转换为多张表,进行逻辑设计,并应用数据库设计的三大范式进行审核; 代码编写阶段:选择具

8、体数据库进行物理实现,并编写 代码实现前端应用; 软件测试阶段: 安装部署:,现实世界,数 据 库,3. 实体关系模型,E-R(EntityRelationship)实体关系图,关系类型,映射基数,一对一,X X X X,Y Y Y Y,X X X X,Y Y Y Y,一对多,X X X X,Y Y Y,多对一,X X X X,Y Y Y Y,多对多,任务实施,1. 设计学生数据库 2. 绘制E-R图,设计数据库的步骤1,收集信息: 与该系统有关人员进行交流、坐谈,充分理解数据库需要完成的任务,系统的基本功能: 用户登录,用户包括:教师、学生和管理员,后台数据库需要存放学生信息、教师信息和管理

9、信息。 学籍管理,后台数据库需要存放学生名册及学生的学籍状况。 机构管理,后台数据库需要存放学校的机构信息,包括二级学院、专业、班级信息等。 课程管理,后台数据库需要存放课程的相关信息,包括课程类别、课程性质、课程编码、课程名称、学分、学时分配、总学时、开设学期、考核方式等。 成绩管理,成绩管理主要是针对学生成绩进行管理, 包括学生、课程、期末成绩、平时成绩、总评成绩等。 奖学金管理,主要是针对学生的奖学金进行管理,包括奖学金名称、奖学金来源、奖励范围、获奖条件、等级、金额及评审办法。,设计数据库的步骤2,标识对象(实体Entity) 标识数据库要管理的关键对象或实体,实体一般是名词: 教师:

10、包括所有教师信息。 学生:包括所有学生信息,包括:毕业生、在校生、退学生等。 二级学院、专业、班级信息。 课程信息:学校全部课程信息。 成绩管理:学生每门课程的成绩。 奖学金管理:学生获得的奖学金信息。,设计数据库的步骤3,登录号 登录密码 学号 姓名 性别 身份证号 学生状态(在读、休学、退学、毕业等) 所属专业编号 高中毕业学校 联系电话 地址 邮编 就业意向城市 就业意向岗位 EMAIL QQ号 入学时间 生日 备注,班级名称 班级编码 学期 班主任 人数 备注,专业编码 专业名称 专业负责人 成立时间 简介,学院编码 学院名称 学院领导 简介,标识每个实体的属性(Attribute),

11、设计数据库的步骤4,标识对象之间的关系(Relationship),学院和教师有主从关系。 学院和专业、专业和班级、班级和学生等有主从关系。 学生和奖学金有主从关系。 学生和成绩、课程与成绩有主从关系。,绘制E-R图1,组成,Student (学生),姓名,学号,班级号,班级名,class (班级),N,1,绘制E-R图2,任务三 将E-R图转化为数据表,任务描述:,任务分析:,大宝经理: “我需要详细的数据库逻辑设计文档数据字典,你要从E-R图概念模型导出学生数据库的逻辑结构,包括所有的数据表、每个表的所有列、主外键定义等,并且所有命名必须符合规范,我们下次例会进行评审”,1.熟悉关系模型中

12、的术语(如数据表、列、主键、外键等) 2.掌握将E-R图转化为数据表的方法 3.确定数据库中主要的数据表表名,定义数据表的列(包括列名、数据类型、长度、是否非空等),并标示各表的主外键 4. 编制数据库的数据字典。,1 熟悉关系模型,关系模型指的是用二维表格来表示数据间联系的模型 主键:指表中的某一列或多列,其值能标识一行数据.,外键,外键: 指一个表中的某个字段在另外一个表中为主键,主键,2.将E-R图转换为表,将各实体转换为对应的表,将各属性转换为各表对应的列 标识每个表的主键列 1:n关系。即主从表关系,我们首先确定主表的主键属性列P,然后在从表中增加一列P,并作为从表的外键。 1:1关

13、系。 合并为一张表。 m:n关系。应将多对多关系映射成一张数据表。这个表包括从两个关联实体表的主键的所有属性,这些列构成了表T的主键。该数据表还可包含了连接到多对多关系的所有属性的列 。,任务实施,1 确定数据库命名规范 2 确定数据字典,1 确定数据库命名规范,2 确定数据字典,学院表,专业表,任务四 用三范式规范数据库设计,任务描述:,任务分析:,数据库设计是否达到三范式?,数据表设计应符合第三范式的规则。 1.了解不遵循三范式的数据库设计带来的问题 2.掌握范式理论和判断过程 3.了解范式与性能的关系。,1. 理解设计问题,1 信息重复 2 更新异常 3 插入异常 4 删除异常,2.数据

14、规范化,仅有好的RDBMS并不足以避免数据冗余,必须在数据库的设计中创建好的表结构 Dr E.F.codd 最初定义了规范化的三个级别,范式是具有最小冗余的表结构。这些范式是: 第一范式(1NF) 第二范式(2NF) 第三范式(3NF),第一范式 (1st NF),第一范式的目标是确保每列的原子性 判断标准: 列不可再分, 不能有重复行,选课,第二范式 (2nd NF),如果一个关系满足1NF,并且除了主键以外的其他列,都依赖与该主键,则满足第二范式(2NF) 第二范式要求每个表只描述一件事情,选课,第三范式 (3rd NF),如果一个关系满足2NF,并且除了主键以外的其他列都不传递依赖于主键

15、列,则满足第三范式(3NF),班级,3理解规范化和性能的关系,为满足某种商业目标,数据库性能比规范化数据库更重要 通过在给定的表中添加额外的字段,以大量减少需要从中搜索信息所需的时间 通过在给定的表中插入计算列(如成绩总分),以方便查询 进行规范化的同时,还需要综合考虑数据库的性能。,任务实施,1 判断学生数据库设计达到几范式 2 拆分数据表,使数据库设计达到3范式,1. 判断学生数据库设计达到几范式,逐一审核每张表达到的范式 审核奖学金表,2. 拆分数据表,使数据库设计达到3范式,奖学金表Scholarship(奖学金编号,奖学金名称,来源类别编号,奖励范围,获奖条件) 奖学金金额表Scho

16、larshipPay(金额编号,奖学金编号,等级,金额) 学生获奖表Win(编号,学号,金额编号,评审条件,获奖时间) 奖学金来源类别(来源类别编号,来源说明),总结 2-1,关系模型中字段、记录、主键的概念。 主流的商用数据库有SQL Server、Orcale、DB2等。 在需求分析阶段,设计数据库的一般步骤为: 收集信息 标识对象 标识每个对象的属性 标识对象之间的关系 在概要设计阶段和详细设计阶段,设计数据库的步骤为: 绘制E-R图 将E-R图转换为表格 应用三大范式规范化表格,总结 2-2,为了设计结构良好的数据库,需要遵守一些专门的规则,称为数据库的设计范式。 第一范式(1NF)的目标:确保每列的原子性。 第二范式(2NF)的目标:确保表中的每列,都和主键相关 。 第三范式(3NF)的目标:确保每列都和主键列直接相关,而不是间接相关 。,作

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号