본문 바로가기
자격증/패스트 캠퍼스 데이터베이스와 SQLD 합격패스 Online

패스트 캠퍼스 챌린지 04일차 데이터베이스와 SQLD 합격패스 Online

by 리드민 2021. 9. 9.
반응형

Ch 02. 관계형 데이터베이스 - 01. 관계형 데이터베이스란

[] 관계형 데이터베이스

(1) 관계형 데이터베이스(Relational Database)는 키(key)와 값(value)들의 간단한 관계를 테이블화 시킨 매우 간단한 원칙의 전산정보 데이터베이스임 보통 RDB라고 불리고 있음

(2) 2차원 표 이용한 데이터 목록화 관리를 하는 것이 주 목적임(Excel, Google 스프레드 시트)

(3) 실세계를 그대로 반영함으로 직관적인 이해가 가능함(주소록, 출석부, 가계부 등)

(4) 우리는 실생활에서 사용하는 모든 정보를 관계형 데이터베이스로 관리할 수 있음

 

[] 관계형 모델

(1) 관계형 모델(relational model)은 집합론에 기반을 둔 일종의 데이터베이스 모델임 이 모델은 에드거 커드(Edgar Codd)에 의해 최초로 제안되고 체계화되었음

(2) 컬럼(열)과 로우(행)를 이루는 하나 이상의 테이블이 존재하고 테이블에 데이터가 저장됨

(3) 각각의 테이블은 각각의 로우를 식별하는 기본 키(Primary Key)가 있음

(4) 컬럼은 필드(Field) 혹은 속성(Attribute)라고도 불림, 로우는 레코드 혹은 튜플(Tuple)로 불림

 

() 고객연락처 테이블(TABLE)

순번   고객명 연락처구분 연락처
1 lucky1 이경오 이메일 dbmsexpert@naver.com
2 lucky1 이경오 휴대폰 010-1234-1234
3 lucky2 이수지 이메일 leesuji@naver.com
4 lucky2 이수지 휴대폰 010-1234-1235
5 lucky3 이익재 이메일 leeikjae@naver.com
6 lucky3 이익재 휴대폰 010-1234-1236

 

  계층형 데이터베이스, 객체지향 데이터베이스, NoSQL 데이터베이스보다 가장 많이 사용되는 것이 관계형 데이터베이스이다. 관계형 데이터베이스를 배우는 것이 데이터베이스를 배우는 것이라고 할 수 있다. 관계형 데이터베이스가 무엇인지 알아보도록 하겠다. 엑셀 파일에 고객의 연락처를 관리한다고 해보겠다. 고객 아이디가 있고 고객명이 있고 연락처가 있는데 엑셀 파일로도 관리한다. 엑셀 파일의 특징은 2차원 표로 이루어졌다는 것이다. 2차원 표를 이용해서 데이터베이스 목록과 관리를 하는 것이 관계형 데이터베이스의 기본 골자이다. 엑셀, 구글 스프레드 시트도 2차원 표로 이루어져있는데 엑셀도 데이터베이스의 종류라고 할 수 있다. 엑셀도 관계형 데이터베이스의 한 종류이다. 관계형 데이터베이스는 키와 벨류 키와 벨류 값에 대한 관계를 테이블화 시킨것이다. 보통 관계형 데이터베이스는 RDB라고 부른다. 관계형 데이터 베이스를 데이터베이스를 배운다는 것을 의미하고, 데이터베이스를 배운다는 것은 데이터베이스 메니지먼트 시스템을 배운다는 것이고, 데이터베이스 메니지먼트 시스템에서 가장 널리 사용되는 것이 오라클이다. 오라클을 배우면 관계형 데이터베이스를 배운다라고 할 수 있다. 관계형 모델이라고 하는데 관계형 모델은 집합론에 기반을 둔 일종의 데이터베이스 모델이라고 할 수 있다. 고객 중에서 한명을 특정하려면 고객을 식별할 수 있는 식별자, 기본키가 있어야한다. 그래서 primary 키가 여기서 나오는 개념이다. 컬럼은 필드 혹은 속성이라고 부른다. 로우는 레코드 혹은 튜플이라고 부른다. 연락처 같은 속성은 열, 필드, 속성이라고 부르고, 행은 행, 튜플, 레코드라고 부른다. 

 

[] 관계형 데이터베이스의 혁신성

특징 설명
역사적 혁신성 최초로 2차원 표를 이용한 데이터베이스 소프트웨어
기능적 혁신성 직관적인 방법으로 데이터를 추출할 수 있음
- SQL 언어를 이용한 간편한 데이터 추출
- 데이터베이스 사용자 층의 빠른 증가에 기여
- 개발 및 업무 생산성 확대

[] 기능적 혁신성

-> 고객의 연락처 중 가운데 고객명 중 "경"자가 들어가는 고객의 이메일 주소는 무엇인가?

프로그래밍적인 관점 SQL 관점
(1) "고객 연락처"가 저장되어 있는 파일을 연다
(2) 아래와 과정은 전체 라인에 대해 반복한다.
"고객명" 항목에 "경"자가 포함되어 있는지 체크
포함되어 있다면 "연락처 구분"이 "이메일"인지 체크
하여 만약 "이메일"이라면 "연락처" 항목을 화면에 출력한다.
"고객 연락처" 파일을 닫는다.
SELECT 연락처
FROM 고객연락처
WHERE 고객명 LIKE "%경%"
AND 연락처구분 = '이메일'
;
-SQL을 이용한 데이터 처리는 매우 직관적이고 사용자 편의성을 도모함

  관계형 데이터베이스가 처음 나왔을 때는 어마어마한 혁신이 있었다. 최초로 2차원 표를 이용한 데이터베이스 소프트웨어이다. 데이터베이스에서 데이터를 관리하고 조작할 수 있는 언어가 있다. 데이터베이스가 받아들일 수 있는 언어이다. 이 언어를 SQL이라고 한다. SQL이용하면 데이터를 간단하게 관리할 수 있다. 예를 들어 고객의 연락처중 경자 들어가는 고객의 이메일 주소는 무엇인가. 그러면 가장 쉬운 방법은 엑셀파일이라고 하면 마우스로 직접 찾는 방법이 있다. 아니면 프로그래밍 적으로 구현 한다고 한다면 전체 라인에 대해서 경자가 들어갔는지 체크하는 것이다. 관계형 데이터베이스의 가장 강력한 기능중에 하나는 sql를 이용해서 데이터를 조작할 수 있는 것이다. sql로 하면은 간단하게 데이터를 조작할 수 있다. 관계형 데이터베이스가 이렇게 폭팔적으로 쓰이게 된 이유가 개발 편의성이 있어서 그렇다.

반응형