• 用Sql语句生成Sqlserver数据字典


     

    用Sql语句生成Sqlserver数据字典 
    SELECT  表名=case when a.colorder=1 then d.name else '' end
     
    --字段序号=a.colorder, 
     字段名=a.name, 
     
    --标识=case when COLUMNPROPERTY( a.id,a.name,'IsIdentity')=1 then '√'else '' end, 
     /*主键=case when exists(SELECT 1 FROM sysobjects where xtype='PK' and name 
       in (  SELECT name FROM sysindexes WHERE indid 
        in(   SELECT indid FROM sysindexkeys WHERE id = a.id AND colid=a.colid  ))) 
         then '√' else '' end, 
     
    */

     类型
    =b.name, 
     
    --占用字节数=a.length, 
     长度=COLUMNPROPERTY(a.id,a.name,'PRECISION'), 
     小数位数
    =isnull(COLUMNPROPERTY(a.id,a.name,'Scale'),0), 
     允许空
    =case when a.isnullable=1 then ''else '' end
     默认值
    =isnull(e.text,''), 
     字段说明
    =isnull(g.[value],'')
     
    FROM syscolumns a left join systypes b on a.xtype=b.xusertype inner join sysobjects d on a.id=d.id  
       
    and d.xtype='U' and  d.name<>'dtproperties' 
       
    left join syscomments e on a.cdefault=e.id left join sysproperties g on a.id=g.id 
       
    and a.colid=g.smallid  
       
    order by a.id,a.colorder






    SELECT  表名=case when a.colorder=1 then d.name else '' end,
     --字段序号=a.colorder,
     字段名=a.name,
     --标识=case when COLUMNPROPERTY( a.id,a.name,'IsIdentity')=1 then '√'else '' end,
     /*主键=case when exists(SELECT 1 FROM sysobjects where xtype='PK' and name
       in (  SELECT name FROM sysindexes WHERE indid
        in(   SELECT indid FROM sysindexkeys WHERE id = a.id AND colid=a.colid  )))
         then '√' else '' end,
     */
     类型=b.name,
     --占用字节数=a.length,
     长度=COLUMNPROPERTY(a.id,a.name,'PRECISION'),
     小数位数=isnull(COLUMNPROPERTY(a.id,a.name,'Scale'),0),
     允许空=case when a.isnullable=1 then '√'else '' end,
     默认值=isnull(e.text,''),
     字段说明=isnull(g.[value],'')
     FROM syscolumns a left join systypes b on a.xtype=b.xusertype inner join sysobjects d on a.id=d.id 
       and d.xtype='U' and  d.name<>'dtproperties'
       left join syscomments e on a.cdefault=e.id left join sysproperties g on a.id=g.id
       and a.colid=g.smallid 
       order by a.id,a.colorder

  • 相关阅读:
    restart xinetd
    Hello World——Linux汇编
    C++箴言:理解inline化的介入和排除
    网上找来的不错的Debian sources.list
    C/C++中static变量和static函数的用法
    Inline内联函数的总结贴
    C++箴言:理解inline化的介入和排除
    Hello World——Linux汇编
    网上找来的不错的Debian sources.list
    C/C++中static变量和static函数的用法
  • 原文地址:https://www.cnblogs.com/chengulv/p/257996.html
Copyright © 2020-2023  润新知