Skip to content

クイックスタート

インストール

Get Started

pnpm add drizzle-orm pg dotenv
pnpm add -D drizzle-kit tsx @types/pg

Migrationの流れ

Migrations

手順を追ってマイグレーション

# マイグレーションファイルを作って
npx drizzle-kit generate
# それをマイグレーション
npx drizzle-kit migrate
# それをDBに適用
npx drizzle-kit push

# 既存のDBからschema.tsを出力する
pnpm drizzle-kit pull

※2024/11現在はダウングレードは実装されていない。

使い方

設定ファイル

ワークディレクトリ直下にdrizzle.config.tsを配置する。

import 'dotenv/config';
import { defineConfig } from 'drizzle-kit';

export default defineConfig({
  // マイグレーションファイルの吐き出し場所
  out: './db/drizzle',
  // スキーマファイルの場所
  schema: './db/schema.ts',
  dialect: 'postgresql',
  dbCredentials: {
    url: process.env.DATABASE_URL!,
  },
});

設定ファイル

// スキーマファイルからスキーマをインポート
import { word } from "@/db/drizzle/schema";
// filter(where)のオプションのいろいろ 
import { eq } from "drizzle-orm";

const db = drizzle(process.env.DATABASE_URL!);

export async function fetchData() {
  const words = await db.select().from(
    word
  ).where(
    eq(word.vocabularyBooksId, vocaId)
  );
  return words;
}
SQL Select
Filters