repo_sys.ExtendedProperties - V

type: V ( view ), modify_date: 2021-08-17 19:58:48

RepoObject_guid: 4B90291C-9D61-EB11-84DC-A81E8446D5B0

Description

Examples

Entity Diagram

entity-repo_sys.extendedproperties

Columns

Table 1. Columns of repo_sys.ExtendedProperties - V
PK Column Name Data Type NULL? ID

tinyint

NOT NULL

nvarchar(60)

NULL

nvarchar(128)

NULL

nvarchar(128)

NULL

nvarchar(128)

NULL

varchar(9)

NULL

int

NOT NULL

int

NOT NULL

nvarchar(128)

NULL

sysname

NULL

int

NULL

char(2)

NULL

sql_variant

NULL

sysname

NOT NULL

nvarchar(4000)

NULL

sql_variant

NULL

nvarchar(128)

NULL

nvarchar(128)

NULL

Foreign Key Diagram

entity_1_1_fk-repo_sys.extendedproperties

References

Object Reference Diagram - 1 1

entity_1_1_objectref-repo_sys.extendedproperties

Object Reference Diagram - Referenced - 30 0

entity_30_0_objectref-repo_sys.extendedproperties

Object Reference Diagram - Referencing - 0 30

entity_0_30_objectref-repo_sys.extendedproperties

Column Reference Diagram

entity_1_1_colref-repo_sys.extendedproperties

Column Details

_

class

class

tinyint

NOT NULL

class_desc

class_desc

nvarchar(60)

NULL

entity_column_name

entity_column_name

nvarchar(128)

NULL

entity_index_name

entity_index_name

nvarchar(128)

NULL

entity_parameter_name

entity_parameter_name

nvarchar(128)

NULL

level2type

level2type

varchar(9)

NULL

major_id

major_id

int

NOT NULL

minor_id

minor_id

int

NOT NULL

minor_name

minor_name

nvarchar(128)

NULL

parent_name

parent_name

sysname

NULL

parent_object_id

parent_object_id

int

NULL

parent_type

parent_type

char(2)

NULL

property_basetype

property_basetype

sql_variant

NULL

property_nvarchar

property_nvarchar

nvarchar(4000)

NULL

SysObject_name

SysObject_name

nvarchar(128)

NULL

sql_modules_definition

repo_sys.ExtendedProperties - V script
/*
database_id required in
- OBJECT_SCHEMA_NAME
- OBJECT_NAME
*/
CREATE View repo_sys.ExtendedProperties
As
--
Select
    sep.class
  , sep.major_id
  , sep.minor_id
  , property_name         = sep.name Collate Database_Default
  , sep.class_desc
  , property_value        = sep.value
  , SysObject_schema_name = Case
                                When sep.class In
                                ( 1, 2, 7 )
                                    Then
                                    Object_Schema_Name ( sep.major_id, db.dwh_database_id )
                                When sep.class = 3
                                    Then
                                    sch.name
                            End Collate Database_Default
  , SysObject_name        = Case
                                When sep.class In
                                ( 1, 2, 7 )
                                    Then
                                    Object_Name ( sep.major_id, db.dwh_database_id )
                            End
  , minor_name            = Case sep.class
                                When 1
                                    Then
                                    sc.name
                                When 2
                                    Then
                                    sp.name
                                When 3
                                    Then
                                    si.name
                            End Collate Database_Default
  , entity_column_name    = Case
                                When sep.class = 1
                                    Then
                                    sc.name
                            End Collate Database_Default
  , entity_parameter_name = Case
                                When sep.class = 2
                                    Then
                                    sp.name
                            End Collate Database_Default
  , entity_index_name     = Case
                                When sep.class = 7
                                    Then
                                    si.name
                            End Collate Database_Default
  , level2type            = Case
                                When sep.class = 1
                                     And sep.minor_id > 0
                                    Then
                                    'COLUMN'
                                When sep.class = 2
                                     And sep.minor_id > 0
                                    Then
                                    'PARAMETER'
                                When sep.class = 7
                                     And sep.minor_id > 0
                                    Then
                                    'INDEX'
                            End
  , property_basetype     = Sql_Variant_Property ( sep.value, 'BaseType' )
  , property_nvarchar     = Try_Cast(sep.value As NVarchar(4000))
  , so.parent_object_id
  , parent_name           = parent.name
  , parent_type           = parent.type
-- Explicit conversion from data type int to uniqueidentifier is not allowed.
--, [property_value_uniqueidentifier] = TRY_CAST([sep].value As UniqueIdentifier)
From
    sys_dwh.extended_properties            As sep
    Left Outer Join
        sys_dwh.columns                    As sc
            On
            sep.major_id = sc.object_id
            And sep.minor_id = sc.column_id

    Left Outer Join
        sys_dwh.parameters                 As sp
            On
            sep.major_id = sp.object_id
            And sep.minor_id = sp.parameter_id

    Left Outer Join
        sys_dwh.indexes                    As si
            On
            sep.major_id = si.object_id
            And sep.minor_id = si.index_id

    Left Outer Join
        sys_dwh.objects                    As so
            On
            sep.major_id = so.object_id

    Left Outer Join
        sys_dwh.objects                    As parent
            On
            parent.object_id = so.parent_object_id

    Left Outer Join
        sys_dwh.schemas                    As sch
            On
            sch.schema_id = sep.major_id
            And sep.minor_id = 0
            And sep.class = 3
    --
    Cross Apply config.ftv_dwh_database () As db