2014-04-28 76 views
0

我们在MS SQL Server 2000中有一个数据库。
有一天,一张表中的列消失了,我不知道它为什么发生或发生了什么。
(请不要笑,这是一个旧的应用程序,架构设计不如我想象的那样好。我是一个新的应用程序支持人员。)在MS SQL Server 2000中跟踪数据库架构更改

你知道如何跟踪MS SQL Server 2000的数据库模式?

回答

1

事实上,你不会有太多的事情要做,而是从“谁有权这样做?”开始,然后问问他们。

您可以通过恢复您拥有的最旧备份来缩小“何时”,以查看该列是否存在,然后继续前进。如果数据库处于完全恢复模式,并且您拥有所有事务日志,则可以恢复数据库并应用日志,直到该列消失,但这仍然只会为您提供何时,而不是谁。

1

数据库表不应该通过GUI进行修改,因为没有模式更改的记录。

在过去的日子里,我们将架构脚本放置在共享文件夹中,以便我们可以跟踪这些更改。因此,员工可以问周围,看看谁创建了脚本。你有.sql文件存储在任何地方?

另一个非常简单的源代码管理思想是将整个数据库的单个脚本存储在TFS或Subversion中,并且每周只编写一次数据库脚本。这允许您并排比较脚本,以便您可以直观地查看更改。我认为redgate有一种工具可以以某种方式自动化这一点。

绝对是想前进的东西:)