1. 데이터베이스

데이터베이스(Database) : 데이터의 집합 저장소

데이터베이스의 종류

RDBMS(Relational Database Management System) : 관계형 데이터베이스 RDB를 관리할 수 있는 소프트웨어

→ 데이터 간의 관계를 정의하고, 이 관계를 바탕으로 복잡한 쿼리를 실행할 수 있는 기능 제공

관계형 데이터베이스 특징

  1. 테이블(Table) : 행(row)과 열(column)로 구성된 테이블에 데이터 저장

    → 특정 규칙과 제약 조건으 통해 데이터를 저장함으로써 데이터의 무결성(정확성, 일관성, 유효성)을 유지

  2. 관계(Relatioships) : 테이블 간의 관계를 외래 키(Foreign Key)를 통해 설정됨

    → 1:1 관계, 1:다 관계, 다:다 관계 등 다양한 유형의 관계 지원

  3. SQL(Structured Query Language) : RDBMS에서 데이터를 정의하고, 관리하기 위한 표준 언어

    → 데이터를 생성(Create), 읽기(Read), 갱신(Update), 삭제(Delete)하는 작업 수행

  4. 키(Keys)

    image.png

  5. 트랜잭션(Transaction) : 하나의 논리적인 작업 단위

    트랜잭션의 ACID 속성

  6. 정규화 (Normalization) : 데이터의 중복을 줄이고, 일관성과 무결성을 유지하기 위해 데이터를 구조화하는 프로세스

    image.png

  7. 데이터 무결성 (Data Integrity)

  8. 인덱스 (Index) : 특정 열의 검색 성능을 향상시키기 위해 사용

    → 테이블의 데이터를 정렬, 효율적으로 접근할 수 있도록 지원

    ※ 인덱스가 많아지면 삽입, 수정 작업의 성능에 영향을 미칠 수 있음

SQL 기본 문법

DDL(Data Definition Language) : 데이터베이스 구조 정의

| CREATE | 새로운 데이터베이스 및 테이블 생성 | id, uername, email 컬럼을 가진 users 테이블 생성 CREATE TABLE users ( id INT PRIMARY KEY, username VARCHAR(50), email VARCHAR(100) ); | | --- | --- | --- | | ALTER | 기존 데이터베이스 및 테이블 구조 수정 | users에 created_at 컬럼 추가 ALTER TABLE users ADD created_at TIMESTAMP; | | DROP | 데이터베이스 및 테이블 삭지 | users 테이블 삭제 : DROP TABLE users; example 데이터베이스 삭제 : DROP DATABASE example; |