티스토리 뷰
이 장에서 내가 배울 내용
- 데이터베이스의 기본 개념, 종류
- SQL 의 기본 개념
- 데이터베이스 설치법
데이터베이스의 개념
정의
: 데이터의 집합, 데이터의 저장 형태를 말한다.
: 여기서 데이터(data) 는 정보가 아닌 그냥 자료 또는 컴퓨터가 처리할 수 있는 자료를 뜻한다.
Q. 그럼 어떻게 하면 데이터베이스가 될 수 있는가?
A. 자료들을 특정 목적에 맞게 분류하면 분류 된 집합이 바로 데이터베이스이다.
즉 데이터베이스란 논리적으로 연관된 데이터를 모아 일정한 형태로 저장해 놓은 것을 말한다.
목적
: 데이터 중복을 최소화 하고 조직의 목적에 맞게 효율적으로 관리하기 위해서이다.
분류
데이터베이스는 ISOS , R1C3 으로 분류된다.
ISOS는 데이터베이스를 정의할 때, R1C3는 데이터 베이스 시스템의 특징을 이야기할 때 사용된다.
(1) ISOS
| 단어 뜻 | 한글 뜻 | 설명 |
| I (Integrated Data) | 통합 데이터 | 데이터 중복이 최소화 된 데이터 |
| S (Stored Data) | 저장 데이터 | 컴퓨터가 접근할 수 있는 메체에 저장된 데이터 |
| O (Operational Data) | 운영 데이터 | 조직의 고유한 업무를 수행하는데 필요한 데이터 |
| S (Shared Data) | 공용 데이터 | 여러 응용 시스템이 공동으로 소유하고 유지하는 데이터 |
(2) R1C3
| 단어 뜻 | 한글 뜻 | 설명 |
| R (RealTime Accesibility) | 실시간 접근성 | 사용자 질의에 실시간 처리해 응답 |
| C (Continuous Eveolution) | 지속적인 변화 | 삽입, 삭제, 수정 작업을 통해 항상 최신 데이터를 동적으로 유지 |
| C (Concurrent Sharing) | 동시 공유 | 목적이 다른 여러 사용자가 동시에 같은 데이터를 공유 |
| C (Content Reference) | 내용에 의한 참조 | DB에 있는 데이터를 참조할 때 레코드의 주소나 위치가 아닌 사용자가 요구하는 데이터 내용으로 참조 |
데이터베이스는 DBMS로 관리한다
DBMS ( DataBase Management system, 데이터베이스 관리시스템)
여기서 주의할 점은 대부분 사람들이 DB 와 DBMS 를 같은 뜻으로 간주하고 사용한다는 점이다. DB는 데이터를 담는 통이고, DBMS는 그 통을 관리하는 소프트웨어이다. 둘은 명백하게 다른 뜻을 가진다는 점의 유의하자.
데이터베이스 종류
1. 계층형 데이터베이스

- 데이터가 부모와 자식 관계를 이루는 트리구조이다.
- 부모 코드가 여러 자식 레코드를 가진다.
- 부모 레코드는 여러개의 자식코드를, 자식 레코드는 하나의 부모 레코드만 가질 수 있다.
- 구조를 변경하기 힘든 단점이 있다.
- 데이터 중복이 발생하기 쉽다.
- 상하 종속 관계로 이루어져 있다.
- 현재는 거의 사용되지 않는 방식이다.
2. 네트워크형 데이터베이스

- 데이터를 노드로 표현한 모델이다.
- 노드는 네트워크상에 있으며 서로 대등한 관계이다.
- 계층형 데이터베이스의 단점인 '상하 종속 관계' , '데이터 중복'를 해결할 수 있는 구조이다.
- 레코드 간 일대다, 다대다 형태로 표현할 수 있다.
- 종속성 문제가 생겨 데이터베이스 구조를 변경하기 힘들다.
3. 키-값 데이터베이스
| Key | Value |
| k1 | AAA, BBB, CCC |
| k2 | AAA,2,01/01/2015 |
| k3 | 3,ZZZ,5623 |
- NoSQL의 한 종류로 키-값을 일대일 대응해 데이터를 저장하는 형태이다.
- 데이터 중복이 발생하며 비정형 저장에 유리하다.
- 단순한 객체에서 복잡한 집합체에 이으기까지 무엇이든 키와 값이 될 수 있다.
4. 관계형 데이터베이스

- 실무에서 많이 사용하는 데이터베이스 종류의 하나이다.
- 데이터를 테이블 형태로 저장하는 형태이다.
- 데이터를 열(column),과 행(row) 으로 구성한 테이블로 정리하며 고유키(primary key)가 각 행을 식별한다.
SQL이 무엇인가?
앞에서 언급한 관계형 데이터베이스의 데이터를 관리하는 프로그래밍 언어이다.
DBMS 종류에 따른 SQL 종류
| DBMS | SQL 종류 |
| SQL server | transact-SQL( T-SQL) |
| Oracle | PL/SQL |
| MSQL | SQL |
| 국제 표준 | ANSI SQL |
[참고] ANSI SQL은 1986년에 sQL-86d이 등장한 이후 지금까지 지속해서 연구발표되고 있다.
SQL 문법 종류
(1) 데이터 정의 언어 (Data Define Language , DDL)
| 문법 | 설명 |
| CREATE | 데이터베이스 또는 다음 항목을 포함한다. |
| ALTER | 테이블을 수정한다. |
| DROP | 데이터베이스 또는 테이블을 삭제한다. |
| TURNCATE | 테이블을 초기화 한다. |
(2) 데이터 조작 언어 (Data Manipulation Language , DML)
| 문법 | 설명 |
| SELECT | 데이터를 검색한다. |
| INSERT | 데이터를 입력한다. |
| UPDATE | 데이터를 수정한다. |
| DELETE | 데이터를 삭제한다. |
(3) 데이터 제어 언어 (Data Control Language , DCL)
| 문법 | 설명 |
| GRANT | 특정 테이터베이스 사용자에게 작업의 특정 수행 권한을 수여한다. |
| REVOKE | 특정 데이터베이스 사용자에게 작업의 특정 수행 권한을 삭제한다. |
| COMMIT | 트랜잭션 작업을 완료하는 역할을 한다. |
| ROLLBACK | 트랜잭션 작업을 취소하거나 이전상태로 복구하는 역할을 한다. |
'SQL' 카테고리의 다른 글
| [SQL] 와일드카드로 문자열 검색하기,LIKE (지루함 주의) (2) | 2023.06.05 |
|---|---|
| [SQL] ORDER BY (2) | 2023.06.04 |
| [SQL] WHERE (1) | 2023.06.04 |
| [SQL] SELECT (1) | 2023.06.04 |
| [SQL]02. 데이터베이스, SQL 설치하기 (0) | 2023.04.26 |