티스토리

남느
검색하기

블로그 홈

남느

namn.tistory.com/m

남느 님의 블로그입니다.

구독자
0
방명록 방문하기

주요 글 목록

  • 관계(Relation) 관계(Relation)관계형 데이터베이스는 데이터 중복을 방지하기 위해 테이블간 관계를 사용합니다.테이블 간 관계에는 네 종류가 있습니다.일대일 관계(1:1, One to One)일대다 관계(1:N, One to Many)다대일 관계(N:1, Many to One)다대다 관계(N:M, Many to Many)PL/SQL이나 MyBatis를 사용하던 사람들에게 주의사항데이터베이스 테이블은 부모 자식 관계가 없습니다.하지만 ORM에는 부모 자식 관계가 있다고 생각하세요.관계 옵션옵션설명eagertrue 설정 시 find(), findOne(), QueryBuilder 사용 시 참조하는 엔티티를 항상 조회합니다.기본값 fasle.cascadetrue 설정 시 insert, update 쿼리 시 참조하는 엔티티.. 공감수 0 댓글수 0 2025. 5. 7.
  • 저장소(Repository) 저장소(Repository)저장소는 데이터베이스 CRUD 작업 시 사용하는 인터페이스를 의미합니다.저장소는 동작시 구체적인 엔티티를 참조합니다.CRUD란?C; Create(insert)R; Read(select)U; Update(update)D; Delete(delete)저장소 사용 예시(NestJS)기본적인 CRUD 예제import { Injectable, NotFoundException } from '@nestjs/common';import { Repository } from 'typeorm';import { PostModel } from './entities/posts.entity';import { InjectRepository } from '@nestjs/typeorm';@Injectable()e.. 공감수 0 댓글수 0 2025. 5. 4.
  • 엔티티(Entity) 엔티티(Entity)엔티티는 데이터베이스의 테이블을 정의하는 클래스입니다.데이터베이스에 동일한 이름의 테이블이 없다면 엔티티를 이용해 테이블을 생성하고,테이블과 Entity의 정보가 다르면 Entity를 기준으로 테이블을 수정합니다.엔티티 작성 예시import { Column, Entity, Index, PrimaryGeneratedColumn } from 'typeorm';// 엔티티 선언. 파라미터에 값을 전달하지 않으면 클래스명과 동일한 테이블 생성@Entity({ name: 'posts' })// title에 대한 인덱스 이름 지정@Index('IDX_POST_TITLE', ['title']) // title과 authorId의 복합 유니크 인덱스 이름 지정@Index('IDX_POST_TITLE.. 공감수 1 댓글수 0 2025. 5. 4.
  • TypeORM 환경 설정 패키지 설치npm install typeorm # typeorm 설치npm install @nestjs/typeorm # nestjs를 사용한다면# 데이터베이스 드라이버 설치npm install pg # PostgreSQL or CockroachDBnpm install mysql # MySQL or MariaDBnpm install sqlite3 # SQLitenpm install mssql # Microsoft SQL Servernpm install oracledb # OracleNestJS 환경 설정app.module.ts파일import { Module } from '@nestjs/common';import { AppController } from './app.controller';import { A.. 공감수 0 댓글수 0 2025. 5. 4.
  • TypeORM ORM(Object Relational Mapping)ORM은 SQL을 사용하지 않고 프로그래밍 언어를 사용해 데이터를 다룰 수 있게 하는 기술입니다. ORM의 기본 개념은 객체 지향 언어와 관계형 데이터베이스의 사상의 불일치를 해결하기 위한 기술이지만현실적으로는 SQL을 배우기 귀찮아서 쓴다고 생각합니다.ORM의 장점SQL을 직접 작성하지 않아도 됩니다.데이터베이스가 추상화 되기 때문에 데이터베이스를 변경하기 쉽고, 데이터 이관도 쉬워집니다.ORM의 단점SQL을 모르는 상태로 ORM만 배우면 어떤 쿼리가 좋은 쿼리인지 알 수 없기 때문에 좋은 성능의 코드를 작성하기 어렵습니다.데이터베이스의 내부 동작 원리를 안 배우게 될 가능성이 높습니다.(근데 이건 'SQL'만 아는 상당수의 개발자들도 똑같긴 합니다.. 공감수 1 댓글수 0 2025. 5. 3.
    문의안내
    • 티스토리
    • 로그인
    • 고객센터

    티스토리는 카카오에서 사랑을 담아 만듭니다.

    © Kakao Corp.