본문 바로가기

db/mssql

mssql 테이블 명세서 쿼리

반응형
mssql 테이블 명세서 (정의서)
테이블 명세서 쿼리, 테이블 정의서 쿼리 작성 내용입니다.

 

 

mssql 쿼리
  1. 테이블명세서 (정의서) 내용입니다.
  2. [테이블 설명], [칼럼명], [칼럼 COMMENT], [DATA TYPE], [길이], [소수점], [기본값], [NOT NULL여부], [PK 여부]
SELECT 
    T.NAME AS TABLE_NAME,              -- 테이블 명
    EP.VALUE AS TABLE_COMMENT,         -- 테이블 설명
    C.NAME AS COLUMN_NAME,             -- 컬럼명
    EPC.VALUE AS COLUMN_COMMENT,       -- 컬럼COMMENT
    TP.NAME AS DATA_TYPE,              -- DATA TYPE
    C.MAX_LENGTH AS LENGTH,            -- 길이
    C.SCALE AS SCALE,                  -- 소수점
    DC.DEFINITION AS DEFAULT_VALUE,    -- 기본값
    CASE C.IS_NULLABLE WHEN 1 THEN 'YES' ELSE 'NO' END AS IS_NULLABLE,  -- NOT NULL여부
    CASE WHEN PK.COLUMN_ID IS NOT NULL THEN 'YES' ELSE 'NO' END AS IS_PK -- PK 여부
FROM 
    SYS.TABLES T
    JOIN SYS.COLUMNS C ON T.OBJECT_ID = C.OBJECT_ID
    JOIN SYS.TYPES TP ON C.USER_TYPE_ID = TP.USER_TYPE_ID
    LEFT JOIN SYS.EXTENDED_PROPERTIES EP ON T.OBJECT_ID = EP.MAJOR_ID AND EP.MINOR_ID = 0
    LEFT JOIN SYS.EXTENDED_PROPERTIES EPC ON T.OBJECT_ID = EPC.MAJOR_ID AND C.COLUMN_ID = EPC.MINOR_ID
    LEFT JOIN SYS.DEFAULT_CONSTRAINTS DC ON C.DEFAULT_OBJECT_ID = DC.OBJECT_ID  -- 기본값 참조
    LEFT JOIN (
        SELECT 
            I.OBJECT_ID, IC.COLUMN_ID 
        FROM 
            SYS.INDEXES I 
            JOIN SYS.INDEX_COLUMNS IC ON I.OBJECT_ID = IC.OBJECT_ID AND I.INDEX_ID = IC.INDEX_ID 
        WHERE 
            I.IS_PRIMARY_KEY = 1
    ) PK ON C.OBJECT_ID = PK.OBJECT_ID AND C.COLUMN_ID = PK.COLUMN_ID
ORDER BY 
    T.NAME, C.COLUMN_ID;
  • TABLE_NAME: 테이블의 이름을 나타냅니다.
  • TABLE_COMMENT: 테이블에 대한 설명(확장 속성)을 가져옵니다.
  • COLUMN_NAME: 칼럼의 이름을 나타냅니다.
  • COLUMN_COMMENT: 칼럼에 대한 설명(확장 속성)을 가져옵니다.
  • DATA_TYPE: 칼럼의 데이터 타입을 나타냅니다.
  • LENGTH: 문자열 칼럼의 최대 길이를 나타냅니다.
  • SCALE: 숫자 칼럼의 소수점 이하 자릿수를 나타냅니다.
  • DEFAULT_VALUE: 칼럼의 기본값을 나타냅니다.
  • IS_NULLABLE: 칼럼이 NULL을 허용하는지 여부를 나타냅니다.
  • IS_PK: 해당 칼럼이 PRIMARY KEY인지 여부를 나타냅니다.

 

 

반응형

'db > mssql' 카테고리의 다른 글

MSSQL 버전 확인 하는 방법  (0) 2024.12.02
mssql 테이블 설명  (0) 2024.08.19
windows mssql on/off 자동 실행  (0) 2024.06.06
mssql server 설치(SQL Server 2022 설치), SSMS 설치  (0) 2024.04.03
mssql xml 파싱(mssql xml parsing)  (0) 2024.02.05