"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > فهم سير عمل Prisma باستخدام عمليات الترحيل

فهم سير عمل Prisma باستخدام عمليات الترحيل

تم النشر بتاريخ 2024-08-18
تصفح:261

Entendendo o Fluxo de Trabalho do Prisma Utilizando Migrations

Prisma عبارة عن ORM (رسم خرائط الكائنات العلائقية) الحديث الذي يسهل التفاعل مع قواعد البيانات في تطبيقات Node.js وTypeScript. أحد أهم ميزات Prisma هو نظام الترحيل، والذي يسمح لك بالحفاظ على مخطط قاعدة البيانات متزامنًا مع نموذج بيانات التطبيق. في هذا المنشور، سنستكشف سير عمل Prisma باستخدام عمليات الترحيل.

ما هي الهجرات؟

الترحيلات هي طريقة للتحكم في التغييرات وتطبيقها على مخطط قاعدة البيانات بطريقة منهجية ومحددة الإصدار. إنها تسمح لك بتحديد التغييرات الهيكلية لقاعدة البيانات، مثل إنشاء الجداول أو تعديلها، بطريقة تزايدية وقابلة للعكس.

سير عمل Prisma مع عمليات الترحيل

يتضمن سير العمل النموذجي مع عمليات الترحيل في Prisma الخطوات التالية:

  1. التثبيت والتكوين الأولي
  2. تعريف المخطط
  3. إنشاء عملية ترحيل
  4. طلب الهجرة
  5. إدارة الهجرة

الخطوة 1: التثبيت والتكوين الأولي

أولاً، نحتاج إلى تثبيت Prisma في المشروع وتهيئته:

npm install @prisma/client
npx prisma init

يقوم هذا الأمر بإنشاء دليل منشور يحتوي على ملف schema.prisma، حيث نحدد نموذج البيانات الخاص بنا.

الخطوة 2: تعريف المخطط

في ملف schema.prisma، نحدد النماذج التي تمثل جداول قاعدة البيانات. على سبيل المثال، دعونا نحدد نموذج المستخدم:

model User {
  id    Int     @id @default(autoincrement())
  email String  @unique
  name  String?
}

نحن هنا نحدد جدول المستخدم مع أعمدة المعرف والبريد الإلكتروني والاسم.

الخطوة 3: إنشاء الهجرة

بعد تحديد المخطط أو تغييره، نقوم بإنشاء عملية ترحيل لتعكس هذه التغييرات في قاعدة البيانات:

npx prisma migrate dev --name init

يقوم الأمر migrate dev بإنشاء عملية ترحيل جديدة وتطبيق التغييرات على قاعدة البيانات. تتيح لك المعلمة --name إعطاء اسم وصفي لعملية الترحيل، مثل init في المثال أعلاه.

الخطوة 4: طلب الهجرة

يتم تطبيق عمليات الترحيل تلقائيًا على قاعدة البيانات عندما نستخدم أمر migrate dev. وهذا يضمن أن قاعدة البيانات متزامنة دائمًا مع نموذج البيانات المحدد في schema.prisma.

إذا كنت تريد تطبيق عمليات الترحيل في بيئة إنتاج، استخدم الأمر:

npx prisma migrate deploy

يطبق هذا الأمر جميع عمليات الترحيل المعلقة على قاعدة بيانات الإنتاج.

الخطوة 5: إدارة الهجرة

يحتفظ Prisma بسجل لجميع عمليات الترحيل المطبقة على قاعدة البيانات. يعد هذا مفيدًا لتتبع التغييرات والتراجع عن عمليات الترحيل إذا لزم الأمر. للاطلاع على سجل الترحيل، يمكنك استخدام:

npx prisma migrate status

يعرض هذا الأمر الحالة الحالية لعمليات الترحيل، بما في ذلك عمليات الترحيل التي تم تطبيقها وتلك المعلقة.

مثال عملي

دعونا نرى مثالاً عمليًا لكيفية إضافة حقل جديد إلى نموذج المستخدم وإنشاء ترحيل لهذا التغيير.

  1. أضف الحقل إلى نموذج المستخدم في schema.prisma:

    model User {
      id        Int     @id @default(autoincrement())
      email     String  @unique
      name      String?
      birthdate DateTime?
    }
    
    
  2. إنشاء عملية ترحيل جديدة:

    npx prisma migrate dev --name add-birthdate-to-user
    
    
  3. تطبيق الترحيل:

    يطبق أمر migrate dev بالفعل عملية الترحيل إلى قاعدة البيانات. الآن ستحتوي قاعدة البيانات على حقل تاريخ الميلاد الجديد في جدول المستخدم.

  4. التحقق من حالة الترحيل:

    npx prisma migrate status
    
    

    سيوضح هذا الأمر أنه تم تطبيق ترحيل إضافة تاريخ الميلاد إلى المستخدم بنجاح.

خاتمة

يعد سير عمل Prisma باستخدام عمليات الترحيل طريقة فعالة وآمنة لإدارة التغييرات في مخطط قاعدة البيانات. من خلال تسلسل واضح من الخطوات - تحديد المخطط، وإنشاء عمليات الترحيل، وتطبيق التغييرات وإدارة سجل الترحيل - من الممكن الحفاظ على مزامنة قاعدة البيانات مع نموذج بيانات التطبيق، مما يسهل تطوير البرنامج وصيانته.

مع Prisma، لا يمكنك تبسيط إدارة قاعدة البيانات فحسب، بل ستحصل أيضًا على أداة قوية لضمان إمكانية تتبع جميع التغييرات وعكسها، مما يساهم في عملية تطوير أكثر قوة ومرونة.

بيان الافراج تم إعادة إنتاج هذه المقالة على: https://dev.to/lemartin07/entendendo-o-fluxo-de-trabalho-do-prisma-utilizando-migrations-29cp?1 إذا كان هناك أي انتهاك، يرجى الاتصال بـ [email protected] لحذفه
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3