티스토리 뷰

SELECT A.TABLE_NAME, 

             C.VALUE AS TABLE_COMMENT,

             A.COLUMN_NAME, A.DATA_TYPE, 

             ISNULL(CAST(A.CHARACTER_MAXIMUM_LENGTH AS VARCHAR),  

                        CAST(A.NUMERIC_PRECISION AS VARCHAR) + ',' +

                        CAST(A.NUMERIC_SCALE AS VARCHAR)) AS COLUMN_LENGTH,

             A.COLUMN_DEFAULT, A.IS_NULLABLE,

             B.VALUE AS COLUM_COMMENT

FROM INFORMATION_SCHEMA.COLUMNS A LEFT OUTER JOIN

                                                                      SYS.EXTENDED_PROPERTIES B

                                                                 ON B.major_id = object_id(A.TABLE_NAME) 

                                                                  AND A.ORDINAL_POSITION = B.minor_id

                                                                LEFT OUTER JOIN

                                                                     (SELECT object_id(objname) AS TABLE_ID,

                                                                                   VALUE

                                                                      FROM ::FN_LISTEXTENDEDPROPERTY

                                                                            (NULL, 'User','dbo','table',

                                                                             NULL, NULL, NULL)

                                                                       ) C

                                                                 ON object_id(A.TABLE_NAME) = C.TABLE_ID

WHERE A.TABLE_NAME = '테이블명'

ORDER BY A.TABLE_NAME, A.ORDINAL_POSITION 


위에 표시해둔 테이블명만 바꿔서 사용하면 됩니다.

컬럼 코멘트를 보려고 사용해봤는데 정작 코멘트가 적혀있지 않아서 멘붕이네요..

(위 쿼리는 SQL Server 2008 R2 버전에서 작성되었습니다.)



728x90