三元联系简介

2024-05-25 14:48
文章标签 联系 简介 三元

本文主要是介绍三元联系简介,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

        在数据库设计中或者以后的软考中会遇到一个相对来说有点难度的题,那就是对于ER图中三元联系如何确定的问题,因此在这做一个简单的介绍:


一、确定关系

             三元联系无非就是四中情况而已:(1:1:1);(1:1:N);(1:M:N);(M:N:P)。下面对这几种情况分别作一    个简单的介绍,请看下例:

1)第一种情况1:1:1

计算机生成了可选文字:'I,cchniciallu父snt)Ich均kNolc伙)',k

解释如下:

a) 一名技术员对于每一个项目使用一本手册

 

b) 每一本手册对于每一个项目属于一名技术员

 

c) 一名技术员可能在做多个项目,对于不同的项目维护不同的手册

 

2)第二种情况1:1:N

计算机生成了可选文字:I,rojcclassigll司to.(祀atl吸】11

解释如下:

a)每一个员工在一个地点只能被分配一个项目,但可以在不同地点做不同的项目

 

b)在一个特定的地点,一个员工只能做一个项目

 

c)在一个特定的地点,一个项目可以由多个员工来做

 

3)第三种情况1:M:N

计算机生成了可选文字:、Iallagcr叫,:一}

解释如下:

a)一名经理手下的一名工程师可能参与多个项目

 

b)一名经理管理的一个项目可能会有多名工程师

 

c)做某一个项目的一名工程师只会有一名经理

4)第四种情况M:N:P

 

计算机生成了可选文字:1111、plo》·cc空…Skil·}Pro.j"t

解释如下:

a) 一名员工在一个项目中可以使用多种技能

 

b) 一名员工的一种技能可以在多个项目中使用

 

c) 一种技能在一个项目中可以被多名员工使用

 

二、三元联系类型的转换

当然除了确定其关系外,还有一点就是如何将上面的ER模型关系转换成关系表的形式,方法如下:


(1)、若实体间联系是1:1:1,可以在三个实体类型转换成的三个关系模式中任意一个关系模式的属性中加入另两     个关系模式的键(作为外键)和联系类型的属性。

(2)、若实体间联系是1:1:N,则在N端实体类型转换成的关系模式中加入两个1端实体类型的键(作为外键)和联     系类型的属性。

(3)、若实体间联系是1:M:N,则将联系类型也转换成关系模式,其属性为M端和N端实体类型的键(作为外键)     加上联系类型的属性,而键为M端和N端实体键的组合。

(4)、若实体间联系是M:N:P,则将联系类型也转换成关系模式,其属性为三端实体类型的键(作为外键)加上联     系类型的属性,而键为三端实体键的组合。

 

这篇关于三元联系简介的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1001809

相关文章

Java Docx4j类库简介及使用示例详解

《JavaDocx4j类库简介及使用示例详解》Docx4j是一个强大而灵活的Java库,非常适合需要自动化生成、处理、转换MicrosoftOffice文档的服务器端或后端应用,本文给大家介绍Jav... 目录1.简介2.安装与依赖3.基础用法示例3.1 创建一个新 DOCX 并添加内容3.2 读取一个已存

Java中最全最基础的IO流概述和简介案例分析

《Java中最全最基础的IO流概述和简介案例分析》JavaIO流用于程序与外部设备的数据交互,分为字节流(InputStream/OutputStream)和字符流(Reader/Writer),处理... 目录IO流简介IO是什么应用场景IO流的分类流的超类类型字节文件流应用简介核心API文件输出流应用文

Spring Security简介、使用与最佳实践

《SpringSecurity简介、使用与最佳实践》SpringSecurity是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架,本文给大家介绍SpringSec... 目录一、如何理解 Spring Security?—— 核心思想二、如何在 Java 项目中使用?——

Java Stream 并行流简介、使用与注意事项小结

《JavaStream并行流简介、使用与注意事项小结》Java8并行流基于StreamAPI,利用多核CPU提升计算密集型任务效率,但需注意线程安全、顺序不确定及线程池管理,可通过自定义线程池与C... 目录1. 并行流简介​特点:​2. 并行流的简单使用​示例:并行流的基本使用​3. 配合自定义线程池​示

PostgreSQL简介及实战应用

《PostgreSQL简介及实战应用》PostgreSQL是一种功能强大的开源关系型数据库管理系统,以其稳定性、高性能、扩展性和复杂查询能力在众多项目中得到广泛应用,本文将从基础概念讲起,逐步深入到高... 目录前言1. PostgreSQL基础1.1 PostgreSQL简介1.2 基础语法1.3 数据库

Python库 Django 的简介、安装、用法入门教程

《Python库Django的简介、安装、用法入门教程》Django是Python最流行的Web框架之一,它帮助开发者快速、高效地构建功能强大的Web应用程序,接下来我们将从简介、安装到用法详解,... 目录一、Django 简介 二、Django 的安装教程 1. 创建虚拟环境2. 安装Django三、创

MySQL 索引简介及常见的索引类型有哪些

《MySQL索引简介及常见的索引类型有哪些》MySQL索引是加速数据检索的特殊结构,用于存储列值与位置信息,常见的索引类型包括:主键索引、唯一索引、普通索引、复合索引、全文索引和空间索引等,本文介绍... 目录什么是 mysql 的索引?常见的索引类型有哪些?总结性回答详细解释1. MySQL 索引的概念2

Javaee多线程之进程和线程之间的区别和联系(最新整理)

《Javaee多线程之进程和线程之间的区别和联系(最新整理)》进程是资源分配单位,线程是调度执行单位,共享资源更高效,创建线程五种方式:继承Thread、Runnable接口、匿名类、lambda,r... 目录进程和线程进程线程进程和线程的区别创建线程的五种写法继承Thread,重写run实现Runnab

Qt QCustomPlot库简介(最新推荐)

《QtQCustomPlot库简介(最新推荐)》QCustomPlot是一款基于Qt的高性能C++绘图库,专为二维数据可视化设计,它具有轻量级、实时处理百万级数据和多图层支持等特点,适用于科学计算、... 目录核心特性概览核心组件解析1.绘图核心 (QCustomPlot类)2.数据容器 (QCPDataC

深度解析Java项目中包和包之间的联系

《深度解析Java项目中包和包之间的联系》文章浏览阅读850次,点赞13次,收藏8次。本文详细介绍了Java分层架构中的几个关键包:DTO、Controller、Service和Mapper。_jav... 目录前言一、各大包1.DTO1.1、DTO的核心用途1.2. DTO与实体类(Entity)的区别1