테이블을 생성할 때 특정 컬럼에 기본값(default value)이 정의되어 있다면, INSERT 문에서 'DEFAULT' 키워드를 사용하여 해당 컬럼에 미리 정의된 기본값을 자동으로 입력할 수 있습니다.
1. 기본값이 설정된 테이블 생성
먼저 'DOJ' 컬럼에 기본값 '2005-01-01'이 설정된 'employee' 테이블을 생성해 보겠습니다.
mysql> Create table employee(id int, name varchar(20), doj date DEFAULT '2005-01-01');
Query OK, 0 rows affected (0.09 sec)
2. DEFAULT 키워드로 데이터 삽입하기
이제 INSERT 문에서 DEFAULT 키워드를 사용하여 새로운 레코드를 추가합니다.
mysql> Insert into employee(id, name, doj) values(1, 'Aarav', DEFAULT);
Query OK, 1 row affected (0.03 sec)
3. 결과 확인
mysql> select * from employee;
+------+------------+---------------+
| id | name | doj |
+------+------------+---------------+
| 1 | Aarav | 2005-01-01 |
+------+------------+---------------+
1 row in set (0.00 sec)
결과 분석
위 쿼리 결과에서 확인할 수 있듯이, INSERT 문에서 DEFAULT 키워드를 사용하면 MySQL은 컬럼을 정의할 때 지정했던 기본값인 '2005-01-01'을 자동으로 삽입합니다.
이 방식은 컬럼마다 값을 직접 명시하지 않고도 사전에 정의된 값을 일관되게 유지하고 싶을 때 매우 유용합니다. 예를 들어 입사일처럼 대부분 동일한 값이 사용되는 경우 코드 작성량을 줄이고 데이터의 일관성도 함께 확보할 수 있습니다.