E-R图也称实体-联系图(Entity Relationship Diagram),提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。

它是描述现实世界关系概念模型的有效方法。是表示概念关系模型的一种方式。用"矩形框"表示实体型,矩形框内写明实体名称;用"椭圆图框"表示实体的属性,并用"实心线段"将其与相应关系的"实体型"连接起来;

用"菱形框"表示实体型之间的联系成因,在菱形框内写明联系名,并用"实心线段"分别与有关实体型连接起来,同时在"实心线段"旁标上联系的类型(1:1,1:n或m:n)。

在ER图中有如下四个成分:

矩形框:表示实体,在框中记入实体名。

菱形框:表示联系,在框中记入联系名。

椭圆形框:表示实体或联系的属性,将属性名记入框中。对于主属性名,则在其名称下划一下划线。

连线:实体与属性之间;实体与联系之间;联系与属性之间用直线相连,并在直线上标注联系的类型。(对于一对一联系,要在两个实体连线方向各写1; 对于一对多联系,要在一的一方写1,多的一方写N;对于多对多关系,则要在两个实体连线方向各写N,M。)

visio的使用:

1. 打开visio软件,会出现选取模块的界面,若需要编辑上述模块之一就可直接做出选择,比如需要绘制地图和平面布置图,则选择地图和平面布置图模块。

2.

模块下与许多种案例,选择一种较为接近的案例,如下图所示。

3.如此,便会出现如下界面,此时就可以利用案例中所提供的模型绘图了。绘图方法是选中所需要的模型拖拽到右面的绘图纸上,这样就会在绘图纸上产生相应的模型了,如此就省去了绘制每个模型所需要花费的时间,增加了绘图的速度、并提供了绘图的规范度。

4.

另外,如果所需要绘制的图形并不输于某个模块,那么也不要着急,visio中含有建立空白页绘制基本图形的功能,打开文件菜单下的新建中的新建绘图,就可以生成一张空白的绘图纸,左边有些基本图形,同样是通过选中拖拽就可以完成绘图了。

5.

完成绘图后点击文件中的保存按钮,或者上栏的左数第三个图标就可以完成存储了。

power desiner的使用:

1、使用PD连接Oracle数据库

前些天跟进一个已经做完一半但是不大的系统,使用Oracle 11g数据库,因为时间比较紧张,而且项目组人员没有文档规范意识,各个模块的数据库表都由各个开发人员独立设计,没有完整的物理模型设计文档,给维护造成很大困难。

因为只有Oracle数据库中有表结构,所以我想通过Oracle数据库反向生成物理模型,首先需要使用Power Designer连接Oracle数据库。

1.1 创建新的物理数据模型

点击“文件”-> “建立新模型”,在弹出的界面中使用默认选择(“Model”-> “Physical Data Model”-> “Physical Diagram”),修改“Model Name”为系统的名称,“DBMS”选择“ORACLE Version 11g”,点击“OK”按钮建立新的物理数据模型。如下图所示:  
      

【说明】笔者使用的Power Designer版本为15.1,链接的Oracle版本为Oracle 11g。

1.2 创建Oralce数据源

点击“数据库”-> “Configure Data Connections”,在弹出的界面中选择“Connect Profiles”后点击“ ”按钮将弹出创建数据源的界面,如下图所示:         
       

在“Connection Profile Connection Definition”界面的设置参考如下:
       

该界面设置需要注意的是:

  (1)Connection Profile name:输入数据库连接文件名它会自动加上后缀.dcp

(2)Derectory:可以选择任意目录;

         (3)Connection type:连接类型选择“JDBC”;

(4)DBMS type:数据库管理系统选择“Oracle”;

(5)User name:数据库用户名;

         (6)Password:数据库密码;

(7)JDBC driver class:从下拉中选择JDBC的驱动类选择驱动类oracle.jdbc.OracleDriver;

(8)JDBC connection URL:JDBC连接地址,即访问的服务器路径,格式为:

jdbc:oracle:thin:@数据库IP地址数据库连接端口:orcl

         (9)JDBC driver jar files:需要选择指向ojdbc14.jar或者其他驱动的包的按钮路径。

笔者测试过程中发现数据库连接不上,后来才发现因为新换笔记本后连JDK都未安装,请确认JDK安装成功,并正确设置JAVA_HOME、CLASSPATH和PATH环境变量。

若Power Designer找不到所选择的jar包或jar包不在CLASSPATH环境变量所指定的路径,将会报错:Non SQL Error : Could not load class oracle.jdbc.OracleDriver。

在设置CLASSPATH环境变量时将值设置为.;%JAVA_HOME%\lib,其中“.;”表示当前路径,为了让Power Designer找到ojdbc14.jar,可将ojdbc14.jar放在Power Designer的安装目录下,或放在%JAVA_HOME%\lib目录下。

【说明】Oracle的驱动jar包ojdbc14.jar读者可从网上下载,或通过本博客提供的下载链接下载(http://files.blogjava.net/amigoxie/20131013_%E8%AE%BE%E8%AE%A1%E4%B9%8B%E8%B7%AF%EF%BC%9A%E4%BD%BF%E7%94%A8Power%20Designer%E5%B7%A5%E5%85%B7%E8%BF%9B%E8%A1%8C%E6%95%B0%E6%8D%AE%E5%BA%93%E8%AE%BE%E8%AE%A1.rar)

1.3 测试链接是否成功

可点击“Connection Profile Connection Definition”界面的“Test Connection”按钮,进入用户名/密码重新输入页面,如下图所示:
     

若数据库连接成功,将显示如下界面提示连接测试成功:
    

若连接失败,将提示“Connection test failed”,请确认链接地址是否正确。

1.4 连接Oracle数据库

Oracle数据源创建成功后,可选择菜单栏“数据库”->“Connect…”弹出“Connect to a Data Source”界面,在“Connection Profile”下拉中选刚才创建的“xx_portal.dcp”,点击“Connect”按钮连接数据库。如下图所示:
    

点击“Connect”按钮连接数据库,连接数据库成功后,可查看数据库中的表结构,也可通过Oracle数据库中的表结构逆向生成PDM文件。

2、连接Oracle数据库逆向工程生成PDM

使用逆向工程建立物理数据模型PDM文件也可选择“File”->“Reverse Engineer”-> “Database”,在弹出的界面中将“Model name”输入为子系统的名称,“DBMS”选择“ORACLE Version 11g”,点击“确定”按钮进入连接数据源页面。如下图所示:
      

点击【确定】按钮逆向工程选项设置界面,如下图所示:
      

在“User a data source”中可选择刚才创建的数据源“xx_portal.dcp”,默认勾选“Reverse engineer user administrator’s permissions”,点击“确定”按钮进入数据库反向工程界面,如下图所示:
      

点击“确定”按钮生成PDM文件,生成的PDM文件将包含表结构、主键、外键、索引、约束和其它选项信息。

【说明】因为笔者写本博文时本机暂时无法连接之前使用的Oracle数据库,所以上图从网上拷贝。

3、一个PDM创建多个Diagram进行设计以便查看

将所有的表都放在一个Physical Diagram中,非常不便于查看,Power Designer的一个PDM文件可建立多个Physical Diagram,在创建新的物理数据模型后,可选择物理模型名称后点击右键,选择“New”->“Physical Diagram”创建新的Physical Diagram。

例如笔者为“员工办公门户系统物理模型”建立了如下多个Physical Diagram:
    

选择不同的“Physical Diagram”,点击右键后选择“打开图表”将会看到该Physical Diagram下的表设计。一般按大模块建立Physical Diagram。

4、使用Ctrl+ K在不同PD中一个表创建多个symbol

多个“Physical Diagram”中可能都与某个“Physical Diagram”中的某个表存在关联,例如可能“新闻资讯”、“培训教程、在线考试和问卷调查”这两个Physical Diagram的用户ID可能都与“系统管理”中的“用户表”存在外键关联。

笔者使用的方法是:使用Ctrl+C先复制,再Ctrl+K粘贴到Diagram中。

Ctrl + V:创建一个与复制的实体相同的一个实体,相当于一个新的实体(实体名称必须唯一);

Ctrl + K:创建一个原实体的快捷方式(修改原实体时新实体也会随之变化)。

E-R图与数据库模型学习心得相关推荐

  1. 图数据库(neo4j)学习心得

    图数据库(neo4j)学习心得 什么是图? 图数据库常用领域 1.社交网络 2.推荐和个性化 3.欺诈识别 4.金融领域 5.汽车制造领域 6.电信领域 图数据库的种类 Neo4j相关特性 数据模型 ...

  2. Unreal Engine4(虚幻4)学习心得-Ambient Cubemap 环境立方体贴图

    Unreal Engine4(虚幻4)学习心得-Ambient Cubemap 环境立方体贴图 创建项目 如何创建新的项目在这里就不做过多说明了,打开UE4 Editor,就可以选择是创建bluepr ...

  3. 语言 提取列名_学习健明老师发布的R语言练习题的学习笔记(二)

    学习者:骆栢维 题目来源:生信基石之R语言 中级10 个题目:http://www.bio-info-trainee.com/3750.html 备注:本文为笔者学习健明老师GitHub答案代码的学习 ...

  4. Internet路由结构学习心得二:通告汇聚和具体路由影响AS入流量

    如图所示.你是R1.R2.R3所在的AS 123的网管,R3所在的子公司需要大量对AS 5中的R5所在ISP进行访问,因此在它们之间连接了一条网段为36.0.0.0/24的网段.要求:除了R3与R5之 ...

  5. R plot图片背景设置为透明_学习健明老师发布的R语言练习题的学习笔记(一)...

    学习者:骆栢维 题目来源:生信基石之R语言 初级10 个题目:http://www.bio-info-trainee.com/3793.html 备注:本文为笔者学习健明老师GitHub答案代码的学习 ...

  6. 2022年网络我的网络爬虫学习心得

    2022年网络我的网络爬虫学习心得 写在前面 一.心得 二.爬虫项目中所需要的pip模块 1.requests 2.bs4 3.Pandas 4.selenium 5.Scrapy 6.gerapy_ ...

  7. 关于Linux系统学习心得总结(基础篇)

    关于Linux系统学习心得总结 1,什么是Linux系统 简单来说,Linux就是一个操作系统 Linux是一套免费使用和自由传播的类Unix操作系统,是一个多用户.多任务.支持多线程和多CPU的操作 ...

  8. 卷积神经网络学习心得

    卷积神经网络学习心得 文章目录 卷积神经网络学习心得 一.卷积神经网络 1.卷积 2.池化 3.激活函数 3.全连接层 3.训练过程 二.传播过程 1.卷积神经网络的前向传播过程 1.1卷积层的前向传 ...

  9. Ai Studio零基础学习心得

    内容提要:参见了百度AI Studio的零基础深度学习,让我之前对神经网络的理解加深了.哈哈哈,本来就是自学的,所以有很多盲点没有扫清.然后因为要百度要一个心得体会才能结业,所以处于期末考试的我还是出 ...

最新文章

  1. 揭开人类语言的神秘面纱:从理解到处理自然语言
  2. 【翻译自mos文章】OGG replicat 进程使用的 TCP port
  3. DIV CSS兼容性解决IE6/IE7/FF浏览器的通用方法完美兼容
  4. 服务器强迫患者 ;软件试用狂人
  5. Codeforces 550D. Regular Bridge 构造
  6. 结合zxing 和zbar 扫一扫
  7. 【经典回放】多种语言系列数据结构线性表之一:顺序表
  8. 【渝粤教育】国家开放大学2018年秋季 1317T社会工作行政(本) 参考试题
  9. Linux7/Redhat7/Centos7 安装Oracle 12C_配置VNC远程安装数据库_03
  10. linux如何安装python环境变量中,Windows和linux环境下python安装及环境变量的配置
  11. camera (14)---智能手机双摄像头原理解析:RGB +Depth
  12. mysql数据库关联查询慢_mysql数据库多表关联查询的慢SQL优化
  13. PHP开票接口,云增值税发票API详情
  14. 常见系统故障修复(二)——修复GRUB引导故障
  15. 学而思编程python拓展版_学而思网校【2019-寒】少儿编程直播班-scratch Level 1上(零基础)...
  16. 人工智能与大数据就业前景_人工智能就业方向及发展前景
  17. PPT模板下载(二)--- 新科技、区块链
  18. 云服务器面临的问题_无服务器安全面临的多方面威胁以及我们应如何应对
  19. 树莓派python蓝牙_用树莓派玩转蓝牙
  20. 情人节程序员用HTML网页表白【冬季雪花生日礼物制作一个超浪漫的告白3D相册】 HTML5七夕情人节表白网页源码 HTML+CSS+JavaScript

热门文章

  1. 手机连上wifi不能上网
  2. 软件产品化, 国内IT人之痛
  3. 【COMSOL】在结构力学中使用自定义外部材料模型 · Mazars 损伤模型
  4. Linux三剑客之awk最佳实践
  5. Android窗口Window的创建(悬浮窗)
  6. 仪器科学与技术毕业论文范文
  7. NLP笔记:常用激活函数考察整理
  8. Android让屏幕保持常亮,不熄屏的三种方法
  9. 域名防劫持 稳定快速。
  10. MySQL导入百万数据实践