数据库重构(英文影印版)

数据库重构(英文影印版)
作 者: Scott Ambler;Pramod Sadalage
出版社: 人民邮电出版社
丛编项: 典藏原版书苑
版权说明: 本书为公共版权或经版权方授权,请支持正版图书
标 签: 数据库设计
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

  本书提供作译者介绍Scott W. Ambler,世界一流的软件过程改进咨询顾问,开创了敏捷建模、敏捷数据、企业统一过程(Enterprise UP)以及敏捷统一过程方法论。曾在软件开发、JavaOne、OOPSLA、DAMA等会议上做基调发言和演讲。独立撰写和与人合著有Agile Modeling、Agile Database Techniques、The Object Primer(Third Edition)、Elements of UML 2.0 Style及The Enterprise Unified Process。.Pramod J. Sadalage,ThoughtWorks公司咨询顾问,在1999年在使用极限编程方法工作在一大型J2EE应用程序上的...

内容简介

重构已经在众多领域的开发项目中证明了其自身的价值――帮助软件专业人士改善系统的设计、可维护性、可扩展性和性能。如今,世界一流的敏捷方法理论家Scott W. Ambler和著名咨询顾问Pramod J. Sadalage首次披露了为数据库系统专门设计的强大的重构技术。.Ambler和Sadalage展示了如何在不改变语义的情况下,对表结构、数据、存储过程及触发器等略作改动,就可以给几乎任何数据库设计带来实质上的飞跃。读者将学会如何让数据库模式与源代码同步渐进――从而依靠迭代的敏捷方法在项目中发挥更多的作用。这是一本内容全面的参考、指南书,全面介绍了数据库重构涉及的每个基本观念,可以帮助读者克服重构数据库所遇到的实际困难。本书作者运用完整的实例,带领读者学习从重构简单的孤立数据库应用程序到重构复杂的多应用程序环境的全过程。读者将掌握与重构数据库模式有关的全部任务,找到最佳的方法,将重构的结果布置到哪怕是最复杂的产品环境中。..本书第二部分系统讲述了数据库重构的五大主要类别。读者将学会如何运用重构改善数据库结构、数据质量和参照完整性,如何同时对结构和方法进行重构。本书提供了用Oracle和Java建立的多种实例,可以方便地转换成C#、C++、VB.NET等其它语言或DB2、SQL Server、MySQL、Sybase等其他数据库。本书适合数据库设计、开发、维护人员及数据库技术爱好者。...

图书目录

Chapter 1:Evolutionary Database Development 

 1.1 Database Refactoring 

 1.2 Evolutionary Data Modeling 

 1.3 Database Regression Testing 

 1.4 Configuration Management of Database Artifacts 

 1.5 Developer Sandboxes 

 1.6 Impediments to Evolutionary Database Development Techniques 

 1.7 What You Have Learned 

Chapter 2:Database Refactoring 

 2.1 Code Refactoring 

 2.2 Database Refactoring 

 2.3 Categories of Database Refactorings 

 2.4 Database Smells 

 2.5 How Database Refactoring Fits In 

 2.6 Making It Easier to Refactor Your Database Schema 

 2.7 What You Have Learned 

Chapter 3:The Process of Database Refactoring 

 3.1 Verify That a Database Refactoring Is Appropriate 

 3.2 Choose the Most Appropriate Database Refactoring 

 3.3 Deprecate the Original Database Schema 

 3.4 Test Before, During, and After 

 3.5 Modify the Database Schema 

 3.6 Migrate the Source Data 

 3.7 Refactor External Access Program(s) 

 3.8 Run Your Regression Tests 

 3.9 Version Control Your Work 

 3.10 Announce the Refactoring 

 3.11 What You Have Learned 

Chapter 4:Deploying into Production 

 4.1 Effectively Deploying Between Sandboxes 

 4.2 Applying Bundles of Database Refactorings 

 4.3 Scheduling Deployment Windows 

 4.4 Deploying Your System

 4.5 Removing Deprecated Schema 

 4.6 What You Have Learned 

Chapter 5:Database Refactoring Strategies 

 5.1 Smaller Changes Are Easier to Apply 

 5.2 Uniquely Identify Individual Refactorings 

 5.3 Implement a Large Change by Many Small Ones 

 5.4 Have a Database Configuration Table 

 5.5 Prefer Triggers over Views or Batch Synchronization 

 5.6 Choose a Sufficient Transition Period 

 5.7 Simplify Your Database Change Control Board (CCB) Strategy 

 5.8 Simplify Negotiations with Other Teams 

 5.9 Encapsulate Database Access 

 5.10 Be Able to Easily Set Up a Database Environment 

 5.11 Do Not Duplicate SQL 

 5.12 Put Database Assets Under Change Control 

 5.13 Beware of Politics 

 5.14 What You Have Learned 68 Online Resources 

Chapter 6:Structural Refactorings 

 Common Issues When Implementing Structural Refactorings 

 Drop Column 

 Drop Table 

 Drop View 

 Introduce Calculated Column 

 Introduce Surrogate Key 

 Merge Columns 

 Merge Tables 

 Move Column 

 Rename Column 

 Rename Table 

 Rename View 

 Replace LOB With Table 

 Replace Column 

 Replace One-To-Many With Associative Table 

 Replace Surrogate Key With Natural Key 

 Split Column 

 Split Table 

Chapter 7:Data Quality Refactorings 

 Common Issues When Implementing Data Quality Refactorings 

 Add Lookup Table 

 Apply Standard Codes 

 Apply Standard Type 

 Consolidate Key Strategy 

 Drop Column Constraint 

 Drop Default Value 

 Drop Non-Nullable 

 Introduce Column Constraint 

 Introduce Common Format 

 Introduce Default Value 

 Make Column Non-Nullable 

 Move Data 

 Replace Type Code With Property Flags 

Chapter 8:Referential Integrity Refactorings 

 Add Foreign Key Constraint 

 Add Trigger For Calculated Column 

 Drop Foreign Key Constraint 

 Introduce Cascading Delete 

 Introduce Hard Delete 

 Introduce Soft Delete 

 Introduce Trigger For History 

Chapter 9:Architectural Refactorings 

 Add CRUD Methods 

 Add Mirror Table 

 Add Read Method 

 Encapsulate Table With View 

 Introduce Calculation Method 

 Introduce Index 

 Introduce Read-Only Table 

 Migrate Method From Database 

 Migrate Method To Database 

 Replace Method(s) With View 

 Replace View With Method(s) 

 Use Official Data Source 

Chapter 10:Method Refactorings 

 10.1 Interface Changing Refactorings

 10.2 Internal Refactorings 

Chapter 11:Transformations 

 Insert Data 

 Introduce New Column 

 Introduce New Table 

 Introduce View 

 Update Data 

Appendix:The UML Data Modeling Notation 

Glossary 

References and Recommended Reading 

Index