140911●关系数据库基础

关系数据库的基本概念

  关系:二维表

  行:元组

  列:属性

  域:属性取值范围

  关键字:唯一确定一个元组(主码)

    一般显示表示形式:关系名(属性1,属性2,……属性n)

      如:学生(学号,姓名,性别,年龄,学部号)

数据完整性

  指数据库中数据的正确性和唯一性。

  三类完整性规则:

    1、实体完整性规则

    2、参照完整性规则

    3、用户定义的完整性规则

关系操作:选择,投影,连接

  1、选择,又称为限制。i在关系中选择满足给定条件的诸元组

  选择运算实际上就是从关系中选择逻辑表达式为真的元组

  在关系的行的角度进行运算

  逻辑表达式运算符可以是:>、<、>=、<=、!=、=

  2、投影。

  在关系上选择若干属性列组成新的关系

  投影是在列的角度进行运算

  投影操作后可能取消一些元组,因为一旦选取了特定列,可能就会产生重复的行,这些重复的行必须消除

  3、连接。

  通过一个关系中的某个属性等于另一个关系的某个属性作为连接条件的连接。

逻辑数据库设计

  将实体和关系转化为关系模式

  函数依赖型

  无损分割

  规范化准则

联系

  事物的联系可以分为两类:一类是实体集内部的联系,表现在属性之间;另一类是实体集之间的联系,可分解为多个实体间的了联系。

  两个实体间联系的类型:

  1:1 实体集A中每个实体至多只与实体集B中一个实体相联系。反之亦然。

  1:n 实体集A中每个实体与实体集B中多个实体相联系,而B中每个实体至多只与A中一个实体相联系。

  m:n 实体集A中每个实体与实体集B中多个实体相联系,反之,B中每个实体也与A中多个实体相联系。

  实体型之间的一对一、一对多、多对多联系也存在于两个以上实体型之间。

实体-联系数据模型,用E-R图表示。

  实体(型):矩形框,框内为实体名称。

  属性:矩形框,以线与实体连接。属性较多时也可以将实体及其属性单独列表。

  实体间的联系:菱形框,框内为联系的名称。用线将菱形框与实体相连,线上标注联系类型。

关系模型评价

  冗余度高。即:多次重复出现。

  修改困难。修改数据时,容易影响其他数据。

  插入问题。插入数据时,容易影响其他数据。

  删除问题。删除数据时,容易影响其他数据。

函数依赖性

  根据函数的定义,若X取已确定的值,则Y肯定有唯一的值与值对应,则Y函数依赖于X,记作:X→Y。可以这么理解:X决定Y

  例:学生(学号,姓名,年龄,班级,籍贯),存在“姓名” 函数依赖于“学号”         记作:学号→姓名

完全函数依赖:在关系模式 R(A1, A2, …,An)中,若X→Y,且对X的任一真子集X′,都没有X′→Y,则称Y完全函数依赖于X。若X→Y,但Y不完全函数依赖于X,则称Y部分函数依赖于X。(完全函数依赖主要针对组合主键)

传递函数依赖:在关系模式R(A1, A2, …,An)中,若X→Y,Y→Z,且Y不属于X,Z不属于Y,Y→X,则称Z传递函数依赖于X。(传递函数依赖主要针对外键)

范式

  关系数据库中的关系式需要满足一定的要求的,称为范式。

  1、第一范式(1NF)。最低的要求成为第一范式。

  每一列的值不可以分割为更简单的数据项。

  若一个关系满足:每一属性值都必须是不能再分的元素,则为规范化关系,称为第一范式,简记为1NF。

  例:关系“考勤表”(编号,姓名,上下班时间)——可以把第三个字段分解为上班时间和下班时间。

  2、第二范式(2NF)。主要解决部分函数依赖。

  满足第一范式。

  非主键列都完全函数依赖于主键。

  下面表中“雇员号码”和“工程号码”是组合主键,但是,员工部门编号与工程号码没有函数相关性,不符合2NF;不能由工程号码唯一确定员工部门编号。

例:

  3、第三范式(3NF)。每个非主属性不部分依赖于关键字,也不传递依赖于关键字的关系。解决传递函数依赖。

  满足第二范式。

  表中每一个非键列都不传递依赖于主键。

  下表中在非主键“部门编号”和“部门名称”之间就具有了函数依赖性,因为一旦指定部门编号,就会存在一个部门名称与之对应。

无损分割:表的分割不能破坏函数的依赖关系,满足这条件的叫无损分割。

时间: 2024-10-16 17:06:14

140911●关系数据库基础的相关文章

SQL Server 2008中文版关系数据库基础与实践

SQL Server 2008集成开发环境.数据库.数据库表.功能强大的T-SQL查询功能.报表服务.分析服务和集成服务,然后讲解了如何利用索引.视图.函数.存储过程.游标及触发器来管理和提高T-SQL的查询和操作功能http://www.readnovel.com/novel/99350/19.htmlhttp://www.readnovel.com/novel/99350/20.htmlhttp://www.readnovel.com/novel/99350/21.htmlhttp://ww

MVC排球计分(一)——综述

使用ASP.NET MVC 实现一个排球计分程序. 初步计划将这个文章系列分为以下几篇: 1.综述 2.需求分析与数据库设计 3.架构概要设计 4.模型类设计 5.Controller与Action设计 6.视图设计 7.程序截图与运行结果 8.总结 以上只是初步的计划,在写博客的过程中可能会根据具体情况适当调整,但是内容基本就是这些了.可能会用到的技术如下: 1.C#语言 2.ASP.NET MVC 3.设计模式 4.关系数据库基础知识 5.JavaScript 6.HTML,CSS,标准化布

数据库技术的发展简史

http://blog.csdn.net/willtongji/article/details/52874627 学习大数据,需要知道"传统"的数据管理技术,了解了数据库管理技术的发展简史,你就知道哪些技术在大数据时代任然有用,以及新技术到底新在哪里~ 数据库系统的研究和开发从20世纪60年代中期开始到现在,几十年过去了,经历三代演变,取得了十分辉煌的成就:造就了C.W. Bachman(巴克曼).E.F.Codd(考特)和J. Gray(格雷)三位图灵奖得主:发展了以数据建模和数据库

新需求下的排球计分程序

暑假针对不同的需求对学期末的排球计分程序进行了重构.记录如下: 当然在做这个程序的时候,也一定会用到我们平时所学的其他技术: 1.C#语言 2.ASP.NET  MVC 3.关系数据库基础知识 4.软件工程基础知识 5.PetaPoco技术 6.JQuery,Ajax 7.UiIKit  H5框架. 8.T4模板. 需求: 作为一名教练员,我希望知道详细得分信息,以便于了队员的状态. 设计文档 在参考我们平时使用的比赛网站做出如下设计文档: 首先我们进入首页,首页我们选择业务项目,之后进入具体的

【SharePoint学习笔记】第3章 SharePoint列表新特性以及数据访问

第3章 SharePoint列表新特性以及数据访问   使用CAML查询语言 CAML:协作应用程序标记语言 Collaboration Application Markup Language 使用Microsoft.SharePoint.SPQuery 对象查询列表数据 CAML语法: <Where> <And | Or> <Eq | BeginsWith | Contains | Geq | Gt | IsNotNull | IsNull | Leq | Lt | Neq

java web 开发三剑客 -------电子书

Internet,人们通常称为因特网,是当今世界上覆盖面最大和应用最广泛的网络.根据英语构词法,Internet是Inter + net,Inter-作为前缀在英语中表示“在一起,交互”,由此可知Internet的目的是让各个net交互.所以,Internet实质上是将世界上各个国家.各个网络运营商的多个网络相互连接构成的一个全球范围内的统一网,使各个网络之间能够相互到达.各个国家和运营商构建网络采用的底层技术和实现可能各不相同,但只要采用统一的上层协议(TCP/IP)就可以通过Internet

关系数据库小小基础

什么是关系型数据库: 关系型数据库基于关系模型,关系模型是通过二维表保存实体和实体间的关系,所以关系型数据库存储的是由行和列组成的表,每张表可以看作一个实体集,实体之间是有关系的,多张表组成数据库 为什么需要关系模型: 以前数据的逻辑结构有,层次型.网状型,能很好地解决存储的问题,但层次型处理对象间的关系比较麻烦,网状型维护复杂,且查询时需指定类型和路径,所以出现了关系模型 关系型数据表示形式 一个文件在linux文件系统中的表现形式是这样的 表示层:文件形式 逻辑层:文件系统(作为一个中间的映

2016年3月7日作业 信息化基础知识、信息系统服务管理

1 信息化基础.信息系统服务管理 信息化 信息的概念存在两个基本的层次,即本体论层次和认识论层次. 1.1.3 国家信息化体系要素 国家信息化体系包括信息技术应用.信息资源.信息网络.信息技术和产业.信息化人才.信息化法规政策和标准规范6个要素 1 信息技术应用 是国家信息化建设的主阵地,是信息化体系六要素中的龙头. 2 信息资源 信息资源开发利用是国家信息化的核心任务,是国家信息化建设取得实效的关键,也是我国信息化的薄弱环节,信息资源的开发和利用的程度是称量国家信息化水平的一个重要标志. 3 

前端基础(一)

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px "PingFang SC"; color: #000000 } p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px Helvetica; color: #000000 } p.p3 { margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px Helvetica; color: #000000;