USP_AUDITHELP_GET_AUDIT_VS_SOURCE_COLUMNS
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@SOURCETABLENAME | nvarchar(128) | IN |
Definition
Copy
CREATE procedure [dbo].[USP_AUDITHELP_GET_AUDIT_VS_SOURCE_COLUMNS] (@SOURCETABLENAME nvarchar(128))
as
/*
gets the fields in the AUDIT table and the matching columns in the source table.
Used to make sure the fields in the source exist exactly on the audit table
*/
declare @auditTABLENAME nvarchar(128)
set @audittablename=@SOURCETABLENAME + 'AUDIT'
select AUDIT.COLUMN_NAME as AUDITCOLUMNNAME,
coalesce(SOURCE.COLUMN_NAME, '') as SOURCECOLUMNNAME
from
( select COLUMN_NAME
from INFORMATION_SCHEMA.COLUMNS
where (TABLE_SCHEMA = 'dbo')
and (TABLE_NAME = @AUDITTABLENAME)
and (COLUMN_NAME not in ('AUDITID', 'AUDITRECORDID', 'AUDITKEY', 'AUDITCHANGEAGENTID', 'AUDITDATE', 'AUDITTYPE','AUDITTYPECODE'))
) as AUDIT
left outer join
( select COLUMN_NAME from INFORMATION_SCHEMA.COLUMNS
where (TABLE_SCHEMA = 'dbo') and (TABLE_NAME = @SOURCETABLENAME)
and (COLUMNPROPERTY(OBJECT_ID('[' + TABLE_CATALOG + '].[' + TABLE_SCHEMA + '].[' + TABLE_NAME + ']'), COLUMN_NAME, 'IsComputed') = 0)
) as SOURCE
on AUDIT.COLUMN_NAME = SOURCE.COLUMN_NAME;
return 0;