[sql] 열거형 데이터 타입 (enum)
SQL 데이터베이스에서는 열거형 데이터 타입 (ENUM)을 사용하여 특정 값들의 집합을 정의할 수 있습니다. 열거형은 데이터베이스 테이블의 컬럼으로 사용되며, 정의된 값들 중에서 하나를 선택하여 저장할 수 있습니다. 이는 데이터 무결성을 유지하고, 사용자가 잘못된 값을 입력하는 것을 방지하는 데 유용합니다.
열거형 정의하기
열거형을 정의하려면 CREATE TYPE 문을 사용합니다. 아래는 간단한 예제입니다.
CREATE TYPE GenderEnum AS ENUM ('Male', 'Female', 'Other');
위의 예제에서는 GenderEnum
이라는 열거형을 생성하고, ‘Male’, ‘Female’, ‘Other’라는 3가지 값을 가지도록 정의하였습니다.
열거형 컬럼 생성하기
정의된 열거형을 사용하여 테이블 컬럼을 생성할 수 있습니다. 아래는 예제입니다.
CREATE TABLE User (
id INT,
name VARCHAR(50),
gender GenderEnum
);
위의 예제에서는 User
테이블에 gender
컬럼을 추가하였습니다. 이 컬럼은 GenderEnum
열거형의 값 중 하나를 가질 수 있습니다.
열거형 값 사용하기
열거형을 사용하여 데이터를 조회하거나 저장할 때는 열거형의 정의된 값들 중에서 선택하여 사용합니다. 예를 들어, 성별이 ‘Male’인 사용자를 조회하려면 다음과 같이 쿼리를 작성할 수 있습니다.
SELECT * FROM User WHERE gender = 'Male';
주의사항
- 열거형은 정수 또는 문자열 값을 가질 수 있습니다.
- 열거형 값은 대소문자를 구분합니다. ‘Male’과 ‘male’은 다른 값입니다.
- 열거형 값은 정의된 값 중 하나를 선택해야 합니다. 열거형에 정의되지 않은 값을 저장하려고 하면 오류가 발생합니다.