6. 데이터 모델링 기초
정보처리기사 실기 데이터 모델링 기초 완전 정리
데이터 모델링은 현실 세계의 데이터를 데이터베이스에 저장할 수 있도록 구조화하는 작업이다.
정보처리기사 실기에서는 데이터입출력 구현 영역의 핵심 개념이다.
데이터, 정보, 데이터베이스, DBMS, 스키마, 개념적 모델링, 논리적 모델링, 물리적 모델링까지 연결해서 이해해야 한다.
1. 정의
1-1. 데이터란?
데이터는 아직 처리되지 않은 값이나 사실이다.
쉽게 말하면 어떤 대상에 대한 원래 상태의 기록이다.
예를 들면 다음은 모두 데이터다.
- 홍길동
- user01
- 2026-06-12
- 30000
- 서울
- 게시글 제목
데이터는 그 자체만으로는 의미가 부족할 수 있다.
예를 들어 “30000”이라는 값만 보면 무엇을 의미하는지 알기 어렵다.
하지만 “상품 가격이 30000원이다”라고 하면 의미가 생긴다.
1-2. 정보란?
정보는 데이터를 목적에 맞게 처리해서 의미 있게 만든 결과다.
데이터가 재료라면 정보는 그 재료를 가공한 결과물이다.
예를 들어 다음 데이터를 보자.
- 상품명: 키보드
- 가격: 30000
- 재고: 15
이 데이터를 해석하면 다음 정보를 얻을 수 있다.
- 키보드 가격은 30000원이다.
- 키보드는 현재 15개 남아 있다.
- 재고가 있으므로 주문 가능하다.
즉, 정보는 의사결정에 사용할 수 있는 의미 있는 데이터다.
1-3. 데이터베이스란?
데이터베이스는 데이터를 체계적으로 저장하는 공간이다.
영어로는 Database라고 한다.
줄여서 DB라고 부른다.
예를 들어 쇼핑몰 시스템은 다음 데이터를 저장해야 한다.
- 회원 정보
- 상품 정보
- 주문 정보
- 결제 정보
- 배송 정보
- 리뷰 정보
이 데이터를 아무렇게나 파일에 저장하면 찾기 어렵고 관리하기 어렵다.
그래서 데이터베이스에 구조적으로 저장한다.
1-4. 데이터 모델링이란?
데이터 모델링은 현실 세계의 데이터를 데이터베이스에 저장할 수 있도록 구조화하는 작업이다.
쉽게 말하면 데이터를 어떤 표에 저장할지, 표끼리는 어떻게 연결할지 정하는 과정이다.
예를 들어 게시판 시스템을 만든다고 가정한다.
게시판에는 다음 데이터가 필요하다.
- 회원 데이터
- 게시글 데이터
- 댓글 데이터
- 첨부파일 데이터
이 데이터를 하나의 큰 표에 모두 넣으면 중복과 오류가 생길 수 있다.
그래서 회원 테이블, 게시글 테이블, 댓글 테이블, 첨부파일 테이블로 나누어 설계한다.
이렇게 데이터를 저장하기 좋은 구조로 정리하는 작업이 데이터 모델링이다.
2. 필요한 이유
2-1. 데이터를 정확하게 저장하기 위해 필요하다
시스템은 데이터를 저장하고 조회한다.
데이터 구조가 잘못되면 기능이 제대로 동작하지 않는다.
예를 들어 게시글에 작성자 정보가 제대로 연결되어 있지 않으면 누가 쓴 글인지 알 수 없다.
주문 정보와 회원 정보가 연결되어 있지 않으면 누가 주문했는지 알 수 없다.
데이터 모델링은 데이터를 정확하게 저장하기 위한 설계 작업이다.
2-2. 데이터 중복을 줄이기 위해 필요하다
같은 데이터를 여러 곳에 반복해서 저장하면 문제가 생긴다.
예를 들어 회원 이름을 게시글마다 함께 저장한다고 가정한다.
회원이 이름을 바꾸면 그 회원이 작성한 모든 게시글의 이름도 수정해야 한다.
수정하지 못한 데이터가 있으면 서로 다른 이름이 남을 수 있다.
이런 문제를 줄이기 위해 회원 정보는 회원 테이블에 한 번만 저장하고, 게시글에서는 회원 번호만 참조한다.
2-3. 데이터 조회와 관리가 쉬워진다
데이터 모델링을 잘하면 필요한 데이터를 쉽게 찾을 수 있다.
예를 들어 게시글 목록을 조회할 때 게시글 테이블에서 제목과 작성일을 가져오고, 회원 테이블에서 작성자 이름을 가져올 수 있다.
테이블 구조가 명확하면 SQL 작성도 쉬워진다.
SQL은 데이터베이스에서 데이터를 조회, 추가, 수정, 삭제할 때 사용하는 언어다.
2-4. 시스템 변경에 대응하기 쉬워진다
데이터 구조가 잘 설계되어 있으면 기능을 추가하기 쉽다.
예를 들어 처음에는 게시글만 있다가 나중에 댓글 기능을 추가한다고 하자.
게시글 테이블과 회원 테이블이 잘 분리되어 있으면 댓글 테이블을 추가해서 연결할 수 있다.
하지만 처음부터 모든 데이터를 하나의 테이블에 넣었다면 수정이 복잡해질 수 있다.
2-5. 실제 개발에서 해결하는 문제
- 데이터가 중복 저장되는 문제
- 데이터 수정 시 일부만 바뀌는 문제
- 데이터 삭제 시 필요한 정보까지 사라지는 문제
- 테이블 구조가 복잡해서 SQL 작성이 어려운 문제
- 기능 추가 시 데이터 구조를 크게 바꿔야 하는 문제
- 회원, 주문, 게시글 같은 데이터 관계를 파악하기 어려운 문제
3. 핵심 개념
3-1. 데이터
데이터는 현실 세계에서 수집한 값이나 사실이다.
데이터는 시스템에서 저장하고 처리하는 기본 재료다.
예를 들어 회원 이름, 상품 가격, 주문 날짜, 게시글 제목이 데이터다.
3-2. 정보
정보는 데이터를 의미 있게 처리한 결과다.
예를 들어 주문 데이터를 분석해서 “이번 달 판매량이 지난달보다 증가했다”는 결론을 얻으면 정보가 된다.
3-3. 데이터베이스
데이터베이스는 데이터를 체계적으로 저장하고 관리하는 공간이다.
데이터베이스는 여러 사용자가 데이터를 안전하게 저장하고 조회할 수 있게 해준다.
3-4. DBMS
DBMS는 Database Management System의 약자다.
한국어로는 데이터베이스 관리 시스템이라고 한다.
DBMS는 데이터베이스를 관리하는 소프트웨어다.
대표적인 DBMS는 다음과 같다.
- Oracle
- MySQL
- MariaDB
- PostgreSQL
- SQL Server
데이터베이스가 데이터를 저장하는 창고라면 DBMS는 그 창고를 관리하는 프로그램이다.
3-5. 테이블
테이블은 데이터를 행과 열로 저장하는 구조다.
엑셀 표와 비슷하게 생각하면 된다.
예를 들어 회원 테이블은 다음과 같은 구조를 가질 수 있다.
| member_id | login_id | name | |
|---|---|---|---|
| 1 | user01 | 홍길동 | user01@example.com |
| 2 | user02 | 김철수 | user02@example.com |
3-6. 행
행은 테이블에서 가로 방향의 데이터 한 줄이다.
레코드라고도 한다.
회원 테이블에서 회원 한 명의 정보가 행 하나가 된다.
3-7. 열
열은 테이블에서 세로 방향의 데이터 항목이다.
컬럼 또는 속성이라고도 한다.
회원 테이블에서 member_id, login_id, name, email이 열이다.
3-8. 키
키는 테이블에서 행을 식별하거나 테이블끼리 연결할 때 사용하는 값이다.
대표적인 키는 기본키와 외래키다.
기본키
기본키는 테이블에서 각 행을 유일하게 식별하는 값이다.
영어로는 Primary Key라고 한다.
줄여서 PK라고 한다.
예를 들어 회원 테이블의 member_id는 회원을 구분하는 기본키가 될 수 있다.
외래키
외래키는 다른 테이블의 기본키를 참조하는 값이다.
영어로는 Foreign Key라고 한다.
줄여서 FK라고 한다.
예를 들어 게시글 테이블에 member_id가 있으면, 이 값은 회원 테이블의 member_id를 참조할 수 있다.
이렇게 하면 게시글을 작성한 회원을 알 수 있다.
3-9. 스키마
스키마는 데이터베이스의 구조를 정의한 것이다.
어떤 테이블이 있는지, 각 테이블에 어떤 컬럼이 있는지, 테이블끼리 어떤 관계가 있는지 정리한 구조다.
쉽게 말하면 데이터베이스의 설계도다.
3-10. 데이터 모델
데이터 모델은 데이터를 어떤 구조로 표현하고 저장할지 정한 방식이다.
대표적인 데이터 모델에는 계층형 데이터 모델, 네트워크형 데이터 모델, 관계형 데이터 모델, 객체지향 데이터 모델이 있다.
정보처리기사 실기에서는 특히 관계형 데이터 모델을 중요하게 봐야 한다.
3-11. 개념적 모델링
개념적 모델링은 현실 세계의 중요한 데이터를 큰 개념 단위로 정리하는 단계다.
아직 실제 DBMS나 테이블 구조를 자세히 정하지 않는다.
예를 들어 게시판 시스템에서는 회원, 게시글, 댓글 같은 중요한 대상을 찾는다.
개념적 모델링의 대표 산출물은 ERD다.
ERD는 Entity Relationship Diagram의 약자다.
엔터티와 관계를 그림으로 표현한 것이다.
3-12. 논리적 모델링
논리적 모델링은 개념적 모델링 결과를 데이터베이스 논리 구조로 구체화하는 단계다.
엔터티를 테이블 형태로 바꾸고, 속성, 기본키, 외래키, 관계를 정리한다.
하지만 아직 특정 DBMS의 물리적인 저장 방식까지는 고려하지 않는다.
3-13. 물리적 모델링
물리적 모델링은 논리적 모델을 실제 데이터베이스에 구현할 수 있도록 구체화하는 단계다.
테이블 이름, 컬럼 이름, 데이터 타입, 인덱스, 제약조건 등을 정한다.
예를 들어 name 컬럼은 VARCHAR(50), created_at 컬럼은 DATETIME처럼 정한다.
데이터 타입은 컬럼에 어떤 종류의 값을 저장할지 정하는 형식이다.
4. 주변 기초 개념
4-1. 엔터티
엔터티는 데이터로 관리해야 하는 대상이다.
예를 들어 회원, 상품, 주문, 게시글, 댓글이 엔터티가 될 수 있다.
엔터티는 보통 나중에 테이블이 된다.
4-2. 속성
속성은 엔터티가 가지는 세부 정보다.
회원 엔터티의 속성은 회원번호, 아이디, 이름, 이메일이 될 수 있다.
속성은 보통 나중에 테이블의 컬럼이 된다.
4-3. 관계
관계는 엔터티끼리 연결되는 방식이다.
예를 들어 회원은 게시글을 작성한다.
이때 회원과 게시글 사이에는 관계가 있다.
4-4. ERD
ERD는 Entity Relationship Diagram의 약자다.
엔터티, 속성, 관계를 그림으로 표현한 것이다.
데이터 모델링에서 매우 자주 사용된다.
4-5. 무결성
무결성은 데이터가 정확하고 일관된 상태를 유지하는 성질이다.
예를 들어 존재하지 않는 회원 번호로 게시글이 저장되면 데이터 무결성이 깨진다.
4-6. 제약조건
제약조건은 데이터가 잘못 저장되지 않도록 정하는 규칙이다.
예를 들어 회원 아이디는 비어 있으면 안 된다는 조건을 만들 수 있다.
대표적인 제약조건에는 NOT NULL, UNIQUE, PRIMARY KEY, FOREIGN KEY가 있다.
4-7. 정규화
정규화는 데이터 중복을 줄이고 이상 현상을 줄이기 위해 테이블을 분리하는 과정이다.
이상 현상은 데이터 삽입, 수정, 삭제 과정에서 생기는 문제다.
정규화는 다음 글에서 더 자세히 다룰 수 있다.
4-8. 인덱스
인덱스는 데이터 검색 속도를 높이기 위한 구조다.
책의 목차나 색인과 비슷하다.
인덱스를 잘 사용하면 조회 속도가 빨라질 수 있다.
하지만 인덱스를 너무 많이 만들면 데이터 추가, 수정, 삭제 성능이 떨어질 수 있다.
4-9. 트랜잭션
트랜잭션은 데이터베이스에서 하나의 작업 단위로 처리되는 연산 묶음이다.
예를 들어 주문 생성과 결제 처리는 함께 성공하거나 함께 실패해야 할 수 있다.
이런 작업 단위를 트랜잭션이라고 한다.
4-10. SQL
SQL은 데이터베이스에서 데이터를 다루는 언어다.
데이터 조회, 추가, 수정, 삭제에 사용한다.
대표적인 SQL 명령어는 SELECT, INSERT, UPDATE, DELETE다.
4-11. 관계형 데이터베이스
관계형 데이터베이스는 데이터를 테이블 형태로 저장하고, 테이블 사이의 관계를 이용해 데이터를 관리하는 데이터베이스다.
현재 실무에서 가장 많이 사용되는 데이터베이스 형태다.
4-12. 데이터 타입
데이터 타입은 컬럼에 저장할 수 있는 값의 종류다.
예를 들어 숫자, 문자, 날짜 같은 타입이 있다.
- INT = 정수
- VARCHAR = 문자열
- DATE = 날짜
- DATETIME = 날짜와 시간
5. 실제 흐름
5-1. 데이터 모델링 전체 흐름
데이터 모델링은 보통 다음 순서로 진행된다.
- 업무 내용을 파악한다.
- 데이터로 관리해야 할 대상을 찾는다.
- 엔터티를 도출한다.
- 엔터티의 속성을 정리한다.
- 엔터티 사이의 관계를 찾는다.
- 개념적 모델을 작성한다.
- 논리적 모델을 작성한다.
- 물리적 모델을 작성한다.
- 실제 데이터베이스 테이블로 구현한다.
5-2. 1단계: 업무 내용 파악
먼저 시스템이 어떤 업무를 처리하는지 파악한다.
게시판 시스템이라면 글 작성, 글 조회, 댓글 작성, 파일 첨부 같은 업무가 있다.
5-3. 2단계: 엔터티 도출
업무에서 데이터로 관리해야 할 대상을 찾는다.
게시판 시스템에서는 다음 엔터티를 찾을 수 있다.
- 회원
- 게시글
- 댓글
- 첨부파일
5-4. 3단계: 속성 정리
각 엔터티가 어떤 정보를 가져야 하는지 정리한다.
회원 엔터티는 다음 속성을 가질 수 있다.
- 회원번호
- 아이디
- 비밀번호
- 이름
- 이메일
- 가입일
게시글 엔터티는 다음 속성을 가질 수 있다.
- 게시글번호
- 제목
- 내용
- 작성일
- 작성자
5-5. 4단계: 관계 정리
엔터티 사이의 관계를 정리한다.
게시판 시스템에서는 다음 관계가 있다.
- 회원은 게시글을 작성한다.
- 회원은 댓글을 작성한다.
- 게시글은 댓글을 가진다.
- 게시글은 첨부파일을 가질 수 있다.
5-6. 5단계: 개념적 모델링
회원, 게시글, 댓글, 첨부파일 같은 큰 개념을 ERD로 표현한다.
이 단계에서는 현실 세계의 중요한 데이터와 관계를 파악하는 데 집중한다.
5-7. 6단계: 논리적 모델링
개념적 모델을 테이블 구조에 가깝게 정리한다.
회원은 MEMBER 테이블이 된다.
게시글은 POST 테이블이 된다.
댓글은 COMMENT 테이블이 된다.
각 테이블의 기본키와 외래키를 정한다.
5-8. 7단계: 물리적 모델링
실제 DBMS에 맞게 테이블과 컬럼을 구체화한다.
컬럼 이름, 데이터 타입, 길이, 제약조건, 인덱스를 정한다.
예를 들어 회원 이름은 VARCHAR(50), 가입일은 DATETIME으로 정할 수 있다.
6. 예시
6-1. 게시판 시스템 데이터 모델링 예시
업무: 게시판 시스템
엔터티
- 회원
- 게시글
- 댓글
- 첨부파일
관계
- 회원은 게시글을 작성한다.
- 회원은 댓글을 작성한다.
- 게시글은 댓글을 가진다.
- 게시글은 첨부파일을 가질 수 있다.
논리 테이블
- MEMBER
- POST
- COMMENT
- ATTACH_FILE
6-2. 테이블 설계 예시
MEMBER
- member_id: 회원번호, 기본키
- login_id: 로그인 아이디
- password: 비밀번호
- name: 이름
- email: 이메일
POST
- post_id: 게시글번호, 기본키
- member_id: 작성자 회원번호, 외래키
- title: 제목
- content: 내용
- created_at: 작성일
6-3. SQL 테이블 생성 예시
CREATE TABLE member (
member_id INT PRIMARY KEY,
login_id VARCHAR(50) NOT NULL,
name VARCHAR(50) NOT NULL,
email VARCHAR(100)
);
CREATE TABLE post (
post_id INT PRIMARY KEY,
member_id INT NOT NULL,
title VARCHAR(200) NOT NULL,
content TEXT,
created_at DATETIME,
FOREIGN KEY (member_id) REFERENCES member(member_id)
);
7. 코드 또는 설정 설명
7-1. MEMBER 테이블 설명
CREATE TABLE member (
CREATE TABLE은 새 테이블을 만드는 SQL 명령어다.
member는 회원 정보를 저장하는 테이블 이름이다.
member_id INT PRIMARY KEY,
member_id는 회원번호를 저장하는 컬럼이다.
INT는 정수를 저장하는 데이터 타입이다.
PRIMARY KEY는 기본키를 의미한다.
즉, member_id는 회원 한 명을 유일하게 구분하는 값이다.
login_id VARCHAR(50) NOT NULL,
login_id는 로그인 아이디를 저장하는 컬럼이다.
VARCHAR(50)은 최대 50자까지 저장할 수 있는 문자열 타입이다.
NOT NULL은 반드시 값이 있어야 한다는 뜻이다.
name VARCHAR(50) NOT NULL,
name은 회원 이름을 저장하는 컬럼이다.
이름도 필수 값이므로 NOT NULL이 붙어 있다.
email VARCHAR(100)
email은 이메일을 저장하는 컬럼이다.
VARCHAR(100)은 최대 100자까지 저장할 수 있다는 뜻이다.
7-2. POST 테이블 설명
CREATE TABLE post (
post는 게시글 정보를 저장하는 테이블이다.
post_id INT PRIMARY KEY,
post_id는 게시글번호다.
게시글 하나를 유일하게 구분하는 기본키다.
member_id INT NOT NULL,
member_id는 게시글을 작성한 회원번호다.
게시글은 반드시 작성자가 있어야 하므로 NOT NULL로 설정했다.
title VARCHAR(200) NOT NULL,
title은 게시글 제목이다.
VARCHAR(200)은 최대 200자까지 저장할 수 있다는 뜻이다.
제목은 필수 값이므로 NOT NULL로 설정했다.
content TEXT,
content는 게시글 내용이다.
TEXT는 긴 문자열을 저장할 때 사용하는 데이터 타입이다.
created_at DATETIME,
created_at은 작성일이다.
DATETIME은 날짜와 시간을 함께 저장하는 데이터 타입이다.
FOREIGN KEY (member_id) REFERENCES member(member_id)
FOREIGN KEY는 외래키를 의미한다.
post 테이블의 member_id가 member 테이블의 member_id를 참조한다는 뜻이다.
즉, 게시글은 반드시 실제 존재하는 회원과 연결되어야 한다.
8. 주의점
8-1. 데이터와 정보를 구분해야 한다
데이터는 처리되지 않은 값이나 사실이다.
정보는 데이터를 처리해서 의미 있게 만든 결과다.
| 구분 | 의미 | 예시 |
|---|---|---|
| 데이터 | 처리되지 않은 값 | 30000 |
| 정보 | 의미 있게 처리한 결과 | 상품 가격은 30000원이다. |
8-2. 데이터베이스와 DBMS를 구분해야 한다
데이터베이스는 데이터를 저장하는 공간이다.
DBMS는 데이터베이스를 관리하는 소프트웨어다.
MySQL, Oracle, PostgreSQL은 DBMS다.
8-3. 엔터티와 테이블을 구분해야 한다
엔터티는 현실 세계에서 데이터로 관리해야 하는 대상이다.
테이블은 데이터베이스에서 데이터를 저장하는 구조다.
회원이라는 개념은 엔터티다.
MEMBER라는 실제 저장 구조는 테이블이다.
8-4. 속성과 컬럼을 구분해야 한다
속성은 엔터티가 가지는 정보다.
컬럼은 테이블에서 세로 방향의 데이터 항목이다.
개념 단계에서는 속성이라고 부르고, 실제 테이블 단계에서는 컬럼이라고 부르는 경우가 많다.
8-5. 기본키와 외래키를 구분해야 한다
기본키는 자기 테이블에서 행을 유일하게 구분하는 값이다.
외래키는 다른 테이블의 기본키를 참조하는 값이다.
| 구분 | 의미 | 예시 |
|---|---|---|
| 기본키 | 자기 테이블의 행을 유일하게 구분 | member.member_id |
| 외래키 | 다른 테이블의 기본키를 참조 | post.member_id |
8-6. 개념적, 논리적, 물리적 모델링을 구분해야 한다
개념적 모델링은 현실 세계의 중요한 대상을 찾는 단계다.
논리적 모델링은 테이블 구조와 관계를 논리적으로 정리하는 단계다.
물리적 모델링은 실제 DBMS에 맞게 구현 구조를 정하는 단계다.
| 구분 | 핵심 | 예시 |
|---|---|---|
| 개념적 모델링 | 중요한 대상과 관계 파악 | 회원, 게시글, 댓글 |
| 논리적 모델링 | 테이블, 속성, 키 정리 | MEMBER, POST 테이블 설계 |
| 물리적 모델링 | DBMS에 맞게 구현 | VARCHAR, INT, 인덱스 설정 |
8-7. 모든 데이터를 한 테이블에 넣으면 안 된다
처음에는 한 테이블에 모든 데이터를 넣는 것이 쉬워 보일 수 있다.
하지만 데이터가 많아지면 중복이 생긴다.
수정, 삭제, 조회도 어려워진다.
회원, 게시글, 댓글처럼 역할이 다른 데이터는 적절히 분리해야 한다.
8-8. 물리적 모델링에서는 성능도 고려해야 한다
논리적으로 맞는 구조라도 실제 운영에서 느릴 수 있다.
물리적 모델링에서는 인덱스, 데이터 타입, 저장 용량, 조회 성능을 함께 고려해야 한다.
실무에서는 정확성과 성능을 함께 봐야 한다.
9. 요약
데이터 모델링은 현실 세계의 데이터를 데이터베이스에 저장할 수 있도록 구조화하는 작업이다.
데이터는 처리되지 않은 값이고, 정보는 데이터를 의미 있게 처리한 결과다.
데이터베이스는 데이터를 체계적으로 저장하는 공간이다.
DBMS는 데이터베이스를 관리하는 소프트웨어다.
테이블은 데이터를 행과 열로 저장하는 구조다.
기본키는 행을 유일하게 구분하는 값이고, 외래키는 다른 테이블의 기본키를 참조하는 값이다.
데이터 모델링은 개념적 모델링, 논리적 모델링, 물리적 모델링 순서로 진행된다.
개념적 모델링은 중요한 대상을 찾는 단계다.
논리적 모델링은 테이블, 속성, 키, 관계를 정리하는 단계다.
물리적 모델링은 실제 DBMS에 맞게 테이블, 컬럼, 데이터 타입, 제약조건, 인덱스를 정하는 단계다.
정보처리기사 실기에서는 데이터, 정보, DB, DBMS, 스키마, 데이터 모델링 단계의 차이를 정확히 구분해야 한다.
10. 핵심 용어 정리
데이터 = 아직 처리되지 않은 값이나 사실
정보 = 데이터를 목적에 맞게 처리해서 의미 있게 만든 결과
데이터베이스 = 데이터를 체계적으로 저장하고 관리하는 공간
DB = Database의 줄임말
DBMS = 데이터베이스를 관리하는 소프트웨어
테이블 = 데이터를 행과 열로 저장하는 구조
행 = 테이블에서 가로 방향의 데이터 한 줄
레코드 = 테이블의 행을 부르는 말
열 = 테이블에서 세로 방향의 데이터 항목
컬럼 = 테이블의 열을 부르는 말
속성 = 엔터티가 가지는 세부 정보
엔터티 = 데이터로 관리해야 하는 대상
관계 = 엔터티끼리 연결되는 방식
키 = 행을 식별하거나 테이블끼리 연결할 때 사용하는 값
기본키 = 테이블에서 각 행을 유일하게 식별하는 값
PK = Primary Key의 줄임말
외래키 = 다른 테이블의 기본키를 참조하는 값
FK = Foreign Key의 줄임말
스키마 = 데이터베이스의 구조를 정의한 설계도
데이터 모델 = 데이터를 어떤 구조로 표현하고 저장할지 정한 방식
데이터 모델링 = 현실 세계의 데이터를 데이터베이스에 저장할 수 있도록 구조화하는 작업
개념적 모델링 = 현실 세계의 중요한 데이터와 관계를 큰 개념 단위로 정리하는 단계
논리적 모델링 = 개념적 모델을 테이블, 속성, 키, 관계 중심으로 구체화하는 단계
물리적 모델링 = 논리적 모델을 실제 DBMS에 맞게 구현 구조로 바꾸는 단계
ERD = 엔터티와 관계를 그림으로 표현한 다이어그램
무결성 = 데이터가 정확하고 일관된 상태를 유지하는 성질
제약조건 = 데이터가 잘못 저장되지 않도록 정하는 규칙
정규화 = 데이터 중복과 이상 현상을 줄이기 위해 테이블을 분리하는 과정
이상 현상 = 데이터 삽입, 수정, 삭제 과정에서 생기는 문제
인덱스 = 데이터 검색 속도를 높이기 위한 구조
트랜잭션 = 데이터베이스에서 하나의 작업 단위로 처리되는 연산 묶음
SQL = 데이터베이스에서 데이터를 조회, 추가, 수정, 삭제할 때 사용하는 언어
관계형 데이터베이스 = 데이터를 테이블 형태로 저장하고 테이블 관계를 이용해 관리하는 데이터베이스
데이터 타입 = 컬럼에 저장할 수 있는 값의 종류
AD
제휴 광고
일부 링크는 제휴 링크이며, 구매 또는 가입 시 일정 수수료를 받을 수 있습니다.
AD