详细讲解如何将数据模型转换成数据库设计
http://database.51cto.com/art/201103/250488.htm
数据模型是数据特征的抽象,是数据库管理的教学形式框架,数据模型是对客观事物及其联系的逻辑组织描述。本文将主要为大家介绍如何将数据模型转化成数据库设计。
AD: <script src="http://www.51cto.com/js/article/keywords_ad_new.js"></script>
将数据模型转换成数据库设计的相关问题:
1.创建表的联系
1:1强实体联系:
把一个表的主键作为另一张表的外键。为了强调最大粒度是1,应该把外键设置成候选键。
1:N强实体联系:
把1的那一段的表(父表)的键设置成对应N的那一端的表(子表)的外键。
N:M强实体联系:
建立只包含外键的第三张交关系表,这个表中每一列都是主键的一部分,每一列都对应于其他表外键,因此他总是ID依赖于它的两个父表。
注意,这张交关系表中,必须要有父表中的行。
2.使用ID依赖实体联系的其他方法
关联联系:
这种联系只针对联系本身,而不是实体的属性。只需建立一张关联表,ID依赖于两张父表,并包含父表的联系属性,如公司和货物的:Price。
注意,关联表和交关系表的最重要区别是关联表含有用户数据,而交关系表则没有。
多值属性:
用ID依赖实体代表父表所含有的多值组合,如CompanyName的(Contact, PhoneNumber),PhoneNumber可含有多个值。CompanyName在新表中将既是主键又是外键。
原型/实例模式:
当一个ID依赖实体的父实体使用强制关键字时,ID依赖实体也使用自己的强制关键字。得到的结果是弱实体,担不是ID依赖实体。
3.混合实体联系
这种设计既包含强实体设计也包含ID依赖实体的设计。
对HAS-A联系进行转换时,总的原则是“把父表的键放到子表中”,通常把1对应的父表放到子表中,N:M联系先转换成两个1:N联系。而对于标识联系,父表的键已经在子表中了,所以什么都不用做。对于混合联系中的非标识联系,父表的键放在子表中。
4.子类型 IS-A联系
子表和父表的主键相同,且子表的主键也是外键。
5.递归联系
1:1
在表中创建一个外键并设为候选键,指向父表。此表中父表和子表均是其自身。
1:N
通过把父表的键放到子表中来标识1:N递归联系。
N:M
创建一个交关系表,把它分解成两个1:N联系。
本文就简单为大家总结这五点,思路也比较清晰明了,易于大家去学习掌握,希望能够对大家有所帮助。
发表评论
-
Android中SQLiteOpenHelper类的onUpgrade方法的作用
2012-02-09 11:50 4601Android中SQLiteOpenHelper类的onUpg ... -
在线升级Android应用程序的思路
2012-02-07 11:34 880在线升级Android应用程序的思路 http://www. ... -
Android数据库内容变化的监听
2012-02-07 11:31 6033Android数据库内容变化的监听 首先介绍内容监 ... -
android中的数据库操作
2012-02-07 10:50 1451android中的数据库操作 ... -
SQLiteOpenHelper类与自动升级数据库
2012-02-07 10:31 2283SQLiteOpenHelper类与自动升级数据库 S ... -
SQLite外键的实现
2012-02-07 10:30 1717SQLite外键的实现 SQLite现在的版本还不支持 ... -
29日修改数据库设计
2012-01-29 15:24 0数据表设计: 账号信息表account ... -
最新数据库设计
2012-01-28 21:21 0数据表设计: 工资管理 账号信息表Acc ... -
数据库设计
2012-01-11 15:27 0数据库设计 信息表:infotypecreate ta ... -
cmd下操作mysql
2011-12-20 14:11 987cmd下操作mysql 连接mysql服务器 mysql ... -
你能说出SQL聚集索引和非聚集索引的区别吗?
2011-12-07 15:18 0你能说出SQL聚集索引和非聚集索引的区别吗? http ... -
打造自己的数据访问层
2011-12-07 15:01 1287打造自己的数据访问层 http://database. ... -
MySQL数据库新特性之存储过程入门教程
2011-12-07 14:38 893MySQL数据库新特性之存储过程入门教程 http:/ ... -
论MySQL何时使用索引,何时不使用索引
2011-12-07 14:03 935论MySQL何时使用索引, ... -
讲解SQL与Oracle外键约束中的级联删除
2011-12-07 12:33 0讲解SQL与Oracle外键约束中的级联删除 当代 ... -
SQLite-CREATE TRIGGER
2011-12-07 09:07 1369SQLite-CREATE TRIGGER http: ... -
主键与外键的关系、级联保存、更新、删除
2011-12-06 14:16 7248主键与外键的关系、级联保存、更新、删除 http://www ... -
MySQL 数据类型
2011-12-06 10:18 792MySQL 数据类型 数值类型 MySQL 的数 ... -
MyISAM InnoDB 区别
2011-12-02 17:03 767MyISAM InnoDB 区别 http://www.ph ... -
事务的原理
2011-12-02 17:01 1272(1):事务(Transaction)是 ...
相关推荐
以下将详细讲解PowerDesigner中的数据模型转换过程及其重要性。 1. **概念数据模型到逻辑数据模型的转换** 概念数据模型主要关注业务实体和它们之间的关系,不涉及具体的数据库实现细节。在设计过程中,我们需要将...
需求分析是数据库设计的关键步骤,它涉及到收集和理解用户需求,确定数据模型和系统功能。这一阶段需要深入了解业务流程,识别数据实体、属性和关系,确保数据库设计满足用户的实际需求。有效的需求分析可以减少后期...
在逻辑设计阶段,则需要将概念模型转换为具体的逻辑模型,这通常意味着需要根据所选用的关系数据库管理系统(RDBMS)的要求来调整模型结构,形成支持数据操作和维护的数据库模式。 数据库的三级模式结构是另一项...
书中详细讲解了如何进行关系型数据库的设计,帮助读者理解数据库的基础知识,掌握数据库设计的基本步骤和方法。 一、数据库基础 数据库是存储和管理数据的系统,它通过组织数据来支持高效查询和信息检索。关系型...
- 目的:将概念模型转换为具体的数据库管理系统所能支持的数据模型。 - 过程:根据选定的数据库管理系统(如关系型数据库)的特点,将E-R模型转化为相应的逻辑结构。 - 范式化:确保数据结构满足一定的规范标准...
4. **数据库逻辑设计**:涵盖如何将E-R模型转换为关系模型,包括函数依赖和超键的识别,以及如何应用范式理论优化模型。 5. **数据库物理设计**:讨论存储结构、索引、分区等物理层面的设计,以优化查询性能和存储...
接着,逻辑模型设计通常涉及到将CDM转换为特定数据库管理系统的逻辑结构,如SQL Server或Oracle的DDL语句。PowerDesigner支持多种数据库平台,能够生成符合目标数据库语法的脚本,这在不同环境下的数据库迁移和部署...
1. 需求分析:这是设计的起点,要求明确数据库将服务于哪些应用,收集并理解用户的需求。这一步通常通过访谈、问卷调查等方式进行,确定数据项、实体关系和业务规则。 2. 概念设计:也称为信息模型设计,常用工具是...
概念设计中,我们使用ER模型将业务需求转化为数据模型。逻辑设计阶段,ER图会被转换为关系模式,这是数据库的逻辑结构,包括表、字段和键等元素。物理设计阶段,我们考虑如何在特定的数据库管理系统上优化存储和访问...
数据库设计的实现阶段是指将设计好的数据库模型转换为实际的数据库系统。这个阶段需要使用DDL语言定义数据库结构,组织数据入库,编制与调试应用程序等。 数据库的运行与维护 数据库的运行与维护阶段是指数据库...
其次,逻辑数据模型是将ER模型转换成特定数据库管理系统(如MySQL、Oracle或SQL Server)支持的数据模型。这一阶段涉及到表的创建、主键和外键的设定,以及索引的设计。数据库设计小工具可能会提供自动转换功能,...
2. 数据模型:理解数据模型是设计数据库的关键。这包括实体-关系模型(E-R模型)、概念数据模型和逻辑数据模型。E-R模型用于描述现实世界中的实体、属性和关系,而逻辑数据模型则转换为具体的SQL表结构。 3. 正范式...
3. **逻辑结构设计阶段**:将概念模型转换为具体的数据库模型。 4. **物理结构设计阶段**:考虑如何在特定硬件环境下高效存储和检索数据。 5. **实施阶段**:编写模式、装载数据、进行系统调试。 6. **运行维护阶段*...
本报告将深入讲解ORACLE数据库的设计,包括基础概念、命名规则、逻辑设计、物理设计、安全性设计以及优化策略,适合初学者参考学习。 0. 文档介绍: 本报告旨在为初学者提供一份关于ORACLE数据库设计的指导,旨在...
逻辑结构设计的步骤包括将概念结构转化为一般的关系模型,将关系模型转换为选定RDBMS所支持的数据模型,对数据模型进行优化。 ER图向关系模型的转换是逻辑结构设计的关键步骤。将ER图转换为关系模型实际上就是要将...
接下来是**逻辑设计**阶段,这里会将ER模型转换成关系数据模型,也就是我们常见的表和字段。比如,"学生"实体可能转换为"Student"表,包含"学号"、"姓名"等字段;"课程"变为"Courses"表,包含"课程号"、"课程名"等。...
3. **ER模型**:实体-关系(ER)模型是一种用于数据建模的图形工具,06ER模型.ppt可能包含ER图的绘制、实体、属性、联系的概念,以及如何将ER模型转换为关系模型。 4. **SQL**:结构化查询语言(SQL)是数据库操作...
文档“数据库设计的三大范式”中,将详细讲解数据规范化,这是确保数据库效率和避免冗余的关键。第一范式(1NF)要求每个字段具有原子性,不可再分;第二范式(2NF)在此基础上,确保表消除部分依赖;第三范式(3NF...
在本文档中,我们将深入探讨XML数据库的数据模型,这是一种专门设计用来高效存储和检索XML数据的数据库系统。 XML数据模型的核心概念是XML文档的结构,它由元素、属性、文本节点和其他XML节点组成。XML文档遵循严格...