데이터베이스 시스템(DBS, Data Base System)
데이터베이스에 데이터를 저장하고 관리하며 조직에 필요한 정보를 생성하는데
필요한 컴퓨터 중심의 시스템

DataBase
특정조직의 여러 사용자가 공유하여 사용할 수 있도록 통합해서 저장한 운영 데이터의 집합
특성으로는 아래가 있음
DBMS(Database Management System)
사용자와 데이터베이스 사이에서 데이터베이스를 관리하는 소프트웨어

데이터베이스는 데이터 자체이고 DBMS는 데이터를 관리하고 사용하는 데 필요한 도구
데이터베이스의 구조와 제약조건을 정의
(테이블, 뷰, 인덱스 등)
스키마를 만든다 -> 데이터베이스 설계, 모델링, 디자인 -> 설계작업
한번 정해지면 바꾸기가 어려워 신중하게 작업해야 함
예) 회원가입시 아이디나 비밀번호 조건 설계, 제약조건(기본키 등)




-외부 스키마(External Schema)
사용자에게 필요한 데이터베이스를 정의
여러 개의 외부 스키마 존재 가능
서브 스키마라고도 함
-개념 스키마(Conceptual Schema)
조직 전체의 관점에서 이해하고 표현
하나의 데이터베이스에는 하나의 개념 스키마가 존재
데이터베이스의 접근권한, 보안정책, 무결성 규칙에 관한 명세를 정의
-내부 스키마(Internal Schema)
물리적인 저장장치의 관점에서 표현
하나의 데이터베이스에는 하나의 내부 스키마가 존재

응용 프로그램에 대한 데이터의 종속성, 의존적

데이터 구조가 변경되어도 응용 프로그램이 록변경될 필요가 없음
논리적 독립성 + 물리적 독립성으로 실현됨

논리적인 독립성
개념스키마의 변경이 내부 스키마에 영향이 되지 않음.
논리적 구조가 변경되어도 응용 프로그램에는 영향이 없음.
(데이터와 프로그램의 서로의 관계 영향 x)
물리적인 독립성
내부스키마 변동 시 개념 스키마, 외부 스키마는 영향을 받지 않음
저장장치의 구조변경은 응용프로그램과 개념스키마에 영향을 주지 않음
요구사항 대응 난이도가 증가하고, 데이터의 중복성 및 복잡도 증가.
데이터 유지보수 비용이 증가함.
응용 프로그래머가 작성한 프로그램을 이용
은행 창구, 관공서의 민원 접수처 등에서 데이터를 다루는 업무
일반 사용자가 응용 프로그램을 사용할 수 있도록 인터페이스 제공(C, JAVA...)
SQL를 사용하여 업무를 처리하는 IT부서의 담당자
데이터 검색, 데이터 구조 변경, 데이터에 관한 통계처리
데이터 베이스를 총괄, 데이터 전체 파악 및 관리, 데이터 이동 및 복사 등 제반 업무
스키마 정의, 데이터 설계, 구현, 유지보수의 전과정을 담당
데이터 베이스 구조, 데이터 형식, 접근 방식 등 데이터베이스를 구축하거나 수정할 목적으로 사용함. 스키마를 기술하기 위해 사용되며, 주로 DB 설계자(DBA)가 사용함
데이터의 검색, 삽입, 삭제, 갱식에 사용됨.
사용자와 DBMS 간의 인터페이스를 제공함
무결성, 보안 및 권한 제어, 회복 등을 하기 위한 언어
TCL(Transcation Control Language)


DBMS or In Programming Language
