Prisma عبارة عن ORM (رسم خرائط الكائنات العلائقية) الحديث الذي يسهل التفاعل مع قواعد البيانات في تطبيقات Node.js وTypeScript. أحد أهم ميزات Prisma هو نظام الترحيل، والذي يسمح لك بالحفاظ على مخطط قاعدة البيانات متزامنًا مع نموذج بيانات التطبيق. في هذا المنشور، سنستكشف سير عمل Prisma باستخدام عمليات الترحيل.
الترحيلات هي طريقة للتحكم في التغييرات وتطبيقها على مخطط قاعدة البيانات بطريقة منهجية ومحددة الإصدار. إنها تسمح لك بتحديد التغييرات الهيكلية لقاعدة البيانات، مثل إنشاء الجداول أو تعديلها، بطريقة تزايدية وقابلة للعكس.
يتضمن سير العمل النموذجي مع عمليات الترحيل في Prisma الخطوات التالية:
أولاً، نحتاج إلى تثبيت Prisma في المشروع وتهيئته:
npm install @prisma/client npx prisma init
يقوم هذا الأمر بإنشاء دليل منشور يحتوي على ملف schema.prisma، حيث نحدد نموذج البيانات الخاص بنا.
في ملف schema.prisma، نحدد النماذج التي تمثل جداول قاعدة البيانات. على سبيل المثال، دعونا نحدد نموذج المستخدم:
model User { id Int @id @default(autoincrement()) email String @unique name String? }
نحن هنا نحدد جدول المستخدم مع أعمدة المعرف والبريد الإلكتروني والاسم.
بعد تحديد المخطط أو تغييره، نقوم بإنشاء عملية ترحيل لتعكس هذه التغييرات في قاعدة البيانات:
npx prisma migrate dev --name init
يقوم الأمر migrate dev بإنشاء عملية ترحيل جديدة وتطبيق التغييرات على قاعدة البيانات. تتيح لك المعلمة --name إعطاء اسم وصفي لعملية الترحيل، مثل init في المثال أعلاه.
يتم تطبيق عمليات الترحيل تلقائيًا على قاعدة البيانات عندما نستخدم أمر migrate dev. وهذا يضمن أن قاعدة البيانات متزامنة دائمًا مع نموذج البيانات المحدد في schema.prisma.
إذا كنت تريد تطبيق عمليات الترحيل في بيئة إنتاج، استخدم الأمر:
npx prisma migrate deploy
يطبق هذا الأمر جميع عمليات الترحيل المعلقة على قاعدة بيانات الإنتاج.
يحتفظ Prisma بسجل لجميع عمليات الترحيل المطبقة على قاعدة البيانات. يعد هذا مفيدًا لتتبع التغييرات والتراجع عن عمليات الترحيل إذا لزم الأمر. للاطلاع على سجل الترحيل، يمكنك استخدام:
npx prisma migrate status
يعرض هذا الأمر الحالة الحالية لعمليات الترحيل، بما في ذلك عمليات الترحيل التي تم تطبيقها وتلك المعلقة.
دعونا نرى مثالاً عمليًا لكيفية إضافة حقل جديد إلى نموذج المستخدم وإنشاء ترحيل لهذا التغيير.
أضف الحقل إلى نموذج المستخدم في schema.prisma:
model User { id Int @id @default(autoincrement()) email String @unique name String? birthdate DateTime? }
إنشاء عملية ترحيل جديدة:
npx prisma migrate dev --name add-birthdate-to-user
تطبيق الترحيل:
يطبق أمر migrate dev بالفعل عملية الترحيل إلى قاعدة البيانات. الآن ستحتوي قاعدة البيانات على حقل تاريخ الميلاد الجديد في جدول المستخدم.
التحقق من حالة الترحيل:
npx prisma migrate status
سيوضح هذا الأمر أنه تم تطبيق ترحيل إضافة تاريخ الميلاد إلى المستخدم بنجاح.
يعد سير عمل Prisma باستخدام عمليات الترحيل طريقة فعالة وآمنة لإدارة التغييرات في مخطط قاعدة البيانات. من خلال تسلسل واضح من الخطوات - تحديد المخطط، وإنشاء عمليات الترحيل، وتطبيق التغييرات وإدارة سجل الترحيل - من الممكن الحفاظ على مزامنة قاعدة البيانات مع نموذج بيانات التطبيق، مما يسهل تطوير البرنامج وصيانته.
مع Prisma، لا يمكنك تبسيط إدارة قاعدة البيانات فحسب، بل ستحصل أيضًا على أداة قوية لضمان إمكانية تتبع جميع التغييرات وعكسها، مما يساهم في عملية تطوير أكثر قوة ومرونة.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3