• 获取sqlserver数据库字段所有信息


    SELECT 
      表名   = CASE a.colorder WHEN 1 THEN c.name ELSE '' END, 
      序     = a.colorder, 
      字段名 = a.name, 
      标识   = CASE COLUMNPROPERTY(a.id,a.name,'IsIdentity') WHEN 1 THEN '√' ELSE '' END, 
      主键   = CASE 
        WHEN EXISTS ( 
          SELECT * 
          FROM sysobjects 
          WHERE xtype='PK' AND name IN ( 
            SELECT name 
            FROM sysindexes 
            WHERE id=a.id AND indid IN ( 
              SELECT indid 
              FROM sysindexkeys 
              WHERE id=a.id AND colid IN ( 
                SELECT colid 
                FROM syscolumns 
                WHERE id=a.id AND name=a.name 
              ) 
            ) 
          ) 
        ) 
        THEN '√' 
        ELSE '' 
      END, 
      类型   = b.name, 
      字节数 = a.length, 
      长度   = COLUMNPROPERTY(a.id,a.name,'Precision'), 
      小数   = CASE ISNULL(COLUMNPROPERTY(a.id,a.name,'Scale'),0) 
        WHEN 0 THEN '' 
        ELSE CAST(COLUMNPROPERTY(a.id,a.name,'Scale') AS VARCHAR) 
      END, 
      允许空 = CASE a.isnullable WHEN 1 THEN '√' ELSE '' END, 
      默认值 = ISNULL(d.[text],''), 
      说明   = ISNULL(e.[value],'') 
    FROM syscolumns a 
      LEFT  JOIN systypes      b ON a.xtype=b.xusertype 
      INNER JOIN sysobjects    c ON a.id=c.id AND c.xtype='U' AND c.name<>'dtproperties' 
      LEFT  JOIN syscomments   d ON a.cdefault=d.id 
      LEFT  JOIN sys.extended_properties e ON   a.id= e.major_id AND a.colid = e.minor_id
    ORDER BY c.name, a.colorder
    

      

  • 相关阅读:
    sys.argv
    webbrowser
    2014年11月26日(程序员的加班)
    下一站红灯
    Java基础知识总结(超级经典)
    JAVA的三个开发方向
    2014年11月23日
    大学,一切才刚刚开始
    XML学习总结
    C# 文件重命名
  • 原文地址:https://www.cnblogs.com/beijing-Bob/p/4894795.html
Copyright © 2020-2023  润新知