MySQL

MySQL_FOREIGN KEY

ssmm95 2024. 9. 12. 15:36

외래키 (FOREIGN KEY) 제약 조건 : 두 테이블 사이의 관계를 선언함으로써 데이터의 무결성을 보장해 주는 역할

외개 키 관계를 설정하면 하나의 테이블이 다른 테이블에 의존하게 됨 

 

-제약 조건 : 데이터의 무결성을 지키기 위한 제한된 조건을 의미

특정 데이터를 입력할 때 무조건적으로 입력되는 것이 아닌, 어떠한 조건을 만족했을 때에 입력되도록 제약할 수 있음

특정데이터를 입력할 때 무조건 적으로 입력되는 것이 아니라 어떠한 조건을 만족했을 때 입력될 수 있도록 하는 것이다

 

위 사진에서는 usertbl에 jyp가 없어서 buytbl에 jyp 거 들어가서 오류

외래키 때문

 

MySQL은 데이터의 무결성을 위해서 다음의 6가지 제약 조건을 제공한다

1. PRIMARY KEY 

프라이머리키를 적용하는 열은 무조건 NOT NULL 이 들어가야함 

외래키와 연관성이 있음 

외래키는 프라이머리키로 선택한 열과 관계를 맺음

2. FORIGN KEY

3. UNIQUE

4. CHECK

5. DEFAULT 정의

6. NULL 값 허용

 

제약 조건을 설정하는 또 다른 방법은 이미 만들어진 테이블을 수정하는 ALTER TABLE 구문을 사용하는 것

DROP TABLE IF EXISTS usertbl;

CREATE TABLE usertbl

     (userID CHAR(8) NOT NULL,

      name VARCHAR(10) NOT NULL,

      birthYear INT NOT NULL);

 

ALTER TABLE usertbl

    ADD CONSTRAINT PK_userTBL_userID -- 제약 조건을 추가하자.

                                                                       추가할 제약 조건 이름은 PK_userTBL_userID

                                                                           ( PK_테이블이름_테이블열)

                                                                            

          PRIMARY KEY (userID); -- 주가할 제약 조건은 기본 키 제약 조건. 제약 조건을 설정할 열은 userID

 

 

'MySQL' 카테고리의 다른 글

MySQL_UNIQUE/CHECK/DEFAULT  (0) 2024.09.12
My_SQL_ UNION/ UNION ALL/ NOT IN/ IN  (1) 2024.09.12
MySQL_CROSS JOIN  (0) 2024.09.12
MySQL_OUTER JOIN  (0) 2024.09.12
MySQL_INNER JOIN  (0) 2024.09.11