본문 바로가기
DB/DBMS

TABLE과 기본 개념

by 코딩하는 랄로 2023. 8. 10.
728x90

TABLE

이전 노트에서 관계형 데이터베이스 시스템인 RDBMS에 대해서 간략하게 알아보았다. 여기서 관계형이란 개념이 적용되는 Point는 DBMS에서 중요한 개념 중 하나인 TABLE이다.

 

TABLE은 말 그대로 데이터의 집합을 표의 구조를 통해 관리를 하는 것이다. TABLE이 가지는 여러 속성에 해당하는 값을 가지고 있는 데이터들이 들어오게 되고 관리가 되어지는 것이다.

User_id name age
1 Kim 20
2 Park 22
3 Lee 24

위에서 Table은 User_id, name, age라는 속성을 가지고 있고 데이터가 각각의 속성에 맞는 값으로 분류되어 해당 Table에 저장된 것이다.

 

일반적으로 TABLE이라는 명칭으로 많이 부르지만, 어떠한 DBMS를 사용하는지에 따라 Relation, Class 등 다양하게 부르기도 한다.

 

 

COLUMN & ROW

TABLE은 COLUMN과 ROW로 이루어져 있다. COLUMN과 ROW에 대한 설명은 아래 표를 통해서 쉽게 이해할 수 있다.

Pruduct_id Pruduct_name User_id Date Amount
291 공기청정기 1 20230809 2
998 에어컨 2 20230506 1
293 세탁기 2 20230726 1

TABLE에서 ROW는 행, 레코드, 튜플 등으로 불리며 하나의 데이터를 의미한다. 위에 표에서는 (291, 공기청정기, 1, 20230809, 2)이 하나의 데이터인 것이다.

 

COLUMN은 열, 속성, 필드 등으로 불리며 공통된 값들에 대한 주제를 의미한다. 특정 TABLE로 들어오는 데이터는 여러 공통된 정보들을 담고 있다. 이러한 정보를 TABLE에서는 열을 통해 명시하게 되고 이를 토대로 분류되어 저장되어 지는 것이다. 위에 표에서 여러 DATA에서 공통된 값에 해당하는 값들을 그에 맞는 특정 COLUMN에 값을 할당하는 것을 볼 수 있다.

 

 

Primary Key

TABLE에서는 여러 데이터를 저장하고 관리를 하게 된다. 만약, 회원정보를 담고 있는 Name, age만을 가지는 테이블이 있다고 가정한다면 어떠한 문제가 일어날까?

name age
Kim 20
Park 22
Kim 24

이럴 경우, 동명이인이 있다면 어떤 정보가 해당 유저의 정보인지 알수가 없다는 문제가 발생한다. 

 

이러한 문제를 해결하기 위해 필요한 것이 Primary Key이다. TABLE에서 특정 속성을 Primary Key로 지정하게 되면 해당 값은 중복이 불가능하고 null값을 가지지 않는 특성을 갖게 된다.

User_id(PK) name age
1 Kim 20
2 Park 22
3 Kim 24

 

그렇기 때문에 해당 속성 값에 저장되어지는 값은 중복이 없고 비어있지 않은 Unique한 값을 가지기 때문에 동명이인이라고 하더라도 Primary Key로 지정된 속성값을 통해서 정확한 정보에 접근할 수 있다.

 

 

Foreign Key

RDBMS란 관계형 데이터베이스 시스템이기 때문에 테이블간의 연관성을 짓고 이를 이용하여 여러 데이터 작업을 처리하게 된다.

 

이 때, 다른 테이블의 PK값을 속성으로 가지는 테이블 또한 존재하는 데, 이 때에 속성값을 외부에서 들여온 PK값이라고 하여 Foreign key라고 부른다.

Pruduct_id(PK) Pruduct_name User_id(FK) Date Amount
291 공기청정기 1 20230809 2
998 에어컨 2 20230506 1
293 세탁기 2 20230726 1

해당 테이블에서는 Prucuct_id가 PK, User_id가 FK를 가지고 있다. 이러한 상황에서 특정 구매 정보에 대해서 구매자의 정보를 알고 싶을 때 User_id를 통해 User 테이블로 접근하여 정확한 정보를 얻어 올 수 있다.

 

그렇게 되면, Pruduct Table에 추가적인 구매자 정보에 대한 속성값을 가지지 않아도 되기 때문에 Table의 크기도 작아지고 훨씬 직관적인 테이블을 만들 수 있다.(RDBMS의 장점)

 

 

Unique Key

Unique Key는 Primary Key와 유사하지만 뚜렷한 차이가 존재하는 Key이다.

 

중복을 허용하지 않는다는 면에서 Primary Key와 유사하지만 Null값을 허용한다는 면에서 엄연히 Primary Key와 차이점을 가지고 있는 것이다.

 

 

2023.08.12 - [Programming 공부/DBMS] - DDL과 자료형

 

DDL과 자료형

DDL이란 sql문(query문)은 사용자가 dbms와 소통하기 위한 script언어이다. 그렇기 때문에 sql문을 통해서 테이블을 생성 및 조작하기도 하고 테이블 내에 있는 데이터를 다루기도 한다. DDL = Data Definitio

codingralro.tistory.com

 

728x90

'DB > DBMS' 카테고리의 다른 글

제약조건과 무결성  (0) 2023.08.12
DDL과 제약조건2  (0) 2023.08.12
DDL과 제약조건1  (0) 2023.08.12
DDL과 자료형  (0) 2023.08.12
DBMS란  (0) 2023.08.10