/* CAIO CÉSAR DIOGO DOS SANTOS C@IO.PRO.BR - 2022-08-04 DATABASE PROPERTIES QUERY EXEMPLE */ -- LISTAR AS PROPRIEDADES DE TODOS OS ESQUEMAS SELECT objtype, objname, name, value FROM SYS.fn_listextendedproperty('DEFINITION', 'SCHEMA', NULL, NULL, NULL, NULL, NULL) -- LISTAR AS PROPRIEDADES DAS TABELAS DE UM ESQUEMA ESPECÍFICO [Core] SELECT objtype, objname, name, value FROM SYS.fn_listextendedproperty('DEFINITION', 'SCHEMA', 'Core', 'TABLE', NULL, NULL, NULL) -- LISTAR AS PROPRIEDADES DAS VIEWS DE UM ESQUEMA ESPECÍFICO [UserView] SELECT objtype, objname, name, value FROM SYS.fn_listextendedproperty('DEFINITION', 'SCHEMA', 'UserView', 'VIEW', NULL, NULL, NULL) -- LISTAR AS PROPRIEDADES DE UMA TABELA ESPECÍFICA [Core].[Parametro] SELECT objtype, objname, name, value FROM SYS.fn_listextendedproperty('DEFINITION', 'SCHEMA', 'Core', 'TABLE', 'Parametro', NULL, NULL) -- LISTAR AS PROPRIEDADES DAS COLUNAS DE UMA TABELA ESPECÍFICA [Core].[Parametro] SELECT objtype, objname, name, value FROM SYS.fn_listextendedproperty('DEFINITION', 'SCHEMA', 'Core', 'TABLE', 'Parametro', 'COLUMN', NULL) -- LISTAR AS PROPRIEDADES DE UMA COLUNA ESPECÍFICA DE UMA TABELA [Core].[Parametro].[ParametroValue] SELECT objtype, objname, name, value FROM SYS.fn_listextendedproperty('DEFINITION', 'SCHEMA', 'Core', 'TABLE', 'Parametro', 'COLUMN', 'ParametroValue') -- LISTAR AS PROPRIEDADES DAS TABELAS, INCLUINDO DETALHES DE TIPOS DE DADOS SELECT 'DbConcert' [DATABASE], S.NAME [SCHEMA], T.NAME [TABLE], C.NAME [COLUMN], UPPER(D.NAME) [DATA_TYPE], C.MAX_LENGTH, C.PRECISION, C.SCALE, C.IS_NULLABLE, E.VALUE [DESCRIPTION] FROM SYS.SCHEMAS S JOIN SYS.TABLES T ON S.SCHEMA_ID = T.SCHEMA_ID JOIN SYS.ALL_COLUMNS C ON T.OBJECT_ID = C.OBJECT_ID JOIN SYS.EXTENDED_PROPERTIES E ON T.OBJECT_ID = E.MAJOR_ID AND C.COLUMN_ID = E.MINOR_ID JOIN SYS.TYPES D ON C.SYSTEM_TYPE_ID = D.SYSTEM_TYPE_ID ORDER BY [SCHEMA], [TABLE], [COLUMN] -- LISTAR AS PROPRIEDADES DE TODOS OS OBJETOS, INCLUINDO DETALHES DE TIPOS DE DADOS SELECT 'DbConcert' [DATABASE], S.NAME [SCHEMA], O.NAME [OBJECT], O.TYPE_DESC [OBJECT_TYPE], C.NAME [COLUMN], UPPER(D.NAME) [DATA_TYPE], C.MAX_LENGTH, C.PRECISION, C.SCALE, C.IS_NULLABLE, E.VALUE [DESCRIPTION] FROM SYS.SCHEMAS S JOIN SYS.OBJECTS O ON S.SCHEMA_ID = O.SCHEMA_ID JOIN SYS.ALL_COLUMNS C ON O.OBJECT_ID = C.OBJECT_ID JOIN SYS.EXTENDED_PROPERTIES E ON O.OBJECT_ID = E.MAJOR_ID AND C.COLUMN_ID = E.MINOR_ID JOIN SYS.TYPES D ON C.SYSTEM_TYPE_ID = D.SYSTEM_TYPE_ID ORDER BY [OBJECT_TYPE], [SCHEMA], [OBJECT], [COLUMN]