CREATE_OR_DROP_DIM_CONSTITUENTADDRESS_INDICES

Parameters

Parameter Parameter Type Mode Description
@CREATE_OR_DROP bit IN

Definition

Copy

CREATE procedure [BBDW].[CREATE_OR_DROP_DIM_CONSTITUENTADDRESS_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_CONSTITUENTADDRESS_INDICES]',16,10);

  if @CREATE_OR_DROP =1
  begin
  --create

    if  [BBDW].[UFN_INDEXEXISTS]('IX_DIM_CONSTITUENTADDRESS_CITYSTATECOUNTRYPOSTCODE') = 0
      create nonclustered index [IX_DIM_CONSTITUENTADDRESS_CITYSTATECOUNTRYPOSTCODE] on [BBDW].[DIM_CONSTITUENTADDRESS] ([CITY],[STATE],[COUNTRY],[POSTCODE]) with (DATA_COMPRESSION = PAGE) on [BBRPT_DIMIDXGROUP]

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

  end
  else
  begin
  --drop

    if  [BBDW].[UFN_INDEXEXISTS]('IX_DIM_CONSTITUENTADDRESS_CITYSTATECOUNTRYPOSTCODE') = 1
     drop index [IX_DIM_CONSTITUENTADDRESS_CITYSTATECOUNTRYPOSTCODE] on [BBDW].[DIM_CONSTITUENTADDRESS];

    if  [BBDW].[UFN_INDEXEXISTS]('IX_DIM_CONSTITUENTADDRESS_SOURCEDIMID') = 1
     drop index [IX_DIM_CONSTITUENTADDRESS_SOURCEDIMID] on [BBDW].[DIM_CONSTITUENTADDRESS];

  end