기타

[MSSQL] 태이블 설명(COMMENT) 보기

마샤와 곰 2021. 9. 3. 13:27

 

아래 쿼리를 실행하면 됩니다.

DECLARE @TABLE_NAME NVARCHAR(50) = '원하는테이블명';
SELECT D.COLORDER                AS COLUMN_IDX            -- 컬럼 인덱스
     , D.NAME                    AS COLUMN_NAME            -- 컬럼이름
     , E.VALUE                    AS COLUMN_DESCRIPTION    -- 컬럼 설명
     , F.DATA_TYPE                AS TYPE                    -- 컬럼 종류
     , F.CHARACTER_OCTET_LENGTH    AS LENGTH                -- 컬럼 데이터 허용 길이
     , F.IS_NULLABLE            AS IS_NULLABLE            -- 널 허용 여부
  FROM SYSOBJECTS A WITH (NOLOCK)
  INNER JOIN SYSUSERS B WITH (NOLOCK)        ON A.UID = B.UID
  INNER JOIN SYSCOLUMNS D WITH (NOLOCK)        ON D.ID = A.ID
  INNER JOIN INFORMATION_SCHEMA.COLUMNS F WITH (NOLOCK)
     ON A.NAME = F.TABLE_NAME
    AND D.NAME = F.COLUMN_NAME
   LEFT OUTER JOIN SYS.EXTENDED_PROPERTIES C WITH (NOLOCK)
     ON C.MAJOR_ID = A.ID
    AND C.MINOR_ID = 0
    AND C.NAME = 'MS_Description'
   LEFT OUTER JOIN SYS.EXTENDED_PROPERTIES E WITH (NOLOCK)
     ON E.MAJOR_ID = D.ID
    AND E.MINOR_ID = D.COLID
    AND E.NAME = 'MS_Description'  
  WHERE 1=1
    AND A.TYPE = 'U'
    AND A.NAME = @TABLE_NAME
  ORDER BY D.COLORDER
반응형