タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

SQLとORMに関するxefのブックマーク (3)

  • 生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」
    xef
    xef 2024/08/30
  • 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 をクエリビルダとしてのみ運用する
    xef
    xef 2024/08/30
  • 業務システム開発でsqlcを導入して良かった点とハマった点 | フューチャー技術ブログ

    はじめにTechnogoly Innovation Group 辻です。Go には Gorm や SQLBoiler をはじめとして様々な O/Rマッパ があります。2021 年には当社のブログで OR マッパーの連載を行ったこともありました。絶対的な O/Rマッパ があるわけではなく、業務システムの特性やチーム構成などに合わせて O/Rマッパ を選択することになるでしょう。 今回、私たちのチームでは、バッチ処理が中心的な業務システム開発において Go の O/Rマッパ に sqlc を採用しました。素の SQL を書いていくチームの開発方針1とマッチし、開発体験は非常に良かったです。一方、枯れきってはいない O/Rマッパ ではあります。いくつか想定外の挙動が発生し GitHub の Issue を見ながら問題を切り分けることもありました。 これから sqlc を導入してみようかな、と考え

    業務システム開発でsqlcを導入して良かった点とハマった点 | フューチャー技術ブログ
  • 1