刚开始为一个新客户工作时,我注意到他们的数据库架构可以进行彻底的检修。我提出了一些建议(主要是命名约定),这对于我们正在开发的新应用程序套件是可以接受的,但是系统还必须支持使用的旧名称(即大约 400 个外部托管的 Web 应用程序)。
有什么办法可以做到以下几点:
- 更改用于新应用程序的表和列的命名。
- 创建一个永久网表别名或类似名称以允许遗留代码保持不变?
有点远射…………
刚开始为一个新客户工作时,我注意到他们的数据库架构可以进行彻底的检修。我提出了一些建议(主要是命名约定),这对于我们正在开发的新应用程序套件是可以接受的,但是系统还必须支持使用的旧名称(即大约 400 个外部托管的 Web 应用程序)。
有什么办法可以做到以下几点:
有点远射…………
人们在重构时通常做的是重命名表,使用旧表名和结构创建视图,然后对重命名的表进行更改。
例如,如果您将列从 person_id 重命名为 personid(以强制使用一致的样式),则视图可能会引用 personid,但将其命名为 person_id,这样旧代码就不会中断。
如果您要重构数据库并保持旧代码运行,我强烈建议您阅读 http://www.amazon.com/Refactoring-Databases-Evolutionary-Database-Design/dp/0321293533/ref=sr_1_1?ie=UTF8&s=书籍&qid=1254840934&sr=8-1
您可以重命名实际的表和列名称,然后编写一堆视图来支持旧名称。不过,我不会冒险破坏或影响 400 个网站的性能。我想你只需要勉强度日。画一些好的表格图(这样你就可以了解名称)并开始进行项目。
一种方法是创建可更新的视图。但是有它的所有限制。