谁更新了存储过程?

时间:2010-12-07 18:41:30

标签: sql-server-2008

有没有办法检查谁是SQL Server 2008中更新给定proc的最后一个人或人员列表?是否有内置的实用程序命令,仪表板或第三方工具可以提供这种洞察力?

由于

2 个答案:

答案 0 :(得分:1)

右键单击SSMS中的数据库节点,选择“报告”>“标准报告”>“架构更改历史记录”。这将为您提供一系列更改 - 但是,如果最近未进行更改,您可能无法在此报告中找到它 - 它不显示“所有更改,永远”!

答案 1 :(得分:0)

您的问题表明您有几个令人不安的问题需要解决。

首先,您应该使用源代码控制并将所有更改存储在其中。然后,您可以看到谁做了哪些更改,并能够恢复到以前的版本。

接下来,如果生产中出现此问题,则需要将生产权限限制为仅限dba和分配了配置管理角色的人员(配置pepeople,dbas或manager)。应用程序开发人员根本没有权利在prod上创建或更新对象。

您还可以设置触发器来监控和记录对数据库的所有更改。查找DDL触发器。

@Will A会为您提供短期解决方案,但如果更改不是最近的,则可能对您所需的研究无效。