我最近接手开发,需要一些帮助一个SQL Server 2000数据库上。我们计划在其上升级到SQL Server 2005的推出。这个数据库对表(CreatedBy,CreatedDate等),无外键和可怕的整体设计没有审计领域。有一半直接访问使用内联SQL数据库中的十几个节目,和其他老/不良做法。
我想清理模式,和数据访问。你有一个良好的开端有什么建议?这是一个生产数据库,它必须继续,而它正在改进工作。
你可能将不得不开始与访问数据库的应用程序。更可能你会发现,数据库架构的任何更改将打破这些其他应用程序。最常见的罪魁祸首,我发现是SELECT * SQL随后访问基于列位置的数据。如果最后一列前插入一列,该代码将打破。此外,除非你使用缺省值,新列,任何插入命令就会失败。
最好的办法是了解那些外部程序是如何使用的数据库,然后设计一个新的数据库,然后在同一时间到新的数据库,每一个这些程序的迁移。
在更改这个数据库,而这是在生产中几乎肯定会打破其他应用程序。
您可以纠正,分析,标准化等方面的架构,同时保持落后的观点当前模式/接口。
在视图上触发前使用可以确保应用程序写入以及读出他们的期望。
这样,您就可以开始向客户端应用到新的架构迁移,同时允许当前应用程序的工作。和你的数据更安全(DRI,FK,DF,CK等),在它的新的模式。
这也使运行每月一次,没有人知道它是结束一个月该报告所必需的接口契约为意外电子表格一致...