SQLServer数据库基础--E-R图、三大范式、数据库设计步骤

本书目标:

    了解数据库的基本概念和范式

    熟练使用SMSS、T-SQL实现建库、建表、加约束

    掌握T-SQL编程,实现功能强大的查询

    掌握创建索引、视图,快速访问数据库

    熟悉掌握创建存储过程,实现复杂的业务规则

    理解触发器的原理,掌握高级的约束

    了解SQLServler安全管理

    了解数据库的备份与恢复

  

本章目标:

  了解数据库的基本概念

  了解数据库设计的步骤

  掌握绘制数据库E-R图

  理解数据库三大范式

    

什么是数据库系统?

  数据库系统(DBS)是一个以数据库为核心的完整的运行实体,

数据库的组成:

  系统硬件平台、系统软件平台、数据、数据库管理系统、数据库管理员

数据库管理系统的概念:

  数据库管理系统(DBMS)是数据库的机构,它是一种系统软件,负责数据库中的数据组织、数据操纵、数据维护、控制及保护和数据服务等。数据库管理系统是数据库系统的核心。

数据库管理系统的具体功能有:

  数据定义,数据操纵,数据库运行管理,数据组织、存储与管理,数据的建立与维护 

什么是数据库管理员?

  数据库管理员(DBA)

  数据库管理员的任务包括:安装、配置、升级和迁移数据库,备份与恢复数据库,数据库安全管理,存储和容量规划,性能监控和调整,疑难解答

数据模型:

  数据模型应满足三方面的要求:

    1、能比较真实地模拟现实世界

    2、容易为人所理解

    3、便于在计算机上实现

数据模型分为两类--概念模型,逻辑模型和物理模型

    概念模型:

      也叫信息模型,它是按用户的观点来对数据和信息建模,用于数据库设计。

    逻辑模型和物理模型:

      逻辑模型的主要类型包括网状模型、层次模型、关系模型、面向对象模型等。按计算机系统的观点对数据建模,用于DBMS实现,它是定义数据库如何输入和输出的一种模型,其主要作用是为信息系统提供数据的定义和格式,是数据库系统的核心和基础。

      物理模型是对数据最底层的抽象,描述数据在系统内部的表示方式和存取方法,在磁盘或磁带上的存储方式和存取方法。

数据模型转换:

  客观对象的抽象过程

    1、现实世界中的客观对象抽象为概念模型

    2、把概念模型转换为某一DBMS支持的数据模型。

    

关系数据库的组成:

  表:二维表格存储数据

  记录:表中的每一行数据

  字段:表中的每一列数据

  索引:表中单列或多列数据的排序列表,每个索引指向其相关的数据表的某一行。

  表间的关系:一个数据库往往都包含多个表,不同类别的数据存放在不同的表中,表间关系把各个表联结起来。

 

数据库设计的后果

  良好的数据库设计:

    节省数据的存储空间;能够保证数据的完整性;方便进行数据库应用系统的开发

  糟糕的数据库设计:

    数据冗余、存储空间浪费;内存空间浪费;数据更新和插入异常

设计数据库的步骤:

  收集信息-->标识对象(实体)-->标识每个实体的属性-->标识对象之间的关系-->绘制E-R图-->将E-R图转换为表

   收集信息:与该系统有关人员进行交流、座谈,充分理解数据库需要完成的任务

   标识对象:标识数据库要管理的关键对象或实体;

   E-R(Entity-Relationship)图:主要用于描述系统的数据关系。软件开发人员通常使用实体关联图建立概念性的数据模型

    

    

      

E-R图转换为表:

  将各实体转换为对应的表,将各属性转换为各表对应的列

  标识每个表的主键列

  在表之间建立主外键,体现实体之间的映射关系

 

数据规范化:

   仅仅有好的RDBMS并不足以避免数据冗余,必须在数据库的设计中创建好的表结构。

   三大范式:

     第一范式:目标是确保每列的原子性

     第二范式:除了主外键以外的其他列,都依赖于该主键;要求每个表只描述一件事情  

     第三范式:除了主外键以外的其他列都不传递依赖于主键列

    

    

    

时间: 2024-08-26 19:13:05

SQLServer数据库基础--E-R图、三大范式、数据库设计步骤的相关文章

数据库的设计(E-R图,数据库模型图,三大范式)

一.数据库设计的概念 数据库设计是将数据库中的数据实体及这些数据实体之间的关系,进行规划和结构化的过程. 二.数据库设计的重要性 如果一个数据库没有进行一个良好的设计,那么这个数据库完成之后他的缺点是: 1.效率会很低 2更新和检索数据时会出现很多问题, 反之,一个数据库被尽心策划了一番,具有良好的设计,那他的优点是: 1.效率会很高. 2.便于进一步扩展. 3.使得应用程序的开发变得更容易. 三.设计数据库的步骤 1.需求分析阶段:分析客户的业务和数据处理需求. 2.概要设计阶段:他主要就是绘

数据库基础知识:数据库中的约束和三大范式

一.数据库中的范式: 范式, 英文名称是 Normal Form,它是英国人 E.F.Codd(关系数据库的老祖宗)在上个世纪70年代提出关系数据库模型后总结出来的,范式是关系数据库理论的基础,也是我们在设计数据库结构过程中所要遵循的规则和指导方法,以下就是对这三个范式的基本介绍: 第一范式(1NF): 数据表中的每一列(字段),必须是不可拆分的最小单元,也就是确保每一列的原子性. 例如: userInfo: '山东省烟台市 1318162008' 依照第一范式必须拆分成            

数据库原理之建表三大范式

第一范式:保持列的原子性. 即.列不能再被细分,例如:地址, 当地址不能不被分成城市.国家等的时候,具备原子性: 如果能被分为城市.国家等级别时,不具备原子性. 第二范式:主键和其他列具备联系.(第二范式是第一范式子集) 例如:产品表(编号,订单号,名称,材料编号,材料名称). 从简单理解他们都是不可再分的列,具备原子性,但如果订单号和产品表示没有联系的,那么就应该从中删除. 第三范式:主键和其他列有直接的联系.(第三范式是第二范式子集) 例如:产品表(编号,名称,材料编号,材料名称). 那么材

MySQL 基础知识 三大范式

三大范式数据库设计三大范式 为了建立冗余较小.结构合理的数据库,设计数据库时必须遵循一定的规则.在关系型数据库中这种规则就称为范式.范式是符合某一种设计要求的总结.要想设计一个结构合理的关系型数据库,必须满足一定的范式. 在实际开发中最为常见的设计范式有三个: 1.第一范式(确保每列保持原子性) 第一范式是最基本的范式.如果数据库表中的所有字段值都是不可分解的原子值,就说明该数据库表满足了第一范式. 第一范式的合理遵循需要根据系统的实际需求来定.比如某些数据库系统中需要用到"地址"这个

数据库(关系型)设计三大范式

为了建立数据冗余小,没有数据异常(更新.删除.插入)的数据库.设计数据库时必须遵循一定的规则.在关系型数据库中这种规则就称为范式.范式是符合某一种设计要求的总结.要想设计一个结构合理的关系型数据库,必须满足一定的范式. 设计数据库的时候遵循下面三个范式基本就能满足业务需要. 第一范式(1NF):数据库表中的所有字段都是单一属性,不可再分. 解释:第一范式要求数据库中的表都是二维表.一般情况下,关系型数据库是只能设计出二维表的. 例如,下面这张就是违反第一范式的表.因为它的“用户信息”字段可以再拆

数据库基础

1.数据库基本概念 (1)为什么使用数据库----数据库是用来储存数据的地方,是数据存储的仓库 (2)数据库的作用 a.数据存储方便 b.数据管理查询方便 2.时下流行的数据库 (1)关系型数据库:Oracle    Oracle公司,产品免费,服务收费 Mysql    开方源代码,网站应用广泛 SQLServer    版本多,使用方便 DB2    硬件要求必须是IBM产品 (2)非关系型数据库(NoSQL) Hadoop Google的BigTable 3.数据库的基本概念 数据库的数据

Python操作三大主流数据库

第1章 数据库简介讲解数据库基本知识,关系型数据库和非关系型数据库的对比,非关系型数据库的分类以及其应用场景,最后介绍MySQL数据库.1-1 python操作三大主流数据库导学篇1-2 数据库简介(1)1-3 MySQL简介(1) 第2章 mysql基础介绍MySQL的安装及配置,使用Navicat 和 phpMyAdmin 进行图形化管理数据库.然后讲解SQL基础,重点包括建表.建库语句,新增.修改.删除.查询语句等重点知识.为了巩固基础,在此处安排了一个"设计新闻表"的实战.2-

oracle三大范式

范式: 设计数据库定义的一个规则, 三大范式, 灵活运用, 人的思想是活的 一范式 1, 不存在冗余数据 同一个表中的记录不能有重复----所以主键(必须有) 2, 每个字段必须是不可再分的信息(列不可再分) 根据具体情况, 比如一个身份证号, 保存了许多信息, 但实际上把身份证号整个 保存下来就可以了, 这个时候没必要再分了 另一种情况, 需要存两个同样类型的数据, 也是根据具体情况, 再细分 信息的冗余另一种情况: 一个字段是年龄, 一个字段是生日, 信息内容的冗余 二范式(前提: 首先符合

数据库基础和三大范式以及基本的增删改查命令

所谓数据库就是建库 建表 建约束.① 确定实体 就是确定有几张表 ② 确定表的属性 规范化的三个级别:数据库设计的三大范式!!!! 第一范式(1NF):原子性:数据表中的每一列是不可拆分的最小单元,也就是确保每一列的原子性. 例如:userInfo:'山东省烟台市 11233445667' 拆分成: '山东省烟台市' 和''11233445667": 第二范式(2NF):满足1NF后,要求:表中的所有列都依赖于主键,而不能有任何一列与主键没有关系. 也就是说每张表只能描述一件事情. 例如:订单表