البرمجة
Drizzle ORM الحديث
12 ديسمبر 202510 دقائق قراءة
تعرف على Drizzle ORM البديل الخفيف والآمن لـ Prisma.
لماذا Drizzle؟
Drizzle ORM خفيف وtype-safe. يولد SQL قابل للقراءة. أسرع من Prisma ولا يحتاج code generation.
التعريف
import { pgTable, serial, text, timestamp } from 'drizzle-orm/pg-core';
export const users = pgTable('users', {
id: serial('id').primaryKey(),
name: text('name').notNull(),
email: text('email').unique(),
createdAt: timestamp('created_at').defaultNow(),
});
export const posts = pgTable('posts', {
id: serial('id').primaryKey(),
title: text('title').notNull(),
authorId: integer('author_id').references(() => users.id),
});
الاستعلامات
import { db } from './db';
import { users, posts } from './schema';
import { eq } from 'drizzle-orm';
// إدراج
const user = await db.insert(users)
.values({ name: 'أحمد', email: 'a@b.c' })
.returning();
// قراءة
const allUsers = await db.select().from(users);
const user = await db.select().from(users).where(eq(users.id, 1));
// مع العلاقات
const usersWithPosts = await db.select()
.from(users)
.leftJoin(posts, eq(users.id, posts.authorId));
Migrations
npx drizzle-kit generate:pg
npx drizzle-kit push:pg
الخلاصة
Drizzle ممتاز لمن يفضل SQL. خفيف وسريع ومرن. بديل قوي لـ Prisma.
الوسوم
#Drizzle#ORM#TypeScript#Database#SQL