[sql] SQL 테이블 생성 시 제약 조건 설정하기

SQL 데이터베이스에서 테이블을 생성할 때, 제약 조건을 설정하여 데이터의 무결성을 유지할 수 있습니다. 제약 조건은 테이블에 삽입되는 데이터의 유효성을 검사하고, 특정 규칙에 맞지 않는 데이터를 거부하거나 변경할 수 있는 기능을 제공합니다. 이번 포스트에서는 SQL 테이블 생성 시 어떻게 제약 조건을 설정하는지 알아보겠습니다.

Primary Key 제약 조건 설정하기

Primary Key는 테이블의 각 레코드를 고유하게 식별하는 역할을 합니다. Primary Key는 테이블에 존재하는 하나 이상의 열(컬럼)에 설정할 수 있습니다. Primary Key를 설정함으로써 중복 데이터를 방지하고 데이터를 빠르게 검색하는 데 도움을 줄 수 있습니다.

CREATE TABLE 테이블명 (
    id INT PRIMARY KEY,
    name VARCHAR(50)
);

위의 예제에서는 id 열을 Primary Key로 설정하고 있습니다.

Unique 제약 조건 설정하기

Unique 제약 조건은 해당 열의 모든 값이 고유하도록 강제합니다. Primary Key와 유사하지만, Primary Key는 null 값을 허용하지 않지만 Unique는 null 값을 허용할 수 있습니다.

CREATE TABLE 테이블명 (
    id INT UNIQUE,
    name VARCHAR(50)
);

위의 예제에서는 id 열을 Unique로 설정하고 있습니다.

Foreign Key 제약 조건 설정하기

Foreign Key 제약 조건은 다른 테이블의 Primary Key와 관계를 맺는 역할을 합니다. 이를 통해 데이터의 무결성을 유지하고 데이터간의 관계를 정의할 수 있습니다.

CREATE TABLE 테이블명1 (
    id INT PRIMARY KEY,
    name VARCHAR(50)
);

CREATE TABLE 테이블명2 (
    id INT,
    테이블명1_id INT,
    name VARCHAR(50),
    FOREIGN KEY (테이블명1_id) REFERENCES 테이블명1(id)
);

위의 예제에서는 테이블명2 테이블에서 테이블명1_id 열이 테이블명1 테이블의 id 열과 관계를 맺도록 설정하고 있습니다.

위에서는 Primary Key, Unique, Foreign Key 제약 조건의 예시만을 들었지만, SQL에서는 다양한 제약 조건을 설정할 수 있습니다. 이를 통해 데이터베이스의 데이터 무결성을 보장하고, 데이터의 일관성을 유지할 수 있습니다.

더 자세한 내용은 다음 참고 자료를 확인해보세요.