MYSQL 제약조건

Jaa-van·2023년 5월 5일
0
post-thumbnail

데이터가 결함없는 상태인 무결성을 지키기 위해 만들어진 개념이다

  • UNIQUE - 고유값이라는 것을 나타내는 조건
  • NULL - 비어잇는 제약조건
  • PRIMARY KEY - 기본 키 제약조건
    => 무조건 하나의 고유한 값을 보장하는 값
    중복된 데이터를 거를 수 있는 수단이 된

FOREIGN KEY - 외래 키 제약조건

=> 테이블 간의 연관 관계를 표현하는 값
1. 1:1 관계
        ex) 사용자는 1개의 사용자 정보를 가진다
2. 1:N 관계
        ex) 사용자는 여러개의 주문을 할 수 있다
3. N:M 관계
        ex) 여러명의 학생은 여러개의 학원을 다닐 수 있
CREATE TABLE 테이블명
  FOREIGN KEY (컬럼명) REFERENCES 참조_테이블명 (참조_컬럼명)
    ON DELETE [연계 참조 제약 조건]
    ON UPDATE [연계 참조 제약 조건]
);

@ 연계 참조 제약 조건

  • CASCADE - 참조하고 있는 객체와 같이 변경/삭제 된다
  • NO ACTION - 참조하고 있는 객체가 변경되어도 아무런 행위를 하지 않고 에러가 발생한다
  • SET NULL - 변경/삭제 될 경우 데이터를 NULL 로 변경한다
  • SET DEFAULT - 변경/삭제 될 경우 데이터를 기본값으로 변경한다

SELECT JOIN

SELECT p.postId, p.title, p.content, u.email
FROM Posts as p
JOIN Users as u 
    ON p.UserId = u.userId;

기존에 Posts 테이블과 Users 테이블이 관계를 맺고 있다면
UserId 와 userId 가 같은 상황의 user의 email 을 가져와 조회를 진행한다

@as => alias( 별칭 ) 으로 테이블을 간단하게 나타내기 위해 사용한다

0개의 댓글