Database란
여러 응용 프로그램 또는 사용자들이 공유, 이용할 수 있도록 통합하여 저장한 데이터의 집합
● DBMS
데이터베이스를 관리하기 위해 필요한 기능을 제공하는 소프트웨어
● 데이터베이스 스키마
- 데이터베이스 구조, 데이터 타입, 제약 조건에 대한 명세
- 데이터베이스 설계 단계에서 명시되며, 자주 변경되지 않음
● 데이터베이스 인스턴스
특정 시점에 데이터베이스에 실제로 저장되어 있는 데이터
데이터 모델링 3단계
1. 개념적 모델링
- 업무 중심적이고 포괄적인 수준의 모델링
- 추상화 수준이 가장 높음
- 업무의 핵심 엔터티(Entity)를 추출하는 단계
2. 논리적 모델링
- 데이터 정규화 수행
- 개념적 모델링의 결과를 토대로 세부속성, 식별자, 관계 등을 표현하는 단계
3. 물리적 모델링
- 논리 모델링이 끝나면 이를 직접 물리적으로 생성하는 과정
- 추상화 수준은 가장 낮음 (가장 구체적인 모델링이므로)
SQL (Structured Query Language)
1. DCL (Data Control Language, 데이터 제어 언어)
1) DB에서 데이터 객체 이용권한 부여
2) 데이터베이스에 접근하고 객체들을 사용하도록 권한부여(GRANT) 또는 회수(REVOKE)하는 명령어
- GRANT
- DENY
- REVOKE
2. DDL (Data Definition Language, 데이터 정의 언어)
1) 데이터의 저장 구조를 정의하는 언어 (테이블 등)
2) DB스키마, 테이블스키마를 정의, 수정, 삭제/인덱스의 생성 및 삭제
- CREATE : 생성
- DROP : 삭제
- ALTER : 수정
3. DML (Data Manipulation Language, 데이터조작 언어)
1) 데이터에 접근 및 조작하는 언어
2) 튜플의 검색, 삽입, 삭제 수정과 같은 명령문
- SELECT: 데이터 조회 명령어로 RETRIEVE 라고도 함
- INSERT UPDATE DELETE: 데이터에 변형을 가하는 명령어 (삽입, 수정, 삭제)
- SELECT
- INSERT
- UPDATE
- DELETE
4. TCL (Transaction Control Lanquage, 트랜잭션 제어어)
1) 논리적인 작업의 단위를 묶어서 DML 에 의해 조작된 결과를 작업단위(트랜잭션) 별로 제어하는 명령어
- COMMIT
- ROLLBACK
- SAVEPOINT
'기타' 카테고리의 다른 글
블랙박스 테스트와 화이트박스 테스트 (0) | 2025.01.08 |
---|---|
[Java] Static 변수와 Static 메소드 (0) | 2025.01.07 |
[MySQL] 명령어 모음 (기초) (0) | 2024.10.03 |
Git 기초 / Git 명령어 (1) | 2024.09.11 |
[python] 아나콘다 파이썬 버전 확인 / 다운그레이드 / 버전 변경 방법 / Solving environment 무한로딩 (0) | 2024.05.28 |