PrismaをJavaScriptプロジェクトで使ってMySQLを簡単に操作する方法

この記事では、JavaScriptプロジェクトにPrismaを導入して、MySQLデータベースに接続し、簡単に操作する方法をわかりやすく解説します。

Prismaとは?

Prismaは、Node.jsやJavaScriptプロジェクトで使えるORM(Object-Relational Mapping)ツールです。これを利用すると、SQLを書かずに直感的で安全にデータベースを操作できます。

Step1:Prismaのインストール

まず、npmを使ってPrismaをプロジェクトに追加します。

npm install @prisma/client
npm install prisma --save-dev

次に、Prismaの初期設定を行います。

npx prisma init

このコマンドを実行すると、プロジェクト内にprisma/schema.prismaというファイルが生成されます。

Step2:データベース接続設定

schema.prismaを開き、MySQLデータベースへの接続設定を記述します。

datasource db {
  provider = "mysql"
  url      = env("DATABASE_URL")
}

generator client {
  provider = "prisma-client-js"
}

プロジェクトのルートにある.envファイルに接続情報を設定します。

DATABASE_URL="mysql://ユーザー名:パスワード@ホスト名:ポート番号/データベース名"

Step3:データモデルの定義

次に、データモデルを定義します。

model User {
  id        Int      @id @default(autoincrement())
  name      String
  email     String   @unique
  createdAt DateTime @default(now())
}

Step4:データベースに反映

モデルの設定が終わったら、次のコマンドでデータベースに反映させます。

npx prisma migrate dev --name init

これでPrismaがMySQLにテーブルを作成します。

Step5:JavaScriptでPrismaを使う

以下のようにPrismaを使ってデータを操作できます。

// PrismaClientのインスタンスを生成
const { PrismaClient } = require('@prisma/client');
const prisma = new PrismaClient();

async function main() {
  // ユーザーの作成
  const newUser = await prisma.user.create({
    data: {
      name: 'John Doe',
      email: 'john@example.com'
    }
  });

  console.log('作成したユーザー:', newUser);

  // ユーザー一覧を取得
  const users = await prisma.user.findMany();
  console.log('ユーザー一覧:', users);
}

main()
  .then(async () => {
    await prisma.$disconnect();
  })
  .catch(async (e) => {
    console.error(e);
    await prisma.$disconnect();
    process.exit(1);
  });

まとめ

Prismaを使えば、JavaScriptプロジェクトから簡単かつ安全にMySQLを操作でき、開発速度を大幅に向上させることができます。ぜひプロジェクトで試してみてください。

コメント

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です