DBMS란?
- 다수의 사용자들이 DB내의 데이터를 접근할 수 있게 해주는 소프트웨어
- Oracle, MySQL 등이 해당한다
DBMS의 특징
- 독립성
- DB 구조의 변화가 프로그램에 영향을 미치지 않는다
- 물리적 독립성
- DB 사이즈를 늘리거나 데이터 파일을 늘려도 응용 프로그램을 수정할 필요가 없다
- 논리적 독립성
- DB는 다양한 응용 프로그램의 논리적 요구를 만족시켜 줄 수 있다
- 무결성
- 정확성, 일관성, 유효성이 유지되는 것을 말한다
- 스키마를 정의할 때 일관성 조건을 한번만 명시하면 DBMS가 자동으로 일관성 검사를 해준다
- 무결성 제약조건들끼리 충돌할 수 있다
- 개체 무결성
- 기본키의 값이 항상 유일하고, NULL 값을 가질 수 없다
- 참조 무결성
- 외래키가 참조하는 기본키는 값이 항상 존재해야 하며, 일관된 값을 가져야 한다
- FK는 참조하는 테이블의 PK값 중 하나와 일치해야 하며, 참조하는 테이블의 레코드가 삭제되는 경우 FK 테이블의 레코드도 삭제되거나 NULL 값으로 대체되어야 한다
- 도메인 무결성
- 각 칼럼의 데이터 타입이나 범위, 형식 등을 정의하고, 이를 벗어나는 값이 입력되지 않도록 제한한다
- 보안성
- 허가된 사용자들만 DB나 DB의 자원에 접근할 수 있도록 권한을 설정한다
RDBMS란?
- 관계형 데이터 모델을 기초로 한다
- 모든 데이터를 2차원 테이블 형태로 표현한다
- SQL을 통해 레코드들을 SELECT, INSERT, DELETE, UPDATE 한다
RDBMS의 특징