你可以建立一個數據庫觸發器,保持在你的開發數據庫中的任何改變的記錄。 一個例子是這樣的:tblDDLHistory的
create TRIGGER trDDLHistory ON DATABASE
for CREATE_FUNCTION, ALTER_FUNCTION, DROP_FUNCTION,
CREATE_PROCEDURE, ALTER_PROCEDURE, DROP_PROCEDURE,
CREATE_TABLE, ALTER_TABLE, DROP_TABLE,
CREATE_TRIGGER, ALTER_TRIGGER, DROP_TRIGGER,
CREATE_VIEW, ALTER_VIEW, DROP_VIEW
-- there are more offcourse..
AS
BEGIN
INSERT INTO tblDDLHistory(DDLHistory)
VALUES(convert(nvarchar(max), EVENTDATA()))
END;
例子是
CREATE TABLE [dbo].[tblDDLHistory] (
[DDLHistoryID] INT IDENTITY(1,1) NOT NULL,
[DDLDate] DATETIME NOT NULL DEFAULT (getdate()),
[DDLHistory] XML NULL,
CONSTRAINT [PK_DDLHistoryID] PRIMARY KEY (DDLHistoryID)
)
現在,你可以從這裏所有的變化在生產數據庫中使用。