0
我们从SQL Server 2005数据库和表开始。 [UPDATE,INSERT和DELETE]在这种情况下,当应用程序(VB6)数据表被修改时,我们使用UPDATE触发器将行插入审计tbl(s)。我们将审计表移至SQL Server 2008.我们将原始([FHA-4])修改为新的(SQL Server 2008 [FHA-DMZ- CL1SQL])服务器名称。SQL Server 2005触发了将审计表移动到SQL Server 2008,现在触发器在尝试将行插入审计表时没有响应
当触发器被激活时,小时玻璃会一直亮着,直到sql超时消息出现并且应用程序中止。在检查审计表时,没有添加任何新内容,因此插入无效。
下面是表的实际触发声明:
USE [BCC_DHMH]
GO
/****** Object: Trigger [dbo].[TriggerAddressUpdate] Script Date: 04/07/2010 09:47:34 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
--Logic to save to the table that supports Tripwire
ALTER TRIGGER [dbo].[TriggerAddressUpdate]
ON [dbo].[tblAddress]
AFTER UPDATE
AS
SET XACT_ABORT ON
BEGIN DISTRIBUTED TRANSACTION
SET NOCOUNT ON;
--IF (SYSTEM_USER <> 'FHA\kYarberough' AND SYSTEM_USER <> 'FHA\ljlee' AND SYSTEM_USER <> 'FHA\PHarvey' AND SYSTEM_USER <> 'FHA\BShenosky' AND SYSTEM_USER <> 'FHA\BBrodie' AND SYSTEM_USER <> 'FHA\DRandolph')
Declare @UpdateID as varchar(50)
Set @UpdateID = newid()
BEGIN
INSERT [FHA-4].[ECMS_Audit].[dbo].[tblAddress_Audit]
([fldAddressOwnerID], [fldUpdateID], [fldAddressTypeCode], [fldAddressMailcode], [fldAddressSequence],
[fldAddressID], [fldName], [fldLine1], [fldLine2], [fldCity], [fldState], [fldCounty],
[fldZipcode], [fldWorkFax], [fldWorkPhone], [fldWorkExtension], [fldWorkEMail], [fldHomePhone],
[fldHomeEMail], [fldContactName], [fldContactPhone], [fldContactFax], [fldContactExtension], [fldEffectiveDate],
[fldExpirationDate], [fldUpdateTimestamp], [fldUpdateUserID], [fldRelationship], [fldNotes], [fldNCPDPNum],
[fldMedicaidNum], [fldStoreNum],
[ModifiedBySqlUser], [ModifiedByNTUser], [ModifiedDate], [Action])
SELECT [fldAddressOwnerID], @UpdateID, [fldAddressTypeCode], [fldAddressMailcode], [fldAddressSequence],
[fldAddressID], [fldName], [fldLine1], [fldLine2], [fldCity], [fldState], [fldCounty],
[fldZipcode], [fldWorkFax], [fldWorkPhone], [fldWorkExtension], [fldWorkEMail], [fldHomePhone],
[fldHomeEMail], [fldContactName], [fldContactPhone], [fldContactFax], [fldContactExtension], [fldEffectiveDate],
[fldExpirationDate], [fldUpdateTimestamp], [fldUpdateUserID], [fldRelationship], [fldNotes], [fldNCPDPNum],
[fldMedicaidNum], [fldStoreNum],
CURRENT_USER, SYSTEM_USER, GETDATE(), 'InitialValues' FROM deleted
INSERT [FHA-4].[ECMS_Audit].[dbo].[tblAddress_Audit]
([fldAddressOwnerID], [fldUpdateID], [fldAddressTypeCode], [fldAddressMailcode], [fldAddressSequence],
[fldAddressID], [fldName], [fldLine1], [fldLine2], [fldCity], [fldState], [fldCounty],
[fldZipcode], [fldWorkFax], [fldWorkPhone], [fldWorkExtension], [fldWorkEMail], [fldHomePhone],
[fldHomeEMail], [fldContactName], [fldContactPhone], [fldContactFax], [fldContactExtension], [fldEffectiveDate],
[fldExpirationDate], [fldUpdateTimestamp], [fldUpdateUserID], [fldRelationship], [fldNotes], [fldNCPDPNum],
[fldMedicaidNum], [fldStoreNum],
[ModifiedBySqlUser], [ModifiedByNTUser], [ModifiedDate], [Action])
SELECT [fldAddressOwnerID], @UpdateID, [fldAddressTypeCode], [fldAddressMailcode], [fldAddressSequence],
[fldAddressID], [fldName], [fldLine1], [fldLine2], [fldCity], [fldState], [fldCounty],
[fldZipcode], [fldWorkFax], [fldWorkPhone], [fldWorkExtension], [fldWorkEMail], [fldHomePhone],
[fldHomeEMail], [fldContactName], [fldContactPhone], [fldContactFax], [fldContactExtension], [fldEffectiveDate],
[fldExpirationDate], [fldUpdateTimestamp], [fldUpdateUserID], [fldRelationship], [fldNotes], [fldNCPDPNum],
[fldMedicaidNum], [fldStoreNum],
CURRENT_USER, SYSTEM_USER, GETDATE(), 'NewValues' FROM inserted
END
COMMIT TRANSACTION
SET XACT_ABORT OFF