• Snippet取表字段说明和详细信息


    IF OBJECT_ID (N'dbo.GetDetails', N'IF') IS NOT NULL
        DROP FUNCTION dbo.GetDetails;
    GO
    create function dbo.GetDetails(@name nvarchar(200))
    RETURNS TABLE
    AS
    RETURN 
    (
    SELECT
    [表名]=case when a.colorder=1 then d.name else '' end,
    [表说明]=case when a.colorder=1 then isnull(f.value,'') 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 parent_obj=a.id 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.xusertype=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 sys.extended_properties g on a.id=g.major_id and a.colid=g.minor_id 
    left join sys.extended_properties f on d.id=f.major_id and f.minor_id=0
    where d.name=@name    --如果只查询指定表,加上此条件
    --order by a.id,a.colorder
    ) 
    go
     
    select  * from dbo.GetDetails('T_ParticipationOrganization')
    

      

     
    
    
    
    
    





  • 相关阅读:
    函数終探------匿名函数
    再探函数2---函数的嵌套与装饰器
    无需触摸芯片的触摸电路
    单芯片移动电源方案——1A同步升压5V--TP4351B
    HTML列表元素
    HTML表格元素
    HTML基本元素
    创建HTML5文档
    HTML5环境安装
    windows本地搭建https环境,tomcat使用https协议
  • 原文地址:https://www.cnblogs.com/underwing/p/3382401.html
Copyright © 2020-2023  润新知