Meme's IT

[DB] DB 기초 본문

BackEnd/DB

[DB] DB 기초

Memez 2023. 10. 10. 15:33

# 기존의 데이터 관리 방법

1. 파일을 이용

  • 어디에서나 쉽게 이용할 수 있음
  • 하지만, 데이터를 구조적으로 관리하긴 어렵다

2. 스프레드 시트를 이용(≒엑셀)

  • 테이블의 열과 행을 이용해 데이터를 구조적으로 관리할 수 있다.
  • 크기에 제약이 있고, 파일 접근 권한을 따로 설정할 수 없다.
  • 만약에, 데이터 중에 '강원'이라는 데이터를 모두 '강언'으로 바꿔야한다면... 수정하기가 매우 어려움

 

 


# DataBase(DB)란?

조직화된 데이터의 모음

= 우리가 프로그램에서 사용할 데이터를 구조화해서 저장만 해놓은 것

 

  • 저장, 조회, 삭제, 수정(CRUD)등의 추가 작업을 하는 것 = DBMS(Database Management System)
  • 일반적으로 관리시스템(DBMS)을 DB라고 칭함

 

 

 

# 관계형 데이터베이스

예를 들어, 주문 테이블과 고객 테이블이 따로 있을 때

다음과 같이 두 테이블이 서로 관련된 데이터 포인터를 저장하고,

이에 대한 엑세스를 제공하는 형태를 관계형 데이터베이스라고 한다.

  • 관계: 여러 테이블 간의 논리적 연결
  • 여기서 동명이인이 있거나, 주소가 겹친다 등의 문제를 해결하기 위해 ID를 이용
    • 고객의 고유한 식별 값을 저장해 둔다( = 외래 키, Foreign Key)

 

관계형 데이터베이스 관련 키워드

  • Table( = Relation): 데이터를 기록하는 곳
  • Field(= Column, Attribure): 각 필드에는 고유한 데이터 형식(타입)이 저장됨
  • Record(= Row, Tuple): 각 레코드에는 구체적인 데이터 값이 저장됨
  • Database(= Schema): 테이블의 집합
  • Primary Key(기본 키): 각 레코드의 고유한 값, 관계형 데이터베이스에서 레코드의 식별자로 활용
  • Foreign Key(외래 키)
    • 테이블의 필드 중 다른 테이블의 레코드를 식별할 수 있는 키
    • 다른 테이블의 기본 키를 참조
    • 각 레코드에서 서로 다른 테이블 간의 관계를 만드는 데에 사용

 

 

  • 관계형 데이터베이스를 관리하는 소프트웨어 프로그램은 RDBMS라고 함
    • SQLite, MySQL, PostgreSQL....등등
    • 이 중에서 SQLite를 위주로 사용할 예정: 경량의 오픈 소스 데이터베이스 관리 시스템 (컴퓨터나 모바일 기기에 내장되서 간단하고 효율적인 데이터 저장 및 관리를 제공한다)

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

[DB] DB의 관계 종류와 KEY  (0) 2023.10.23
[SQL] SQL 명령어와 기본 지식  (0) 2023.10.12
[DB] DB의 종류 (관계형 / 비관계형)  (0) 2023.10.12
[DB] DB의 구성 요소  (0) 2023.10.10