我们的开发团队使用SQL Server并为我们的产品编写存储过程。
对于这些过程或任何其他对象,我们需要诸如版本控制系统之类的东西。
有时我更改了存储过程,而团队中的其他人也对其进行了更改,而我对此一无所知。
有什么解决办法吗?
答案 0 :(得分:2)
如果您想通过代码来执行此操作,则可以每天或每小时运行一次,以获取在过去一天更改的所有proc的列表:
select *
from sys.objects
where datediff(dd, create_date, getdate()) < 1
or datediff(dd, modify_date, getdate() < 1)
and type = 'P';
或者您可以创建一个ddl触发器:
Create trigger prochanged On database
For create_procedure, alter_procedure, drop procedure
as
begin
set nocount on
Declare @data xml
set @data = Eventdata()
-- save @data to a table...
end
这将使您每次创建,更改或删除proc时都能保存各种信息。