등등...여러 가지 이유가 있다.
파일처리로 응용프로그램을 만들 경우 문제점
여러 개의 파일이 존재하므로 해당 파일 사이에 중복 데이터가 생길 수도 있다.
접근하거나 수정하기 어렵고, 무결성을 보존하기도 어렵다.
Physical level
데이터가 어떻게 저장되는지 정의한다.
Logical level
DB에 저장된 데이터 사이의 관계 등을 설명한다.
View level
보안의 목적으로 숨길 데이터는 숨기고 필요한 데이터는 공개하는 의사결정을 한다.
인스턴스 란?
DB상의 실제 콘텐츠
스키마 란?
논리적 스키마와 물리적 스키마로 나뉜다.
논리적 스키마는 DB의 전체적인 논리적 구조를 말한다.
물리적 스키마는 DB의 물리적인 구성을 말한다.
스키마란 논리적, 물리적 측면에서 데이터가 구성되는 방식을 규정하는 데이터로,
다시 말해 메타데이터의 집합 이라고 할 수 있다.
Physical data independence
논리적 스키마를 바꾸지 않고도 물리적 스키마를 수정할 수 있는 경우 물리 데이터가 독립적이라고 할 수 있다.
DBMS 란 사용자가 데이터베이스에 접근하기 위한 도구를 갖춘 시스템이다.
Data Definition Language
데이터베이스의 스키마를 구성하는 문법이다.
Data Manipulation Language
데이터 모델을 조작하기 위한 언어이다. 쿼리라고도 부른다.
데이터베이스에서 명령어를 전달하기 위해 특수하게 쓰이는 비절차적 쿼리 언어이다. 항상 하나의 테이블만 반환한다.
오직 데이터 조작에만 쓰이는 언어이기 때문에 튜링 기계 언어가 아니다. (일반적인 알고리즘을 만들 수 없다)
트랜잭션 이란 DB 프로그램에서 하나의 논리적인 기능을 수행하기 위한 명령어의 집합이다.
Tow-tier architecture
DB가 사용자 컴퓨터에 설치되어있음 + 클라이언트가 서버에 접근해서 DB기능 호출
Three-tier architecture
클라이언트는 화면 인터페이스에만 접근 + 클라이언트는 애플리케이션 서버와 통신
애플리케이션 서버가 실제 DB 시스템과 통신 -> 데이터 변조

일반 유저(naive users), 애플리케이션 개발자, 데이터 분석가, 데이터 관리자로 나뉜다.
이 중 DB 관리자는 DB의 중요한 요소를 결정하고 DML로 보낸 요청을 처리하는 등 실제로 DB를 변조할 수 있다.
그에 비해 DB 시스템 유저는 응용프로그램을 이용하며, 응용프로그램의 인터페이스를 통해 DB에 간접적으로 요청을 보낼 수 있다.