개발/MySQL

MYSql - DB 기본 이론

잇(IT) 2022. 5. 18. 17:33
728x90

1. Database CRUD


1.1 데이터 베이스의 정의

- 특정 조직의 업무를 수행(목표 달성)하는 데 필요한 상호 관련된 데이터들의 모임

 

1.1.1 통합된 데이터(Integrated Data) : 자료의 중복을 배제한 데이터의 모임 

1.1.2 저장된 데이터(Stored Data) : 컴퓨터가 접근할 수 있는 저장 매체에 저장된 자료

1.1.3 운영 데이터(Operational Data) : 조직의 고유한 업무를 수행하는 데 존재 가치가 확실하고 없어서는 안 될 반드시 필요한 자료

1.1.4 공용 데이터(Shared Data) : 여러 응용 시스템들이 공통으로 소유하고 유지하는 자료


1.2 데이터 베이스의 특징

 

1.2.1 실시간 접근성(Real-Time Accessibility) : 수시적이고 비정형적인 질의(조회)에 대하여 실시간 처리에 의한 응답이 가능

1.2.2 계속적인 변화(Continuous Evolution) : 데이터베이스의 상태는 동적, 즉 새로운 데이터의 삽입(Insert), 삭제(Delete), 갱신(Update)로 항상 최신의 데이터를 유지

1.2.3  동시공용(Concurrent Sharing) : 데이터베이스는 서로 다른 목적을 가진 여러 응용자들을 위한 것이므로 다수의 사용자가 동시에 같은 내용의 데이터를 이용할 수 있어야함

1.2.4 내용에 의한 참조(Content Reference) : 데이터베이스에 있는 데이터를 참조할 때 데이터 레코드의 주소나 위치에 의해서가 아니라, 사용자가 요구하는 데이터 내용으로 데이터를 검색


1.3 데이터베이스 시스템

 - 데이터베이스 시스템이란 데이터베이스를 이용하여 자료를 저장하고 관리하여 정보를 얻어내는데 필요한 컴퓨터 중심의 시스템


1.4 데이터베이스 시스템의 구성요소

 

1.4.1 데이터베이스

1.4.2 스키마

1.4.3 DBMS(데이터베이스 관리 시스템)

1.4.4 데이터베이스 언어

1.4.5 데이터베이스 컴퓨터

1.4.6 데이터베이스 사용자


1.5 SQL(Structured Query Language) - 구조적 질의 언어

 - 해당 질의 언어를 통해 데이터베이스를 제어하고 관리

 

1.5.1 DDL(Data Definition Language) - 데이터 정의어

 - 데이터베이스를 정의하는 언어

 - 데이터리를 생성, 수정, 삭제

 - 데이터의 전체의 골격을 결정하는 역할을 하는 언어

 

종류 역할
CREATE 데이터베이스, 테이블 등을 생성
ALTER 테이블을 수정
DROP 데이터베이스, 테이블을 삭제
TRUNCATE 테이블을 초기화

1.5.1.1 SCHEMA, DOMAIN, TABLE, VIEW, INDEX를 정의하거나 변경 또는 삭제할 때 사용

1.5.1.2 데이터베이스 관리자나 데이터베이스 설계자가 사용

 

1.5.2 DML(Data Manipulation Language) - 데이터 조작어

 - 정의된 데이터베이스에 입력된 레코드를 조회하거나 수정하거나 삭제

종류 역할
SELECT 데이터를 조회
INSERT 데이터를 삽입
UPDATE 데이터를 수정
DELETE 데이터를 삭제

1.5.2.1 데이터베이스 사용자가 응용 프로그램이나 질의어를 통하여 저장된 데이터를 실질적으로 처리하는데 사용하는 언어

1.5.2.2 데이터베이스 사용자와 데이터베이스 관리 시스템 간의 인터페이스를 제공

 

1.5.3 DCL(Data Control Language) - 데이터 제어어

 - 데이터베이스에 접근하거나 객체에 권한 부여 등

 

종류 역할
GRANT 특정 데이터베이스 사용자에게 특정 작업에 대한 수행권한 부여
REVOKE 특정 데이터베이스 사용자에게 특정 작업에 대한 수행 권한을 박탈, 회수
COMMIT 트랜잭션의 작업을 원래대로 처리
ROLLBACK 트랜잭션의 작업을 취소 및 원래대로 복구

1.5.3.1 데이터를 제어하는 언어

1.5.3.2 데이터의 보안, 무결성, 회복, 병행 수행제어 등을 정의


1.6 테이블 구성요소

 

1.6.1 릴레이션 = 테이블 (엑셀의 sheet)

 - 관계형 데이터베이스에서 정보를 저장하는 기본단위 (행과열, 고유한 이름)

1.6.1.1 속성(Attribute : 어트리뷰트)

 - 하나의 열은 여러개의 속성 정보 표시 (동일 이름의 속성 존재 불가)

1.6.1.2 차수(Degree)

 - 하나의 릴레이션에 들어있는 속성의 수, 최소 1개 이상의 차수 존재

1.6.1.3 튜플(Tuple, 레코드)

 - 엔티티의 특정 인스턴스에 관한 사실(값)의 모임

1.6.1.4 카디날리티(Cardinality)

 - 릴레이션의 튜플 갯수

1.6.1.5 도메인(Domain)

 - 속성들이 가질 수 있는 값 (예 : 성별 - 남 녀)

1.6.1.6 슈퍼키(특정 튜플 식별 : 유일성 만족) > 후보키(최소성 만족) > 기본키 (대체키)


 

728x90