关于E-R图的基础理解

                今天需要做E-R图,以前做过,不过忘记了,所以复习一下

                中文名称:实体联系图

                简称:E-R图

                画图工具:visio

              


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

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

               临幸框:表示联系,在框中记入联系名。

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

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

             作图步骤:

                              ⑴确定所有的实体集合
                              ⑵选择实体集应包含的属性
                              ⑶确定实体集之间的联系
                              ⑷确定实体集的关键字,用下划线在属性上表明关键字的属性组合
                              ⑸确定联系的类型,在用线将表示联系的菱形框联系到实体集时,在线旁注明是1或n(多)来表示联系的类型


               

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
基本信息 原书名: Design Patterns:Elements of Reusable Object-Oriented software 原出版社: Addison Wesley/Pearson 作者: (美)Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides [作译者介绍] 译者: 李英军 马晓星 蔡敏 刘建中 丛书名: 计算机科学丛书 出版社:机械工业出版社 ISBN:7111075757 上架时间:2005-7-19 出版日期:2004 年9月 开本:16开 页码:254 版次:1-11 内容简介   本书结合设计实例从面向对象的设计中精选出23个设计模式,总结了面向对象设计中最有价值的经验,并且用简洁可复用的形式表达出来。本书分类描述了一组设计良好、表达清楚的软件设计模式,这些模式在实用环境下特别有用。本书适合大学计算机专业的学生、研究生及相关人员参考。       [strong][font color="#ff0000"]书评[/font][/strong][font color="#ff0000"]       “这本众人期待的确达到了预期的全部效果。该书云集了经过时间考验的可用设计。作者从多年的面向对象设计经验中精选了23个模式,这构成了该书的精华部份,每一个精益求精的优秀程序员都应拥有这本《设计模式》。”--larry o'brien, software development       “[设计模式]在实用环境下特别有用,因为它分类描述了一组设计良好,表达清楚的面向对象软件设计模式。整个设计模式领域还很新,本书的四位作者也许已占据了这个领域造诣最深的专家中的半数,因而他们定义模式的方法可以作为后来者的榜样。如果要知道怎样恰当定义和描述设计模式,我们应该可以从他们那儿获得启发”--steve billow, journal of object-oriented programming       “总的来讲,这本书表达了一种极有价值的东西。对软件设计领域有着独特的贡献,因为它捕获了面向对象设计的有价值的经验,并且用简洁可复用的形式表达出来。它将成为我在寻找面向对象设计思想过程中经常翻阅的一本书﹕这正是复用的真实含义所在,不是吗﹖”--sanjiv gossain, journal of object-oriented programming [/font] 目 录 序言 前言 读者指南 第1章 引言 1 1.1 什么是设计模式 2 1.2 smalltalk mvc中的设计模式 3 1.3 描述设计模式 4 1.4 设计模式的编目 5 1.5 组织编目 7 1.6 设计模式怎样解决设计问题 8 1.6.1 寻找合适的对象 8 1.6.2 决定对象的粒度 9 1.6.3 指定对象接口 9 1.6.4 描述对象的实现 10 1.6.5 运用复用机制 13 1.6.6 关联运行时刻和编译时刻的 结构 15 1.6.7 设计应支持变化 16 1.7 怎样选择设计模式 19 .1.8 怎样使用设计模式 20 第2章 实例研究:设计一个文档编 辑器 22 2.1 设计问题 23 2.2 文档结构 23 2.2.1 递归组合 24 2.2.2 元 25 2.2.3 组合模式 27 2.3 格式化 27 2.3.1 封装格式化算法 27 2.3.2 compositor和composition 27 2.3.3 策略模式 29 2.4 修饰用户界面 29 2.4.1 透明围栏 29 2.4.2 monoglyph 30 2.4.3 decorator 模式 32 2.5 支持多种视感标准 32 2.5.1 对象创建的抽象 32 2.5.2 工厂类和产品类 33 2.5.3 abstract factory模式 35 2.6 支持多种窗口系统 35 2.6.1 我们是否可以使用abstract factory 模式 35 2.6.2 封装实现依赖关系 35 2.6.3 window和windowimp 37 2.6.4 bridge 模式 40 2.7 用户操作 40 2.7.1 封装一个请求 41 2.7.2 command 类及其子类 41 2.7.3 撤消和重做 42 2.7.4 命令历史记录 42 2.7.5 command 模式 44 2.8 拼写检查和断字处理 44 2.8.1 访问分散的信息 44 2.8.2 封装访问和遍历 45 2.8.3 iterator类及其子类 46 2.8.4 iterator模式 48 2.8.5 遍历和遍历过程中的动作 48 2.8.6 封装分析 48 2.8.7 visitor 类及其子类 51 2.8.8 visitor 模式 52 2.9 小结 53 第3章 创建型模式 54 3.1 abstract factory(抽象工厂)— 对象创建型模式 57 3.2 builder(生成器)—对象创建型 模式 63 3.3 factory method(工厂方法)— 对象创建型模式 70 3.4 prototype(原型)—对象创建型 模式 87 3.5 singleton(单件)—对象创建型 模式 84 3.6 创建型模式的讨论 89 第4章 结构型模式 91 4.1 adapter(适配器)—类对象结构型 模式 92 4.2 bridge(桥接)—对象结构型 模式 100 4.3 composite(组成)—对象结构型 模式 107 4.4 decorator(装饰)—对象结构型 模式 115 4.5 facade(外观)—对象结构型 模式 121 4.6 flyweight(享元)—对象结构型 模式 128 4.7 proxy(代理)—对象结构型 模式 137 4.8 结构型模式的讨论 144 4.8.1 adapter与bridge 144 4.8.2 composite、decorator与proxy 145 第5章 行为模式 147 5.1 chain of responsibil ity(职责链) —对象行为型模式 147 5.2 command(命令)—对象行为型 模式 154 5.3 interpreter(解释器)—类行为型 模式 162 5.4 iterator(迭代器)—对象行为型 模式 171 5.5 mediator(中介者)—对象行为型 模式 181 5.6 memento(备忘录)—对象行为型 模式 188 5.7 observer(观察者)—对象行为型 模式 194 5.8 state(状态)—对象行为型模式 201 5.9 strategy(策略)—对象行为型 模式 208 5.10 template method(模板方法) —类行为型模式 214 5.11 visitor(访问者)—对象行为型 模式 218 5.12 行为模式的讨论 228 5.12 1 封装变化 228 5.12.2 对象作为参数 228 5.12.3 通信应该被封装还是被分布 229 5.12.4 对发送者和接收者解耦 229 5.12.5 总结 231 第6章 结论 232 6.1 设计模式将来什么 232 6.2 一套通用的设计词汇 232 6.3 书写文档和学习的辅助手段 232 6.4 现有方法的一种补充 233 6.5 重构的目标 233 6.6 本书简史 234 6.7 模式界 235 6.8 alexander 的模式语言 235 6.9 软件中的模式 236 6.10 邀请参与 237 6.11 临别感想 237 附录a 词汇表 238 附录b 示符号指南 241 附录c 基本类 244 参考文献 249   前 言      本书并不是一本介绍面向对象技术或设计的书,目前已有不少好书介绍面向对象技术或设计。本书假设你至少已经比较熟悉一种面向对象编程语言,并且有一定的面向对象设计经验。当我们提及“类型”和“多态”,或“接口”继承与“实现”继承的关系时,你应该对这些概念了然于胸,而不必迫不及待地翻阅手头的字典。      另外,这也不是一篇高级专题技术论文,而是一本关于设计模式的书,它描述了在面向对象软件设计过程中针对特定问题的简洁而优雅的解决方案。设计模式捕获了随时间进化与发展的问题的求解方法,因此它们并不是人们从一开始就采用的设计方案。它们反映了不为人知的重新设计和重新编码的成果,而这些都来自软件开发者为了设计出灵活可复用的软件而长时间进行的艰苦努力。设计模式捕获了这些解决方案,并用简洁易用的方式表达出来。      设计模式并不要求使用独特的语言特性,也不采用那些足以使你的朋友或老板大吃一惊的神奇的编程技巧。所有的模式均可以用标准的面向对象语言实现,这也许有时会比特殊的解法多费一些功夫,但是为了增加软件的灵活性和可复用性,多做些工作是值得的。      一旦你理解了设计模式并且有了一种“Aha!”(而不是“Huh?”)的应用经验和体验后,你将用一种非同寻常的方式思考面向对象设计。你将拥有一种深刻的洞察力,以帮助你设计出更加灵活的、模块化的、可复用的和易理解的软件—这也是你为何着迷于面向对象技术的源动力,不是吗?      当然还有一些提示和鼓励:第一次阅读此书时你可能不会完全理解它,但不必着急,我们在起初编写这本书时也没有完全理解它们!请记住,这不是一本读完一遍就可以束之高阁的书。我们希望你在软件设计过程中反复参阅此书,以获取设计灵感。      我们并不认为这组设计模式是完整的和一成不变的,它只是我们目前对设计的思考的记录。因此我们欢迎广大读者的批评与指正,无论从书中采用的实例、参考,还是我们遗漏的已知应用,或应该包含的设计模式等方面。你可以通过Addison-Wesley写信给我们,或发送电子邮件到:[email protected]。你还可以发送邮件“send design pattern source”到[email protected]获取书中的示例代码部分的源代码。      另外我们有一个专门的网页报道最新的消息与更新:      http://st-www.cs.uiuc.edu/users/patterns/DPBook/DPBook.html.      E.G. 于加州Mountain View    .  R.H. 于蒙特利尔      R.J. 于伊利诺Urbana      J.V. 于纽约 Hawthorne      1994年8月    序言    所有结构良好的面向对象软件体系结构中都包含了许多模式。实际上,当我评估一个面向对象系统的质量时,所使用的方法之一就是要判断系统的设计者是否强调了对象之间的公共协同关系。在系统开发阶段强调这种机制的优势在于,它能使所生成的系统体系结构更加精巧、简洁和易于理解,其程度远远超过了未使用模式的体系结构。    模式在构造复杂系统时的重要性早已在其他领域中被认可。特别地,Christopher Alexander和他的同事们可能最先将模式语言(pattern language)应用于城市建筑领域,他的思想和其他人的贡献已经根植于面向对象软件界。简而言之,软件领域中的设计模式为开发人员提供了一种使用专家设计经验的有效途径。    在本书中,Erich Gamma、Richard Helm、Ralph Johnson和John Vlissides介绍了设计模式的原理,并且对这些设计模式进行了分类描述。因此,该书做出了两个重要的贡献:首先,它展示了模式在建造复杂系统过程中所处的角色;其次,它为如何引用一组精心设计的模式提供了一个实用方法,以帮助实际开发者针对特定应用问题使用适当的模式进行设计。    我曾荣幸地有机会与本书的部分作者一同进行体系结构设计工作,从他们身上我学到了许多东西,并相信通过阅读该书你同样也会受益匪浅。    Rational 软件公司首席科学家 Grady Booch
超市会员管理系统 1.课程设计目的 通过课程设计加深对数据库基础理论和基础知识的理解,掌握运用数据库管理系统, 实现数据管理的基本思路和方法,培养分析问题、解决问题的能力。 2.系统功能设计 2.1功能模块 功能模块1。 1 系统功能模块设计 2.2功能说明 该超市会员管理系统旨在为超市的会员管理工作提供一个比较系统的会员管理平台,它 帮助超市存储及管理会员的基本信息、管理会员卡、管理会员报表及会员政策,完全可 以取代之前复杂的手工记录方法,是一套比较完备的管理工具,极大地提高了超市会员 管理的效率。在很大程度上帮助了超市管理者对超市的掌握与管理。 3.数据库概念设计 3.1根据不同的对象,分别画出各分E-R。 (1)从会员基本信息抽象出的分E-R2。 2 会员基本信息的E-R (2)从会员卡信息抽象出分E-R 从会员卡信息抽象出的分E-R3. 3 会员卡信息的E-R (3)从物品信息抽象出分E-R 从物品信息抽象出的分E-R4 4 物品信息的E-R (4)合并各分E-R,消除属性冲突、命名冲突、结构冲突等三类冲突,得到初步E- R,再消除不必要冗余,得到的基本E-R。 基本E-R5。 5基本E-R 4.数据库逻辑设计 将联系转化成独立的关系模式,具体的基本E-R向关系模型的转化如下: 会员基本信息(会员卡卡号,姓名, 性别, 年龄, 联系方式, 购卡日期,) 主码:姓名、会员卡卡号 会员卡信息(会员卡卡号,会员卡编号, 会员卡种类,) 主码:会员卡编号 物品信息(物品编号,物品种类,物品名称,单价) 主码:物品编号 购物信息(会员卡卡号,物品编号,购物数量) 主码:会员卡卡号、物品编号 其中:关系模式会员基本信息、会员卡、物品信息在非主属性对主属性的部分函数依 赖,也不存在传递函数依赖,已经达到了3NF。购物信息则存在部分依赖属于2NF。 5.数据库物理设计 5.1数据库各基本表的定义 (1)会员基本信息表如表1 "属性名 "数据类型"宽度 "小数位数 "可否为空 "说明 " "Ino "Int "默认 "0 "Not null "会员卡卡号 " "Iname "Char "8 "0 "Not null "姓名 " "Isex "Char "2 "0 "Not null "性别 " "Iage "Int "默认 "0 "Not null "年龄 " "Itel "Char "11 "0 "Not null "联系方式 " "Idate "Date/Tim"默认 "0 "Not null "购卡日期 " " "e " " " " " 表1 会员基本信息表 (2)会员卡信息表如表2 "属性名 "数据类型 "宽度 "小数位数 "可否为空 "说明 " "Ino "Int "默认 "0 "Not null "会员卡卡号" "Cno "Int "默认 "0 "Not null "会员卡编号" "Ckind "Char "4 "0 "Not null "会员卡种类" 表2 会员卡信息表 (3)物品信息表如表3 "属性名 "数据类型 "宽度 "小数位数 "可否为空 "说明 " "Tno "Char "10 "0 "Not null "物品编号 " "Tkind "Char "6 "0 "Not null "物品种类 " "Tname "Char "20 "0 "Not null "物品名称 " "Tprice "Money "20 "2 "Not null "单价 " 表3 物品信息表 (4)会员购物信息表如表4 "属性名 "数据类型 "宽度 "小数位数 "可否为空 "说明 " "Ino "Int "默认 "0 "Not null "会员卡卡号" "Tno "Char "10 "0 "Not null "物品编号 " "Squantity"Int "默认 "0 "Null "购物数量 " 表4 会员购物信息表 5.2各表索引的设计 (1)为会员基本信息表按年龄升序建唯一索引。 Create Unique Index Infiage On Information(Iage); (2)为会员卡信息表按会员卡卡号升序建唯一索引。 Create Unique Index Carino On Card (Ino); (3)为物品信息表按单价升序建唯一索引。 Create Unique Index Thitprise On Thing(Tprise); (4)为会员购物信息表按购物数量降序建唯一索引。 Create Unique Index Shosquantity On Shopping (Squantity); 6.数据库实施 6.1创建数据库 创建数据库如6。 6 创建数据库
10、DHCP效劳器在创立过程中出现的地址范围怎么理解?应该如何设置? 答:在同一DHCP效劳器内可以用于设置的IP地址。IP地址不在地址范围内那么不能使用 。 在设置DHCP效劳器时有"IP地址范围〞对话框,在此对话框输入"起始和结束IP地址〞。 11、DHCP效劳器在创立过程中出现的排除地址怎么理解?应该如何设置? 答:在设置IP地址发范围时,在地址范围内不能分配的地址或地址范围。 在设置DHCP效劳器时有 "添加排除〞对话框,有〔输入IP地址〕、没有〔单击下一步〕。 12、DHCP效劳器在创立过程中出现的"租约期限〞怎么理解?应该如何设置? 答:〔1〕租约是DHCP效劳器指定的时间长度,在这个时间范围内客户机可以使用所获得 的IP地址。当客户机获得IP地址是租约被激活。在租约到期前客户机需要更新IP地址的 租约,当租约过期或从效劳器上删除那么租约停止。 〔2〕在设置DHCP效劳器时有"租约期限〞对话框,在此对话框可以设置租约时间。 13、一个最的DHCP效劳器需要设置哪些选项? 〔1〕、IPv4 DNS设置 〔2〕、IPv4 WINS设置 〔3〕、DHCP 作用域 〔4〕、DHCPv6 无状态模式 〔5〕、IPv6 DNS设置 14、一个DHCP效劳器设置好以后,如何在客户端进行测试? 将客户端与DHCP效劳器连接在同一个交换机/HUB上,将客户端电脑的本地网络设置为自 动获得地址。看能否从DHCP效劳器上获得地址。 15、如何在DHCP效劳器中为该网络环境创立DNS效劳器地址? 第 1 步:配置 TCP/IPIT数字家园 f ]~"r;M   单击开始,指向控制面板,指向网络连接,然后单击本地连接。IT数字家园5u- su$q)Dz P   单击属性.IT数字家园bE/fzX.o1y8n Mt   单击 Internet 协议 (TCP/IP)。,然后单击属性.IT数字家园 L4{w9{W   单击常规 选项卡。 Z$C3d*c$u2n+r;`&bu0   单击使用下面的 IP 地址,然后在相应的框中键入 IP 地址、子网掩码和默认网关地址。IT数字家园 PYF0q "v   单击高级,然后单击 DNS 选项卡。IT数字家园 "`O(Uri'v R~%WT0   如果该效劳器需要解析来自它的 Internet 效劳提供商 (ISP) 的名称,您必须配置一台转发器。在本文稍后的如何配置转发器 局部将讨论转发器。IT数字家园N3u;@%Uh "C   单击确定三次。IT数字家园6U;{ Z_4A1x"Q   备注: 如果收到一个来自 DNS 缓存解析器效劳的警告,单击确定 关闭该警告。缓存解析器正试与 DNS 效劳器取得联系,但您尚未完成该效劳器的配置。IT数字家园okm{;q5t#hi0   主要区域: D:Dikn0   辅助区域: _+J(iCx0   存根区域: E[?]aD-Se \D,I0      单击主要,然后单击下一步.IT数字家园 v'j-Q6q&S"N      接受新区域文件的默认名称。单击下一步. 16、如何在DHCP效劳器中为该网络环境创立"网关〞 效劳器地址? 第1步 依次单击"开始 管理工具 DHCP〞,翻开"DHCP〞控制台窗口。在左窗格中右击DHCP效劳 器名称,执行"新建作用域〞命令 第2步 在翻开的"新建作用域向导〞对话框中单击"下一步〞按钮,翻开"作用域名〞向导页。在 "名称〞框中为该作用域键入一个名称〔如"CCE〞〕和一段描述性信息,单击"下一步〞 按钮。 提示:这里的作用域名称只起到一个标识的作用,根本上没有实际应用。 第3步 翻开"IP地址范围〞向导页,分别在"起始IP地址〞和"结束IP地址〞编辑框中键入事先确 定的IP地址范围 第4步 在翻开的"添加排除〞向导页中可以指定排除的IP地址或IP地址范围。由于已经使用了几 个IP地址作为其它效劳器的静态IP地址,因此需要 第5步 在翻开的"租约期限〞向导页中,默认将客户端获取的IP地址使用期限限制为8天。如果 没有特殊要求保持默认值不变,单击"下一步〞按钮。 第6步 翻开"配置DHCP选项〞向导页,保持选中"是,我想现在配置这些选项〞单项选择框并单 击"下一步〞按钮。在翻开的"路由器〔默认网关〕〞向导页中根据实际情况键入网关地 址〔本例为"〞〕并依次单击"添加 下一步〞按钮。 第7步 在翻开的"域名称和DNS效劳器〞向导页中没有做任何设置,这是因为网络中没有安装DN S效劳器且尚未升级成域管理模式。依次单击"下一步〞按钮,跳过"WINS效劳器〞向导页 翻开"激活作用域〞向导页。保持"是,我想现在激活此作用域〞单项选择框选中状态, 并依次单击"下一步〞 "完成〞按钮结束配置。 17、一个网络环境下能否配置多个DHCP效劳器? 在

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值