👉 테이블 구조 조회 쿼리
SELECT *
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = '테이블 이름'
;
👉 결과 해석 : 컬럼의 의미
- 아래 같은 컬럼들이 출력됨

- 각 컬럼별 의미
- TABLE_CATALOG
- 테이블이 속한 카탈로그(데이터베이스 시스템에 따라 다름)
- TABLE_SCHEMA
- 테이블이 속한 스키마(데이터베이스 이름과 같을 수 있음)
- TABLE_NAME
- COLUMN_NAME
- ORDINAL_POSITION
- COLUMN_DEFAULT
- 필드의 기본값
- 특정 값을 지정하지 않았을 때 사용되는 값
- IS_NULLABLE
- 필드가 NULL 값을 허용하는지 여부 ('YES' 또는 'NO')
- DATA_TYPE
- 컬럼의 데이터 타입만 표시
- 예시 : VARCHAR
- CHARACTER_MAXIMUM_LENGTH
- 문자형 필드의 최대 길이
- 예를 들어, VARCHAR(255)라면 255가 이 값
- CHARACTER_OCTET_LENGTH
- 문자형 필드가 사용하는 최대 바이트 수
- 이 값은 문자 인코딩에 따라 CHARACTER_MAXIMUM_LENGTH와 다를 수 있음
- NUMERIC_PRECISION
- NUMERIC_SCALE
- DATETIME_PRECISION
- CHARACTER_SET_NAME
- 필드에 사용된 문자 세트
- 예시 : utf8, latin1
- COLLATION_NAME
- COLUMN_TYPE
- 컬럼의 데이터 타입과 길이/크기
- 예시 : VARCHAR(255)
- COLUMN_KEY
- 인덱스 정보
- 'PRI'는 기본 키(primary key), 'UNI'는 고유 키(unique key), 'MUL'은 인덱스가 있음을 의미
- EXTRA
- 해당 필드에 대한 추가 정보
- 예를 들어, auto_increment가 이 값에 포함될 수 있음
- PRIVILEGES
- COLUMN_COMMENT
- IS_GENERATED
- 해당 필드가 생성된 컬럼인지 여부
- 생성된 컬럼이란 사용자가 직접 입력하는 데이터가 아니라 다른 컬럼의 데이터를 기반으로 계산되거나 변환되어 자동으로 생성되는 컬럼을 의미
- 예를 들어, 특정 테이블에 '생성일'과 '수정일' 컬럼은 사용자가 직접 값을 입력하지 않아도 데이터베이스 시스템에 의해 자동으로 생성되고 관리됨
- 이 컬럼은 이러한 생성된 컬럼의 존재 여부를 나타내며, 이 값이 'YES'라면 해당 필드는 사용자가 아닌 시스템에 의해 자동 생성되는 값이라는 것을 의미
- GENERATION_EXPRESSION
- 생성된 컬럼(generated column)의 경우, 이 컬럼을 생성하기 위한 표현식을 나타냄