cleanup
This commit is contained in:
76
DBG - check idx structure.sql
Normal file
76
DBG - check idx structure.sql
Normal file
@@ -0,0 +1,76 @@
|
||||
USE [Arizona]
|
||||
|
||||
DECLARE @idxName VARCHAR(100) = 'NCIX_entry_COL_ET_reconciliation_status'
|
||||
DECLARE @idxChk TABLE ([TblName] NVARCHAR(128),
|
||||
[SchemaTbl] NVARCHAR(257),
|
||||
[IndexName] NVARCHAR(128),
|
||||
[IsPrimaryKey] BIT,
|
||||
[IsUniqueConstraint] BIT,
|
||||
[IsUnique] BIT,
|
||||
[ColName] NVARCHAR(128),
|
||||
[IsComputedCol] BIT,
|
||||
[IsIncludedCol] BIT,
|
||||
[keyOrdinal] TINYINT,
|
||||
[FilterDefinition] NVARCHAR(MAX));
|
||||
|
||||
INSERT INTO @idxChk ([TblName],
|
||||
[SchemaTbl],
|
||||
[IndexName],
|
||||
[IsPrimaryKey],
|
||||
[IsUniqueConstraint],
|
||||
[IsUnique],
|
||||
[ColName],
|
||||
[IsComputedCol],
|
||||
[IsIncludedCol],
|
||||
[keyOrdinal],
|
||||
[FilterDefinition])
|
||||
SELECT [o].[name] AS [TblName],
|
||||
[s].[name] + '.' + [o].[name] AS [SchemaTbl],
|
||||
[i].[name] AS [IndexName],
|
||||
[i].[is_primary_key] AS [IsPrimaryKey],
|
||||
[i].[is_unique_constraint] AS [IsUniqueConstraint],
|
||||
[i].[is_unique] AS [IsUnique],
|
||||
[c].[name] AS [ColName],
|
||||
[c].[is_computed] AS [IsComputedCol],
|
||||
[ic].[is_included_column] AS [IsIncludedCol],
|
||||
[ic].[key_ordinal] AS [keyOrdinal],
|
||||
[i].[filter_definition] AS [FilterDefinition]
|
||||
FROM [sys].[objects] [o]
|
||||
INNER JOIN [sys].[schemas] [s]
|
||||
ON [o].[schema_id] = [s].[schema_id]
|
||||
INNER JOIN [sys].[columns] [c]
|
||||
ON [o].[object_id] = [c].[object_id]
|
||||
INNER JOIN [sys].[indexes] [i]
|
||||
ON [c].[object_id] = [i].[object_id]
|
||||
INNER JOIN [sys].[index_columns] [ic]
|
||||
ON [i].[index_id] = [ic].[index_id]
|
||||
AND [o].[object_id] = [ic].[object_id]
|
||||
AND [c].[column_id] = [ic].[column_id]
|
||||
WHERE [i].[name] = @idxName
|
||||
AND [c].[is_computed] = 0
|
||||
AND [ic].[is_included_column] = 0;
|
||||
|
||||
|
||||
IF EXISTS(SELECT 1 FROM @idxChk [ic]) -- 'index exists
|
||||
BEGIN
|
||||
IF EXISTS( SELECT 1 FROM @idxChk [ic] WHERE [ic].[ColName]='ET_reconciliation_status' AND [ic].[keyOrdinal]=1)
|
||||
AND EXISTS(SELECT 1 FROM @idxChk [ic] WHERE [ic].[ColName]='ET_account' AND [ic].[keyOrdinal] = 2)
|
||||
AND EXISTS(SELECT 1 FROM @idxChk [ic] WHERE [ic].[ColName]='ET_document_header' AND [ic].[keyOrdinal] = 3)
|
||||
BEGIN
|
||||
PRINT 'index '+@idxName+' is as expected';
|
||||
END
|
||||
ELSE
|
||||
BEGIN
|
||||
PRINT 'DROP INDEX '+@idxName+' ON dbo.[Entry];';
|
||||
--EXEC('DROP INDEX '+@idxName+' ON dbo.[Entry];')
|
||||
END
|
||||
END
|
||||
|
||||
IF INDEXPROPERTY(OBJECT_ID('dbo.Entry'), 'NCIX_entry_COL_ET_reconciliation_status', 'IndexID') IS NULL
|
||||
BEGIN
|
||||
PRINT 'idx NCIX_entry_COL_ET_reconciliation_status create';
|
||||
--CREATE NONCLUSTERED INDEX NCIX_Entry_COL_ET_reconciliation_status
|
||||
--ON [dbo].[Entry] ([ET_reconciliation_status], [ET_account], [ET_document_header])
|
||||
--INCLUDE ([ET_debit_base_amount], [ET_credit_base_amount], [ET_reconciliation_base_amount]);
|
||||
END
|
||||
GO
|
||||
Reference in New Issue
Block a user