it + it dev kysely nextjs PlanetScale + Kysely 데이터베이스 연동 (Next.js)Next.js 프로젝트 스택 검토 (2023) 대로 홈페이지를 다시 만들기 위한 두 번째 단계로 Kysely를 사용하여 PlanetScale 데이터베이스를 연동했다. PlanetScale 데이터베이스 셋업 https://planetscale.com/docs/tutorials/planetscale-quick-start-guide를 따라하면 정말 쉽게 새 데이터베이스를 만들 수 있다. 데이터베이스 생성이 끝나면 대시보드에서 DB 상태를 비롯해 각종 정보를 볼 수 있다. 우측의 Connect 버튼을 누르면 username 등의 DB 접속 정보를 확인할 수 있는데, Connect with에서 MySQL CLI를 선택하면 나오는 명령을 참고하여 일반적인 DB 클라이언트에서 접속 가능하다. 다음은 MySQLWork.. wono | discuss | tweet + it dev kysely [kysely] 1. 어떻게 처음 발견하게 되었는가 - 1?예전에 토이 프로젝트에서 nestjs를 사용하면서 mysql DB와 연결하기 위해 TypeORM을 사용했던 적이 있었다. 당시에는 DB를 먼저 설계하고 그 다음 DB를 서버와 연동했는데, 아래의 nestjs의 공식 문서에 TypeORM을 활용하는 방법이 친절하게 설명되어 있어서 이를 사용했었다. Database | NestJS - A progressive Node.js framework Documentation | NestJS - A progressive Node.js framework Nest is a framework for building efficient, scalable Node.js server-side applications. It uses progressive JavaScript, is b.. wono | discuss | tweet + it dev drizzle Drizzle ORM - PostgreSQLDrizzle ORM is a lightweight and performant TypeScript ORM with developer experience in mind. wono | discuss | tweet + it dev kysely Getting started | KyselyPrerequisites wono | discuss | tweet + it blog orm 왜 Nodejs ORM을 쓰지 말아야 할까https://yceffort.kr wono | discuss | tweet + it dev kysely nextjs [Next.js] Vercel Postgres 사용하기토끼리 wono | discuss | tweet + it dev prisma join Prisma ORM Now Lets You Choose the Best Join Strategy (Preview)Choose between DB-level and application-level joins to pick the most performant approach for your relation queries. wono | discuss | tweet + it dev sequelize inner join in single object sequelize ORM wono | discuss | tweet + it dev typeorm [TypeORM] Advanced: JOINTypeORM으로 구현하는 INNER/OUTER JOIN wono | discuss | tweet + it dev prisma [Node.js] Prisma 한방 쿼리로 성능 개선현재 NestJS와 MySQL 그리고 Prisma라는 ORM의 조합으로 백엔드 개발을 하고 있습니다. 개발을 진행하면서 늘 불편하다고 느껴왔던 부분에 대한 개선이 필요하다고 판단하여 진행하게 되었습니다. 불편했던 점을 어느정도 개선할 수 있는 가이드라인이 되었으면 하는 바램에서 이 글을 작성해봅니다. 내가 마주했던 문제점기능을 추가하게 되면서 table을 하나 더 Join하게 되었고 그 과정에서 기존에는 평균 100ms의 응답속도를 가지던 API가 최소 6배, 최대 10배 정도 느려지는 현상을 발견하였습니다. 다음 사진은 Thunder Client를 사용하여 테스트한 결과입니다. 보통 API의 응답 속도가 느려지는 원인은 여러가지가 있지만 이 경우는 한번에 가져올 수 있는 쿼리를 여러번에 걸쳐서 나눠서 .. wono | discuss | tweet + it dev prisma How Can I Disable Foreign Key? · Issue #8108 · prisma/prisma> https://www.prisma.io/docs/orm/prisma-schema/data-model/relations/relation-mode wono | discuss | tweet + it blog nodejs Node.js + SQL 조합을 위한 백엔드 라이브러리 8종 요약 | Disquiet*PostgreSQL와 연동된 Node 백엔드 서버를 원활하게 개발하기 위해 Prisma 외에 다른 ORM들을 찾아보고 있었습니다. 그러다가 웹개발 생태계 종특인 '똑같은 목적을 달성하기 위해 다양한 방법을 고안한 수많은 라이브러리들'이 여기서도 예외가 아님을 발견했습니... wono | discuss | tweet + it dev prisma [번역] 프리즈마 쓰지 마세요https://www.youtube.com/watch?v=jqhHXe746Ns&t=345s&ab_channel=ThePrimeTimeNode.js 프로젝트의 ORM을 뭘 쓸까 고민하던 중에, Primeagen이 리뷰한 재밌는 아티클이 있어서 번역해봤습니다.원본 wono | discuss | tweet + it dev prisma We migrated to SQL. Our biggest learning? Don’t use Prisma<p>Last week, we completed a migration that switched our underlying database from MongoDB to Postgres. We faced a lot of interesting challenges, and the biggest one of them was a two-time rewrite of the codebase. This article is for developers considering using Prisma for their production workloads ...</p> wono | discuss | tweet + it dev prisma Prisma - 객체 간의 관계 설정, 1:N, 1:1, N:MPrisma 객체간의 관계 설정 이번 게시물에서는 DB에서 자주 사용되고 블로그를 통해 많이 소개되었던 1대다(1:N), 1대1(1:1), 다대다(N:M) 관계들을 Prisma는 어떤 인터페이스를 사용해서 이를 설정할 수 있도록 하는지 알아볼것이다. 1 : N (One to Many Relations) 이 관계의 경우는 테이블 A의 하나의 레코드는 테이블 B의 여러 레코드와 관련되어 있다. 다만 테이블 B는 하나의 A의 레코드하고만 연결된다. 위 그림에서 와 같이 사용자는 여러번 주문을 할수 있다. 하지만 주문은 주문자로써의 사용자정보를 하나만 가진다. 1 : 1 (One to One Relations) 한명의 사용자는 하나의 프로필만 가지게 되고 프로필 입장에서도 하나의 사용자만 가지게 된다. N : .. wono | discuss | tweet + it dev prisma Prisma 와 kysely 함께 사용하기Prisma 와 kysely 함께 사용하기 wono | discuss | tweet + it dev prisma The Curious Case of Prisma스꾸딩 백엔드 팀에서는 Prisma를 활용해서 데이터베이스에 접근하고 있어요. 저희처럼 Prisma를 사용해보았다면, 원하는 데이터의 구조와 조건을 설정하기만 하면 데이터를 요청할 수 있다는 걸 아실 거예요. 심지어는 여러 테이블을 합쳐야 요청하려는 구조를 만들 수 있다고 해도요! 어라, 그럼 그 유명한 JOIN은 어디로 간 걸까요? Prisma에서는 JOIN이 필요하지 않은 걸까요? 이 질문을 하는 건, 팀원이 같은 물음을 던졌을 때 막연히 “내부적으로는 JOIN으로 처리하지 않을까?“라고 대답했던 기억이 있기 때문이에요. 그래서 여기서는 Prisma에는 정말 JOIN이 없는지, 없다면 왜인지를 확실히 알아보려고 해요. wono | discuss | tweet + it dev nextjs react Why are you using nextjs? wono | discuss | tweet + it dev react xlsx [Project] React로 Excel Download하기 & 컴포넌트 분리하기React에서 db로 불러온 직원 전체 목록을 Excel로 다운로드를 받고자 구현하였다.엑셀 다운로드를 위해서는 xlsx-js-style을 사용해야 하고 이를 위해 아래와 같이 install 해야한다. wono | discuss | tweet + it dev react print React 특정 컴포넌트 프린트하기(한 장/여러 장)회사에서 개발한 기능 중 환자의 리포트를 프린트하는 기능이 있었다. 전체 화면이 아니라 리포트 부분만 프린트해야 해서 ReactToPrint 라이브러리를 사용했다. wono | discuss | tweetNext
+ it dev kysely nextjs PlanetScale + Kysely 데이터베이스 연동 (Next.js)Next.js 프로젝트 스택 검토 (2023) 대로 홈페이지를 다시 만들기 위한 두 번째 단계로 Kysely를 사용하여 PlanetScale 데이터베이스를 연동했다. PlanetScale 데이터베이스 셋업 https://planetscale.com/docs/tutorials/planetscale-quick-start-guide를 따라하면 정말 쉽게 새 데이터베이스를 만들 수 있다. 데이터베이스 생성이 끝나면 대시보드에서 DB 상태를 비롯해 각종 정보를 볼 수 있다. 우측의 Connect 버튼을 누르면 username 등의 DB 접속 정보를 확인할 수 있는데, Connect with에서 MySQL CLI를 선택하면 나오는 명령을 참고하여 일반적인 DB 클라이언트에서 접속 가능하다. 다음은 MySQLWork.. wono | discuss | tweet
+ it dev kysely [kysely] 1. 어떻게 처음 발견하게 되었는가 - 1?예전에 토이 프로젝트에서 nestjs를 사용하면서 mysql DB와 연결하기 위해 TypeORM을 사용했던 적이 있었다. 당시에는 DB를 먼저 설계하고 그 다음 DB를 서버와 연동했는데, 아래의 nestjs의 공식 문서에 TypeORM을 활용하는 방법이 친절하게 설명되어 있어서 이를 사용했었다. Database | NestJS - A progressive Node.js framework Documentation | NestJS - A progressive Node.js framework Nest is a framework for building efficient, scalable Node.js server-side applications. It uses progressive JavaScript, is b.. wono | discuss | tweet
+ it dev drizzle Drizzle ORM - PostgreSQLDrizzle ORM is a lightweight and performant TypeScript ORM with developer experience in mind. wono | discuss | tweet
+ it dev prisma join Prisma ORM Now Lets You Choose the Best Join Strategy (Preview)Choose between DB-level and application-level joins to pick the most performant approach for your relation queries. wono | discuss | tweet
+ it dev prisma [Node.js] Prisma 한방 쿼리로 성능 개선현재 NestJS와 MySQL 그리고 Prisma라는 ORM의 조합으로 백엔드 개발을 하고 있습니다. 개발을 진행하면서 늘 불편하다고 느껴왔던 부분에 대한 개선이 필요하다고 판단하여 진행하게 되었습니다. 불편했던 점을 어느정도 개선할 수 있는 가이드라인이 되었으면 하는 바램에서 이 글을 작성해봅니다. 내가 마주했던 문제점기능을 추가하게 되면서 table을 하나 더 Join하게 되었고 그 과정에서 기존에는 평균 100ms의 응답속도를 가지던 API가 최소 6배, 최대 10배 정도 느려지는 현상을 발견하였습니다. 다음 사진은 Thunder Client를 사용하여 테스트한 결과입니다. 보통 API의 응답 속도가 느려지는 원인은 여러가지가 있지만 이 경우는 한번에 가져올 수 있는 쿼리를 여러번에 걸쳐서 나눠서 .. wono | discuss | tweet
+ it dev prisma How Can I Disable Foreign Key? · Issue #8108 · prisma/prisma> https://www.prisma.io/docs/orm/prisma-schema/data-model/relations/relation-mode wono | discuss | tweet
+ it blog nodejs Node.js + SQL 조합을 위한 백엔드 라이브러리 8종 요약 | Disquiet*PostgreSQL와 연동된 Node 백엔드 서버를 원활하게 개발하기 위해 Prisma 외에 다른 ORM들을 찾아보고 있었습니다. 그러다가 웹개발 생태계 종특인 '똑같은 목적을 달성하기 위해 다양한 방법을 고안한 수많은 라이브러리들'이 여기서도 예외가 아님을 발견했습니... wono | discuss | tweet
+ it dev prisma [번역] 프리즈마 쓰지 마세요https://www.youtube.com/watch?v=jqhHXe746Ns&t=345s&ab_channel=ThePrimeTimeNode.js 프로젝트의 ORM을 뭘 쓸까 고민하던 중에, Primeagen이 리뷰한 재밌는 아티클이 있어서 번역해봤습니다.원본 wono | discuss | tweet
+ it dev prisma We migrated to SQL. Our biggest learning? Don’t use Prisma<p>Last week, we completed a migration that switched our underlying database from MongoDB to Postgres. We faced a lot of interesting challenges, and the biggest one of them was a two-time rewrite of the codebase. This article is for developers considering using Prisma for their production workloads ...</p> wono | discuss | tweet
+ it dev prisma Prisma - 객체 간의 관계 설정, 1:N, 1:1, N:MPrisma 객체간의 관계 설정 이번 게시물에서는 DB에서 자주 사용되고 블로그를 통해 많이 소개되었던 1대다(1:N), 1대1(1:1), 다대다(N:M) 관계들을 Prisma는 어떤 인터페이스를 사용해서 이를 설정할 수 있도록 하는지 알아볼것이다. 1 : N (One to Many Relations) 이 관계의 경우는 테이블 A의 하나의 레코드는 테이블 B의 여러 레코드와 관련되어 있다. 다만 테이블 B는 하나의 A의 레코드하고만 연결된다. 위 그림에서 와 같이 사용자는 여러번 주문을 할수 있다. 하지만 주문은 주문자로써의 사용자정보를 하나만 가진다. 1 : 1 (One to One Relations) 한명의 사용자는 하나의 프로필만 가지게 되고 프로필 입장에서도 하나의 사용자만 가지게 된다. N : .. wono | discuss | tweet
+ it dev prisma The Curious Case of Prisma스꾸딩 백엔드 팀에서는 Prisma를 활용해서 데이터베이스에 접근하고 있어요. 저희처럼 Prisma를 사용해보았다면, 원하는 데이터의 구조와 조건을 설정하기만 하면 데이터를 요청할 수 있다는 걸 아실 거예요. 심지어는 여러 테이블을 합쳐야 요청하려는 구조를 만들 수 있다고 해도요! 어라, 그럼 그 유명한 JOIN은 어디로 간 걸까요? Prisma에서는 JOIN이 필요하지 않은 걸까요? 이 질문을 하는 건, 팀원이 같은 물음을 던졌을 때 막연히 “내부적으로는 JOIN으로 처리하지 않을까?“라고 대답했던 기억이 있기 때문이에요. 그래서 여기서는 Prisma에는 정말 JOIN이 없는지, 없다면 왜인지를 확실히 알아보려고 해요. wono | discuss | tweet
+ it dev react xlsx [Project] React로 Excel Download하기 & 컴포넌트 분리하기React에서 db로 불러온 직원 전체 목록을 Excel로 다운로드를 받고자 구현하였다.엑셀 다운로드를 위해서는 xlsx-js-style을 사용해야 하고 이를 위해 아래와 같이 install 해야한다. wono | discuss | tweet
+ it dev react print React 특정 컴포넌트 프린트하기(한 장/여러 장)회사에서 개발한 기능 중 환자의 리포트를 프린트하는 기능이 있었다. 전체 화면이 아니라 리포트 부분만 프린트해야 해서 ReactToPrint 라이브러리를 사용했다. wono | discuss | tweet