[sql] SQL 테이블 생성 시 기본값 설정하기

SQL을 사용하여 테이블을 생성할 때, 특정 컬럼에 기본값을 설정할 수 있습니다. 이 기본값은 해당 컬럼이 데이터가 입력되지 않았을 때 사용되며, 별도로 값을 설정하지 않은 경우 자동으로 적용됩니다. 이번 블로그 포스트에서는 SQL 테이블 생성 시 기본값을 설정하는 방법을 알아보겠습니다.

기본값 설정 구문

SQL 테이블 생성 시 기본값은 DEFAULT 키워드를 사용하여 설정할 수 있습니다. 기본값은 해당 컬럼의 데이터 타입과 일치해야 합니다. 아래는 테이블 생성 구문에서 기본값을 설정하는 예제입니다.

CREATE TABLE 테이블명 (
    컬럼명 데이터타입 DEFAULT 기본값
);

위 예제에서 테이블명은 생성할 테이블의 이름, 컬럼명은 기본값을 설정할 컬럼의 이름, 데이터타입은 해당 컬럼의 데이터 타입, 기본값은 설정할 기본값을 의미합니다.

예제

다음은 users라는 테이블을 생성하고, email 컬럼에 unknown@example.com을 기본값으로 설정하는 예제입니다.

CREATE TABLE users (
    id INT PRIMARY KEY,
    name VARCHAR(50) NOT NULL,
    email VARCHAR(100) DEFAULT 'unknown@example.com'
);

위 예제에서 email 컬럼은 VARCHAR(100) 데이터 타입으로 정의되고, 기본값으로 unknown@example.com이 설정되었습니다. 이렇게 설정된 경우, email 컬럼에 데이터를 입력하지 않으면 기본값이 자동으로 설정됩니다.

기본값 확인하기

기본값이 정상적으로 설정되었는지 확인하기 위해 SELECT문을 사용할 수 있습니다. 아래 예제는 users 테이블의 데이터를 조회하고, email 컬럼이 기본값인 경우 default라는 문자열로 출력하는 예제입니다.

SELECT id, name, CASE WHEN email = 'unknown@example.com' THEN 'default' ELSE email END AS email
FROM users;

위 예제에서 CASE WHEN 구문을 사용하여 email 컬럼이 기본값인 경우 default로 출력되도록 설정하였습니다.

결론

SQL을 사용하여 테이블을 생성할 때, 기본값을 설정하는 방법을 알아보았습니다. 기본값을 설정함으로써 데이터를 입력하지 않은 경우에도 원하는 값을 자동으로 설정할 수 있습니다. 기본값은 데이터 타입과 일치하도록 정확히 설정해야 하며, DEFAULT 키워드를 사용하여 구문에 적용할 수 있습니다.