728x90

전체 글 226

[데이터베이스]DBMS, RDBMS, SQL, NoSQL 용어 정리

1. DBMS (Database Management System)개념: 데이터베이스 관리 시스템(DBMS)은 데이터베이스를 생성, 관리, 조작할 수 있도록 하는 소프트웨어입니다.주요 기능: 데이터를 저장, 검색, 수정, 삭제하고 데이터 무결성과 보안을 유지합니다.예시: MySQL, PostgreSQL, Oracle, MongoDB, SQLite 등.특징:데이터의 효율적인 관리와 데이터 무결성을 유지하며, 동시성 제어와 백업 기능을 제공합니다.데이터 중복을 줄이고, 데이터의 일관성을 보장하여 애플리케이션 성능을 최적화합니다.2. RDBMS (Relational Database Management System)개념: 관계형 데이터베이스 관리 시스템(RDBMS)은 관계형 모델을 기반으로 데이터 간의 관계를 테..

[데이터베이스] 데이터베이스 정규화(Database Normalization)

데이터의 중복을 최소화하고 데이터 무결성을 유지하기 위해 데이터베이스 테이블을 구조화하는 과정 1차 정규화 (1NF: First Normal Form)목표: 각 열이 원자값(Atomic Value)만을 가지도록 테이블을 구성합니다.조건:모든 열은 원자적 값을 가져야 하며, 한 셀에 여러 개의 값이 들어가면 안 됩니다.테이블에 반복되는 그룹이 없어야 합니다.예시:학생 테이블이 학생의 여러 과목 점수를 하나의 셀에 입력한 경우(예: 과목 점수 90, 85, 78 등)는 1NF에 위배됩니다. 과목 점수는 각각 분리하여 입력해야 합니다. -- 비정규화된 테이블 (반복 그룹 포함)학생ID | 이름 | 과목 | 점수---------------------------------1 | 홍길동 | 수학..

[데이터베이스] 인덱스(Index)

데이터베이스 테이블에 대한 검색 동작 속도를 높여주는 자료구조인덱스의 장점빠른 검색 성능: 인덱스를 사용하면 데이터 검색 속도가 크게 향상되므로, 대규모 데이터베이스에서 성능이 중요한 조회 작업에서 유리합니다.정렬 및 집계 성능 향상: 인덱스가 설정된 열에 대해 정렬, 집계 등의 작업이 빨라집니다.고유성 보장: 유니크 인덱스를 통해 특정 열이 고유한 값을 가지도록 보장할 수 있습니다.인덱스의 단점추가 저장 공간 필요: 인덱스는 별도의 데이터 구조를 사용하여 저장되기 때문에 추가적인 저장 공간이 필요합니다.데이터 수정 시 성능 저하: 데이터를 삽입, 수정, 삭제할 때 인덱스도 업데이트되어야 하므로, 잦은 수정 작업이 필요한 열에 인덱스를 적용하면 성능이 저하될 수 있습니다.과도한 인덱스 사용 시 성능 저하..

[데이터베이스] Commit과 Rollback

데이터베이스에서 트랜잭션을 제어하는 명령어로, 트랜잭션의 상태를 최종 확정하거나 취소하는 역할 1. Commit개념: 트랜잭션이 성공적으로 완료된 후, 데이터베이스에 변경 사항을 영구적으로 반영하는 명령어입니다.특징:Commit을 실행하면 트랜잭션 내에서 이루어진 모든 변경 사항이 데이터베이스에 저장됩니다.Commit 이후에는 데이터가 확정되어 Rollback으로 되돌릴 수 없습니다.주로 트랜잭션이 성공적으로 완료되었을 때 사용하며, 다른 사용자도 Commit된 데이터를 조회할 수 있게 됩니다.예시:  위 예제에서는 새로운 직원을 추가하고, 급여를 갱신한 후 Commit을 실행하여 데이터베이스에 변경 사항을 확정합니다.BEGIN; INSERT INTO 직원 (이름, 나이, 부서ID) VALUES ('홍길..

[데이터베이스] 제약조건 PK, FK, UK (Primary, Foreign, Unique Key)

제약 조건(Constraint)은 테이블에 저장되는 데이터의 무결성을 유지하기 위해 정의하는 규칙 1. 기본 키(Primary Key, PK)개념: 테이블 내에서 각 레코드를 고유하게 식별할 수 있는 열(또는 열의 조합)입니다. 기본 키가 설정된 열은 중복된 값을 가질 수 없으며, NULL 값을 허용하지 않습니다.특징:각 테이블에 하나의 기본 키만 정의할 수 있습니다.기본 키로 지정된 열은 해당 테이블에서 각 행을 고유하게 식별합니다.중복된 데이터 입력이 불가능하며, 데이터베이스에서 데이터 무결성을 보장합니다.예시:학생 테이블에서 학생ID를 기본 키로 설정하면, 각 학생을 고유하게 식별할 수 있습니다. 2. 외래 키(Foreign Key, FK)개념: 한 테이블의 열이 다른 테이블의 기본 키를 참조하여,..

[데이터베이스] 데이터 무결성(Data Integrity)

데이터의 정확성, 일관성, 신뢰성을 유지하는 것을 의미데이터 무결성의 중요성데이터의 신뢰성 유지: 데이터 무결성은 데이터베이스 내 정보가 정확하고 일관되도록 보장하여, 시스템 내 데이터를 신뢰할 수 있게 합니다.중복과 모순 방지: 데이터의 중복을 줄이고, 서로 모순되는 데이터가 저장되는 것을 방지합니다.데이터 오류 방지: 오류가 포함된 데이터가 저장되는 것을 막아, 데이터베이스의 품질과 신뢰성을 높입니다.데이터 무결성의 유형엔티티 무결성(Entity Integrity)개념: 테이블의 각 행을 고유하게 식별하기 위해 기본 키(Primary Key)를 사용하여, 동일한 값이 중복되지 않도록 보장하는 무결성 규칙입니다.규칙: 기본 키는 중복될 수 없고, NULL 값을 가질 수 없습니다.예: 직원 테이블에서 직..

[데이터베이스] 기본적인 SQL (데이터 조회,삽입,수정,삭제/테이블 생성,수정,삭제,제어)

1. 데이터 조회(DML): SELECTSELECT: 테이블에서 데이터를 조회할 때 사용합니다.WHERE: 조건에 맞는 데이터를 필터링합니다.ORDER BY: 데이터를 정렬합니다.GROUP BY: 특정 컬럼을 기준으로 데이터를 그룹화합니다.HAVING: 그룹화된 데이터에 조건을 적용합니다.JOIN: 여러 테이블에서 데이터를 결합하여 조회합니다.-- 예시: 이름이 '홍길동'인 사람을 조회SELECT * FROM 테이블명WHERE 이름 = '홍길동';-- 예시: 나이별로 그룹화하여, 나이별 평균 급여를 조회SELECT 나이, AVG(급여) FROM 테이블명GROUP BY 나이HAVING AVG(급여) > 3000;-- 예시: 나이순으로 오름차순 정렬하여 조회SELECT * FROM 테이블명ORDER BY 나..

728x90