CREATE_OR_DROP_DIM_IDSETREGISTER_INDICES

Parameters

Parameter Parameter Type Mode Description
@CREATE_OR_DROP bit IN

Definition

Copy

create procedure BBDW.[CREATE_OR_DROP_DIM_IDSETREGISTER_INDICES]
  @CREATE_OR_DROP bit --1 to create, 0 to drop.
  as
  set nocount on;

  if @CREATE_OR_DROP is null
    raiserror('@CREATE_OR_DROP must be 1 or 0 in [BBDW].[CREATE_OR_DROP_DIM_IDSETREGISTER_INDICES]',16,10);

  if @CREATE_OR_DROP =1
  begin
  --create

    if  [BBDW].[UFN_INDEXEXISTS]('IX_DIM_IDSETREGISTER_IDSETREGISTERSYSTEMID') = 0
      create nonclustered index [IX_DIM_IDSETREGISTER_IDSETREGISTERSYSTEMID] on BBDW.[DIM_IDSETREGISTER] ([IDSETREGISTERSYSTEMID]) with (DATA_COMPRESSION = PAGE) on [BBRPT_DIMIDXGROUP];

    if  [BBDW].[UFN_INDEXEXISTS]('IX_DIM_IDSETREGISTER_RECORDTYPESYSTEMID') = 0
      create nonclustered index [IX_DIM_IDSETREGISTER_RECORDTYPESYSTEMID] on BBDW.[DIM_IDSETREGISTER] ([RECORDTYPESYSTEMID]) with (DATA_COMPRESSION = PAGE) on [BBRPT_DIMIDXGROUP];

    if  [BBDW].[UFN_INDEXEXISTS]('IX_DIM_IDSETREGISTER_SITEDIMID') = 0
      create nonclustered index [IX_DIM_IDSETREGISTER_SITEDIMID] on BBDW.[DIM_IDSETREGISTER] ([SITEDIMID]) with (DATA_COMPRESSION = PAGE) on [BBRPT_DIMIDXGROUP];

    if  [BBDW].[UFN_INDEXEXISTS]('IX_DIM_IDSETREGISTER_CURRENTASOFDATEDIMID') = 0
      create nonclustered index [IX_DIM_IDSETREGISTER_CURRENTASOFDATEDIMID] on BBDW.[DIM_IDSETREGISTER] ([CURRENTASOFDATEDIMID]) with (DATA_COMPRESSION = PAGE) on [BBRPT_DIMIDXGROUP];

    if  [BBDW].[UFN_INDEXEXISTS]('IX_DIM_IDSETREGISTER_SOURCEDIMID') = 0
      create nonclustered index [IX_DIM_IDSETREGISTER_SOURCEDIMID] on [BBDW].[DIM_IDSETREGISTER] ([SOURCEDIMID]) with (DATA_COMPRESSION = PAGE) on [BBRPT_DIMIDXGROUP];      

  end
  else
  begin
  --drop

    if  [BBDW].[UFN_INDEXEXISTS]('IX_DIM_IDSETREGISTER_IDSETREGISTERSYSTEMID') = 1
     drop index [IX_DIM_IDSETREGISTER_IDSETREGISTERSYSTEMID] on BBDW.[DIM_IDSETREGISTER]; 

    if  [BBDW].[UFN_INDEXEXISTS]('IX_DIM_IDSETREGISTER_RECORDTYPESYSTEMID') = 1
     drop index [IX_DIM_IDSETREGISTER_RECORDTYPESYSTEMID] on BBDW.[DIM_IDSETREGISTER]; 

    if  [BBDW].[UFN_INDEXEXISTS]('IX_DIM_IDSETREGISTER_SITEDIMID') = 1
     drop index [IX_DIM_IDSETREGISTER_SITEDIMID] on BBDW.[DIM_IDSETREGISTER]; 

    if  [BBDW].[UFN_INDEXEXISTS]('IX_DIM_IDSETREGISTER_CURRENTASOFDATEDIMID') = 1
     drop index [IX_DIM_IDSETREGISTER_CURRENTASOFDATEDIMID] on BBDW.[DIM_IDSETREGISTER]; 

    if  [BBDW].[UFN_INDEXEXISTS]('IX_DIM_IDSETREGISTER_SOURCEDIMID') = 1
     drop index [IX_DIM_IDSETREGISTER_SOURCEDIMID] on [BBDW].[DIM_IDSETREGISTER];

  end