USP_SCHEMA_TABLE_SETCOLUMNCODETABLE
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@TABLENAME | nvarchar(128) | IN | |
@COLUMNNAME | nvarchar(128) | IN | |
@CODETABLE | nvarchar(100) | IN |
Definition
Copy
CREATE procedure dbo.USP_SCHEMA_TABLE_SETCOLUMNCODETABLE
@TABLENAME nvarchar(128),
@COLUMNNAME nvarchar(128),
@CODETABLE nvarchar(100)
as
declare @value nvarchar(100);
select @value = cast(ep.value as nvarchar(100)) from
sys.extended_properties as ep
inner join sys.columns as c on c.object_id=ep.major_id and c.column_id=ep.minor_id
where
ep.class=1
and
ep.major_id=OBJECT_ID(@TABLENAME,'U')
and
ep.minor_id > 0
and
ep.[name] = N'BB_CODETABLENAME'
and
c.[name]=@COLUMNNAME
;
if @value is null
-- property doesn't exist, so add it
exec sys.sp_addextendedproperty N'BB_CODETABLENAME', @CODETABLE, N'SCHEMA', N'dbo', N'table', @TABLENAME, N'COLUMN', @COLUMNNAME;
else if @value <> @CODETABLE
-- property already exists, so update it
exec sys.sp_updateextendedproperty N'BB_CODETABLENAME', @CODETABLE, N'SCHEMA', N'dbo', N'table', @TABLENAME, N'COLUMN', @COLUMNNAME;