旧版应用程序的SQL Server表和列别名

时间:2009-10-06 14:49:30

标签: sql sql-server tsql alias

刚开始为新客户工作时,我注意到他们的数据库架构可以进行严肃的改造。我已经提出了一些建议(主要是命名约定),这些建议对于我们正在开发的新应用程序套件是可以接受的,但系统也必须支持所使用的延迟名称(即400个左右的外部托管Web应用程序)。

我有什么办法可以做到以下几点:

  • 更改要在新应用程序中使用的表和列的命名。
  • 创建permanentnet表别名或类似名称以允许滞后代码保持不变?

有点远射.......

3 个答案:

答案 0 :(得分:1)

重构时,人们通常会重命名表,使用旧表名和结构创建视图,然后对重命名的表进行更改。

例如,如果您将列从person_id重命名为personid(以强制执行一致的样式),则视图可能会引用personid,但将其命名为person_id,因此旧代码不会中断。

如果您要重构数据库并保持旧代码运行,我强烈建议您阅读 http://www.amazon.com/Refactoring-Databases-Evolutionary-Database-Design/dp/0321293533/ref=sr_1_1?ie=UTF8&s=books&qid=1254840934&sr=8-1

答案 1 :(得分:0)

您可以重命名实际的表和列名称,然后编写一堆视图来支持旧名称。但是,我不会冒险破坏或影响400个网站的性能。我想你只需要偷偷摸摸。绘制一些好的表格图(这样你就可以学习名字)并开始进行项目。

答案 2 :(得分:0)

一种方法是创建可更新的视图。但有其所有限制。