MySQL에서 ENUM 데이터 타입에 기본값을 지정하려면 DEFAULT 속성을 활용하면 됩니다. DEFAULT 속성을 사용하면 해당 ENUM 컬럼에 값이 명시적으로 지정되지 않았을 때 자동으로 기본값이 적용됩니다.
쉽게 말해, INSERT 문에서 해당 필드의 값을 생략하더라도 DEFAULT 뒤에 지정된 값이 자동으로 삽입됩니다. 다만 주의할 점은 DEFAULT 표현식에는 함수를 사용할 수 없다는 것이며, ENUM 데이터 타입의 기본값으로는 NULL과 빈 문자열('')도 허용됩니다.
기본값 설정 예제
아래 예제는 학생 정보를 저장하는 테이블을 생성하면서 'result' 컬럼에 기본값 'Fail'을 지정하는 과정을 보여줍니다.
mysql> Create table enum123(Rollno INT, Name Varchar(20), result ENUM('Pass','Fail') DEFAULT 'Fail');
Query OK, 0 rows affected (0.12 sec)
mysql> Insert into enum123(Rollno, Name) Values(25, 'Raman');
Query OK, 1 row affected (0.13 sec)위 INSERT 문에서는 'result' 컬럼에 아무런 값도 입력하지 않았습니다. 이 경우 MySQL은 DEFAULT로 지정된 값인 'Fail'을 자동으로 삽입합니다.
결과 확인
mysql> Select * from enum123; +---------+--------+--------+ | Rollno | Name | result | +---------+--------+--------+ | 25 | Raman | Fail | +---------+--------+--------+ 1 row in set (0.00 sec)
조회 결과에서 확인할 수 있듯이, 'result' 컬럼에 별도의 값을 넣지 않았음에도 기본값인 'Fail'이 저장된 것을 볼 수 있습니다. 이처럼 DEFAULT 속성을 활용하면 데이터 입력 시 누락되기 쉬운 필드에 일관된 값을 유지할 수 있어 데이터 무결성 관리에 도움이 됩니다.