MySQL에서 SHOW CREATE TABLE 문을 사용하면 현재 작업 중인 데이터베이스가 아닌 다른 데이터베이스에 저장된 특정 테이블에 적용된 제약 조건(constraint)은 물론, 해당 테이블에 관한 다양한 세부 정보까지 한 번에 확인할 수 있습니다.
기본 문법
SHOW CREATE TABLE db_name.table_name;
- table_name: 제약 조건을 확인하고자 하는 테이블의 이름입니다.
- db_name: 해당 테이블이 저장되어 있는 데이터베이스의 이름입니다.
사용 예시
다음 예시는 'mysql' 데이터베이스에 저장된 'arena'라는 테이블의 상세 정보를 조회하는 과정입니다.
mysql> SHOW CREATE TABLE mysql.arena\G *************************** 1. row *************************** Table: arena Create Table: CREATE TABLE `arena` ( `id` int(10) unsigned zerofill NOT NULL AUTO_INCREMENT, `Photo` blob, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1 1 row in set (0.00 sec)
결과 해석
위 결과 집합을 살펴보면, 'mysql' 데이터베이스에 저장된 'arena' 테이블의 'id' 컬럼에 PRIMARY KEY(기본 키) 제약 조건이 적용되어 있음을 확인할 수 있습니다.
SHOW CREATE TABLE 문은 실제 테이블 생성 구문을 그대로 출력해 주기 때문에, 기본 키뿐만 아니라 스토리지 엔진(InnoDB), AUTO_INCREMENT 값, 기본 문자셋(latin1) 등 테이블 구조와 관련된 모든 정보를 손쉽게 파악할 수 있다는 장점이 있습니다. 따라서 다른 데이터베이스에 있는 테이블의 구조나 제약 조건을 빠르게 점검해야 할 때 매우 유용하게 활용할 수 있습니다.