quinta-feira, 10 de abril de 2025

Here is a quick script to generate sp_updateextendedproperty dynamically from your existing metadata.

Here is a quick script to generate sp_updateextendedproperty dynamically from your existing metadata.

DECLARE @TableName SYSNAME, @ColumnName varchar(100), @ColumnDescription varchar(5000), @schemaname varchar(100)
DECLARE @UpdateCursor CURSOR

SET @UpdateCursor = CURSOR FOR
  SELECT
t.name AS [TableName],
c.name AS [ColumnName],
CAST(value AS VARCHAR(5000)) AS ColumnDescription,
SCHEMA_NAME(t.SCHEMA_ID) as SchemaName
  FROM sys.extended_properties AS ep
  INNER JOIN sys.tables AS t ON ep.major_id = t.object_id
  INNER JOIN sys.columns AS c ON ep.major_id = c.object_id AND ep.minor_id = c.column_id
  WHERE
cast(value as varchar(5000)) like 'HOST%'
  order by t.name;

OPEN @UpdateCursor

FETCH NEXT FROM @UpdateCursor INTO @TableName, @ColumnName, @ColumnDescription, @schemaname

WHILE @@FETCH_STATUS = 0
BEGIN

PRINT('EXEC sp_updateextendedproperty
@name = N''MS_Description'', @value = '''+@ColumnDescription+''',
@level0type = N''Schema'', @level0name = '''+@schemaname+''',
@level1type = N''Table'',  @level1name = '''+@TableName+''',
@level2type = N''Column'', @level2name = '''+@ColumnName+'''')

FETCH NEXT FROM @UpdateCursor INTO @TableName, @ColumnName, @ColumnDescription, @schemaname

END

CLOSE @UpdateCursor
DEALLOCATE @UpdateCursor

Nenhum comentário:

Postar um comentário

Leave your comment here!