转自 [软工吧论坛] http://www.gcs8.cn/simple/index.php?t15982.html

erwin是一个数据库关系实体模型(ER Model)设计工具,与Power Designer(Sybase公司开发)成为最常用的两种数据库设计工具。目前该工具被CA收购,成为CA数据库解决方案中的一个关键部分。与微软的Vision相比,erwin只能设计er model,而且设计界面选项较多,相对来说并不那么友好,增加了使用的难度。但如果你是一个出色的数据库应用开发者,那你一定会发现erwin的好处。因为在设计模型层次和复杂度提高以后,visio难以应付众多的数据对象设计和对象之间的关系设计。而且erwin提供了数据库正向工程、逆向工程和文档正向工程功能,可以把设计直接实施到数据库后者把数据库中的对象信息读到erwin设计中,也可以生成设计文档,格式还可以自动定义。在本教程中,将告诉大家我是怎样简单的使用erwin来进行数据库设计的。这里强调了简单二字,就是说有很多只有20%机会用到的80%的功能本教程是不会介绍的。本文用到的erwin版本是4.0。
教程一:Table & Subject Areas
Table是数据库中最基本的物理元素,保持了应用的持久数据。在普通的信息系统数据库结构设计中,有90%的工作是在设计table。而table的字段定义和表间的关系,也反映了整个系统的数据流图和大致的业务流程。
Subject Areas是erwin提供逻辑元素,在实际数据库中并不存在。它的含义是把物理元素和逻辑元素按照实际意义划分成各个主题,在主题域中添加对元素的引用,起到一个按图索骥和目录的作用。有一个缺省的主题域Main Subject Area,所有的元素都会在该主题域中存在。在我本人的设计方法中,我会新建诸如“参数表”,“分户表”,“控制表”,“临时表”,“明细表”,“日志表”和“总帐”等主题域。
下面跟着我的说明,一步一步来设计table:
装好erwin4.0后,打开程序。提示你是创建一个新模型还是打一个已有的,选择创建新模型。在Model Type中选择Physical(物理模型),下面的Target Database默认值就是Oracle8.x,使用默认值,点击OK,创建了一个空白的模型。
按照上图说明,创建一个表,缺省名称是“E_1”,自动排布在Main subject area的左上角,用鼠标在空白处点一下,然后把表拖到稍微靠近中间位置的地方,避免有部分信息被掩盖。
右键点击表E_1,显示与表相关对象菜单:
我们最关心的是Columns,选中它,则弹出Columns对话框:
根据上图的说明,在本界面中可以修改表名称和表说明(需弹出table对话框),也可以新增字段和对字段的各个属性进行修改。点可以把字段的位置上升或者下降。
我们把表的名称改为department,表说明为“部门表”。新增4个字段
dept_id varchar2(10) 部门编号
dept_name varchar2(50) 部门名称
mdept_id varchar2(10) 管理部门编号
dept_class varchar2(3) 部门级别
其中dept_id为主键(当把某个字段设定为主键后,该字段会自动上升到顶部)。设计好后的结果如下:
点击确定后,缩略图被更新:
新建列的基本顺序是:把所有列名挨个添加,先不要设置数据格式等其他信息。然后设定列的说明,再设定列的数据类型,最后设定列的主键以及是否可空属性。
当一张表编辑好后,会自动在Main Subject Area中存在,如果想在其他主题域中引用,只需要在左边导航列表中把该表的名称拖到其他主题域中。在其他主题域中删除某张表时,系统会提示你是删除整个erwin模型对象还是在当前主题域中删除引用,如果选前者,那该表就永远删除了,否则只会删除在某个主题中的引用。

想要修改一个表的定义,只需切换到该表所属的主题域或者Main Subject Area(切换主题域的方法是在左边导航列表中找到该主题域的名称,右键点击选Go To),然后双击table对象。如果这时出来的是Index或Triggers对话框,则关闭对话框,然后右键点击table对象,在菜单中选Column即可。 在下一节里,我将会讲数据库正逆向工程和文档正向工程功能。

ERWin简单教程[转]相关推荐

  1. ASP.NET Core 异常和错误处理 - ASP.NET Core 基础教程 - 简单教程,简单编程

    原文:ASP.NET Core 异常和错误处理 - ASP.NET Core 基础教程 - 简单教程,简单编程 ASP.NET Core 异常和错误处理 上一章节中,我们学习了 ASP.NET Cor ...

  2. idea 从svn导入多个项目_IDEA导入项目简单教程

    该教程用于IDEA初学者导入eclipse项目,或者导入其他已经写好的Java源程序的简单教程. 我们用IDEA打开一个已经写好的项目源文件时,如果没有配置好,就会出现:JDK配置失误报错.程序无法启 ...

  3. expect简单教程

    expect简单教程 一.概述 expect是Unix系统中用来进行自动化控制和测试的软件工具,由Don Libes制作,作为Tcl脚本语言的一个扩展,应用在交互式软件中如telnet,ftp,Pas ...

  4. ASP.NET Core macOS 环境配置 - ASP.NET Core 基础教程 - 简单教程,简单编程

    ASP.NET Core macOS 环境配置 - ASP.NET Core 基础教程 - 简单教程,简单编程 原文:ASP.NET Core macOS 环境配置 - ASP.NET Core 基础 ...

  5. Git和Github简单教程

    网络上关于Git和GitHub的教程不少,但是这些教程有的命令太少不够用,有的命令太多,使得初期学习的时候需要额外花不少时间在一些当前用不到的命令上. 这篇文章主要的目标是用较少的时间学习Git和Gi ...

  6. ASP.NET Core Razor 标签助手 - ASP.NET Core 基础教程 - 简单教程,简单编程

    原文:ASP.NET Core Razor 标签助手 - ASP.NET Core 基础教程 - 简单教程,简单编程 ASP.NET Core Razor 标签助手 上一章节我们介绍了视图导入,学习了 ...

  7. ASP.NET Core 登录登出 - ASP.NET Core 基础教程 - 简单教程,简单编程

    ASP.NET Core 登录登出 - ASP.NET Core 基础教程 - 简单教程,简单编程 原文:ASP.NET Core 登录登出 - ASP.NET Core 基础教程 - 简单教程,简单 ...

  8. wcf简单教程(10) ajax调用,wcf简单教程(10) ajax调用

    wcf简单教程(10) ajax调用 [2021-02-11 16:23:59]  简介: php去除nbsp的方法:首先创建一个PHP代码示例文件:然后通过"preg_replace(&q ...

  9. ASP.NET Core 动作结果 - ASP.NET Core 基础教程 - 简单教程,简单编程

    ASP.NET Core 动作结果 - ASP.NET Core 基础教程 - 简单教程,简单编程 原文:ASP.NET Core 动作结果 - ASP.NET Core 基础教程 - 简单教程,简单 ...

最新文章

  1. 用零知识证明解决投票安全
  2. 项目使用mysql接收emoji表情
  3. 自定义IP原来如此简单
  4. php 匹配标记,php – 正则表达式匹配没有标记的链接
  5. UML图系列——用例图
  6. 笔记-信息化与系统集成技术-供应链的特征
  7. KeyError: 报错_python系列学习笔记
  8. C#编程-Access数据库的简单应用
  9. 怎么使用java官方demo?
  10. WinForm的App.config
  11. Java基础语法之方法的参数传递与综合案例
  12. 数据库-windows上安装mysql
  13. sqlserver 时间递增循环
  14. 深度学习自学(一):Loss function 损失函数
  15. MySQL 创建主外键
  16. rc.local文件开机不执行
  17. Talib技术因子详解(十)
  18. ExtJS学习之EditorGridPanel
  19. 安装orbslam2
  20. Mysql从入门到入魔——6. 表联结、组合查询

热门文章

  1. 两年多菊厂OD的心路历程
  2. 火山引擎入选中国信通院“可信边缘计算推进计划”首批成员单位
  3. pyecharts本地文件,pyEcharts安装及详细使用指南(最新)
  4. [附源码]java+ssm计算机毕业设计哈尔滨旅游资讯网站13hnn(源码+程序+数据库+部署)
  5. Mac 如何远程连接公司内网
  6. 【Grasshopper基础12】打造自定义可复用的有按钮电池外观模版
  7. 博客园离线写博客工具
  8. 微信小程序----团购或秒杀的批量倒计时实现
  9. OPPOa73是Android10吗,OPPO A73和OPPO A59那个好?OPPO A59和OPPO A73区别对比评测
  10. ntoskrnl.exe中Zw*与Nt*的区别