Database 구성 요소
1. Database
- 모든 관련 데이터 및 정보를 보관하는 최상위 컨테이너
- 구성 : 여러 개의 테이블, 관계 및 기타 데이터베이스 개체
2. Table
- 행과 열로 구성된 관련 데이터의 모음
- 각 행은 Tuple를 나타내고 각 열은 Attribute의 속성(필드)
- 데이터가 저장되고 데이터베이스 내에서 구조화되는 위치
3. Attribute
- 필드 또는 열이라고도 하는 속성
- 테이블에 표시된 엔티티와 관련된 특정 정보 또는 특성
- 저장될 수 있는 데이터 유형(예: 텍스트, 숫자, 날짜)을 정의하고 테이블에 저장된 정보의 의미 있는 표현을 제공
- 테이블의 각 열은 속성에 해당하며 각 튜플에는 이러한 속성에 대한 값이 포함
4. Tuple
- 데이터베이스 테이블의 단일 행 데이터.
- 특정 엔티티 또는 인스턴스에 대한 전체 정보 집합을
- 각 튜플에는 테이블에 대해 정의된 속성(열)에 해당하는 값이 포함
- 튜플(tuple)은 테이블의 단일 레코드를 고유하게 식별하는 속성 값의 집합
Key in Database
EmployeeID | FirstName | LastName | DepartmentID | Salary |
1 | John | Doe | 101 | 50000.00 |
2 | Jane | Smith | 102 | 60000.00 |
3 | Alex | Johnson | 101 | 55000.00 |
4 | Emily | Brown | 103 | 48000.00 |
Primary Key
- 기본 키는 테이블의 각 레코드(행)에 대한 고유 식별자
- 데이터 무결성을 보장하고 테이블 간의 관계를 설정
- "EmployeeID" 필드 = 기본 키 역할
Candidate Key
- 후보 키는 기본 키로 선택될 수 있는 하나 이상의 필드 집합
- 각 후보 키는 고유성의 속성 필수
- "EmpolyeeID"와 "FirstName"과 "LastName"의 조합이 모두 후보 키
Foreign Key
- 한 테이블에 있는 필드로 다른 테이블에 있는 기본 키를 참조, 테이블 간의 관계를 설정
- 외부 키를 사용하면 관련 테이블에서 데이터 일관성과 무결성 유지 가능
- "DepartmentID"는 "Department" 테이블의 기본 키를 참조하는 외부 키입니다.
Alternate Key
- 대체 키는 기본 키로 선택되지 않은 후보 키
- 검색 또는 색인 작성과 같은 기본 식별 이외의 용도로 사용할 가능
- "FirstName"과 "LastName"의 조합이 대체 키
Composite Key
- 두 개 이상의 필드로 구성된 키
- 이그 자체로 고유한 필드가 없더라도 레코드에 대한 고유한 식별자를 형성
- "EmpolyeeID"와 "DepartmentID"의 조합이 복합 키 가능
Super Key
- 테이블 내의 레코드를 고유하게 식별하는 필드 집합
- 슈퍼 키는 후보 키를 형성하는 데 필요한 것보다 더 많은 필드 포함 가능
- "EmpolyeeID" 단독 또는 다른 필드와 함께 "EmpolyeeID"가 슈퍼 키 가능
Database 구조
Database
|
└── Table (Employees)
|
├── Field (EmployeeID)
├── Field (FirstName)
├── Field (LastName)
├── Field (DepartmentID)
├── Field (Salary)
├── Primary Key (EmployeeID)
├── Foreign Key (DepartmentID referencing Departments)
├── Indexes
├── Constraints
├── Relationships
├── Views
└── Queries
'IT > ㄴ Database' 카테고리의 다른 글
[MariaDB] SQL 구문 연습 [order by / where / like / alter ] (0) | 2023.08.19 |
---|---|
[MariaDB] SQL 구문 연습 [create / select / insert / update / delete / drop] (0) | 2023.08.18 |
[MariaDB] MariaDB UTF-8 설정 [한글 깨짐 방지] (0) | 2023.08.18 |
[MariaDB] MariaDB 설치 및 원격 접속 [계정 패스워드] (0) | 2023.08.18 |
[기초] SQL 구문 정리 [ChatGPT] (0) | 2023.08.17 |