首页 | 互联网 | IT动态 | IT培训 | Cisco | Windows | Linux | Java | .Net | Oracle | 软件测试 | C/C++ | 嵌入式开发 | 存储世界 | 服务器
网络设备 | IDC | 安全 | 求职招聘 | 数字网校 | 网页设计 | 平面设计 | 技术专题 | 电子书下载 | 教学视频 | 源码下载 | 搜索 | 博客 | 论坛
首页 | JAVA | C# | VB | VB.NET | C/C++ | delphi | 工程管理 | 其他语言 | 论坛
各大城市软件开发培训、软件人才免费咨询热线:400-700-5807
 您现在的位置: 中国IT实验室 >> 桌面开发 >> 工程管理 >> 正文
使用UML设计数据库应用
来源:ChinaItLab 作者:佚名 时间:2007-4-7

  •   在关于ADT如何适合数据库开发的著作里有一些混乱。如果你使用OMT开发过程,你能够用属性实现简单域,用ADT实现复杂域。你仍应该用表实现类。
     
      SQL3指针。最新的SQL标准的版本,SQL3,加入了作为一种数据类型的指针符号。显然,其意图是支持导航和面向对象。我们对于SQL3指针最友善的评语是,它们是嫁接的,是可以忽略的。更深入的批评是,指针在理论上是荒谬的,增加了复杂性,又没有扩展SQL的表达能力。CJ Date在上次的九月对象/关系型会议上雄辩地讨论了这一点[iv].好了,那么我们冷淡地对待抽象数据类型和SQL指针的指责。但我们相当喜欢面向对象技术和关系型数据库。有两个为RDBMS的扩展可以使它们更容易用于OO技术。我们将很乐意看到RDBMS开发商把这些能力加入到他们的产品中。
     
      扩展的参考完整性动作来支持泛化。当前的参考完整性机制是单向的。为了完全支持泛化,我们需要一个双向的机制。这样,一条超类记录就可以依赖一条子类记录。并且,一条子类记录就可以依赖一条超类记录。我们通过例子可以最好地解释这点。
     
      图15摘录于我们的在参考文献3的财务案例学习。我们用资产超类来统一某些没有显示在摘录里的通用的数据和功能。一项资产可以是一支股票或股票期权。一支股票可以有许多它的股票期权。例如,IBM股票可以有许多写明达到价格和过期日期的期权。
     
    >

    图15 参考完整性和泛化的例子。


  •   我们推荐的泛化实现是单独的表 - 映射该超类和每个子类为一个表。然后,我们就可以使用参考完整性使股票期权和股票的记录依赖于资产。一个资产记录的删除级联到相应的子类记录、股票期权或股票的删除上。我们也能够定义一个参考完整性动作,这样一个股票的删除就级联到关联的股票期权记录的删除。
     
      现在问题如下:如果我们删除的一项资产是一支股票,资产记录的删除级联到引起股票记录的删除。随后,股票记录的删除级联引起所有股票期权记录的删除。但现在参考完整性使我们失败了:一条股票期权记录的删除并不引起一项资产记录的删除。删除级联只能从超类走到子类。为了完全的行为,级联应该双向地走下去。
     
      当前有用的参考完整性的工作是做更多的编程(也即做更多的工作和承担更多的故障风险)。在我们的案例学习的实现里,用户随时要删除一项是股票的资产,我们不得不书写额外的代码来首先检查关联股票期权的存在性,然后删除它们。
     
      支持交叉表的记录划分。单继承(泛化的最常见方式)的含义是一个超类的每个实例都是用最多一个子类来例示。现在的RDBMS不能容易地加强这个约束。例如,没有什么防止下面的情形。一支股票可以用ID18加入到资产表,用ID18加入到股票表,并且也可以用ID18加入到股票期权表。再一次地,我们为了确信行为的完整,不得不作额外的编程,而不是写一个简单的声明约束。
     
      5. 结论本文陈述了用关系型数据库实现UML模型的快速的概观。我们希望本文向你演示的技术是十分适用的。一个训练有素的开发人员能够用关系型数据库准备一套优秀的OO模型的实现。如果你要关于实现机制的更多的细节,参考3有另外的信息,并且也覆盖了我们没有在这里讨论的一些高级模型建模结构。
     
      关于作者Michael Blana是纽约Schenectady的通用电气研发部的毕业生(译者按:这是作者幽默的说法,意思是他已经跳槽了)。在过去的五年里,他已经成为面向对象技术、建模、数据库设计和逆向工程领域的独立的产业顾问。Blaha博士是多篇论文、五个专利和两本书的作者。可以通过www.omtassociates.com或blaha@acm.org和他联系。
     
      William Premerlani从1975年开始就在通用电气研发部供职。他的主要研究兴趣在软件工程、元建模(metamodeling)、数据库技术和复杂工程应用等领域。Premerlani博士是许多论文、二十五个专利和两本书的作者。通过premerlani@acm.org和他联系。
     

  •  

  • 上一页  [1] [2] [3] [4] [5] [6] 下一页

    【责编:Lili】
  • 中国IT教育热线咨询
    相关文章
    并发工程原则应用到软件项目中
    VC中利用MFC设计绘图程序初步
    Java技术在多数据库系统中的应用研究
    在Delphi数据库应用程序中常见错误
    浅谈Java桌面应用程序开发
    解决J2EE系统应用性能问题常用方法
    VC++与MATLAB混合编程及其应用
    VB中数据集合对象的应用
    递归过程在VB中的应用实例
    利用Visual C++制作应用程序启动画面…
    推荐文章

     精彩友情推荐
    ·Asp源码 PHP源码
    ·CGI源码 JSP源码
    ·建站书籍教程
    ·服务器软件 .net源码
    ·建站工具软件
    ·IDC资讯大全
    ·机房品质万里行
    ·IDC托管必备知识
    ·全国IDC报价
    ·网站推广优化
    最新更新 推荐文章
    ·框架:J2EE WEB应用架构分析…03-13
    ·几种VC++数据库开发技术的相对比…03-13
    ·利用C#实现标注式消息提示窗口03-13
    ·用C#创建COM对象03-13
    ·Visual C#多线程参数传递浅析…03-13
    ·Visual C#多线程参数传递浅析…03-13
    ·基于HOOK和MMF的Win密码渗透技术11-15
    ·Visual C++设计超强仿QQ自动伸缩…11-15
    ·Java SE 6.0实现高质量桌面集成开…11-15
    ·史玉柱东山再起幕后高人11-15
    ·用C#创建COM对象09-06
    ·IT管理十大失误及其对策08-30
    ·VC中利用MFC设计绘图程序初步08-23
    ·JAVA中对象创建和初始化过程08-23
    ·C语言中的位域的使用08-09
    ·浅谈Java桌面应用程序开发08-09
    ·C#的前途如何?08-02
    ·几种VC++数据库开发技术的相对比较07-12
    ·用Visual C#实现网络封包监视…07-12
    ·VB.NET中的TextBox控件详解07-12
    ·VB.NET实现PC与掌上电脑PPC的双向通信07-05