並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 28 件 / 28件

新着順 人気順

Prismaの検索結果1 - 28 件 / 28件

  • 生SQLに型を手書きする時代は終わり?Prismaの新機能「TypedSQL」

    生SQLを扱う $queryRaw TypeScript向けのORMライブラリとしてPrismaがあります。Prismaは直感的で型安全なAPIを提供し、TypeScript向けのORMとしては第一に名前が上がることが多いライブラリです。 しかしそんな人気なPrismaでも、裏側では少しクセのあるSQLが発行されていたり、欲しいSQLがPrismaのAPIでは実現できない場合があります。 そういった場合のために $queryRaw というメソッドが用意されており、これを使うことで生SQLを書いてその結果を受け取ることができました。他のORMにもよくある機能です。 例えば以下のように実装することができます。 const users = await prisma.$queryRaw` SELECT id, name FROM "Users" WHERE id = ${userID} `; co

      生SQLに型を手書きする時代は終わり?Prismaの新機能「TypedSQL」
    • 【個人開発】最新のNext.js+NextAuth.js+prisma+microCMSでECサイト作ってみた【フルスタックアプリケーション】 - Qiita

      【個人開発】最新のNext.js+NextAuth.js+prisma+microCMSでECサイト作ってみた【フルスタックアプリケーション】TypeScriptフロントエンド個人開発Next.jsprisma はじめに 皆さんこんにちは、mamiなのだ! 今回はバックエンドは作らずにNextAuth.jsやprisma、microCMSなどを利用してNext.jsでECサイトを作成してみたので、その方法や手順などを公開しつつ、認証周りや大型開発案件でも採用されるstorybookなどについても解説していこうと思うのだ! フロントを勉強し始めた初学者さんや、フロントがメインではないバックエンドエンジニアの方に向けて、丁寧に解説を挟みながら書いていくので「へ〜フロントってこんな感じのことやってるんだ〜」と思ってくれたら嬉しいのだ! ちなみにこの記事は丁寧に解説しすぎて死ぬほど長くなってしまっ

        【個人開発】最新のNext.js+NextAuth.js+prisma+microCMSでECサイト作ってみた【フルスタックアプリケーション】 - Qiita
      • Next.jsとPrismaをCloudflareにデプロイして月300万のDBクエリに無料で耐える

        はじめに Next.js を Cloudflare にホスティングしようとすると、必然的に Edge Runtime 環境になります。しかし、Edge Runtime 環境では、Node.js Runtime と異なり、Prisma がそのまま使えません。 最初に思い浮かぶ解決策は Prisma Accelerate です。Prisma Accelerate は公式のサービスで、接続プールイングやグローバルキャッシュ機能を備えており、Edge Runtime でも Prisma を使えるようにします。 しかし、無料プランだと月に 6 万クエリの制限があり、本番運用には不安が残ります。 そこで、今回は Prisma Accelerate を自前で Cloudflare Workers 上に構築し、本番運用に耐えうるサービスを無料で開発する方法を紹介します。この方法なら、無料プランでも 月に

          Next.jsとPrismaをCloudflareにデプロイして月300万のDBクエリに無料で耐える
        • Prisma ORMを2年運用して培ったノウハウを共有する

          TSKaigi 2024 ref: https://tskaigi.org/talks/tockn

            Prisma ORMを2年運用して培ったノウハウを共有する
          • PrismaのTypedSQLがなぜアツイのか

            Prisma界隈で話題沸騰中(自分調べ)のTypedSQLだが、自分の中ではかなりアツいと思っているので、その理由を語ろう。なおTypedSQLの機能とか仕組みについては記述しないのでドキュメントや以下の記事を参照するとよい。 Prismaの難しさ 複雑なクエリを組み立てるのが特に難しい。複雑といっても何10行もあるようなクエリとかではなく、joinとか集計関数がいくつかあるくらいで十分複雑になる。たとえば特定のユーザーに紐づく記事をコメントの数を含めて取得したいとする。クエリは雰囲気こんな感じ。SQLとしては全然難しくない。 SELECT posts.id, count(comments.id) AS cnt FROM posts INNER JOIN users ON posts.author_id = users.id LEFT JOIN comments ON posts.id =

              PrismaのTypedSQLがなぜアツイのか
            • Remix on CloudflarePages + Prisma + Supabase で銀の弾丸を目指す 20240828

              自分が思う最強の(かつ貧者の)構成を目指したログ。流行りの技術選定ってやつしたかった。 結論だけ言うと、まだ綺麗ではないが現実的に動く。動かし方を理解してないと事故る、かも。 この記事は自分がたどり着いた結論を順を追って記述するが、自分にとって自明な場所の差分を記録してないので、コードをなぞるより変更意図を追って各々自分で組み立てる、ということを推奨する。 動いてるリポジトリはここ。ただこの記事の説明を読まないと、その意図が伝わらない。 追記 20240829: DATABASE_URL で Connection Pool を有効にするのに ?pgbouncer=true を追加 https://supabase.com/partners/integrations/prisma このスタックの意図 Remix on cloudflare-pages コストとパフォーマンスを両立できる、20

                Remix on CloudflarePages + Prisma + Supabase で銀の弾丸を目指す 20240828
              • Announcing TypedSQL: Make your raw SQL queries type-safe with Prisma ORM

                Generate query functions by using the --sql flag on prisma generate: Import the query function from @prisma/client/sql … … and call it inside the new $queryRawTyped function to get fully typed results 😎 If your SQL query has arguments, they are provided to the query function passed to $queryRawTyped The Prisma Client API together with TypedSQL provides the best experience for both CRUD operations

                  Announcing TypedSQL: Make your raw SQL queries type-safe with Prisma ORM
                • Prisma TypedSQL をクエリビルダとしてのみ運用する

                  タイトルのこともできることを検証した。(ORM で文句ない人は ORM として使えばいい) Prisma は TypeScript の優秀な ORM / QueryBuilder だが、Prisma 以外で運用されていると途中から投入するのが(一応可能ではあるが)面倒だったりする。 だが Typed SQL によって、既に存在するDBに対して、副作用なくクエリビルダとしてのみ導入することができるのでは、と思いついて試したところ、できた。 今回はリモートの Supabase の PostgreSQL に対して行ったが、たぶん他の環境にも使える。 d1 とか。 prisma の最小プロジェクトのセットアップ $ mkdir prisma-qb-only $ cd prisma-qb-only ## 初期化 $ pnpm init $ pnpm add prisma @prisma/client

                    Prisma TypedSQL をクエリビルダとしてのみ運用する
                  • Prismaでスキーマ変更を行う際のベストプラクティス

                    Creating an realtime collaboration tool: Agile Flush - .NET Oxford

                      Prismaでスキーマ変更を行う際のベストプラクティス
                    • モノレポにおけるback/front間のPrismaの型共有の方法

                      詳しい方いたら教えてください。めっちゃ欲しい情報ですん。 別にモノレポでなくてもいいんですが、backend/frontendをTSで開発されてる場合Prisma入れてる気がするのですがそういう時の型共有の方法、ggってもあまり出てこない気がする。 Prisma とは Node.jsのORMです。かなり使いやすくて気に入ってます。 スターもたくさんついてますね。 お金もたくさん調達できてるみたいでいい感じです。 Prismaの型の生成 参考: Set up Prisma 上記ページをもとにサクッとinstallすると /prisma に schema.prismaというファイルが生成されます。そのファイルに、例えばこんな感じでスキーマを定義してみます。 // ユーザー model User { id String @id @default(cuid()) slug String @uniq

                        モノレポにおけるback/front間のPrismaの型共有の方法
                      • Prisma ORMを使いこなす ~歴史と対RDB運用の知見を添えて~

                        CloudbaseはPostgreSQLのORMとしてPrismaを使用しています CloudbaseはAWS, Azure, Google Cloud等のパブリッククラウドを対象にしたセキュリティリスクの検出・管理SaaSです。 個人情報の入ったS3バケットを公開してしまうなどの設定ミスや、近年騒がれたLog4Shellなどの脆弱性をエージェントを使用せず検出し、その修正をサポートするプロダクトです。 CloudbaseではAPIサーバとしてNode.js、DBとしてPostgreSQLを使用し、そのORMとしてPrismaを使用しています。本記事では入門を超えて本番環境でPrismaを使いこなすために必要な知識、弊社がPrismaを運用する中で得た知見を共有していきます。 対象読者 PrismaをRDBのORMとして使っている人 雰囲気でPrismaを使っている人 これからPrisma

                          Prisma ORMを使いこなす ~歴史と対RDB運用の知見を添えて~
                        • Hono・Prisma・AWSでGeoなAPI開発

                          Mastering AsyncSequence - 使う・作る・他のデザインパターン(クロージャ、Delegate など)から移行する

                            Hono・Prisma・AWSでGeoなAPI開発
                          • Prisma ORM Support for Edge Functions is Now in Preview

                            March 12, 2024 Prisma ORM Support for Edge Functions is Now in Preview We’re thrilled to share that support for edge functions is in Preview! You can now access your database with Prisma ORM from Vercel Edge Functions, Vercel Edge Middleware, Cloudflare Workers, and Cloudflare Pages. Try it out! What are edge functions? Edge functions are a form of lightweight serverless compute that's distributed

                              Prisma ORM Support for Edge Functions is Now in Preview
                            • TiDB + Prisma (Edge Functions Preview)をCloudflare Workersで動かす

                              2024/03/12にリリースされたPrisma v5.11.0でEarly AccessからPreviewになったため、記事を更新しました。 https://www.prisma.io/blog/prisma-orm-support-for-edge-functions-is-now-in-preview PlanetScaleからTiDB Serverlessへ サーバーレスデータベースのリーダー的存在だったPlanetScaleが無料プランを廃止することが発表されました。 自分はPlanetScaleがまだベータ版だった2021/11からサービスを触り始め、自社サービスのプロダクションデータベースとしても使っており、純粋にファンだったのもあって非常に残念でした。 とはいえ趣味で運用しているサービスのために課金することは難しいため、無料プランがある移転先を探していました。 以下のスクラ

                                TiDB + Prisma (Edge Functions Preview)をCloudflare Workersで動かす
                              • Remix + Cloudflare + Prisma で、Node.jsとWrangler実行時にimportを適切に切り替える

                                開発時の実行方法によってランタイム環境が異なるため、インポートするパッケージを変えなければなりません。 実行環境によるインポートファイルの切り替え インポートの切り替えは Vite の機能を使えば簡単に行えます。 vite でエイリアスを仕込む vite.config.ts NODE_ENV に応じて、インポート時のコードが切り替わるようにします。 import { vitePlugin as remix, cloudflareDevProxyVitePlugin as remixCloudflareDevProxy, } from "@remix-run/dev"; import { defineConfig } from "vite"; import tsconfigPaths from "vite-tsconfig-paths"; import path from "path"; e

                                  Remix + Cloudflare + Prisma で、Node.jsとWrangler実行時にimportを適切に切り替える
                                • Prisma以外の選択肢、Drizzle ORMではじめるTypeScriptの快適SQLライフ

                                  エッジ環境で使えるORMを探していたところ、Drizzle ORMという新しいORMを知り、感動したので紹介します。 Drizzle ORMはTypeScript向けの強力で柔軟なRDB用のORMです。 Drizzle ORMの主な特徴 強力な型付け TypeScriptのORMなので当たり前ではありますが、強力な型付けによって型安全に開発することができます。 また、スキーマの定義を以下のようにTypeScriptで行うため、Prismaのようにスキーマを定義したあとにクライアントを生成するといったことは必要はありません。 export const popularityEnum = pgEnum('popularity', [ 'unknown', 'known', 'popular', ]); export const countries = pgTable( 'countries',

                                    Prisma以外の選択肢、Drizzle ORMではじめるTypeScriptの快適SQLライフ
                                  • NextAuth+Prisma+Next.jsによるDB認証が実用的でないのでなんとかした件

                                    概要 既存のNext.jsプロジェクトに、人気の認証ライブラリ「Auth.js」とDBアダプター「Prisma」を利用して認証機構を導入したいところ。通常通りのやり方では壁に当たってしまったのでその説明と、どうやって事態を打開したかを解説します。 具体的な解決までの過程 私の方では、 Next 13 Next-Auth V4 (4.24.5) App Router (/app以下にプロジェクトが入る方式) で作業を進めました。それを前提でお読みいただければと思います。 問題に突きあたるまでの実装方法のおさらい 基本的な実装までの流れであれば、公式サイトでまとまっています。

                                      NextAuth+Prisma+Next.jsによるDB認証が実用的でないのでなんとかした件
                                    • Prismaのテストでデータ削除を高速化する

                                      背景 ユビーではNode.jsのアプリケーションにおいて、DBのORMにPrismaを採用しています。Prismaに限らず、実際のデータベースを使ったテストにおいてはテストを実行するごとにデータを削除することでテストごとのデータの干渉を防いでテストの安定性を保つという手法が用いられます。今回はPrismaでテスト時にデータ削除するときのパフォーマンス改善の事例について紹介します。 今開発しているアプリケーションでは以下のように、DBを用いるテストを実行する前に全てのテーブルを truncateするという素朴な方法でテストDBの掃除を行っていました。 import { Prisma, PrismaClient } from "@prisma/client"; const prisma = new PrismaClient(); export async function cleanupDat

                                        Prismaのテストでデータ削除を高速化する
                                      • Hono + Prisma + Cloudflare D1でさくっとAPIを作ってみる

                                        はじめに 先日PrismaのCloudflare D1サポートが発表されたので早速使ってみます。 ただ動かすだけではつまらないので、実践的にHonoと組み合わせて簡単なAPIを作っていきます。 Together, Cloudflare and Prisma make it easier than ever to deploy globally available apps with a focus on developer experience. To further that goal, Prisma ORM now natively supports Cloudflare Workers and D1 in Preview 環境 Node.js v20.12.0 pnpm v8.15.6 Hono v4.2.3 Prisma v5.12.1 Honoのプロジェクト作成 まずはHonoの

                                          Hono + Prisma + Cloudflare D1でさくっとAPIを作ってみる
                                        • 住友生命保険相互会社がSASEソリューション「Prisma Access」を導入

                                          パロアルトネットワークスは2024年8月13日、住友生命保険相互会社(以下、住友生命)がパロアルトネットワークスのSASE(Secure Access Service Edge)ソリューション「Prisma Access」を導入したと発表した。 住友生命がPrisma Accessを採用 得られた導入効果は? 全国約1200の営業拠点に約4万人の従業員が勤務している住友生命は、ビジネス環境の変化に伴い閉域ネットワークの外に存在する業務情報が増えたことで、従来の全国の営業拠点を閉域網で結ぶ大規模な境界防御モデルのネットワーク刷新を検討していた。特にコロナ禍をきっかけに顕在化したピーク時間帯の回線逼迫(ひっぱく)への早急な対応が求められていたという。 住友生命は上記の背景を踏まえて、トラフィック・ユーザー数に応じて柔軟にネットワーク帯域の拡張を可能にする「スケーラビリティ」や、大規模な閉域ネッ

                                            住友生命保険相互会社がSASEソリューション「Prisma Access」を導入
                                          • Next.js14をVercelにデプロイするまで。+v0+Prisma+Neon

                                            今回使用したソースコード Next.jsのセットアップ Next.js本体の準備 公式に則り npx create-next-app@latestで開始します。 $ npx create-next-app@latest ✔ What is your project named? … worksample-nextjs14 ✔ Would you like to use TypeScript? … No / Yes ✔ Would you like to use ESLint? … No / Yes ✔ Would you like to use Tailwind CSS? … No / Yes ✔ Would you like to use `src/` directory? … No / Yes ✔ Would you like to use App Router? (recommend

                                              Next.js14をVercelにデプロイするまで。+v0+Prisma+Neon
                                            • Release 5.19.0 · prisma/prisma

                                              You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                Release 5.19.0 · prisma/prisma
                                              • 初めてPrisma ORMを使うにあたって知っておくと良いこと

                                                はじめに 初めまして、株式会社Rehab for JAPANにてオンラインリハビリサービスRehab Studioの開発チームに所属している徳永です。 私が所属するチームでは、オンラインリハビリを提供するための社内向けの管理画面、お客様に利用してもらう画面をTypeScriptを利用してFrontend, Backend共に開発しています。 また、Backendの開発においては、Prisma ORM (以降、Prismaと略します。) を利用して開発を進めています。 この記事では、私がPrismaを利用して開発を進めている中でチームで共有してもらった知見や知っておくと良さそうなことなどの知見を共有したいと思います。 対象読者 (ターゲット) Prismaを利用したことがないが、興味がある人。 現場でPrismaを利用しており急いでキャッチアップする必要がある人。 Prismaを利用始めたが

                                                  初めてPrisma ORMを使うにあたって知っておくと良いこと
                                                • Prisma ORM vs Drizzle | Prisma Documentation

                                                  This page compares Prisma ORM and Drizzle. Drizzle vs Prisma ORM​ While Prisma ORM and Drizzle solve similar problems, they work in very different ways and have individual pros and cons. Which one to choose will depend on the needs of your project and the exact tradeoffs that are important for it. Drizzle is a traditional SQL query builder that lets you compose SQL queries with JavaScript/TypeScri

                                                    Prisma ORM vs Drizzle | Prisma Documentation
                                                  • PrismaのTransactionClientを引き回さない

                                                    はじめに 本投稿で使用している環境 Node.js: 20.5.1 @nestjs/core: 10.1.3 (platformにはfastifyを使用) prisma: 5.7.0 @prisma/client: 5.7.0 Prisma Transactionの種類 PrismaでTransactionを実行する場合は大きく分けて以下の2つの書き方があります。 1. Nested writes 1発のPrismaClient操作で、リレーションのレコードも含めて操作する書き方です。 const newUser: User = await prisma.user.create({ data: { email: 'alice@prisma.io', posts: { create: [ { title: 'Join the Prisma Slack on https://slack.pri

                                                      PrismaのTransactionClientを引き回さない
                                                    • Prismaでデータ移行した話 - クラウドワークス エンジニアブログ

                                                      こんにちは、 @ttaka_66 です。 CROWDWORKSコンサルティングの業務効率化を目的とした自社システムを開発しています。自社システムではO/RマッパーにPrismaを利用しています。今回はスキーマ変更を伴うデータ移行を行ったので、それについて記載します。 背景 背景として、以前リンクスエージェントで利用していたシステムをCROWDWORKSコンサルティングで使えるように改修しています。 リンクスエージェントでは、クライアントとワーカーのマッチングを支援する事業であったため、クライアントとワーカーが1対1で対応する契約を結びます。 一方でCROWDWORKSコンサルティングでは、クライアントの経営課題解決を目的としたコンサルティング事業のため、クライアントとクラウドワークスが直接契約するケースがあります。また、課題解決にワーカーの方に支援いただくケースがあり、クライアントとワーカ

                                                        Prismaでデータ移行した話 - クラウドワークス エンジニアブログ
                                                      • 【Next】Next × Prisma × Vercel でポートフォリオを書き換える

                                                        初めに 今回は React で書いていたポートフォリオを Next, Prisma, Vercel を用いた実装に切り替えていきたいと思います。 それぞれのコードは以下にまとめているので、よろしければご覧ください。 書き換え前のリポジトリ 書き換え後のリポジトリ なお、Next, Prisma, Vercel は今回初めて触れた技術で、歴も非常に浅いため、誤り等あれば指摘していただければ幸いです。 記事の対象者 Next 初学者 Next, Prisma, Vercel 学習者 React から Next に移行したい方 使用技術 以前の使用技術 React TypeScript Vite GitHub Pages 今回の使用技術 React TypeScript Next.js Prisma Vercel バージョン React : 18.2.0 TypeScript : 5.3.3 N

                                                          【Next】Next × Prisma × Vercel でポートフォリオを書き換える
                                                        • Full Stack Netflix Clone in React, Tailwind CSS, Next.JS, Prisma, MongoDB, NextAuth & Vercel (2023)

                                                          (CC) Blender Foundation | mango.blender.org (c) copyright 2006, Blender Foundation / Netherlands Media Art Institute / www.elephantsdream.org (c) copyright 2008, Blender Foundation / www.bigbuckbunny.org © copyright Blender Foundation | durian.blender.org © copyright Blender Foundation | www.sintel.org Discord for any problems/errors/bugs: https://www.codewithantonio.com/discord Github & Live Web

                                                            Full Stack Netflix Clone in React, Tailwind CSS, Next.JS, Prisma, MongoDB, NextAuth & Vercel (2023)
                                                          1