DataUml Design 实体建模基于UML类图标准来设计,支持一对一、一对多、多对多关联。模型与开发语言和数据库绑定。
1、新建数据模型
    1)、选择“数据模型” 节点,点击鼠标右键,在菜单中点击“新建文件夹”,在“数据模型”节点下会增加个“文件夹”的子节点。如图2-1。


图 2-1

2)、选中新增加的“文件夹”节点,点击鼠标右键,在出现的菜单中点击“重命名”,可以给节点重新命名。如图2-2。这里我们给它命名为“XX项目模型”。


图2-2 

3)、选择“XX项目模型”,在右键菜单中选择“新建数据模型”菜单,在节点下会新增DataModel1子节点。如图2-3


图2-3 

4)、选择新添加的DataModel节点,点击鼠标右键,在出现的菜单中点击“重命名”,可以给节点重新命名。如图2-4。这里我们给它命名为“采购流程”。

 
图2-4 

2、绑定数据库和开发语言
    1)、选择新添加的数据模型节点,在右键菜单中选择“设置”菜单,出现如图2-5界面,在下拉列表中选择一种开发语言,这里我们选择C#。


图2-5
 

2)、选择“数据库”选项卡,单击右边“添加数据库”按钮,在出现在下拉菜单中选择一种数据库类型。如图2-6,这里我们选择
Oracle数据库为例。

 
图2-6 

3)、选择Oracle数据库之后,弹出一个连接数据库的对话框如图2-7,用户名我们以netuml为例。


图2-7 

4)、测试连接数据库成功之后,单击“确定”按钮,会在“选择绑定的数据库”节点下新增一个数据库实例节点,如图2-8.


图2-8

5)、单击对话框中右边“绑定”按钮,给模型绑定了一个Oracle数据库。最后单击“确定”按钮。这里我们成功地给模型绑定了数据库和开发语言。
3、设计类结构
    1)、双击新建的数据模型节点,出现如图2-9界面


图2-9 

2)、点击左侧工具箱中的“类”,然后在中间空白处点击鼠标左键,成功的添加了一个类到模型中。选中添加的类,鼠标点击右键,在出现的菜单中选择“属性”菜单。如图2-10

    
 图2-10

3)、这里我们以“采购订单”类为例,在类属性对话框“属性”选项页中,我们输入以下数据。如图2-11


图2-11 

类名对应于程序语言中的类的名字,中文名为模型显示的名字,表名对应数据库中表的名字。
    4)、选择“成员属性”选项页,如下图2-12


图2-13 

属性名称:对应程序语言中类的属性名;
        属性中文名:模型中显示的名称;
        字段名:对应数据库表中的字段名;
        属性类型:对应程序语言中属性的类型,这里我们选择的开发语言为C#,它的属性类型应为: "bool", "byte", "char", "string", "int", "int16", "int32", "int64", "float", "decimal", "DateTime" ;
        字段类型:对应数据表中字段的类型,这里我们选择的数据库为Oracle,它的类型为:"binary_double", "binary_float", "blob", "clob", "char", "date", "interval day to second", "interval year to month", "long", "long raw", "nclob", "number", "nvarchar2", "raw", "timestamp", "timestamp with local time zone", "timestamp with time zone", "varchar2";
       长度:对应数据表中字段的长度;
       是否空:对应数据表中字段是否为空值;
       主键:对应数据表中主键字段;
       外键:对应数据表的外键字段;
       标识:对应数据表字段的标识,这里标识只能选择Guid和Sequences;
       默认值:对应数据表字段的默认值;
       备注:对应数据表字段的备注;
    5)、选择“主外键”选项页,如下图2-14。


图2-14 

主键:对应数据表中的主键信息,主键信息是由字段是否为主键自动生成的。
        唯一键:对应数据表中的唯一键,这里只能添加和删除唯一键。
        外键:对应数据表中的外键,外键是由类与类之前的关联信息自动生成的,此处不允许添加和删除外键信息,要删除外键信息只能删除类与类之间的关联关系。
    6)、单击类属性的“确定”按钮,一个“采购订单”类就建立好了,如下图2-15


 图2-15

4、设计类关联关系
    1)、这里我们以同样的方式添加“采购明细”和“供应商信息”类,如下图2-16


图2-16 

2)、一个采购订单必须要有0个或多个采购明细,一个采购明细只能属性一个采购订单,一个采购订单对应于一家供应商,所以这里我们把采购订单和采购明细建立组合关系,把采购订单和供应商建立单向关联关系,如下图2-17


图2-17 

3)、双击采购订单和采购明细之间的连接,弹出如下界面,如图2-18


图2-18 

采购订单的多重性我们选择1,名称输入“主订单”,采购明细的多重性我们选择0..1,名称输入明细。
    4)、选择“关联字段”选项页,如图所示2-19


图2-19 

关系名:自动生成,也可以手工修改。
        关联字段:我们以采购订单号进行关联,所以都选择“采购订单号”,采购订单作为主表,采购明细作为子表。
    5)、以同样的方式,我们设置“采购订单”和“供应商”类之间关联线的属性。最后如下图2-20


图2-20 

6)、最后我们来查看一下“采购订单”表的键信息,选择“采购订单”类,右键选择“属性”,在出现的对话框中选择“主外键”选项卡,如下图2-21,外键信息是根据“采购订单”和“供应商”类之间的关联信息生成的。


图2-21 

5、模型显示模式
    以上模型的显示模式为“数据结构”,现在我们设置“面向对象”模式看看有何不同。
    1)、选择数据模型节点,右键选择“属性”菜单,在出现的对话框中选择“其它”选项卡,出现如下界面,图2-22 ,这里“显式模式”我们选择“面向对象”。


图2-22 

2)、选择“面向对象”模型之后单击“确定”按钮,重新打开数据模型,看看有何变化,如下图2-23

 
图2-23

            大家看到有什么区别吗?类的显示方式变化了。
    3)、选择“采购明细”类,右键菜单选择“类成员属性”  如下图2-24.

 
图2-24

    4)、在弹出的界面中,可以设置类成员的属性、类的访问性 、成员的访问性、新加字段、新加方法、新加事件等操作,这里我们添加了一个方法。 如下图2-25

 
图2-25

    5)、最后单击“确定”按钮,我们来看看类的显示有什么变化,如下图2-26

 
图2-26 

 

DataUml Design 教程2-实体建模的更多相关文章

  1. DataUml Design 教程1-初识

        DataUml Design 是面向开发人员使用的一个永久免费的软件,提高软件的开发效率和代码的规范度.它主要包括三大功能,数据模型.代码生成和UML建模,数据模型功能类似于PowerDesi ...

  2. DataUml Design 教程6-DataUML Design 1.1版本号正式公布(支持PD数据模型)

    从DataUML Design正式公布到如今有两个月了.因为近期比較忙,到如今才公布1.1版本号. 以后本人会一直坚持不断完好DataUML Design软件,希望广大程序员们多多支持. 一.1.1版 ...

  3. DataUml Design 教程6-DataUML Design 1.1版本正式发布(支持PD数据模型)

    从DataUML Design正式发布到现在有两个月了,由于最近比较忙,到现在才发布1.1版本.以后本人会一直坚持不断完善DataUML Design软件,希望广大程序猿们多多支持. 一.1.1版本新 ...

  4. DataUml Design 教程5-代码模板介绍(甚于T4模板技术)

    DataUml Design 代码模板全然基于C#语言来编写的. 不懂写模板的能够请教作者,随时欢迎. 以下是一段模板代码,这段代码能够获取一个类结构的全部信息.             <#@ ...

  5. DataUml Design 教程7 - 数据库生成模型

    DataUml Design支持数据库生成模型,并支持外键关系,能够根据外键自动生成类与类之间的关系. 目前DataUML Design支持MS Server.MY SQL.Oracle和Access ...

  6. DataUml Design 教程4-代码生成

            DataUml Design 生成代码非常灵活,它是基于模板形式生成代码,如果不懂类结构的话写模型就比较困难了.这里我只讲解下如何生成代码,代码模板规则下一节将介绍.        1 ...

  7. DataUml Design 教程3-模型与数据库同步

    上一节我们已经建立好了数据模型,那么怎么让数据模型和数据库进行同步呢?模型同步到数据库非常简单,只需要模型绑定到数据库即可.DataUml Design目前支持和Oracle与MS Server数据库 ...

  8. DataUml Design 课程6-DataUML Design 1.1版本号正式宣布(支持PD数据模型)

    从DataUML Design正式宣布到现在两个月,因为最近忙,出版到现在为止1.1版本号.稍后我们将始终坚持以良好DataUML Design软件,我希望程序员有很多支持. 一.1.1新的和改进的版 ...

  9. DataUml Design 介绍10 - DataUML 1.4版本功能(增加UML活动图和用例图)

    DataUml Design 1.4版本正式发布 1.解决软件自动关闭的问题 2.增加UML活动图和用例图功能 详细介绍稍后继续...........................

随机推荐

  1. 1.2(java学习笔记)类与对象

      对象:是指具体的事物.比如学生 张三,老师 李四,代表一个单一的个体. 比如 学生 张三,这时张三就是具体的对象. 类:将对象中共有特征抽象出,可以理解为某种特性的集合. 世界上的事物可以分解成一 ...

  2. React Native学习之自定义Navigator

    Navigator还是最常用的组件, 所以自己封装了一个, 使用起来也比较简单, 如下: 首先导入组件 var MLNavigator = require('../Lib/MLNavigator'); ...

  3. iOS UILabel自定义行间距

    NSString *hintStr = @"输入材料标题搜索材料\n注:可根据材料序号直接搜索, 如TPO23"; CGSize size = [toolset returnTex ...

  4. 最短路径之迪杰斯特拉算法的Java实现

    Dijkstra算法是最短路径算法中为人熟知的一种,是单起点全路径算法.该算法被称为是“贪心算法”的成功典范.本文接下来将尝试以最通俗的语言来介绍这个伟大的算法,并赋予java实现代码. 一.知识准备 ...

  5. 常用vim命令合集

    移动命令: h:左移 l:右移 k:上移 j:下移 ^:移动到本行第一个非空白字符上 0:移动到本行第一个字符上 gg:移动到文件头 G = shift + g:移动到文件尾 %:从一个"{ ...

  6. oracle 10g函数大全--转换函数

    chartorowid(c1) [功能]转换varchar2类型为rowid值 [参数]c1,字符串,长度为18的字符串,字符串必须符合rowid格式 [返回]返回rowid值 [示例] SELECT ...

  7. webpack配置:less/sass文件打包和分离、自动处理css前缀、消除未使用的css及完整的webpack.config.js文件

    一.less文件打包和分离 1.要使用less,首先使用npm安装less服务:还需要安装Less-loader用来打包使用. npm install less --save-dev npm inst ...

  8. 扩展 jQuery EasyUI Datagrid 数据行鼠标悬停/离开事件(onMouseOver/onMouseOut)

    客户需求: jQuery EasyUI Datagrid 用户列表鼠标悬停/离开数据行时显示人员头像(onMouseOver/onMouseOut) 如图所示,Datagrid 鼠标悬停/离开数据行时 ...

  9. python抓取360百科踩过的坑!

    学习python一周,学着写了一个爬虫,用来抓取360百科的词条,在这个过程中.因为一个小小的修改,程序出现一些问题,又花了几天时间研究,问了各路高手,都没解决,终于还是自己攻克了,事实上就是对lis ...

  10. 报错:numRecords must not be negative

    报错的原因:删除已经使用过的kafka topic,然后新建同名topic 解决方法:把topic名字换一下 (有其他更好的解决方法,可以不修改topic名)