데이터분석 모델링
- 현실세계에서 사용되는 데이터를 MySQL에 어떻게 옮겨 놓을 것인지를 결정하는 과정
-> 분석과 설계 과정 중에서 가장 중요한 과정 중의 하나가 ‘데이터베이스 모델링’이다.
-> 데이터(정보)들은 단편적으로 저장하는 게 아닌 테이블이라는 형식에 맞춰서 넣어야 한다.
MySql 데이터베이스 구조와 관련 용어
계정 하나에 데이터베이스가 여러 개 있을 수 있음 데이터베이스 안에 테이블들이 원하는 만큼(프로젝트에 따라서) 있음 테이블의 집합 == 데이터베이스
데이터 | 하나하나의 단편적인 정보, 정보는 있으나 아직 체계화 되지 못한 상태 |
레코드(=로우=행) | 실질적인 데이터를 말하며 하나의 행으로 행 데이터라고도 부른다. |
필드(=컬럼=열) | 같은 종류의 데이터를 표시. 각 테이블은 열로 구성된다. 회원테이블의 경우에는 아이디, 회원명, 연락처, 이메일, 주소 5개의 열로 구성되어 있다. |
데이터 형식 | 열의 데이터 형식. 데이터 형식은 테이블을 생성할 때 열 이름과 함께 지정해야 한다. |
PK(Primary Key): 기본 키 열 |
기본 키(또는 주키)열은 각 행을 구분하는 유일한 열을 말한다. 기본 키 열은 중복되어서는 안되고, 비어 있어서도 안된다. |
각 테이블에는 기본 키가 하나만 지정되어 있어야 한다. | |
테이블 | 회원이나 제품의 데이터를 입력하기 위해, 표 형태로 표현한 것 |
데이터베이스(DB) | 테이블이 저장되는 저장소(주로 원통 모양으로 표현) |
각 데이터베이스는 서로 다른 고유한 이름을 가지고 있어야 한다. | |
DBMS | 데이터베이스를 관리하는 시스템 또는 소프트웨어(My SQL은 DBMS) |
데이터 + 데이터 = 레코드 + 필드 = 테이블
데이터의 집합 -> 레코드의 집합 -> 테이블의 집합 -> 데이터베이스
DBMS 언어
1. 데이터 정의언어: DDL(Data Definition Language)
- 데이터베이스의 테이블과 같은 데이터 구조를 정의하는데 사용되는 명령어들로(생성, 변경, 삭제, 이름변경) 데이터 구조와 관련된 명령어들을 말한다.
SQL문 | 내용 |
CREATE | 데이터베이스 객체를 생성한다. |
DROP | 데이터베이스 객체를 삭제한다. |
ALTER | 기존에 존재하는 데이터베이스 객체를 다시 정의하는 역할을 한다. |
RENAME | 기존에 존재하는 테이블명을 변경한다. |
TRUNCATE | 테이블 또는 테이블의 지정된 파티션에서 모든 행을 제거한다. |
2. 데이터조작언어: DML(Data Manipulation Language)
- 스키마객체의 데이터를 입력, 수정, 조회, 삭제한다.
-> CRUD (모든 데이터를 조작할 수 있다.)
SQL문 | 내용 |
INSERT | 데이터베이스 객체에 데이터를 입력한다. ( C -> create ) |
DELETE | 데이터베이스 객체의 데이터를 삭제한다. ( Delete ) 레코드를 삭제한다. |
UPDATE | 기존에 존재하는 데이터베이스 객체의 데이터를 수정한다. ( Update ) |
SELECT | 데이터베이스 객체로부터 데이터를 검색한다. ( Read ) |
3. 데이터제어언어: DCL(Data Control Language)
- 권한의 설정과 회수
SQL문 | 내용 |
GRANT | 데이터테이스 사용자 권한 설정 |
REVOKE | 데이터베이스 사용자 권한 회수 |
4. 데이터제어언어: TCL(Transaction Control Language)
- 트랜잭션의 처리
SQL문 | 내용 |
COMMIT | 데이터베이스 트랜잭션의 내용의 업데이트를 영구적으로 확정한다. |
ROLLBACK | 데이터베이스에서 업데이트 오류가 발생할 때, 이전상태로 되돌리는 것을 말한다. |
SAVEPOINT | 특정부분에서 트랜잭션을 취소시킬 수 있다. |
'멀티캠퍼스 풀스택 과정 > 데이터베이스' 카테고리의 다른 글
데이터베이스2-2 데이터의 삽입(INSERT), 수정(UPDATE), 삭제(DELETE) (0) | 2022.01.19 |
---|---|
데이터베이스2-1 JDBC로 JAVA와 DB의 연동(SELECT문) (0) | 2022.01.19 |
데이터베이스1-4 내장함수와 그룹함수 (0) | 2022.01.18 |
데이터베이스1-3 기본 명령어와 SELECT문 및 연산자와 기본문제 (4) | 2022.01.16 |
데이터베이스1-1 DB, DBMS, SQL (0) | 2022.01.16 |