この記事では、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を操作でき、開発速度を大幅に向上させることができます。ぜひプロジェクトで試してみてください。
