2025/04 23

#9 SQL

목차데이터베이스우리가 살아가는 세상에는 상상할 수 없을 만큼 방대한 양의 데이터가 존재하며, 지금 이 순간에도 끊임없이 새로운 데이터가 생겨나고 있다.예를들어, 아침마다 타는 지하철이 몇 시 몇 분에 어느역으로 도착하는지, 오늘 학교 식당의 메뉴는 무엇인지 같은 정보들도 모두 데이터다.이처럼 일상 속에서 생성되는 수많은 정보들을 효율적으로 저장하고 관리하는 공간이 바로 데이터베이스이다. 관계형 데이터베이스 (RDB: Relational Database)모든 데이터를 행(Row)과 열(Column)로 이루어진 테이블(Table) 형태로 저장하는 방식을 말한다.서로 다른 테이블끼리도 관계(Relation)를 맺어 데이터를 조합해서 활용이 가능하다. 이러한 RDB를 관리, 감독하기 위한 시스템을 RDBMS(R..

SQL/SQLD 2025.04.07

#8 트랜잭션과 NULL

목차트랜잭션(Transaction)트랜잭션은 데이터베이스에서 하나의 작업 단위를 말한다.여러 개의 데이터 처리 작업들을 하나로 묶어서, 전부 성공하거나 실패하도록 만드는 것이다. 왜 트랜잭션이 필요할까?데이터베이스는 정합성과 일관성을 지켜야 한다.하지만 여러 작업을 하다가 중간에 실패하면 데이터가 꼬일 수 있다. 예를 들어:은행계좌 이체 로직- "A 계좌에서 10만 원 출금"-"B 계좌에 10만원 입금" 이 둘은 항상 함께 이루어져야 한다. 하지만 출금은 됐는데 입금이 실패한다면?...-> 돈이 사라진다이는 정합성 붕괴를 말하며, 이를 방지하기 위해 트랜잭션이 필요하다. 트랜잭션의 특징A- 원자성 (Atomicity) : 트랜잭션은 전부 실행되거나 전혀 실행되지 않아야 한다.C- 일관성 (Consiste..

SQL/SQLD 2025.04.07

#7 반정규화(De-Normalization)

목차  반정규화데이터의 조회 성능을 향상시키기 위해 데이터의 중복을 허용하거나 데이터를 그룹핑하는 과정이다.반정규화 과정은 거치면 조회 성능은 향상될 수 있으나 입력, 수정, 삭제 성능은 저하될 수 있으며 데이터 정합성 이슈가 발생할 수 있다는 점이다. 정합성(整合性, Data Integrity)데이터가 일관성 있고, 정확하며 신뢰할 수 있는 상태를 유지하는 것을 말한다.즉, 데이터베이스에 저장된 데이터들이 논리적으로 모순 없이 서로 잘 들어맞고, 데이터의 상태가 시스템이 기대하는 규칙과 조건들을 잘 만족하고 있다는 뜻이다.만약 정합성이 무너진다면???- 고객의 계좌 잔액이 실제보다 더 많거나 적게 표시됨.- 주문 내역은 있는데 사용자 정보가 없음.- 중복 데이터, 누락된 데이터 발생.- 잘못된 통계를 ..

SQL/SQLD 2025.04.06
728x90