ABOUT ME

-

오늘 방문자
-
어제 방문자
-
전체
-
  • [MSSQL] 테이블 정의서 작성 쿼리
    DB 2018. 9. 14. 00:05
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    SELECT A.COLUMN_NAME as 컬럼명 
     
    , A.DATA_TYPE as 데이터타입 
     
    ,  CASE  WHEN  
             A.CHARACTER_MAXIMUM_LENGTH IS NULL 
             THEN  ISNULL (A.NUMERIC_PRECISION, ''
             ELSE  A.CHARACTER_MAXIMUM_LENGTH  
        END AS [길이] 
     
    , CASE 
           WHEN 
           A.COLUMN_DEFAULT is null 
           THEN '' 
           ELSE A.COLUMN_DEFAULT 
      END AS [기본값]
     
    , CASE WHEN 
           C.TABLE_NAME IS NOT NULL 
           THEN 'PK' 
           ELSE ''
      END PK 
     
    '      ' as 컬럼설명 
     
    , CASE 
           WHEN B.DESCRIPTION IS NULL 
           THEN ''
           ELSE B.DESCRIPTION 
      END AS 기타정보 
     
    ,CASE 
          WHEN A.IS_NULLABLE = 'YES' 
          THEN 'YES' 
          ELSE 'NO' 
    END AS IS_NULLABLE  
     
    FROM INFORMATION_SCHEMA.COLUMNS A  
     
    LEFT OUTER JOIN (SELECT a.object_id AS TABLE_ID,  
                            a.name AS TABLE_NAME, b.name AS COLUMN_NAME,  
                            b.column_id AS COLUMN_ID, c.value AS DESCRIPTION 
                      FROM sys.objects a 
                      LEFT JOIN sys.columns b ON a.object_id=b.object_id 
                      LEFT JOIN sys.extended_properties c ON  (a.object_id=c.major_id AND b.column_id=c.minor_id) 
                    ) B  
    ON A.TABLE_NAME = B.TABLE_NAME  
    AND A.COLUMN_NAME = B.COLUMN_NAME 
     
    LEFT OUTER JOIN  
      INFORMATION_SCHEMA.KEY_COLUMN_USAGE C 
      ON A.TABLE_NAME = C.TABLE_NAME AND A.COLUMN_NAME = C.COLUMN_NAME 
     
    WHERE A.TABLE_NAME ='테이블명' 
     
     
     
    cs


    'DB' 카테고리의 다른 글

    varchar nvarchar 차이점  (0) 2018.09.14
    WITH (NOLOCK)  (0) 2018.09.14
    [MariaDB] 버전확인  (0) 2018.09.04
    강제로 인덱스 태우기, 인덱스 무시하기  (0) 2018.08.25
    MyBatis 다중쿼리 사용  (1) 2018.08.17

    댓글

Designed by Tistory.