Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

MySQL DEFAULT 제약 조건이란? 테이블 생성 시 열에 기본값을 설정하는 방법

DEFAULT 제약 조건은 MySQL 테이블의 특정 열에 기본값(default value)을 설정할 때 사용됩니다. 이 제약 조건이 적용된 열에 데이터를 삽입할 때 값을 지정하지 않으면, 미리 정의해 둔 기본값이 자동으로 저장됩니다.

문법

DEFAULT default_value

여기서 default_value는 해당 열에 설정할 기본값을 의미합니다.

예제

아래 쿼리는 workers라는 테이블을 생성하면서 id 열에 기본값 1000을 할당하는 예시입니다.

mysql> Create table workers(Name Varchar(25), Id INT NOT NULL DEFAULT 1000);
Query OK, 0 rows affected (0.47 sec)

mysql> Insert into workers(Name, Id) values('Ram', 101);
Query OK, 1 row affected (0.04 sec)

mysql> Insert into workers(Name) values('Mohan');
Query OK, 1 row affected (0.10 sec)

mysql> Select * from Workers;

+-------+------+
| Name  | Id   |
+-------+------+
| Ram   | 101  |
| Mohan | 1000 |
+-------+------+

2 rows in set (0.00 sec)

위 결과를 보면, 'Ram'은 id 값으로 101을 직접 지정했지만, 'Mohan'은 id 값을 입력하지 않았기 때문에 설정된 기본값인 1000이 자동으로 저장된 것을 확인할 수 있습니다.

기존 테이블에 DEFAULT 제약 조건 추가하기

테이블 생성 시점뿐만 아니라, ALTER TABLE 문을 사용하면 이미 존재하는 테이블의 열에도 DEFAULT 제약 조건을 나중에 추가할 수 있습니다.

mysql> ALTER TABLE workers ALTER Id SET DEFAULT 2000;

DEFAULT 제약 조건 삭제하기

반대로 더 이상 기본값이 필요하지 않다면 다음과 같이 삭제할 수 있습니다.

mysql> ALTER TABLE workers ALTER Id DROP DEFAULT;

이처럼 DEFAULT 제약 조건을 활용하면 데이터 입력 시 누락되기 쉬운 값들을 일관성 있게 관리할 수 있어, 데이터 무결성 유지에 큰 도움이 됩니다.