일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- Primary key(기본 키)
- 스트레스툴
- HTML 태그
- node.js
- SMS sandbox
- html tag
- HTML
- PostgreSQL CAST
- sms 휴대폰 인증
- Foreign Key (외래 키)
- 자바
- sns 샌드박스 종료
- node.js ec2 ip접속
- 이것이 자바다
- COALESCE함수
- Apache ab
- filezilla
- sql 데이터 삽입
- aws sdk v3
- EC2
- Apache Benchmark
- node.js ec2
- npm 글로벌 설치 삭제 했는데 실행됨
- sms 샌드박스
- Java
- AWS SDK for JavaScript v3
- npm 전역 설치 삭제
- sql 데이터 추가
- ab 벤치마크
- node.js ec2 배포
- Today
- Total
망각에 재주 있는 나를 위해 기록하는 곳.
[DB] Primary key(기본 키), Foreign key(외래 키) 본문
Primary key(기본 키)와 Foreign key(외래 키)는 데이터베이스에서 데이터의 정확성과 일관성을 유지하기 위해 사용된다.
Primary key(기본 키)
Primary Key는 관계형 데이터베이스에서 각 레코드(행)를 고유하게 식별하는 역할을 하는 필드(열).
각 행은 오직 하나의 Primary Key 값을 가질 수 있으며, 이 Primary Key 값은 중복되지 않아야함.
Primary Key는 해당 테이블에서 유일한 식별자 역할을 수행하며, 테이블의 각 행에는 반드시 Primary Key 값이 있어야함.
일반적으로 Primary Key는 테이블에서 자동으로 생성되는 숫자(예를들어 MySQL: AUTO_INCREMENT, PostgreSQL: SERIAL) 또는 고유한 식별자(UUID, GUID 등)로 설정됨. 예를 들어, 사용자 테이블의 경우 사용자 ID가 Primary Key로 설정될 수 있음.
이를 통해 각 사용자는 고유한 ID를 가지고 있으며, 이 ID를 사용하여 사용자를 식별할 수 있음.
기본 키의 역할:
- 행을 고유하게 식별하여 중복을 방지
- 데이터베이스에서 레코드를 빠르게 검색하고 연결
- 외래 키(Foreign Key)와의 관계를 설정하여 테이블 간의 관계를 구성
Foreign Key (외래 키)
Foreign Key(외래 키)는 관계형 데이터베이스에서 두 테이블 간의 관계를 구성하는데 사용되는 필드(열).
Foreign Key는 다른 테이블의 기본 키와 관련이 있으며, 다른 테이블의 Primary Key 값을 참조하는 역할을 함.
간단히 말해, Foreign Key는 한 테이블의 데이터가 다른 테이블의 특정 데이터와 연결되어 있음을 나타냄. 이는 데이터베이스 간에 관계를 설정하고 데이터 간의 무결성을 유지하는 데 사용됨.
예를 들어, 사용자와 주문 정보를 저장하는 두 개의 테이블이 있다고 가정하면, 이 경우 주문 정보 테이블에서 사용자의 ID를 Foreign Key로 사용할 수 있음. 이 Foreign Key는 주문 정보 테이블의 각 주문이 특정 사용자와 연결되어 있음을 나타냄.
외래 키의 역할:
- 다른 테이블의 행과의 관계를 설정하여 데이터를 연결
- 데이터 무결성을 유지하고, 연결된 데이터가 일관되고 정확하게 유지될 수 있도록 함
- JOIN 작업을 통해 두 테이블의 데이터를 결합하여 조회하거나 수정하는 데 사용됨
Foreign Key는 해당 테이블에 있는 Primary Key를 참조하므로, 참조하는 테이블의 값이 변경되거나 삭제되었을 때 이를 처리하는 방법을 정확히 설정해야 함. 이것을 위해 ON DELETE 및 ON UPDATE와 같은 제약 조건이 사용됨.
예를 들어, "CASCADE" 옵션을 사용하면 Foreign Key를 참조하는 값이 삭제되면 해당 Foreign Key를 사용하는 모든 행도 함께 삭제됨.
'DB' 카테고리의 다른 글
[SQL] 데이터 삽입하기 (INSERT INTO) (0) | 2024.03.28 |
---|---|
[SQL] Constraint(제약조건) (0) | 2024.03.27 |
그룹 함수(Group Function) (0) | 2022.03.20 |
서브쿼리 (Sub-Query), 집합 연산자(Set Operator) (0) | 2022.03.20 |
DDL, DML, DCL, TCL (0) | 2022.03.20 |