DB
-
[DB] SQL DML: INSERT, DELETE, UPDATE 문으로 데이터 조작하기DB 2025. 10. 19. 20:53
Data Manipulation Language in SQL지난 포스팅에서 SELECT 문을 통해 데이터를 '조회'하는 방법에 대해서 알아봤고, 이번에는 SQL의 또 다른 핵심 기능인 데이터 조작(Data Manipulation) 을 알아보자. SQL에서 데이터 조작이란, 테이블 안의 데이터를 추가(INSERT) 하고, 삭제(DELETE) 하며, 수정(UPDATE) 하는 것을 말한다. 이 명령어들을 합쳐서 흔히 DML(Data Manipulation Language) 이라고 부른다. 아 물론 'SELECT'도 DML에 속한다. INSERTINSERT 명령은 테이블에 새로운 행을 추가할 때 사용한다.INSERT INTO VALUES (value1, value2, value3, ...); 예를 들어,..
-
[DB] SELECT 문으로 데이터 조회하기 (Basic Retrieval Queries in SQL)DB 2025. 10. 18. 20:22
지난 포스팅에서 테이블을 만들고 제약조건으로 구조를 정의했다면, 이제부터는 그 안에 들어 있는 데이터를 조회(Query) 하는 법을 알아보자. SQL의 진짜 힘은 "원하는 데이터를 정확히 꺼내오는 능력"에 있다. 그 핵심이 바로 SELECT 문이다. SQL에서 데이터 조회의 기본 구조SQL에서 데이터를 가져올 때 사용하는 명령은 바로 SELECT 문이다. 모든 SELECT 문은 다음과 같은 기본 형태를 가진다. SELECT FROM WHERE ; 예를 들어,SELECT Name FROM Employee WHERE Age >= 20; 이 쿼리는 "20세 이상인 직원의 이름을 가져와라"는 의미다. SELECT–FROM–WHERE 구조 SELECT 문은 크게 세 부분으로 구성된다. 절역할대응되는 관계..
-
[DB] SQL DDL 핵심: CREATE TABLE, 데이터 타입, 제약조건DB 2025. 10. 18. 19:05
이번 포스팅에서는 SQL의 기본 구조 중에서도 데이터 정의(Data Definition) 와 데이터 타입(Data Types), 제약조건 (Constraints)을 중심으로 다뤄보겠다. 조회(SELECT) 문 이전까지의 핵심부분인 SQL이 어떻게 스키마를 정의하고, 테이블을 만들고, 각 속성(attribute)의 타입을 다루는지를 알아보자. SQL의 배경 SQL(Structured Query Language)은 단순히 쿼리 언어가 아니라, 관계형 데이터베이스를 조작하기 위한 표준 언어이다. 그 뿌리는 tuple calculus (튜플 해석) 에서 시작되었으며, 초기에는 SQUARE라는 언어로 제안되었다.이후 IBM에서 SYSTEM R 프로젝트를 위해 개발하며, SEQUEL (Structured Engl..
-
[DB] ER-to-Relational Mapping 알고리즘DB 2025. 10. 14. 17:44
지난번엔 ER 다이어그램 설계와 제약조건에 대해 이야기했었다. 오늘은 그다음 단계, ER 다이어그램을 실제 데이터베이스 테이블로 바꾸는 과정, 즉 ER-to-Relational Mapping 을 알아보자. 쉽게 말하면 "그림으로 그려둔 관계들을 실제 DB 테이블로 옮기는 작업"이다. 개념 모델을 논리 모델로 옮기는 과정이라고 보면 된다. 위 ER 다이어그램과 관계형 데이터베이스를 예시로 계속 설명하겠다. 우리가 지켜야 할 원칙들본격적으로 매핑을 시작하기 전에, 먼저 ER-to-Relational Mapping의 세 가지 목표(Goals) 를 짚고 가자. 목표 1. 모든 정보를 잃지 말자 (Preserve All Information)ER 다이어그램에 있는 모든 속성과 관계는 릴레이션 스키마로 옮겼을..
-
[DB] 관계형 모델과 무결성 제약조건DB 2025. 10. 13. 20:37
관계형 모델 (Relational Model)의 탄생과 기본 개념관계형 모델은 E. Codd가 1970년에 발표한 논문 ["A Relational Model for Large Shared Data Banks"] 에 기반하고 있다. 이 모델이 큰 반향을 일으킨 이유는, 단순함(simplicity)과 수학적 기반(mathematical foundation) 덕분이다. 데이터를 마치 테이블 (Table) 처럼 단순하게 표현하고, 그 기반에는 집합 이론 (set theory)과 1차 술어 논리(first-order predicate logic)라는 이론이 깔려 있다. 비공식 용어 vs. 공식 용어우리가 보통 쓰는 말이랑 데이터베이스에서 쓰는 공식 용어가 조금 달라서 헷갈릴 때가 많다. 간단하게 정리해 봤..
-
[DB] ER 모델과 데이터베이스 설계DB 2025. 9. 26. 15:26
Database Design Process우리는 데이터베이스를 설계할 때 몇 가지 단계를 거쳐야한다.Requirements collection and analysis(요구사항 수집 및 분석): 어떤 데이터를 담을지, 그 데이터로 뭘 할 건지 알아내는 단계이다. Conceptual design(개념적 설계): 실제 세상의 복잡한 데이터들을 논리적인 모델로 바꿔주는 작업.Logical design(논리적 설계): 개념적 설계를 바탕으로 특정 DBMS(Oracle, MySQL 등)에 맞게 테이블 구조를 설계하는 단계. Entities & Attributes & Relationships개념 Entity-Relationship(ER) 모델은 Entities, relationships, attributes로 ..