[SQL] 제약 조건 ( Constraint )

728x90

 

□  제약 조건  ( Constraint )

  • NOT NULL
  • DEFAULT
  • UNIQUE
  • PRIMARY KEY
  • FOREIGN KEY
  • CHECK
  • INDEX

 

-  테이블에 들어갈 수 있는 데이터 유형을 제한하는 데 사용

-  데이터의 정확성과 신뢰성이 보장

 

제약 조건 설명
NOT NULL -  NULL 값 허용 안 함
DEFAULT -  기본값 설정  ( 값 지정 안 한 경우 )
UNIQUE -  열의 모든 값이 서로 달라야 함
PRIMARY KEY -  UNIQUE  +  NOT NULL
-  각 행을 고유하게 식별
-  테이블 당 하나만 존재
FOREIGN KEY -  하나의 테이블을 다른 테이블에 의존
CHECK -  조건 설정 후 부합하는지 확인 
INDEX -  빠른 데이터 생성/검색

 

키워드 설명
AUTO_INCREMENT  ( My SQL ) -  자동 증가 기능
-  기본 시작 값은 1이며 새 레코드마다 1씩 증가

 

ex)

MySQL

# DDL
CREATE TABLE Persons (
    Personid int NOT NULL AUTO_INCREMENT,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Age int,
    PRIMARY KEY (Personid)
);

# DML
INSERT INTO Persons (LastName, FirstName, Age) 
	VALUES ('Mimi', 'Kim', 25);

Oracle DB

# DDL
CREATE TABLE Persons (
    Personid int NOT NULL,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Age int,
    PRIMARY KEY (Personid)
);

CREATE SEQUENCE seq_person
MINVALUE 1
START WITH 1
INCREMENT BY 1
CACHE 10;

# DML
INSERT INTO Persons (Personid, LastName, FirstName, Age)
	VALUES (seq_person.nextval, 'Mimi', 'Kim', 25);

 

 

https://www.w3schools.com/sql/sql_constraints.asp

https://www.w3schools.com/mysql/mysql_autoincrement.asp

 

 

반응형