데이터베이스(4)
-
NestJS에서 엔티티 간 관계 설정하기
NestJS는 TypeScript 기반의 서버 사이드 프레임워크로, TypeORM과 함께 데이터베이스와의 연동을 지원합니다. 이 글에서는 NestJS 애플리케이션에서 엔티티 간 관계를 설정하고 관리하는 방법에 대해 다루고자 합니다. 1. 엔티티(Entities)란?NestJS에서 엔티티는 데이터베이스 테이블에 매핑되는 객체입니다. 각 엔티티는 애플리케이션의 데이터 모델을 정의하며, TypeORM을 사용하여 데이터베이스와의 CRUD 작업을 수행할 수 있습니다.2. 엔티티 간 관계의 중요성엔티티 간의 관계 설정은 데이터베이스 설계에서 중요한 부분입니다. 제대로 된 관계 설정은 데이터의 일관성을 유지하고 복잡한 쿼리를 간소화하는 데 도움을 줍니다. NestJS에서는 다양한 종류의 관계를 지원하며, 각각의 관계..
2024.07.03 -
트랙잭션(Transaction)과 ACID 특성
트랙잭션(Transaction)이란?여러 개 작업을 하나로 묶은 실행 유닛으로, 특정 작업으로 시작해서 묶여 있는 모든 작업들을 다 완료해야 정상적으로 종료됩니다.예를 들어 하나의 트랜잭션 안에 속해 있는 여러 작업 중 단 하나라도 오류가 나게 되면, 이 트랜잭션에 속한 모든 작업은 실패한 것이 됩니다.하나의 트랜잭션은 실행을 마치면 commit(완료) 되거나, 처음부터 다시 시작하는 rollback(변경취소) 됩니다.완료가 되거나, 되지 못하는 걸로 나눠지기 때문에 트랜잭션은 미완료된 작업없이 모든 작업을 성공해야만 합니다.그래서 트랜잭션을 작업수행의 논리적 단위라고 합니다.- commit (커밋)작업의 트랜잭션이 성공적으로 끝났고, 데이터베이스가 일관된 상태로 완료된 것을 뜻합니다.커밋을 수행..
2024.06.25 -
MongoDB란?
RDB(Relational Database)는 데이타의 독립성이 높고, 고수준의 데이타 조작언어(DML-Data Manipulation Language)을 사용하여 결합, 제약, 투영 등의 관계 조작에 의해 비약적으로 표현능력을 높일 수 있습니다. 또한 이들의 관계 조작에 의해 자유롭게 구조를 변경할 수 있다는 것이 RDB의 특징입니다. 데이터의 독립성: 데이터는 테이블에 저장되며, 이 테이블들 사이의 관계를 통해 다양한 조작이 가능합니다. DML (Data Manipulation Language): SQL과 같은 언어를 통해 데이터를 효율적으로 조회하고, 조작할 수 있습니다. 유연한 구조 변경: 데이터의 구조는 관계 조작을 통해 변경이 가능하며, 이는 데이터베이스의 설계와 유지 보수에 유연성을 제공합니..
2023.11.05 -
데이터 베이스란
데이터 베이스란 데이터의 집합체이다 우리가 데이터베이스를 사용하는 이유는 옛날에는 데이터베이스가 없어도 데이터를 저장하고 보관을 하였다 하지만 데이터베이스를 사용하고나서 오랜기간동안 데이터를 보관과 관리를 할수있게되었다 데이터베이스의 카테고리는 크게 두가지가 있다 관계형 데이터베이스(RDBMS)와 비관계형 데이터베이스 (Non-relational)가 있습니다 관계형 데이터베이스는 이름 그대로 데이터 사이의 관계에 기초를 둔 데이터베이스를 말합니다 관계형 데이터베이스에서 모든 데이트는 2차원 테이블로 표현이 가능홥니다 Colunn(열): 컬럼은 테이블의 id, name, field 의미합니다 Row(행) : 로우는 각 항목들의 값입니다. 2번 행을 보면 김신영, Frontend라는 실제 값을 가지고있습니다..
2023.08.12