zoukankan      html  css  js  c++  java
  • 如何获取指定表的列和数据类型

    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 ' and d.name='要查询的表名'
    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
    ORDER   BY   
    A.ID,A.COLORDER

  • 相关阅读:
    功能检查和降级
    蓄水池问题
    Linux删除大于/小于固定大小的文件等
    理解Faster-RCNN 中的Anchor
    【转】DBSCAN密度聚类算法
    ROC曲线和PR曲线
    LSTM比较RNN
    【转】ROI Pooling
    【转】VGG网络结构及参数
    面试知识点准备(各方面)
  • 原文地址:https://www.cnblogs.com/laogao/p/1910485.html
Copyright © 2011-2022 走看看