repo.Index_SqlConstraint_PkUq - V

type: V ( view ), modify_date: 2022-01-05 18:06:35

RepoObject_guid: 7190291C-9D61-EB11-84DC-A81E8446D5B0

Description

Examples

Entity Diagram

entity-repo.index_sqlconstraint_pkuq

Columns

Table 1. Columns of repo.Index_SqlConstraint_PkUq - V
PK Column Name Data Type NULL? ID

uniqueidentifier

NULL

uniqueidentifier

NULL

nvarchar(max)

NOT NULL

Foreign Key Diagram

entity_1_1_fk-repo.index_sqlconstraint_pkuq

References

Object Reference Diagram - 1 1

entity_1_1_objectref-repo.index_sqlconstraint_pkuq

Object Reference Diagram - Referenced - 30 0

entity_30_0_objectref-repo.index_sqlconstraint_pkuq

Object Reference Diagram - Referencing - 0 30

entity_0_30_objectref-repo.index_sqlconstraint_pkuq

Column Reference Diagram

entity_1_1_colref-repo.index_sqlconstraint_pkuq

Indexes

idx_Index_SqlConstraint_PkUq__1

Column Details

_

index_guid

index_guid

uniqueidentifier

NULL

Referenced Columns

parent_RepoObject_guid

parent_RepoObject_guid

uniqueidentifier

NULL

SqlConstraint

SqlConstraint

nvarchar(max)

NOT NULL

sql_modules_definition

repo.Index_SqlConstraint_PkUq - V script
--contains only PK or UNIQUE
--requirement:
-- - repo.Index_Settings.is_create_constraint = 1
-- - repo.Index_union.is_index_unique = 1

CREATE View repo.Index_SqlConstraint_PkUq
As
Select
    i.index_guid
  , i.parent_RepoObject_guid
  , SqlConstraint = Concat (   'CONSTRAINT '
                             --todo missing name?
                             , QuoteName ( i.index_name )
                             , ' '
                             , Case
                                   When i.is_index_primary_key = 1
                                       Then
                                       'PRIMARY KEY '
                                   When i.is_index_unique = 1
                                       Then
                                       'UNIQUE '
                               End
                             , Case i.index_type
                                   When 1
                                       Then
                                       'CLUSTERED '
                                   When 2
                                       Then
                                       'NONCLUSTERED '
                               End
                             , '('
                             , ColumnList.ConstraintColumnList
                             , ')'
                           )
-- , i.index_name
-- , i.index_type
-- , i.is_index_unique
-- , i.is_index_primary_key
-- --, i.referenced_index_guid
-- , i.is_index_disabled
----, i.is_index_real
----, i_s.is_create_constraint
From
    repo.Index_union           As i
    Left Outer Join
        repo.Index_Settings    As i_s
            On
            i_s.index_guid        = i.index_guid

    Left Outer Join
        repo.Index_ColumList_T As ColumnList
            On
            ColumnList.index_guid = i.index_guid
Where
    i_s.is_create_constraint = 1
    And i.is_index_unique    = 1