USP_VALIDATION_MISSINGMETADATACOLUMNS
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@INCLUDEEXTENSIONS | bit | IN |
Definition
Copy
CREATE procedure BBDW.[USP_VALIDATION_MISSINGMETADATACOLUMNS] (@INCLUDEEXTENSIONS bit)
as
declare @TABLE as table([SCHEMANAME] nvarchar(255), [TABLENAME] nvarchar(255))
insert into @TABLE([SCHEMANAME], [TABLENAME])
select
[SCHEMA],
[TABLE]
from
(
select
t.[TABLE_SCHEMA] as [SCHEMA],
t.[TABLE_NAME] as [TABLE]
from INFORMATION_SCHEMA.TABLES t
where
(t.[TABLE_NAME] like 'DIM_%' or t.[TABLE_NAME] like 'FACT_%' or (@INCLUDEEXTENSIONS = 1 and t.[TABLE_NAME] like 'USR_%'))
and t.[TABLE_NAME] not like '%_STAGE%'
and t.[TABLE_TYPE] = 'BASE TABLE'
and (@INCLUDEEXTENSIONS = 1 or t.[TABLE_NAME] not like '%_EXT')
except
select
col.[SCHEMA],
col.[TABLE]
from
(
select
c.[TABLE_SCHEMA] as [SCHEMA],
c.[TABLE_NAME] as [TABLE],
c.[COLUMN_NAME] as [COLUMN]
from INFORMATION_SCHEMA.COLUMNS c
where
c.[COLUMN_NAME] in ('ETLCONTROLID')
or c.[COLUMN_NAME] in ('ISINCLUDED')
or c.[COLUMN_NAME] in ('SOURCEDIMID')
) col
group by col.[SCHEMA], col.[TABLE]
having count(col.[COLUMN]) = 3
) as [METADATA]
insert into BBDW.[VALIDATIONEXCEPTIONS]([TESTNAME], [EXCEPTION])
select 'Missing MetaData', '[' + [SCHEMANAME] + '].[' + [TABLENAME] + '] does not contain one or more of the following metadata columns: [ETLCONTROLID], [ISINCLUDED], [SOURCEDIMID]'
from @TABLE;
select count(1) from @TABLE;