بحمد الله، أقدم لكم مكتبتي الثانية لإطار عمل Laravel، والتي أسميتها "Backup Tables".
تتيح لك هذه المكتبة عمل نسخة احتياطية للجداول التي تختارها، مما يجعلها مختلفة عن المكتبات التي تقوم بعمل نسخة احتياطية كاملة لقاعدة البيانات.
من الاستخدامات الشائعة لهذه المكتبة، عمل نسخة احتياطية للجداول التي ستجري عليها عمليات قد تتسبب في مشكلات أو فقدان للبيانات، دون الحاجة إلى عمل نسخة احتياطية لكل قاعدة البيانات.
المشكلة التي واجهتني كانت في إضافة حقول أجنبية Foreign Keys لبعض الجداول في مشروع مليء بالبيانات، حيث اضطررت لحذف وتعديل بعض البيانات لإضافة هذه الحقول، وإلا قد تحدث لي مشكلات في SQL بسبب عدم توافقية البيانات. لذلك، طوّرت Trait أرسله لي الصديق "عمر العلوي" Omar Alalwi وعدلت عليه قليلًا لعمل نسخة احتياطية من البيانات، ثم وسّعت الكود وحولته إلى حزمة Laravel ليستفيد منها الآخرون.
ميزات المكتبة:
- دعم إصدارات لارافل: 11، 10، 9، 8، 7، و6.
- دعم قواعد البيانات: SQLite، MySQL/MariaDB، PostgreSQL، وSQL Server.
- مغطاة بالاختبارات الآلية باستخدام PHPUnit، والتي تعمل مباشرة في GitHub Actions عند رفع الكود على GitHub.
أرجو أن تفيدكم هذه المكتبة/الحزمة، ويسعدني استقبال أي مشاركة، اقتراح، أو تبليغ عن خطأ.