MySQL

MySQL의 제약조건 Primary key "야 중복 값 입력하지 마라고"

우아개발자 2023. 11. 3.

MySQL의 제약조건에 대해서 알아볼게요. 이를 SQL에서는 Key라는 키워드를 사용하게 되는데요. 이에 대해서 조금 더 자세히 정리해 보겠습니다. 테이블에 관한 내용이니 초급자가 아니시라면 뒤로 가기 버튼을 눌러도 되지 않을까 싶네요.

Primary key

MySQL 데이터베이스의 제약조건

데이터베이스의 제약조건은 실제 데이터의 무결성을 증명하고자 사용하는 것인데요. 데이터베이스를 저장할 때 정상적이지 않은 부적절한 데이터가 들어오지 않도록 막기 위해서 여러 규칙입니다.

 

Primary  key의 특징과 예제

key는 '기본키'라고 해서 (primary key)라고 합니다. 테이블 당 하나만 가질 수 있으며 절대 중복을 허용하지 않습니다. 예를 들면 우리가 인스타그램이나 카카오를 접속할 때 id를 입력하고 들어가죠. 이런 플랫폼들은 대부분 id를 입력할 때 중복된 id가 있다면 "중복된 아이디입니다."라고 팝업창을 띄우며 다른 아이디로 변경하기를 추천하죠.

이때, 사용하는 것이 데이터베이스(SQL)에서 요구하는 primary key입니다.

1. Primary key 테이블 생성 

다시 한번, primary key는 중복값을 허용하지 않으며 null 값이 들어올 수 없는 구조를 가지고 있습니다. 하나의 예시를 만들어보도록 하겠습니다.

 

Primary key 테이블

primary key는 칼럼 옆에 붙여주는 것이 원칙입니다.

 

이렇게 테이블을 먼저 생성해 주고, 임의로 값을 넣어보도록 할게요.

Primary key-data

이렇게 값을 입력하게 되면 아래와 같이 출력되는 것을 볼 수 있는데요.

Primary key-error

primary key로 지정한 값을 똑같은 수로 바꿔준 후 저장을 하게 되면 아래와 같은 에러가 발생합니다.

 

"야, 너 student 테이블 값을 바꾼 것은 primary로 설정되어 있잖아 중복이잖아"

error code

 

이제 중복 값을 허용시키지 않을 때나 null 값을 허용시키고 싶지 않을 때 primary key를 작성하면 되겠죠?

'MySQL' 카테고리의 다른 글

MySQL Subquery (1) : Select 문에 Subquery를 적용하자  (0) 2023.11.05
MySQL 테이블 Table JOIN  (0) 2023.11.05
MySQL 테이블 생성하기  (0) 2023.10.30

댓글