[sql] SQL 테이블 생성 시 테이블 데이터 목록 조회 설정하기

SQL을 사용하여 테이블을 생성할 때, 테이블 데이터의 목록 조회를 설정할 수 있습니다. 이 설정을 통해 생성된 테이블에 대한 데이터 조회 시 원하는 조건에 따라 목록을 조회할 수 있습니다. 이번 글에서는 SQL 테이블 생성 시 테이블 데이터 목록 조회 설정하는 방법에 대해 알아보겠습니다.

CREATE TABLE 문과 데이터 조회 설정

SQL에서 테이블을 생성하는 CREATE TABLE 문을 사용하여 테이블을 생성할 수 있습니다. 이때, 데이터 조회 설정은 CREATE TABLE 문의 CONSTRAINT를 통해 설정됩니다.

CREATE TABLE 테이블명 (
   컬럼1 데이터타입,
   ...
   컬럼n 데이터타입,
   CONSTRAINT 조건명 조건식
);

데이터 조회 설정 옵션

테이블 데이터 목록 조회 설정에는 다양한 옵션을 사용할 수 있습니다. 몇 가지 주요한 옵션에 대해 알아보겠습니다.

1. CHECK 제약 조건

CHECK 제약 조건은 특정 컬럼의 값이 특정 조건을 만족해야만 데이터가 테이블에 추가되도록 설정하는 제약 조건입니다. 이는 WHERE 절에서 사용되는 조건과 비슷한 형태로 작성할 수 있습니다.

CREATE TABLE 테이블명 (
   컬럼1 데이터타입,
   ...
   컬럼n 데이터타입,
   CONSTRAINT 조건명 CHECK (조건식)
);

2. UNIQUE 제약 조건

UNIQUE 제약 조건은 특정 컬럼의 값이 중복되지 않도록 설정하는 제약 조건입니다. 이는 각 행의 값이 다른 모든 행의 값과 중복되지 않아야 합니다.

CREATE TABLE 테이블명 (
   컬럼1 데이터타입,
   ...
   컬럼n 데이터타입,
   CONSTRAINT 조건명 UNIQUE (컬럼1, ..., 컬럼n)
);

3. PRIMARY KEY 제약 조건

PRIMARY KEY 제약 조건은 특정 컬럼 또는 컬럼의 조합을 기준으로 테이블의 각 행을 고유하게 식별하는 제약 조건입니다.

CREATE TABLE 테이블명 (
   컬럼1 데이터타입,
   ...
   컬럼n 데이터타입,
   CONSTRAINT 조건명 PRIMARY KEY (컬럼1, ..., 컬럼n)
);

데이터 조회 설정 예제

이제 몇 가지 예제를 통해 데이터 조회 설정을 적용한 테이블을 생성해보겠습니다.

-- 나이는 양수만 입력 가능하도록 설정
CREATE TABLE 회원 (
   회원ID INT PRIMARY KEY,
   이름 VARCHAR(20),
   나이 INT CHECK (나이 > 0),
   이메일 VARCHAR(50) UNIQUE
);

-- 주문번호는 중복되지 않도록 설정
CREATE TABLE 주문 (
   주문번호 INT PRIMARY KEY,
   주문일자 DATE,
   상품명 VARCHAR(50),
   사용자ID INT UNIQUE
);

위의 예제에서는 회원 테이블의 나이 컬럼에 CHECK 제약 조건을 설정하여 양수 값만 입력 가능하도록 하였습니다. 또한 이메일 컬럼에 UNIQUE 제약 조건을 설정하여 중복된 값이 입력되지 않도록 하였습니다.

주문 테이블에서는 주문번호 컬럼에 PRIMARY KEY 제약 조건을 설정하여 중복된 주문 번호가 입력되지 않도록 하였습니다. 또한 사용자ID 컬럼에 UNIQUE 제약 조건을 설정하여 중복된 값이 입력되지 않도록 하였습니다.

참고 자료