MySQL에서 뷰(View)는 가상 테이블(virtual table)의 일종으로, 하나 이상의 기본 테이블을 기반으로 만들어집니다. 따라서 뷰의 구조를 확인할 때도 일반 테이블의 구조를 조회하는 것과 동일한 방법을 사용할 수 있습니다.
즉, MySQL 테이블 구조를 확인할 때 사용하는 DESCRIBE 문을 그대로 뷰에 적용하면 됩니다. 문법은 다음과 같습니다.
문법(Syntax)
DESCRIBE view_name;
여기서 view_name은 구조를 확인하고자 하는 뷰의 이름입니다.
예제(Example)
예를 들어, 'Info'라는 이름의 뷰 구조를 확인하고 싶다면 아래와 같은 쿼리를 실행하면 됩니다.
mysql> DESCRIBE INFO; +---------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +---------+-------------+------+-----+---------+-------+ | ID | int(11) | YES | | NULL | | | NAME | varchar(20) | YES | | NULL | | | SUBJECT | varchar(20) | YES | | NULL | | | ADDRESS | varchar(20) | YES | | NULL | | +---------+-------------+------+-----+---------+-------+ 4 rows in set (0.02 sec)
결과 해석
위 결과 집합을 보면 각 필드(Field)의 데이터 타입(Type), NULL 허용 여부, 기본값(Default) 등의 정의가 기본 테이블(base table)과 완전히 동일함을 알 수 있습니다. 이는 뷰가 실제 데이터를 저장하지 않고 기본 테이블의 열 정의를 그대로 물려받는 가상 테이블이기 때문입니다.
참고로 DESCRIBE는 SHOW COLUMNS FROM view_name; 구문과 동일한 결과를 반환하며, MySQL Workbench와 같은 GUI 도구에서도 뷰 구조를 손쉽게 확인할 수 있습니다.