数据库建模
- 格式:docx
- 大小:862.90 KB
- 文档页数:16
数据库建模技术方案1.引言1.1 概述数据库建模技术是指通过对现实世界中的数据进行抽象和建模,设计出数据库的结构和关系,以实现数据的存储、管理和处理。
在信息化时代,数据库建模技术成为了一项基础而重要的工作,对于实现企业数据化管理和决策支持具有重要意义。
本文将从数据库建模技术的概述、方案以及未来发展等方面进行详细介绍和分析。
在进行数据库建模时,需考虑到数据的实体、属性、关系等因素,以及数据之间的联系和约束关系。
通过对现实世界的实体进行建模,我们可以将数据划分为不同的实体集合,并定义实体的属性和关系。
通过这样的抽象和建模工作,数据的结构和关系得以清晰地展示出来,为实现高效的数据管理和应用提供了基础。
数据库建模技术方案的选择与设计是数据库建模过程中的重要环节。
不同的数据库建模技术方案适用于不同的场景和需求。
常见的数据库建模技术方案包括关系模型、层次模型、网络模型等。
关系模型是最为常见和广泛应用的数据库建模技术方案,通过表格的形式展现数据之间的关系,具有较好的可扩展性和灵活性。
而层次模型和网络模型则适用于较为特殊的数据结构和应用场景。
在未来,随着大数据、云计算和人工智能等技术的快速发展,数据库建模技术也将不断创新和演进。
比如,随着数据量的增大,分布式数据库建模技术将得到更广泛的应用;随着数据的多样化和复杂化,图数据库建模技术将具备更大的发展空间。
此外,数据库建模技术还应与其他技术进行整合,如面向对象技术、数据挖掘技术等,以提高数据库的性能和功能。
综上所述,数据库建模技术是现代信息管理的重要组成部分,通过对现实世界的数据进行抽象和建模,实现数据的存储、管理和处理。
不同的数据库建模技术方案适用于不同的场景和需求,而未来的发展则需要与其他相关技术相结合。
对于企业和个人而言,熟练掌握和应用数据库建模技术,将有助于提高数据管理和决策支持的效率和质量。
文章结构部分的内容可以包括以下几个方面:1. 文章主题:介绍文章的主要内容和讨论的问题,确保读者能够在阅读前了解文章的目的和意义。
数据库建模与实现过程随着信息技术的不断发展,数据的处理和管理已经成为现代社会中不可或缺的一部分。
而数据库作为一种高效的数据管理工具,已经被广泛应用于各个领域。
数据库的建模与实现过程是数据库开发的关键环节,本文将对此进行详细介绍。
一、数据库建模数据库建模是指根据实际需求,将数据转化为逻辑模型的过程。
数据库建模主要包括以下几个步骤:1.需求分析需求分析是数据库建模的第一步,它是确定数据库范围、功能和性能的重要环节。
在需求分析中,需要考虑以下几个方面:(1)数据来源:确定数据库中所需的数据,包括数据的类型、数量和格式等。
(2)数据存储:确定数据存储的方式,包括数据的存储位置、存储方式、存储容量等。
(3)数据访问:确定数据的访问方式,包括数据的查询、修改、删除等。
(4)数据安全:确定数据的安全性要求,包括数据的备份、恢复、加密等。
2.概念设计概念设计是根据需求分析结果,将数据转化为概念模型的过程。
概念设计主要包括以下几个步骤:(1)实体识别:识别数据中的实体,即数据中具有独立存在意义的对象。
(2)属性识别:确定实体的属性,即实体具有的特征。
(3)关系建立:确定实体之间的关系,包括一对一、一对多、多对多等关系。
(4)概念模型:将实体、属性和关系等元素组合成概念模型,以图形方式表示。
3.逻辑设计逻辑设计是在概念模型基础上,将概念模型转化为逻辑模型的过程。
逻辑设计主要包括以下几个步骤:(1)关系模式:将概念模型中的实体、属性和关系映射为关系模式,即数据表。
(2)主键和外键:确定每个数据表的主键和外键。
(3)规范化:对数据表进行规范化,以消除冗余数据和数据依赖等问题。
(4)逻辑模型:将关系模式、主键和外键等元素组合成逻辑模型,以图形方式表示。
二、数据库实现数据库实现是指根据逻辑模型,将数据库建立起来的过程。
数据库实现主要包括以下几个步骤:1.数据库管理系统选择数据库管理系统是实现数据库的关键工具,根据实际需求选择合适的数据库管理系统非常重要。
数据库建模与框架结构搭建数据库建模和框架结构搭建是软件开发中非常重要的一部分。
通过合理的数据库建模和框架结构搭建,可以提高系统的性能、可维护性和可扩展性。
本文将介绍数据库建模和框架结构搭建的基本概念和方法。
第一部分:数据库建模数据库建模是指将现实世界的实体和关系转化为数据库中的表和关系的过程。
在进行数据库建模时,首先需要确定系统中的实体和它们之间的关系。
然后根据这些实体和关系来设计数据库中的表和关系。
数据库建模的核心是实体关系模型(ER模型)。
ER模型是一种用于表示实体和实体之间关系的图形化工具。
在ER模型中,实体用矩形表示,关系用菱形表示。
实体和关系之间用线连接,表示它们之间的关系。
在进行数据库建模时,需要注意以下几点:1. 确定实体和关系:在确定实体和关系时,需要考虑系统的需求和业务逻辑。
要尽量简化模型,避免冗余和重复的信息。
2. 设计表和属性:根据实体和关系,设计数据库中的表和属性。
每个实体对应一个表,每个属性对应表中的一个字段。
3. 定义主键和外键:在设计表时,需要为每个表定义主键和外键。
主键用于唯一标识表中的记录,外键用于建立不同表之间的关系。
4. 规范化:规范化是指将数据库中的表和关系按照一定的规则进行优化的过程。
通过规范化可以减少冗余和重复的信息,提高数据库的性能和可维护性。
第二部分:框架结构搭建框架结构搭建是指在软件开发过程中,将系统划分为不同的模块和层次,然后将这些模块和层次组织起来,形成一个完整的框架结构。
在进行框架结构搭建时,需要注意以下几点:1. 划分模块和层次:根据系统的需求和功能,将系统划分为不同的模块和层次。
每个模块和层次都有特定的功能和责任。
2. 定义接口和接口规范:在每个模块和层次之间定义接口和接口规范。
接口定义了模块和层次之间的通信方式和数据传输方式。
3. 实现模块和层次:根据定义的接口和接口规范,实现每个模块和层次。
每个模块和层次都有特定的功能和实现方式。
4. 测试和调试:在完成模块和层次的实现后,进行测试和调试。
数据仓库建模引言概述:数据仓库建模是指在数据仓库设计和构建过程中,对数据进行组织、整理和优化,以便于数据分析和决策支持。
数据仓库建模的目标是提供一个统一、一致、可靠的数据源,帮助企业进行全面的数据分析和决策。
正文内容:一、数据仓库建模的基本概念1.1 数据仓库数据仓库是指将来自不同数据源、不同业务系统的数据进行集成、整理和存储的一个中心化的数据存储库。
数据仓库具有面向主题、集成性、稳定性和可查询性等特点,可以支持企业的决策分析需求。
1.2 数据仓库建模数据仓库建模是指对数据仓库中的数据进行组织和优化的过程。
它包括对数据进行抽取、转换和加载(ETL),以及对数据进行维度建模和事实建模等步骤。
数据仓库建模的目标是提供一个可靠、高效的数据结构,以支持数据仓库的查询和分析。
1.3 维度建模和事实建模维度建模是指对数据仓库中的维度进行建模和设计。
维度是描述业务过程的属性,如时间、地点、产品等。
维度建模通过定义维度表和维度属性,将维度的层次结构和关系进行建模,以支持多维分析和查询。
事实建模是指对数据仓库中的事实进行建模和设计。
事实是描述业务过程中的事件或度量,如销售额、库存量等。
事实建模通过定义事实表和事实属性,将事实的度量和关系进行建模,以支持数据仓库的查询和分析。
二、数据仓库建模的步骤2.1 数据需求分析在数据仓库建模过程中,首先需要进行数据需求分析,明确业务用户的数据分析和查询需求。
通过与业务用户的沟通和需求调研,确定数据仓库的主题域和维度、事实的粒度,以及数据仓库的查询和分析要求。
2.2 ETL过程ETL(抽取、转换和加载)是数据仓库建模的重要步骤。
在ETL过程中,需要从不同的数据源中抽取数据,并进行数据清洗、转换和集成,以满足数据仓库的数据质量和一致性要求。
最后,将经过处理的数据加载到数据仓库中。
2.3 维度建模维度建模是数据仓库建模的核心环节。
在维度建模过程中,需要定义维度表和维度属性,并建立维度之间的关系和层次结构。
数据库建模步骤嘿,朋友们!今天咱就来讲讲数据库建模那些事儿。
你想想看,数据库就像是一个超级大的仓库,里面要放好多好多东西。
那怎么把这些东西放得井井有条呢,这可就得好好规划一下啦,就像你收拾自己的房间一样。
首先呢,咱得搞清楚要存些啥东西,这就是需求分析啦。
就好比你要决定把哪些玩具、哪些书放进你的小柜子里。
这一步可重要啦,要是没搞清楚,后面不就乱套了嘛!然后呢,根据这些需求,开始设计概念模型咯。
这就像是给这个大仓库画个设计图,大概规划出哪里放什么。
比如说,这一块专门放电子产品,那一块专门放文具啥的。
接下来呀,就到了逻辑模型啦。
这就好比把设计图进一步细化,变成具体的房间布局啦。
要确定好每个区域怎么划分,用什么方式来存放东西。
再之后呢,就是物理模型啦。
这可就相当于真的开始打造这个仓库啦,用什么材料呀,怎么搭建呀,都得想好。
数据库建好了,可还没完事呢!还得经常去维护它,就像你得时不时打扫一下房间,整理整理东西。
要是东西放乱了,找起来不就麻烦啦!咱说这数据库建模,不就跟搭积木似的嘛。
一块一块的,得精心设计、仔细摆放,才能搭出漂亮的城堡来呀。
要是随随便便弄,那最后不就成了一堆烂摊子嘛。
你说要是没做好前面的步骤,到后面发现问题了,那得多麻烦呀,就跟盖房子盖到一半发现设计有问题似的,那不得重新来过嘛。
所以啊,每个步骤都得认认真真去做呀。
而且哦,这数据库建模可不是一次性的工作,随着时间变化,需求也可能会变呀。
那咱就得跟着变,就像你的喜好会变,房间的布置也得跟着变一样。
总之呢,数据库建模这事儿,看着好像挺复杂,其实只要一步一步慢慢来,就肯定能做好。
就像走路一样,一步一步走稳了,总能走到目的地。
大家可别嫌麻烦,好好对待这个大工程,以后用起来就知道有多方便啦!这就是我对数据库建模的理解,大家觉得咋样呢?原创不易,请尊重原创,谢谢!。
引言概述在数字化时代,数据成为企业运营和决策的重要驱动力。
为了更好地管理和利用企业数据,很多企业采用数据仓库来集成和存储数据。
数据仓库建模是数据仓库设计的核心环节,它决定了数据在仓库中的组织结构和查询方式。
本文将介绍四种常见的数据仓库建模方法,包括维度建模、实体关系模型、标准化模型以及主题建模。
维度建模维度建模是一种以事实表和维度表作为核心的建模方法。
事实表是存储数值型数据的表,维度表则存储描述性属性的表。
在维度建模中,事实表和维度表通过共享主键来建立关联。
小点详细阐述:1.事实表的设计:事实表应选择合适的粒度,并包含与业务流程相关的度量。
例如,销售事实表可以包含销售额、销售数量等度量。
2.维度表的设计:维度表应包含与业务流程相关的描述性属性,例如时间、产品、地理位置等。
维度应具有层次结构,以便支持多维分析。
3.关系型数据库实现:维度建模通常使用关系型数据库来实现,它通过表和关联键来表示维度和事实之间的关系。
实体关系模型实体关系模型是一种基于关系代数和数据库范式的建模方法。
它通过实体、属性和关系来描述数据的结构。
实体关系模型适用于较复杂的数据仓库场景,其中数据具有多层级和复杂的关系。
小点详细阐述:1.实体的建模:实体是数据仓库中的核心对象,它代表了业务流程中的实际对象。
实体的属性描述了实体的特征。
2.关系的建模:关系描述了实体间的关联和依赖关系。
在实体关系模型中,关系通过外键建立。
3.数据库范式:实体关系模型追求高度的数据规范化,以减少数据冗余和不一致性。
标准化模型标准化模型是一种以消除冗余数据为核心的建模方法。
在标准化模型中,数据被拆分为多个表,并通过关系建立关联。
小点详细阐述:1.数据拆分:标准化模型通过将数据拆分为多个表,将重复的数据存储在一个地方,并通过外键建立关联。
2.数据插入和查询:标准化模型在数据插入和查询时需要进行多表关联操作,对性能有一定影响。
3.适用场景:标准化模型适用于事务性场景,如订单管理、库存管理等。
数据仓库建模方法总结数据仓库建模是数据仓库构建过程中的重要环节,它决定了数据仓库的数据结构和查询性能。
本文将总结几种常见的数据仓库建模方法,包括维度建模、事实建模和标准化建模,并比较它们的优缺点。
1. 维度建模维度建模是一种常见的数据仓库建模方法,它基于维度表和事实表的概念。
维度表包含描述业务过程的属性,如时间、地点、产品等,而事实表包含与业务过程相关的度量。
维度表和事实表通过共同的键连接起来,形成星型或雪花型的模型。
优点:1) 简单直观:维度建模易于理解和使用,可以快速设计和构建数据仓库。
2) 查询性能高:维度建模的星型结构简化了查询的关联操作,提高了查询性能。
缺点:1) 一对一关系:维度表和事实表之间是一对多的关系,无法处理多对多的关系。
2) 数据冗余:维度表中的属性可能存在冗余,造成数据冗余和一致性问题。
2. 事实建模事实建模是基于主题的数据仓库建模方法,它以业务过程为核心构建事实表,包括维度键和度量。
事实表记录了业务过程发生的事实信息,维度键用于连接事实表和维度表,度量用于度量业务过程的指标。
优点:1) 灵活性高:事实建模能够适应复杂的业务逻辑和多对多的关系。
2) 数据粒度控制:事实表可以根据需要控制数据的粒度,提供灵活的查询和分析能力。
缺点:1) 设计复杂:事实建模的设计复杂度较高,需要考虑多对多的关系和度量的粒度控制。
2) 查询性能相对低:事实建模需要进行多表关联操作,查询性能相对较低。
3. 标准化建模标准化建模是一种将数据仓库模型与关系数据库模型类似的建模方法。
它将数据存储在标准化的表中,通过复杂的关联操作来查询和分析数据。
标准化建模与维度建模和事实建模相比,更适用于小型数据仓库和查询较少的情况。
优点:1) 数据一致性:标准化建模减少了数据冗余,提高了数据一致性。
2) 灵活可扩展:标准化建模可以适应不同的查询需求,支持灵活的查询和分析。
缺点:1) 查询复杂:标准化建模需要进行多表关联和聚合操作,查询复杂度较高。
数据仓库建模方法数据仓库建模方法是为了满足企业对大量数据的分析和决策需求而设计的一种数据架构。
数据仓库建模方法包括了维度建模和实体关系建模两种主要方法。
本文将详细介绍这两种建模方法的特点和优势。
维度建模是一种面向主题的建模方法,它将业务问题划分为不同的主题,并通过维度表和事实表来描述和表达这些主题。
维度表是描述业务过程的属性,例如时间、地点、产品等,而事实表则是记录与这些维度相关的数值型数据。
维度建模的主要特点是简单、直观且易于理解,能够提供非常灵活和高效的数据分析能力。
此外,维度建模还可实现多维数据分析,应对复杂和多级层次的业务需求。
在维度建模中,事实表和维度表之间通过主键、外键和关联关系进行连接。
维度表用于描述和分析事实表中的数据,维度表之间可以形成维度层次结构。
通过层次结构,用户可以从高层次的概念逐渐细化到低层次的细节,以满足不同的数据分析需求。
同时,维度建模还支持多维分析的功能,用户可以根据不同的维度来进行数据切片、钻取、旋转和透视等操作,以发现数据之间的关联和趋势。
相比之下,实体关系建模是一种面向过程的建模方法,它采用实体和关系来描述和表达业务过程。
实体关系建模将业务过程划分为不同的实体和关系,通过实体之间的关系来描述业务过程的逻辑顺序和依赖关系。
实体关系建模的主要特点是严谨、规范和结构化,能够满足复杂和具体的业务需求。
该方法适用于业务过程较为复杂、涉及多个环节和多个实体的场景。
在实体关系建模中,实体表示业务过程中的具体对象,实体之间通过关系描述它们之间的联系。
关系包括一对一、一对多和多对多三种类型。
通过实体和关系的组合,可以构建一个完整的数据模型,从而在数据仓库中实现具体的业务过程。
实体关系建模相对于维度建模更加直接和具体,用户可以根据实体和关系进行数据分析和决策。
虽然维度建模和实体关系建模有不同的特点和优势,但在实际应用中,两种方法常常结合使用。
在数据仓库中,可以采用维度建模来描述和分析主题和维度之间的关系,同时使用实体关系建模来描述和规划业务过程之间的关系。
引言概述:数据库建模是数据库设计的重要阶段之一,它关注的是如何将现实世界中的数据表示为数据库中的表结构,以及定义表与表之间的关系。
在上一篇数据库建模(一)中,我们介绍了数据库建模的基本概念和常用工具。
在本文中,我们将进一步探讨数据库建模的技巧和注意事项,以帮助读者更好地进行数据库设计。
正文内容:1. 正规化:1.1. 第一范式(1NF):确保数据字段的原子性,避免数据冗余。
1.2. 第二范式(2NF):确保每个非主键字段完全依赖于主键,消除部分依赖。
1.3. 第三范式(3NF):消除非主键字段之间的传递依赖,确保数据表中的每个字段只与主键直接相关。
2. 实体关系模型(ERM):2.1. 实体:表示现实世界中的一个对象或概念,通常用一个矩形表示。
2.2. 属性:描述实体的特征或属性,通常用椭圆形表示。
2.3. 关系:实体之间的联系或关联,通常用菱形表示。
2.4. 域:属性的取值范围。
3. 关系型数据库设计:3.1. 数据表:将实体和属性转化为关系型数据库中的表格,每个实体对应一个表。
3.2. 主键:唯一标识数据表中的每条记录,常用自增字段或唯一标识符。
3.3. 外键:建立表与表之间的关联,确保数据的完整性和一致性。
3.4. 索引:提高数据库的查询效率,常用于经常被查询的字段。
3.5. 视图:基于数据库表的查询结果展示,简化复杂查询和数据权限控制。
4. 数据库设计的性能优化:4.1. 合理选择数据类型:根据数据的实际情况选择合适的数据类型,减少存储空间。
4.2. 优化查询语句:使用索引、合理的连接方式和条件过滤,提高查询效率。
4.3. 分区和分表:将大型数据表分为多个子表,提高查询和维护效率。
4.4. 缓存和缓存策略:减少对数据库的访问,提高系统响应速度。
4.5. 数据库监控和调优:定期监测数据库的性能,进行必要的优化和调整。
5. 数据库安全性:5.1. 权限管理:设置不同用户的权限,限制对数据库的访问和操作。
第二章数据库建模本章要点1、掌握数据库建模的两种基本方法:对象定义语言(ODL)和实体-联系模型(E/R图)2、会用这两种方法建立简单的数据库模型。
3、了解数据库设计的基本原则4、掌握用ODL和E/R图表示子类的方法5、了解子类的继承性6、深入理解键码和引用完整性这两个基本概念数据库建模概述1、数据库的结构,也称为数据库模式。
因此,确定数据库的结构的过程就称为数据库建模。
2、两种主要数据库模式表示法:实体—联系模型,也叫做E/R图,矩形表示实体,椭圆形表示属性,菱形和箭头表示联系。
对象定义语言(ODL):是面向对象的数据库设计方法3、数据库设计的过程图4、面向对象的设计所谓对象,就是某种可观察、可研究的实体;一个人、一门课程、一本书等等都可以作为对象。
每个对象都有唯一的标识,使其能区分于任何其他的对象。
可把具有相似特性的对象归为一类。
2.12.1对象定义语言ODLODL主要用于书写面向对象数据库的设计,进而将其直接转换成面向对象数据库管理系统(OODBMS)的说明。
OODBMS的基本语言一般是C++或者Smalltalk,所以必须把ODL转换成其中一种语言的说明。
ODL与C++非常类似,这种转换相当方便。
2.1.1 面向对象的设计1ODL类的三种特性:1、属性(Attribute),它们的类型由基本的数据类型构成。
2、联系(Relationship),它们的类型是对某类对象的引用或引用的集合。
3、方法(Method),是能用于该类对象的函数。
2.1.2 类的说明关键字interface(接口)•类名•类的特性表(属性、联系和方法)interface <类名> { <特性表>}2.1.3 ODL中的属性属性用来描述对象的某个方面。
例:学生选课数据库中,每门课中有三个属性:CourseNo (课程号)、CourseName(课程名)、Teacher(老师),可用ODL表示如下:interface Course {attribute integer CourseNo;attribute string CourseName;attribute string Teacher;}我们再定义一个简单的学生类:interface Student {attribute integer StudentNo;attribute string StudentName;attribute integer Age;attribute string Dept;}2.1.4 ODL中的联系和反向联系描述一个对象与其他对象之间的联系。
软件工程环境综合实践结业论文—数据建模1.1数据建模的基本概念在设计数据库时,对现实世界进行分析、抽象、并从中找出内在联系,进而确定数据库的结构,这一过程就称为数据库建模。
数据建模中的三种模型的简介a)概念模型把现实世界中的客观对象抽象为某一种信息结构,这种信息结构并不依赖于具体的计算机系统,不是某一个数据库管理系统①BMS)支持的数据模型,而是概念级的模型,成为概念模型。
b)逻辑模型逻辑模型是对概念模型的扩展。
不仅定义了描述概念模型中对象的相关属性,而且定义了对象之间的逻辑关系,比如:聚合、扩展。
在数据仓库中,它关联着逻辑模型和物理模型两方。
目前最流行就是关系模型也就是对应的关系数据库。
常见的实体联系有:一对一联系,一对多联系,多对多联系。
c)物理模型物理模型定义了数据的物理存储方式。
通常是我们定义的一种数据库。
如关系数据库中的一些对象为表、视图、字段、数据类型、长度、主键、外键、索引、约束、是否可为空、默认值。
1.2MDA转化模型驱动架构(MDA )的模型转换提供了一个完全可配置的方式将一个模型中的元素和模型片段从一个域转换到另一个域。
这通常涉及到平台无关模型(PIM )元素转换成指定平台的模型(PSM )的元素。
从单一的、平台独立的元素到可以负责创建跨多个域的多个平台相关的元素。
也就是说从概念模型可以转化成任何语言的逻辑模型,没有平台的限制,例如:java 、C++、c#等等,数据库建模的时候我们可以给它转化成具体的数据库管理系统。
a )定义配置转换EA 中提供了MDA 转换模板,打开EA 工具下的Tools 目录下的MDATransformationTemplates,得到下图:本文讲的是数据建模,因此我们选择DDL 语言,在DDL 转换中主要是将逻辑图中的类转化为物理存储系统中的表:比讣'=n-1 Sif c2fl5->Sttre'3type==,'enuncr-3ti[in"S2 KendTeflplafte-S46^STRAMSF(MR_llEFffiEfiKEC labile")(7STRAHSWH-CURfliEhlT ("langu^e J FtEtMjrjw”E l-3nguagE=£qt£^enQp-tI>Ef-9u]LtDat-ab4HseKqt!K9Klijst -"At±ribute'jEepHratnr-"\n"直indent-""S IB Slf e-JetiTypt !-4AssociBtian-K1214 15 16 17 12心U KliTt="Comectar *辭亡TP将类中Attribute 转换为表的列:DDL 尸IM ..L 初时氓赶陆舌Marr 亡耳■占g 吾|0»^紅S H OKS 0M 夢哥 daaeinerTace — 哉沁j 亡5 Lrk&d 否Lr^ed Base 否brtodClflEhlprf-SC?!S Oparatis 舌 Pjramder 否 Comector 習 氐供僧S饬—:;i 占•,叶PirirtaryKey naiE=^tX%C.CWVERT_IWE.(claj-sMane t ,"F B ^CH I 匚ore"j."CaiEl 匚Bie type-®qtSL®C.OMVEHT_TypEi ;genOptlDefaultl>al3ba5t J "Inttgsr ')K¥qtf将类中的Connector创建为表的外键:在DDL转换中,主要是上面三种的转换,对于Operation、Parameter等都没有定义。
b)逻辑模型的MDA转换本文以网上书店的实例进行讲解,首先我们看一下它的概念模型:其中包括书、作者、账号、订单、交易实体等等,它们之间还有对应的关系,有一对一,多对多等等。
为各个实体添加属性我们得到了另外一种模型一一逻辑模型,如下:从图中我们可以看到每个实体都有了自己的独立的属性,并且这些属性独立于任何平台。
本文以网上书店的实例进行讲解,我们选择LogicalLevel 包,右键选择 TransformCurrentPackage:1..E1..xtegnifty 艮LJiiKiItemAccent10*StioppmgB^sket11..*0.?•srEnfti 咖Books«entity&order^EntityA Transaction1Q..eA直]DomainModel閒DomainModel_IDomain0切亡_J Abstract匸怙翦Model-回匚-cep tualLevel_IConceptualOhj亡ct>口ConeeptualEntityERD>冒Account>§Author>團Books>gLineltem、冒«:erumeration»OrderSttatus>團PurchaseOrder園ShoppingBasketJ冒Transaction丿直]Physical>_J DDL_J DDLFormatted得到下图:左边为所有包中所选中的元素,右边你可以选择转换的平台,本文是数据建模,因此选择DDL,执行转换,得到下图:|」oin 目ni>huT&ALrth4F 匚|这里我们需要注意的是在逻辑模型中我们可以看到书与作者是多对多的关系,在转换为DDL 表中,书与作者之间有一个联合表。
最后我们可以把这些表的SQL 语句生成出来,然后在DDMS 系统中执行脚本,就在数据库中生成了相关的表,除了创建表,我们还可以创建视图,索引等等,我们接下来就简单的讲解以下创建索引。
我们以网上书店的例子为例,比如为Account 表创建索引,首先选择Account 表,右键,选择“功能与属性”下的“操作”,点击“操作”得到下图:I 爭ArcountSftJndMAucc上图我们是我们已经创建好的索引,创建索引,我们只需要在构造性的选择框中选择Index ,在哪一列设置索引我们也可以在此对话框进行设置,然后在拓展属性进行其它相关的设置。
对于视图的创建,我们选择“工具箱”选择“更多的工具”下的数据建模,选择View ,将View 拖入刚才生成的DDL 图中,单击打开,得到下图:AUtJlDToecdumnDAuthor 占ir 书'PKBurnnrtDinteger«PK»4PK_Autncr|ln:egEr|■■.■■■.■■■.■■..■■..■■.■.■■F :■+Ajth<x 1十Ek>c*s 1F 性L.ffib !•列esfli:•前揑呆件 :-倉称诈用握PK_Asc 口urtPK R J M 匚ir 曲Pubic 1 WyTrigJSIriflgerRjbk^PK 站血(■ButhcrlO =auth<x1D){肚鈕口二txx^lDI«FK>枸洁fik).询可上I :保存|£|按1殆|T我们可以选择数据库和语句的填写。
c)Sql脚本的生成在上面的基础上我们选择生成的DDL包,右击,选择“代码工程”下的“生成DDL”点击,得到下图:我们可以在左侧选择生成索引、视图、触发器、等等,然后在DDMS系统中执行脚本,就在数据库中生成了相关的表。
2.0Powerdesigner进行数据库建模2.1创建表新建物理模型时需要指定物理模型对应的DBMS,这里我们使用Sqlserver2008,新建一个物理模型后,系统会显示一个专门用于物理模型设计的工具栏,如下图:单击工具栏的鼠标指针按钮,将鼠标切换回指针模式,然后双击一个表,系统将打开表属性窗口,在General选项卡中可以设置表的Name、Code等属性。
例如我们要新建一个教室表(ClassRoom),则可修改Name和Code。
Name是在模型中显示的名称,C o d e是生成数据库表的时候的实际表名。
另外N a m e中的内容还会作为S Q L S e r v e r中的表备注。
单击Columns切换到列选项卡,在下面的列表中可以添加表中的列。
Name是模型上显示的名称,Code是生成的实际的表名,后面的3个复选框P代办主键、F代表外键,M代表不能为空。
为教室表设计了两个列,如图所示:TableProperties -学生衰(Student)rn 百|圧]HoltsHiiitsp上je 首C<>l>jmrisIrides«E Keys |Trigseis rrocedutes FI LJS L cal Ojili DJISHicrosofl旨I 帼剧湛趟n )晶右ca 诞|啓|中遥帮助2.2设定主键在设计一个表时,一般情况下每个表都会有一个主键,主键分为单列主键和复合主键。
在为表设置主键时有以下几种办法:1>在Columns 选项卡中,直接选中主键列的P 列复选框,这是最简单的方式。
2>选中一个列,然后单击工具栏中的“属性”按钮,系统将弹出列属性窗口,在该窗口中可以设置该列的各种属性,当然也包括该列是否是否是主键。
另外还有一个很重要的复选框是“Identity ”。
选中Identity 复选框则表示该列为自增列。
如图:3>切换到Keys 选项卡中,在其中添加一行命名为PK_ClassRoom,然后单击工具栏的“属性”按钮,打开键属性窗口,在该窗口中切换到Columns 选项卡,单击添加列按钮,弹出列选择窗口,选中主键中应该包含的列,单击确定按钮即可完成主键的创建。
P^arreCodsData Type LengthPrectao n*[衣」S-LdeirlZiir/ hid 血忖am 已nvanchar(50| 50 3Horndtoftn Hanielnwn nxaichdi[5D S 504Qendei Gender bit□ BirthdayBirthday datetrne E ;□a±±iq Classi D ini 7Weighl WeiJ-t ini aHeicH : Heightini9 DescD BSCnvarchai(lDD100二2.3创建视图在SQLServer 中视图定义了一个SQL 查询,一个查询中可以查询一个表也可以查询多个表,在PD 中定义视图与在SQLServer 中定义查询相似。