USP_SCHEMA_TABLE_SETTABLECOMMENT

Parameters

Parameter Parameter Type Mode Description
@TABLENAME nvarchar(128) IN
@COMMENT nvarchar(4000) IN

Definition

Copy


CREATE procedure dbo.USP_SCHEMA_TABLE_SETTABLECOMMENT
    @TABLENAME nvarchar(128),
    @COMMENT nvarchar(4000)

as
    declare @value nvarchar(4000);

    --select @value = value from fn_listextendedproperty(N'MS_Description', N'SCHEMA', N'dbo', N'table', @TABLENAME, default, default)

    select @value = cast(ep.value as nvarchar(4000)) from 
    sys.extended_properties as ep 
    where ep.[class]=1  and ep.major_id=OBJECT_ID(@TABLENAME) and ep.minor_id=0 and ep.[name] = N'MS_Description';

    if @value is null

        -- property doesn't exist, so add it
        exec sys.sp_addextendedproperty N'MS_Description', @COMMENT, N'SCHEMA', N'dbo', N'table', @TABLENAME;

    else if @value <> @COMMENT

    -- property already exists, so update it
        exec sys.sp_updateextendedproperty N'MS_Description', @COMMENT, N'SCHEMA', N'dbo', N'table', @TABLENAME;