심심한 개발자의 취미생활

데이터 베이스 개념 및 기본 용어

데이터 베이스

  • Database(DB)

    • 특정 기업이나 조직 또는 개인이 필요에 의해 논리적으로 연관된 데이터를 모아 일정한 형태로 저장해 놓은것
    • 한 조직의 여러 응용 시스템들이 공용(Shared)으로 사용하기 위해 통합(Integrated), 저장(Stored)한 운영 데이터(Operational data)의 집합
  • Database Management System(DBMS)

    • 데이터 베이스 관리 프로그램
    • DBMS를 이용하여 데이터 입력, 수정, 삭제 등의 기능 제공

데이터 베이스 특징

  • 통합된 데이터(Integrated Data)
    • 데이터를 통합하는 개념
    • 각자 사용하던 데이터의 중복을 최소화하여 중복으로 인한 데이터 불일치 현상 제거
  • 저장된 데이터(Stored Data)
    • 문서로 보관된 데이터가 아니라 디스크, 테이프 같은 컴퓨터 저장장치에 저장된 데이터
  • 운영 데이터(Operational Data)
    • 조직의 목적을 위해 사용되는 데이터
    • 업무를 위한 검색을 할 목적으로 저장된 데이터
  • 공용 데이터(Shared Data)
    • 한 사람 또는 한 업무를 위해 사용되는 데이터가 아니라 공동으로 상용되는 데이터

DBMS 장점

  • 데이터 중복(Redundancy)의 최소화
  • 데이터 공용(Sharing)
  • 일관성(Consistency)유지
  • 무결성(integrity) 유지
  • 보안(Security)보장
  • 표준화(Standardization)용이
  • 전체 데이터 요구의 조정

DBMS 제품

BIG3

  • Oracle : RDBMS 최초 사용황, RDBMS 시장 점유율 높음
  • IBM DB2 :RDBMS 최초 개발, 메인 프레임 등에서 점유율 높음
  • MS-SQL Server: Sybase 코드에 기반

기타

  • Teradata, Informix, Sybase
  • MySql, PostgreSQL, Firebird, cubrid

관계형 데이터 베이스의 특증

  • 2차원 테이블로 표현
  • 데이터 무결성(Data Integrity)
  • 데이터 처리를 위해 SQL 사용
  • 한 번에 레코드를 처리하는 것이 아니라 집합을 처리함

테이블

  • 실질적으로 자료가 저장되는 곳
  • 행(Row)와 컬럼(Column)으로 구성된 2차원 구조를 가진 데이터의 저장 장소
  • 특정 목적과 성격에 의해 생성되는 집합체
  • 사용자의 접근이 가능한 모든 데이터 보유

SQL 이란?

  • SQL (Structured Query Language)
    • 관계형 데이터 베이스에서 데이터 조작과 데이터 정의를 하기 위해 사용하는 언어
    • 사용자는 데이터 베이스에 자료를 입력/조회/수정/삭제 하기 위하여 SQL 사용
  • SQL 특징
    • 배우고 사용하기 쉬운언어
    • 절차적인 언어가 아닌 선언적 언어
    • DBMS의 종류에 얽매이지 않고 사용 가능

SQL 작업 종류

  • 데이터 조회
  • 테이블에서 행 삽입, 갱신 및 삭제
  • 객체 생성, 변경 및 삭제
  • 데이터 베이스 및 해당 객체에 대한 엑세스 제어
  • 데이터 베이스 일관성 및 무결성 보장

SQL문

구분 명령문 설명
DML SELECT - 데이터 베이스에서 데이터를 검색할 때 사용한다.
INSERT - 테이블에 새 행을 입력한다
UPDATE - 기존 행을 변경한다
DELETE - 행을 제거 한다
MERGE - 데이터가 테이블에 존재하지 않으면 INSERT, 존재하면 UPDATE를 수행한다
DDL CREATE - 테이블 등 데이터 구조(객체)를 생성한다.
ALTER - 객체를 수정할 때 사용한다
DROP - 객체 제거 시 사용한다.
RENAME - 객체 이름을 변경할 때 사용한다.
TRUNCATE - 객체내의 모든 행을 삭제한다
TCL COMMIT - DML 문이 변경한 내용으 관리한다
ROLLBACK - 데이터에 대한 변경내용은 논리적인 트랜잭션으로 그룹화 될 수 있다.
DCL GRANT
REVOKE
- ORACLE 데이터 베이스 및 해당 구조에 대한 액세스 권한을 부여하거나 제거한다.