--
        
        
          -------SQL SERVER ---------------
        
        
          
        
        
        
          --
        
        
          --- 获取用户表
        
        
          
        
        
          select
        
         id,name 
        
          from
        
         sysobjects 
        
          where
        
         xtype
        
          =
        
        
          '
        
        
          U
        
        
          '
        
        
          and
        
         name
        
          <>
        
        
          '
        
        
          dtproperties
        
        
          '
        
        
          order
        
        
          by
        
         name
        
        
          --
        
        
          -- 获取用户存储过程
        
        
          
        
        
          select
        
         id,name 
        
          from
        
         sysobjects 
        
          where
        
         xtype
        
          =
        
        
          '
        
        
          P
        
        
          '
        
        
          and
        
         name
        
          <>
        
        
          '
        
        
          dtproperties
        
        
          '
        
        
          order
        
        
          by
        
         name
        
        
          --
        
        
          - 获取用户视图
        
        
          
        
        
          select
        
         id,name 
        
          from
        
         sysobjects 
        
          where
        
         xtype
        
          =
        
        
          '
        
        
          V
        
        
          '
        
        
          and
        
         name
        
          <>
        
        
          '
        
        
          dtproperties
        
        
          '
        
        
          order
        
        
          by
        
         name
        
        
        
        
        
          declare
        
        
          @TbName
        
        
          nvarchar
        
        (
        
          60
        
        )
        
        
          go
        
        
        
          set
        
        
          @TbName
        
        
          =
        
        
          '
        
        
          tbname
        
        
          '
        
        
        
          --
        
        
          ---获取用户表具体结构
        
        
          
        
        
          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
        
          =
        
        
          @TbName
        
        
        
        
          ORDER
        
        
          BY
        
        
        A.ID,A.COLORDER 
      
    
      
      
    
  


 
					 
					