如有表
Goods  //产品表
ID
Name   //产品名称
ParentName //父级产品
=》
Goods  //商品表
ID
Name   //商品名称
ParentName //父级商品谢谢

解决方案 »

  1.   

    删除列上的扩展属性
    以下示例从架构 dbo 内包含的表 T1 中的列 id 上删除属性 caption。
    CREATE TABLE T1 (id int , name char (20));
    GO
    EXEC sp_addextendedproperty 
        @name = 'caption' 
        ,@value = 'Employee ID' 
        ,@level0type = 'schema' 
        ,@level0name = dbo
        ,@level1type = 'table'
        ,@level1name = 'T1'
        ,@level2type = 'column'
        ,@level2name = id;
    GO
    EXEC sp_dropextendedproperty 
         @name = 'caption' 
        ,@level0type = 'schema' 
        ,@level0name = dbo
        ,@level1type = 'table'
        ,@level1name = 'T1'
        ,@level2type = 'column'
        ,@level2name = id;
    GO
    DROP TABLE T1;
    GO
    将扩展属性添加到表中的列
    以下示例将标题属性添加到 Address 表中的 PostalCode 列。EXEC sp_addextendedproperty 
    @name = N'Caption', @value = 'Postal code is a required column.',
    @level0type = N'Schema', @level0name = Person,
    @level1type = N'Table',  @level1name = Address,
    @level2type = N'Column', @level2name = PostalCode;
    GO
      

  2.   


    你提供的东西貌似有点问题,不过我估计你问的大概是这个意思。create table tb(id varchar(3) , pid varchar(3) , name varchar(10))
    insert into tb values('001' , null  , '广东省')
    insert into tb values('002' , '001' , '广州市')
    insert into tb values('003' , '001' , '深圳市')
    insert into tb values('004' , '002' , '天河区')
    insert into tb values('005' , '003' , '罗湖区')
    insert into tb values('006' , '003' , '福田区')
    insert into tb values('007' , '003' , '宝安区')
    insert into tb values('008' , '007' , '西乡镇')
    insert into tb values('009' , '007' , '龙华镇')
    insert into tb values('010' , '007' , '松岗镇')
    go--方法一
    select m.* , isnull((select name from tb n where n.id = m.pid),'无上级') ParentName from tb m
    /*
    id   pid  name       ParentName 
    ---- ---- ---------- ---------- 
    001  NULL 广东省        无上级
    002  001  广州市        广东省
    003  001  深圳市        广东省
    004  002  天河区        广州市
    005  003  罗湖区        深圳市
    006  003  福田区        深圳市
    007  003  宝安区        深圳市
    008  007  西乡镇        宝安区
    009  007  龙华镇        宝安区
    010  007  松岗镇        宝安区(所影响的行数为 10 行)
    */--方法二
    select m.* , isnull(n.name ,'无上级') ParentName from tb m left join tb n on m.pid = n.id
    /*
    id   pid  name       ParentName 
    ---- ---- ---------- ---------- 
    001  NULL 广东省        无上级
    002  001  广州市        广东省
    003  001  深圳市        广东省
    004  002  天河区        广州市
    005  003  罗湖区        深圳市
    006  003  福田区        深圳市
    007  003  宝安区        深圳市
    008  007  西乡镇        宝安区
    009  007  龙华镇        宝安区
    010  007  松岗镇        宝安区(所影响的行数为 10 行)
    */
    drop table tb
      

  3.   

     Select o.name AS tableName, c.name AS columnName, p.[value] AS Description  
     FROM sysproperties p INNER JOIN  
           sysobjects o ON o.id = p.id INNER JOIN  
           syscolumns c ON p.id = c.id AND p.smallid = c.colid  
     Where (p.name = 'MS_Description') AND (c.name = 'province') AND (o.name = 'ip_address')  
     orDER BY o.name  
       
     选取表ip_address中 字段province的描述  
       
      
     --创建表及描述信息  
       
     create   table   表(a1   varchar(10),a2   char(2))  
       
     --为表添加描述信息  
     EXECUTE   sp_addextendedproperty   N'MS_Description',   '人员信息表',   N'user',   N'dbo',   N'table',   N'表',   NULL,   NULL  
       
     --为字段a1添加描述信息  
     EXECUTE   sp_addextendedproperty   N'MS_Description',   '姓名',   N'user',   N'dbo',   N'table',   N'表',   N'column',   N'a1'  
       
     --为字段a2添加描述信息  
     EXECUTE   sp_addextendedproperty   N'MS_Description',   '性别',   N'user',   N'dbo',   N'table',   N'表',   N'column',   N'a2'  
     --更新表中列a1的描述属性:  
     EXEC   sp_updateextendedproperty   'MS_Description','字段1','user',dbo,'table','表','column',a1  
       
     --删除表中列a1的描述属性:  
     EXEC   sp_dropextendedproperty   'MS_Description','user',dbo,'table','表','column',a1  
       
     --删除测试  
     drop   table   表  
      

  4.   

    接上,sql2005中稍有不同: Select o.name AS tableName, c.name AS columnName, p.[value] AS Description  
     FROM sys.extended_properties  p INNER JOIN  
           sysobjects o ON o.id = p.major_id INNER JOIN  
           syscolumns c ON p.major_id = c.id AND p.minor_id = c.colid  
     Where (p.name = 'MS_Description') AND (c.name = 'province') AND (o.name = 'ip_address')  
     orDER BY o.name 
      

  5.   


    --以下可以把所有列的说明全部改过来
    declare @schemaname varchar(100),@tablename varchar(100),@columnname varchar(100)
    declare @oldvalue varchar(100),@newvalue varchar(100)declare curcol cursor for
    select c.[name],b.[name],d.[name],cast(a.value as varchar(100))
    from sys.extended_properties a
    join sys.objects b on a.major_id = b.object_id
    join sys.schemas c on b.schema_id = c.schema_id
    join sys.columns d on a.major_id = d.object_id and a.minor_id = d.column_id
    where a.[name] = 'MS_Description' and cast(a.[value] as varchar(8000)) like '%产品%' and a.class = 1 and minor_id <> 0
    open curcol
    fetch next from curcol into @schemaname,@tablename,@columnname,@oldvalue
    while @@fetch_status = 0
    begin
    set @newvalue = replace(@oldvalue,'产品','商品')
    exec sp_updateextendedproperty 'MS_Description', @newvalue, 'SCHEMA', @schemaname, 'TABLE', @tablename, 'COLUMN', @columnname fetch next from curcol into @schemaname,@tablename,@columnname,@oldvalue
    end
    close curcol
    deallocate curcol