[DBMS] 데이터베이스 / DBMS / SQL

형이·2023년 7월 18일
0

DBMS

목록 보기
1/17
post-thumbnail

🖥️ 1. 데이터 베이스

  • Data (자료)

    ✔️ 현실 세계에서 관찰이나 측정을 통해 수집한 단순한 사실이나 값

  • Information (정보)

    ✔️ 의사 결정에 도움을 줄 수 있는 유용한 형태

    ✔️ 자료를 가공(처리)해서 얻을 수 있는 결과를 의미

  • 데이터베이스(Database)

    ✔️ 어느 한 조직에 여러 응용 시스템들이 공동으로 사용할 수 있도록 통합하여 저장한 운영데이터의 집합

    ✔️ 공동의 목적을 지원하기 위한 서로 관련된 자료들의 모임

    ✔️ 주제와 관련된 의미있는 데이터들의 모음

  ⇒ 서로 연관된 정보의 중복을 최소화하여 한곳에 저장함으로써 다수의 사용자가 필요한 정보에 효율적으로 접근할 수 있게 한 정보의 집합체

  • 데이터베이스 모델의 종류

    ✔️ 계층데이터 모델

    ✔️ 망 데이터 모델

    ✔️ 관계 데이터 모델 (Relational Data Model) : 개체 집합에 대한 속성 관계를 표현하기 위하여 개체를 테이블(table)로 사용하고 개체 집합들 사이의 관계는 공통 속성으로 연결하는 독립된 형태의 데이터 모델


🖥️ 2. DBMS

2-1. DBMS란

✔️ 데이터베이스 관리 시스템 (DataBase Management System)

✔️ 사용자에게 데이터베이스를 생성하고 유지할 수 있게 하는 프로그램 집합 (데이터를 정리하고 보관)

✔️ 데이터 삽입, 삭제, 수정 등의 기능을 수행

2-2. DBMS 기능

  • 데이터의 무결성 유지

    ✔️ DB의 데이터는 실세계를 적용하는 규칙을 항상 만족해야함

    ✔️ 서로 다른 부분에 있는 두 개의 데이터가 서로 모순되지 않아야 함 (데이터의 일관성 유지)

2-3. DBMS 특성

  • 데이터의 논리적 독립성

    ✔️ 한 속성에 가해진 변경이 동일한 테이블에서 다른 속성에 영향을 주지 않는 것을 의미

    ✔️응용프로그램에 영향을 주지 않고 데이터 구조를 변경할 수 있게 하는 것

  • 참조 무결성과 데이터 무결성

    ✔️ 응용 프로그램 개발 시 무결성 제약 조건을 신경쓰지 않아도 된다

  • 비정규 질의

    ✔️ 사용자는 작업을 실행하는 방법을 명시하지 않고도 데이터베이스에게 어떤 데이터를 조회할 것인지를 명령할 수 있다.

  • 실시간 접근성

    ✔️ 데이터베이스는 지속적이고 비정형적인 질의에 대하여 실시간 처리가 가능해야 한다.

  • 계속적인 변화

    ✔️ 새로운 데이터 삽입(Insert), 기존의 데이터 삭제(Delete), 갱신(Update) 등의 변화를 주어 정확한 데이터 유지

  • 동시 공용

    ✔️ 다수의 사용자가 동시에 각자 원하는 데이터에 접근하여 이용할 수 있어야 한다.

  • 내용에 의한 참조

    ✔️ 사용자가 요구하는 데이터의 내용, 즉 데이터가 가지고 있는 값에 따라 참조

2-4. DBMS 종류

Oracle, mySQL, MsSQL, Teradata, SyBase 등이 있고,

한국에서 가장 널리 배포되어 있는 DBMS는 Oracle


🖥️ 3. 데이터베이스 용어

📌 테이블

  • 기업이 정보를 효율적, 효과적으로 보관하기 위해 만들어 놓은 공간
  • 테이블 이름은 고유해야함 (동일한 두 개의 테이블 이름 불가)

📌 스키마(Schema)

  • 테이블에 데이터가 저장되는 방식을 정의할 수 있다.
  • 데이터베이스에 존재하는 자료의 구조 및 내용과 자료들의 논리적, 물리적 특성에 대한 정보를 표현하는 데이터베이스의 논리적 구조를 지칭

📌 열(Column)

  • 테이블을 구성하는 각각의 정보
  • 각 열에는 고유한 데이터 형식이 지정
    ** 데이터 형식 지정 : 열에 저장할 수 있는 데이터의 종류를 특정한 형식으로 제한한다는 의미
  • 데이터 형식은 데이터의 올바른 정렬 및 데이터베이스 공간의 효율적 사용에 중요한 역할을 함

📌 행(Row)

  • 테이블의 데이터는 행에 저장
  • 테이블의 행을 레코드라고 표현

📌 기본 키 (Primary key)

  • 각 행을 고유하게 하는 열이 존재
  • 기본 키는 데이터베이스 제어 및 관리, 데이터베이스의 최적화 등을 위해 테이블 생성 시 반드시 필요
  • 참고사항
🔎 관계 데이터베이스에 데이터를 저장할 수 있는 형식 (Table = Relation)

🔎 행과 열의 교차점은 원자값(atomic value)이라는 오직 하나의 값으로 구성

🔎 테이블에서 행은 순서가 정해져 있지 않다.

🔎 테이블의 내용은 실제적인 행의 집합으로 간주된다.

🖥️ 4. SQL

4-1. SQL이란

  • SQL (Structured Query Language)

    ✔️ 관계형 데이터베이스 언어 (관계형 데이터베이스 모델의 규칙에 따라 정의) → 관계 데이터베이스 언어로써 비절차적 데이터베이스 언어로 분류

    ✔️ 데이터베이스에 접근할 수 있는 데이터베이스 하부 언어를 지칭

    ✔️ SQL은 여러 개의 테이블에서 원하는 정보를 읽고 쓰기 위해 사용하는 언어

    ✔️ 데이터의 삽입, 삭제, 갱신, 질의, 보호(보안) 명령문으로 구성

4-2. SQL 기능에 따른 분류

📌 데이터 정의어 (DDL ; Data Definition Language)

  • 테이블이나 관계의 구조를 생성하는데 사용하며 create, alter, drop문 등이 있다.

    ✔️ CREATE : 데이터베이스 테이블 생성

    ✔️ DROP : 데이터베이스 테이블 삭제

    ✔️ ALTER : 기존 데이터베이스 테이블 재정의

📌 데이터 조작어 (DML ; Data Manipulation Language)

  • 테이블에 데이터를 검색(select/R), 삽입(insert/C), 수정(update/U), 삭제(delete/D)CRUD 작업

📌 데이터 제어어 (DCL ; Data Control Language)

  • 데이터의 사용 권한을 관리하는데 사용하며 grant, revoke문 등이 있다.

    ✔️ GRANT : 테이블에 권한 부여

    ✔️ REVOKE : 부여한 권한 취소/회수

0개의 댓글

관련 채용 정보