考试网 >> IT认证 >> 水平 >> 软件指导 >> 软考:数据库设计中的方法 2

软考:数据库设计中的方法 2

发布时间:2006-06-28 05:36     点击:
分页:[1] 2 3 4  下一页

所有的变化应该数据库重构 

    重构技术就是应用所有可控技术来改变现有的代码基础,与此类似我们定义了数据库重构也给数据库的改变提供了类似的控制。 

    数据库重构的不同之处在于它必须将三种不同的变化同时完成: 

(1) 改变数据库计划 

(2) 进行数据迁移 

(3) 改变数据库存取代码 

    于是当描述数据库重构时,我们必须描述变化的三个方面,并确保在应用另一个重构之前完成了这三种变化。 

    我们必须文档化不同的数据库重构,因此我们还不能详细描述他们。然而这里有几点需要指出:像代码重构一样,数据库重构非常微小;概念链一系列微小的变化,数据库和代码很相似;变化的三个属性使保持小的变化更加重要。 

    许多数据库重构,如增加一个字段,可以不必更新所有存取系统的代码来完成。但是如果在使用新计划之前并不了解它,该字段将会无用,因为新计划不知道其变化之处。许多变化,没有考虑整个系统计划,我们称之为破坏性变化,如将一个已经存在的空值列设置为非空。破坏性变化需要多加留心,留心的程度依赖于包含破坏性的程度。一个小破坏性的例子是将一个已经存在的空值列设置为非空,在这种情况下你可以蒙着头做。 

    而重构将考虑数据库中空值数据,开发人员将更新数据库映射代码,因此更新不会破坏其它人的代码;如果偶然会破坏,开发人员将在建立和使用测试时发现问题。 

    将一个经常使用的表分成两个是一种更复杂的破坏。在这种情况中提前让所有人知道变化到来很重要,这样他们可以有所准备。此外应该在一个更安全的时刻来实施变化。这里面很重要的一点是选择适用于你做出的变化的过程。 

3.6 自动重构 

    在代码世界中许多语言能够实现自动重构。在计划变化和数据迁移过程中,这种自动化对于数据库也非常重要。因此每个数据库重构都可以通过编写SQL DDL(对于计划变化)和DML(对于数据迁移)来完成。这些变化不是通过手工实现,而是通过一些SQL语句来自动实现变化。 
分页:[1] 2 3 4  下一页
版权申明:未经书面授权请勿转载本站信息!!作品版权归所属媒体与作者所有!!
发表评论: 匿名发表 用户名: 查看评论
您将承担一切因您的行为、言论而直接或间接导致的民事或刑事法律责任
留言板管理人员有权保留或删除其管辖留言中的任意内容
本站提醒:不要进行人身攻击。谢谢配合。
在本站搜索相关信息
2003-2005 Ksw123.com All Rights Reserved. - TOP
Copyright © 2006 Ksw123.com. All rights reserved.中国考题网 版权所有