데이터베이스
개념 : 일반적으로 컴퓨터 시스템에 전자적으로 저장되는 구조화된 정보 또는 데이터의 조직화된 모음
종류:
계층형 데이터 베이스 : 트리형태의 자료구조에 데이터를 저장 및 관리 ( 1 대 N )
네트워크형 데이터 베이스 : 계층형 데이터 베이스 모델을 개선하여 그래프 구조를 기반으로 구성 되어 있어서 정보 끼리 서로 연결 되어 망을 이루는 구조다.
관계형 데이터 베이스 : 릴레이션에 데이터를 저장 및 관리를 하는 방식
※ 릴레이션
개념 : 관계형 데이터 베이스에서 정보를 구분하여 저장하는 기본 단위이다. 즉, DB 테이블이라고 생각하면 된다.
관계형 데이터 베이스의 특징 : 릴레이션을 사용하여 집합연산과 관계연산을 할 수 있다.
집합 연산
· 합집합 : 두개의 릴레이션을 하나로 합하는 것이다. 이때 중복되는 행( 튜플 )은 한번만 조회된다.
· 차집합 : 본래 릴레이션에는 존재하고 다른 릴레이션에는 존재하지 않는 것을 조회한다.
· 교집합 : 두개의 릴레이션 간에 공통된 것을 조회한다.
· 곱집합 : 각 릴레이션에 존재하는 모든 데이터를 조합하여 연산한다.
관계 연산
· 선택 연산(Selction) : 릴레이션에서 조건에 맞는 행만을 조회한다.
· 투영 연산(projection) : 릴레이션에서 조건에 맞는 속성만 조회한다.
· 결합 연산(join) : 여러 릴레이션의 공통된 속성을 사용해서 새로운 릴레이션을 만들어 낸다.
· 나누기 연산(Division) : 릴레이션 A의 모든 튜플과 관련이 있는 릴레이션 B의 튜플들을 반환
=============>12 ÷ 2 = (6 X 2) ÷ 2 = 6
12 는 릴레이션 R, 2는 릴레이션 S로 나누는 수인 2를 제외한 6이 결과값이 된다.
SQL
개념 : SQL은 관계형 데이터 베이스에 대하여 데이터의 구조를 정의, 데이터 조작 데이터 제어 등을 하도록 설계된 언어
종류
· DDL : 관계형 데이터 베이스의 구조를 정의하는 언어이다.
==> CREATE, ALTER, DROP, RENAME , TRUNCATE 문이 있다.
· DML : 데이터 구조가 DDL 일때 테이블에서 데이터를 입력, 수정, 삭제, 조회한다.
==> INSERT, UPDATE, DELETE, SELECT 문이 있다.
· DCL : 데이터 구조가 DDL 일때 데이터 베이스 사용자에게 권한을 부여하거나 회수 한다.
==> GRANT, REVOKE 문이 있다.
· TCL : 트랜잭션을 제어하는 명령어이다.
==> COMMIT, ROLLBACK, SAVEPOINT 문이 있다.
※ 트랜잭션
데이터 베이스의 상태를 변화시키기 위해 수행하는 작업의 단위를 말한다.
· 트랜잭션의 특징
원자성 : 트랜잭션은 전부 되거나 실행되지 않아야 한다. 즉 중간에 멈추면 그건 안한거가 됩니다.
일관성 : 트랜잭션의 실행결과로 데이터 베이스에 모순이 없어야 한다.고립성 : 트랜잭션 실행중에 생성하는 연산의 중간결과는 다른 트랜잭션이 접근 할 수 없다 . 즉 부분적인 실행 결과를 다른 트랜 잭션이 접근을 할수 없다.영속성 : 트랜잭션이 그 실행을 성공하면 그 결과는 영구적으로 보장이 되어야 한다.
SQL문의 실행 순서
파싱(parsing) : SQL문의 문법을 확인한고 구문분석 한다.
실행(Excution) : 옵티마이저(optimizer) 가 수립한 실행 계획에 따라 SQL을 실행 한다.
인출(Fetch) : 데이터를 읽어서 전송한다.
'잡다한 이야기에 관하여 > SQLD' 카테고리의 다른 글
SQLD - [SQL 이해 및 활용 2] (0) | 2022.06.11 |
---|---|
SQLD [ 데이터 모델링의 이해 - 9] (0) | 2022.05.22 |
SQLD [ 데이터 모델링의 이해 - 8] (0) | 2022.05.20 |
SQLD [ 데이터 모델링의 이해 - 7] (0) | 2022.05.20 |
SQLD [ 데이터 모델링의 이해 - 6] (0) | 2022.05.15 |