`
- 浏览:
127802 次
- 性别:
- 来自:
广州
-
1、设计数据库最好从概念模型开始,概念模型中以实体为单位,可以比较清晰的反映实体间关系。
需要特别注意的一点,在创建好一个新的概念模型后,最好在model options中,将数据项的唯一代码和允许重用两个选项去掉。否则不同实体中的同名属性会被认为是同一个数据对象,改一个另外的也会跟着改。大多数情况下都不需要这种特性,相反它会带来麻烦。做好这个设置后,开始下面的步骤:
1)创建实体,最初只需要命名中文名称。当然,之前需要进行系统的需求调研与分析。
2)分析实体间关系,画上关系,准确的确实出是一对一还是一对多,对于多对多关系,最好创建关联实体。
3)创建实体的属性,先不要管英文名称和数据类型,只命名中文名称。添加属性的过程中,尽量更细致的修改实体及其关系。并指定各实体的主键。 不要让实体没有主键,这不是个好习惯。
4)对形成的模型进行讨论、修正。
5)创建domain。 domain是什么东西呢,应该翻译成“域”吧, 但实际是一种自定义类型。把常用到的数据类型定义成domain,所有的属性指定其domain,而不直接指定数据类型,会给以后的工作带来很大的方便。
6)为各属性命名英文名称。这基本就是将来生成的数据库里的字段名称了。
7)为各属性指定domain
至此,概念模型创建完成。 默认的图形中的字符很小,可以通过右键弹出菜单里的显示配置项,设计实体名称及属性的字体。 也可以设置不显示关系的名称,并修改关系连线的样式,以获得好的显示效果。
也可以设置不同性质的实体为不同的底色,以获得更明确的效果。但是不建议将实体分在不同的包中,那样实体关系不太直观,也会有一些其它麻烦。如果是超大型的系统,实体特别多,合理的划分包是一个重要的工作。
在对概念模型反复的修正后,便可以生成物理模型了。在工具菜单里便有这项功能。
2、生成物理模型时,是需要选择数据库系统的。就是说物理模型是数据库相关的。当然需要选择正确的数据库系统。
1)注意检查生成的表间关系是否有问题。这时候概念模型里的实体就转化为物理模型里的表了。一些概念模型里的关系和约束,生成到物理模型里可能会出现问题,需要手动修正一下。虽然这种情况不多见。
2)生成的很多外键会重名,可以用check model检查一下,把重名的外键名修改一下。
3)将所有字段设置不允许null值。就是勾上表的属性窗口中,每个字段的M列的选择框,其实就是字段的Mandatory属性。也可以在概念模型中做这一工作。这样做的好处是,在代码中一般不会碰到从数据库中取到的值为null的情况,可以简化很多工作。这里多做的工作绝对是值得的。当然这种情况下,对于很多字段,我们最好提供默认值,以避免一些情况下对插入数据时有过高的要求。我们不必每个字段去指定默认值,因为我们应用了domain,前面提到过的一种自定义数据类型。下面我们继续说明如何给domain添加默认值。
4)添加默认值对象。也许有些人不清楚,默认值是一些数据库里的一种对象,就象表、字段、触发器一样,默认值在Sql Server中就是一种对象。在物理模型里,可以创建它。一般我们可能只需要三个默认值对象:数字型的默认值、字符串型的默认值以及日期型的默认值。在物理模型中定义上这三个默认值对象。
5)为每个domain指定默认值对象。这样,每个被指定为这个domain类型的不允许null的字段,就会继承domain的默认值。注意,这是数据库的特性,不是PD的特性。不管怎么说,我们很容易的做了指定默认值的工作。好的数据库设计可能会考虑的更细致,比如有些数字型的字段,应该默认为1,而不是0。 这时候你只需要重新指定一下字段的默认值,他就不会再从domain中继承默认值了。
6)对物理模型检查修正后,便可以生成数据库了。 生成数据库时有很多选项,比如是否生成一些对象的drop脚本等,都可以控制的。
注意,在修改好物理模型后,不要再重新生成物理模型,否则很多在物理模型中定义的东西会丢失。如果需要做改动,以物理模型为准,概念模型可以反向生成,或者手动保持同步。
有些概念可能会乱,在这里把这些名词整理一下。
概念模型 --- 物理模型 --- 数据库 ---- 解释
1)、 实体 --- 表(table)-- 表 --- 实体和表对应,但并不完全是一回事了。
2)、 属性 --- 字段 -- 字段 --- 不解释了
3)、 Domain --- Domain ------自字义类型 --- 其实就是自字义数据类型。
4)、 默认值对象 -- 默认值对象 ---默认值对象 ---含有默认值,但不是默认值。不太常见,但很有用。SQL Server文档里说未来的版本可能会取消默认值对象相关的一些东西,谁知道呢。
还有啊,概念模型、物理模型、数据库三者是可以相互转化的,相互的正向或逆向工程。
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
### PowerDesigner 学习笔记详解 #### 一、PowerDesigner 概览 PowerDesigner 是一款由 Sybase 推出的专业数据库设计工具,广泛应用于数据库设计领域。它支持两种主要的数据模型设计方式:概念数据模型 (CDM) 和...
### PowerDesigner 使用笔记 #### 一、PowerDesigner安装与配置 **1. 下载PowerDesigner安装包** 首先从官方网站下载PowerDesigner安装包:通过链接 `...
**PowerDesigner知识库使用笔记** PowerDesigner是一款强大的数据库设计与数据建模工具,广泛应用于软件开发、数据分析等领域。它能够帮助用户创建概念数据模型(CDM)、物理数据模型(PDM)以及业务流程模型,从而...
### PowerDesigner 学习笔记 #### 一、PowerDesigner 概述 PowerDesigner 是一款强大的数据库设计工具,广泛应用于数据库的设计、开发以及管理之中。它不仅支持多种数据库平台,还能帮助用户快速创建高质量的...
### PowerDesigner 学习笔记 #### 一、PowerDesigner简介及功能模块 **PowerDesigner**是一款强大的集成化CASE工具,广泛应用于系统分析、设计及数据库建模等领域。它支持多种数据库平台,具备从概念设计到物理...
1. 使用PowerDesigner提供的API,创建一个脚本文件,用于实现name-comment-stereotype之间的自动复制。 2. 脚本可以针对不同的对象类型(如表、字段等)进行定制化处理。 3. 保存脚本,并定期运行以保持数据的一致性...
Oracle学习笔记(数据库设计范式 PowerDesigner工具),有具体的代码案例
这个文本文件包含了作者在使用PowerDesigner过程中的个人笔记和经验分享,可能包含一些不常在正式教程中提及的小技巧和问题解决方案。例如,如何快速调整模型视图,如何自定义模板,以及解决特定错误的方法等。 **5...
中科院java培训的案例—博客系统,主要用jsp和servlet实现,其中涉及DButils,mysql数据库连接池,FCKeditor,PowerDesigner,startUML等的使用。很值得学习。
1. 单例模式保证了全局范围内类的唯一实例,适用于那些需要频繁实例化然后销毁的对象,如配置管理、缓存、日志对象等。 2. 工厂模式将对象的创建过程封装起来,使得客户端无需关注对象的创建细节,提高了代码的可...
* PowerDesigner:是一种数据建模工具,支持 MySQL 数据库的设计和开发。 * E-R 图:是一种数据模型图,用于描述实体之间的关系。 其他数据库管理系统 * MariaDB:是一种 MySQL 的 fork 版本,具有高性能和安全性...
MySQL 数据库笔记 MySQL 数据库是关系型数据库管理系统,用于存储和管理大量数据。...* E-R 图、PowerDesigner 建模工具、PDMan。 数据库事务 * 什么是事务? * 事务特性:ACID。 * 事务隔离级别。 * 事务管理。
#### 一、PowerDesigner简介与功能特性 **PowerDesigner**是由全球知名数据库厂商Sybase推出的一款强大的电子化建模工具。它以其出色的性能价格比和广泛的兼容性,在众多CASE(Computer-Aided Software Engineering...
1. **安装 PowerDesigner**:确保 PowerDesigner 在计算机上正确安装。 2. **了解 CDM (Conceptual Data Model)**:理解 CDM 的主要设计元素和设计过程,即数据库的概念结构设计阶段。 3. **熟悉模型转换工具**:...
实体关系模型(E-R模型)是数据库设计的基础,它使用PowerDesigner等工具绘制数据模型图,将现实世界中的实体、属性和关系可视化。数据库设计遵循三个范式:第一范式强调原子性,确保列不可再分;第二范式要求除主键...
- **PowerDesigner使用**:PowerDesigner在数据库设计和建模中的应用技巧。 ##### 5.2 数据处理与事务控制 - **游标更新数据**:通过游标进行数据的批量更新,提高数据处理效率。 - **细粒度事务控制**:实现更精细...
### dorado学习笔记知识点梳理 #### 一、前端页面显示问题 在遇到前端页面显示问题时,可以通过清理Tomcat的工作目录来尝试解决。具体操作步骤为:定位到`tomcat/tmp1/work/Catalina`目录,并进行清理。这通常能够...
**使用PowerDesigner设计数据库**:PowerDesigner是一种强大的数据库设计工具,可以帮助用户创建概念数据模型(CDM)、物理数据模型(PDM)等。 - **创建CDM**:概念层面的数据模型,不涉及具体的数据库实现细节。 -...