데이터 베이스
핵심요약 정리
데이터베이스의 장․단점
단점
장점
․ 데이터의 중복성 최소화
․ 전산화 비용 증가
․ 데이터의 공유
․ 데이터 유실 시 파일 회복이 어려움
․ 데이터의 일관성 유지
․ 시스템의 복잡화
․ 데이터의 무결성 유지
․ 처리 속도가 느림
․ 데이터의 논리적․물리적 독립성
․ 데이터 저장 공간의 절약
문제) 데이터베이스를 사용하는 경우의 장점이 아닌 것은?
가. 데이터 중복의 최대화
나. 데이터의 무결성 유지
다. 데이터의 공용 사용
라. 데이터의 일관성 유지
DBMS : 사용자와 데이터베이스 사이에 위치하여 데이터베이스를 관리하고,
사용자의 요구에 따라 정보를 생성해 주는 소프트웨어를 말한다
정의
기능
데이터베이스에 저장될 데이터의 타입과 구조에 대한 정의와 데이터를
이용하는 방식을 정의하는 기능
조작
기능
데이터의 검색, 갱신, 삽입, 삭제 등을 체계적으로 처리하기 위해
데이터 접근 수단을 정의하는 기능
제어
기능
데이터의 정확성과 보안성을 유지하기 위한 무결성, 보안 및 권한 검사,
병행 제어 등의 기능을 정의하는 기능
문제1) DBMS의 필수기능으로 거리가 먼 것은?
가. 정의기능
나. 조작기능
다. 제어기능
라. 연산기능
문제2) DBMS의 필수기능으로만 나열된 것은?
가. 정의기능, 조작기능, 제어기능
나. 예비기능, 회복기능, 조작기능
다. 참조기능, 보안기능, 저장기능
라. 보안기능, 병행 제어 기능, 검증기능
스키마(외부, 개념, 내부)
외부 스키마
(External Schema)
일반 사용자나 응용 프로그래머의 관점에서 본 스키마
개념 스키마
․기관이나 조직체의 관점에서 본 스키마
(Conceptual Schema)
․데이터베이스 접근 권한, 보안 정책, 무결성 규칙에 대한 정의를 포함
내부 스키마
(Internal Schema)
시스템 프로그래머나 시스템 설계자의 관점에서 본 스키마
1. 스키마(SCHEMA)의 종류가 아닌 것은?
가. 내부 스키마
나. 외부 스키마
다. 개념 스키마
라. 관계 스키마
2. 데이터베이스 시스템의 구성 요소로 가장 적절한 것은?
가. 개념 스키마, 핵심 스키마, 구체적 스키마
나. 외부 스키마, 핵심 스키마, 내부 스키마
다. 개념 스키마, 구체적 스키마, 응용 스키마
라. 외부 스키마, 개념 스키마, 내부 스키마
3. 데이터베이스 구조를 3단계의 스키마로 나눌 경우 포함되지 않는 것은?
가. 외부 스키마
나. 개념 스키마
다. 논리 스키마
라. 내부 스키마
데이터베이스 사용자
데이터베이스 관리자(DBA, Database Administrator), 응용 프로그래머, 일반 사용자
문제1) 데이터베이스 관리자(DBA; Data Base Administration)의 임무로 거리가 먼 것은?
가. 데이터베이스의 스키마를 수정하거나 물리적 저장 구조를 수정한다.
나. 사용자들에게 데이터 접근권한을 부여하여
각각의 사용자가 접근할 수 있는 데이터들을 제어한다.
다. 데이터베이스 도입 단계부터 실제 운영에 이르기까지 필요한 계획을 수립 및 수행한다.
라. 응용 프로그래머들이 작성한 데이터베이스 응용 시스템을 통하여 데이터베이스를 접근하고
필요한 정보를 획득한다. (응용프로그래머의 역할)
문제2) DBA의 역할로 거리가 먼 것은?
가. 스키마 정의
나. 데이터 사전의 유지 관리
다. 저장 구조와 접근 방법 선정
라. 응용 프로그램의 설계 및 개발
문제3) 데이터베이스 관리시 데이터사전이나 카탈로그를 유지 관리 할 수 있는 사람은?
가. 단말기 사용자
나. 데이터베이스 일반사용자
다. 응용 프로그래머
라. 데이터베이스 관리자
■ 릴레이션(Relation) = 테이블(Table)개념 및 특징
• 테이블(Table) : 관계형 데이터베이스에서 2차원 형태의 가로, 세로
즉, 행과 열의 형태로 나타내는 저장소를 의미하며 릴레이션(Relation)이라고도 함
• 튜플(Tuple) : 테이블에서 행을 나타내는 말로 레코드와 같은 의미임
• 속성(Attribute) : 테이블에서 열을 나타내는 말로 필드와 같은 의미임
• 도메인(Domain) : 하나의 속성이 취할 수 있는 값의 집합. 예) 성별의 경우 남, 여가 해당됨
• 차수(Degree) : 한 릴레이션(테이블)에서 속성(필드=열)의 개수 예) 4개(성명, 주소, 학교명, 성별)
• 기수(Cardinality) : 카디널리티라고도 하며 한 릴레이션(테이블)에서의 튜플의 개수.
예) 4개(제목행 제외)
데이터 정의 언어(DDL)
: 데이터를 입력하기 위한 테이블의 정의나 정보를 참조하기 위한
뷰 (가상테이블, 유도된 테이블)를 정의하기 위한 언어
명령어
기능
CREATE
데이터베이스, 테이블, 뷰 등의 작성
ALTER
데이터베이스, 테이블의 구조 변경
DROP
데이터베이스, 테이블, 뷰 등의 삭제 (CASCADE 무조건 삭제)
데이터 조작 언어(DML)
명령어
기능
SELECT
테이블에서 조건에 맞는 튜플을 검색함
INSERT
테이블에 새로운 튜플을 삽입함
DELETE
테이블에서 조건에 맞는 튜플을 삭제함
UPDATE
테이블에서 조건에 맞는 튜플의 내용을 변경함
SELECT 명령의 선택사항
• DISTINCT : 검색 결과값 중 중복된 별과값(레코드)를 제거
• WHERE : 검색 조건을 기술할 때 사용
• GROUP BY : 그룹에 대한 질의시 사용
• ORDER BY : 검색 결과에 대한 정렬을 수행
• ASC : 오름차순을 의미하며 생략하면 기본적으로 오름차순임 / DESC : 내림차순을 의미
데이터 제어 언어(DCL)
명령어
기능
GRANT
데이터를 조작하는 권한을 사용자에게 부여
REVOKE
데이터를 조작하는 권한의 부여 해제
COMMIT
데이터의 변경을 확정
ROLLBACK
데이터의 변경을 취소