자격증/SQLD

SQLD 요약 - 관계형 데이터베이스 개요

비뀨_ 2023. 1. 14. 01:48

원본

 

관계형 데이터베이스를 알기 위해서는 당연히 데이터베이스를 알아야 한다.

간단하게 말하면 데이터베이스는 정보들을 모아 놓은 것 자체를 의미한다.

 

정보화 사회에서는 데이터가 쏟아지게 되는데,

데이터의 양이 많아지고 여러 사람이 동시에 사용하게 되면서 데이터를 효율적으로 관리하는 것이 필요해졌다.

 

이런 데이터를 관리하기 용이하고, 데이터를 복구하기 위한 소프트웨어가 DBMS ( Database Management System)이다.

데이터베이스 개념

  • 데이터를 공유할 수 있도록 운영에 필요한 모든 데이터를 통합하여 컴퓨터에 저장한 데이터
  • 중요!
    • 다수의 시스템 or 프로그램이 사용할 목적으로 통합하여 관리되는 자료의 집합

데이터베이스 특징

  • 지속적인 변화 : 데이터 삽입, 삭제, 갱신 통해 정확한 데이터 유지하면서 변화
  • 실시간 접근 : 실시간으로 질의문에 대해 처리할 수 있음.
  • 동시 공유 : 다수의 사용자가 동시에 이용
  • 내용에 의한 참조 : 데이터의 저장된 위치가 아닌, 데이터의 내용을 참고하여 접근.

데이터 베이스 발전 

1960년대 : 파일 구조 사용

1970년대 : 계층형, 망형 상용화

1980년대 :관계형 데이터베이스 사용

1990년대 : Oracle, SQL Server, Sybase, Informix 등의 제품들이 향상되고 핵심 솔루션으로 자리잡음.

 

관계형 데이터베이스

1970년 영국 E.F.Codd 박사의 논문에서 소개된 이후, IBM의 SQL 개발 단계를 거쳤다.

이후 관계형 데이터베이스(이후 DB라고 하겠음)의 장점이 알려지면서 기존의 파일시스템, 계층, 망 데이터베이스를 대부분 대체하면서 주력 DB가 되었다.

 

Oracle - Oracle 사에서 개발. Linux, Unix, Windows에서 모두 사용이 가능

SQL Server - Microsoft에서 개발. C#과 호환이 잘 됨.

MySQL - Oracle에서 인수. Linux, Unix, Windows에서 모두 사용이 가능

Maria DB - MySQL 출신 개발자가 만든 DB. MySQL과 완벽히 호환.

 

SQL (Structured Query Language)

SQL의 문법은 영어 문법과 유사하기 때문에 학습은 쉬운 편이다.

1986년부터 ANSI / ISO를 통해 SQL이 표준화되었고, 대부분 관계형 DB에서 ANSI 표준을 따르고 있기 때문에,

다른 DB를 사용해도 상당 부분 기존 지식을 재활용할 수 있고, ANSI / ISO SQL-99, SQL-2003 이후 적용된 SQL이라면 프로그램의 이식성을 높이는 데도 공헌한다.

 

SQL은 관계형 DB에서 다음과 같은 기능을 한다.

  • DDL (데이터 정의어 : Data Definition Language)
  • DML (데이터 조작어 : Data Manifulation Language)
  • DCL (데이터 제어어 : Data Control Language)
명령어 종류 명령어 설명
DML(데이터 정의어) SELECT 데이터 조회
INSERT (삽입)
UPDATE (수정)
DELETE (삭제)
데이터에 변경을 가하는 종류의 명령어
순서대로 데이터 삽입, 수정, 삭제하는
명령어
DDL (데이터 정의어) CREATE (생성)
ALTER (수정)
DROP (삭제)
RENAME (이름 변경)
테이블과 같은 데이터 구조를 정의.
순서대로 구조를 생성, 수정, 삭제, 이름 변경
DCL (데이터 제어어) GRANT (권한 부여)
REVOKE (권한 회수)
DB에 접근하고, 객체들을 사용하도록 권한을 부여하거나, 회수하는 명령어
TCL (트랜잭션 제어어) COMMIT (저장)
ROLLBACK (이전 상태로 되돌림)
논리적인 작업 단위인 트랜잭션을 제어.
작업을 DB에 저장하거나, 작업을 이전 상태로 되돌림.

 

 

TABLE 

테이블은 특정한 주제와 목적으로 만들어지는 집합이다.

+ 티스토리를 예를 들면 작성한 글을 저장하는 글 테이블, 글을 작성하는 사용자 테이블 등으로 나눌 수 있을 것이다.

 

데이터는 관계형 DB의 기본 단위인 테이블 형태로 저장된다.

모든 자료는 테이블에 등록이 되고, 테이블에서 원하는 자료를 꺼내올 수 있다.

위의 이미지처럼 테이블은 엑셀과 같이  행, 열 2차원 구조로 되어있다.

열은 Row, 행은 Column이라고 한다.

이해를 조금 더 쉽게 하기 위해서 데이터 한 개를 떼어 보면

  • 1열의 1행 : ' 테이블에 대해' 
  • 1열의 2행 :  '블라블라~~' 
  • 1열의 3행  : 'SQL'

마찬가지로 두 번째 데이터는 2열로 시작할 것이다.

행과 열은 쉬우면서 헷갈리기도 쉬우니 조심!

또, 행과 열이 마주치는 부분을 필드(Field)라고 하기도 한다.

말이 어려운데, 1열의 1행 , 1열의 2행처럼 열+행이면 필드라고 한다.

 

또, 이전 글에서 설명했지만 테이블은 구분 가능한 기본키(PK)를 가져야 하고, 다른 테이블과 연계할 때에는외부키(FK)도 필요할 수도 있다.

 

https://beetr.tistory.com/79

 

SQLD 요약정리 - 식별자

취업 준비와 티스토리 임시저장이 계속 삭제돼서..써놨던 것들 계속 지워져서 늦.....었습니다... 저는 22년 47회차로 SQLD 자격증을 취득했습니다! 하지만 개인 공부 겸 & 공부하는 것을 공유할 겸

beetr.tistory.com

 

 

ERD (Entity RelationShip Diagram)

ERD는 풀어놓은 영어 말 그대로 엔티티의 연결을 그려놓은 다이어그램이다.

 

테이블과 테이블 사이에 어떤 의미의 관계가 있을 때 ERD를 통해 직관적으로 표현할 수 있다.

 

위 이미지처럼 테이블간의 상관 관계를 그림으로 도식화한 것을 E-R 다이어그램이라고 하고 간략하게 ERD라고 한다.

ERD를 표기하는 방법에는 IE, Barker 표기법이 있다.

 

'자격증 > SQLD' 카테고리의 다른 글

SQLD 요약 - TCL  (2) 2023.02.03
SQLD 요약 - DDL  (0) 2023.01.15
SQLD 요약정리 - 식별자  (5) 2022.12.19
SQLD 요약 정리 - 관계  (2) 2022.11.14
SQLD 요약 정리 - 속성  (0) 2022.11.03