Entity Framework Coreda migratsiyalar asoslari
Entity Framework Coreda migratsiyalar asoslari
Ushbu maqolada Microsoftning dasturchilar uchun eng mashhur va eng qulay bo’lgan texnologiyasi Entity Frameworkdagi migatsiyalar bilan ishlash bo’yicha asoslari haqida so’z boradi.
Entity Framework Core(EF Core) migratsiyalar bilan ishlash uchun EF Core Migrations funksiyasi mavjud bo’lib, uni yordamida dasturchilar loyihalardagi ma’lumotlar ombori(MO)ni loyiha rivojlanishiga va unga qo’yilayotgan talablarga qarab rivojlantirib borishlari mumkin.
Migratsiyalar bizga nimalar beradi?
- Migratsiya yordamida ma’lumotlar omborini o’zgartirish yoki o’zgarishlarni orqaga qaytarish mumkin, bunda undagi ma’lumotlar yuqolib ketmaydi;
- EF Core Migrations ma’lumotlar omborini o’zgartirish uchun o’zi avtomat SQL ssenariyalar yozadi, bunda dasturchilar ssenariylarni qo’lda yozishlari shart emas.
EF Core Migrations’ning asosiy buyruqlari(Package Manager Console’da ishlatish uchun):
Buyruq | Vazifasi |
add-migration [name] | Berilgan nom bilan migratsiya yaratadi |
remove-migration | Oxirgi migratsiyani o’chiradi |
update-database | MO’ni so’nggi migratsiyagacha yangilaydi |
update-database [name] | MO’ni ko’rsatilgan migratsiyagacha yangilaydi |
get-migrations | Mavjud barcha migratsiyalarni ko’rsatadi |
script-migration | Barcha migratsiyalar uchun SQL script yaratadi |
drop database | MO’ni o’chiradi |
EF Core Migrations’ning asosiy buyruqlari(Terminalda ishlatish uchun):
Buyruq | Vazifasi |
dotnet ef migrations add [name] | Berilgan nom bilan migratsiya yaratadi |
dotnet ef migrations remove | Oxirgi migratsiyani o’chiradi |
dotnet ef database update | MO’ni so’nggi migratsiyagacha yangilaydi |
dotnet ef database update [name] | MO’ni ko’rsatilgan migratsiyagacha yangilaydi |
dotnet ef migrations list | Mavjud barcha migratsiyalarni ko’rsatadi |
dotnet ef migrations script | Barcha migratsiyalar uchun SQL script yaratadi |
dotnet ef database drop | MO’ni o’chiradi |
dotnet ef migrations has-pending-model-changes | Oxirgi migratsiyadan so’ng modellarda o’zgarish bo’lmaganligini tekshiradi |
Kodda migratsiyalarni ishga tushirish quyidagicha bo’ladi:
var context = new MyContext(); context.Database.Migrate();
Migratsiyalar nima uchun kerak?
EF Core Migrations ma’lumotlar omborini boshqarishda dasturchilar uchun qulay va moslashuvchan usul bo’lib, uning yordamida loyihalarda bir vaqtni o’zida bir nechta dasturchilar bitta ma’lumotlar omboriga o’zgartirish kiritishlari mumkin.
- Sxemalar evolyutsiyasi. Dasturni rivojlanishi davomida dastur ma’lumotlar ombori doimiy ravishda o’zgarib, rivojlanib boradi. Bunda EF Core Migrations sxemada bo’layotgan o’zgarishlarni nazorat qilib, ular haqida doimo kerakli va muhim ma’lumotlarni vaqt davomida saqlab boradi.
- Ma’lumotlar omborini oddiy boshqarish. EF Core Migrations yordamida dasturchilar dastur ma’lumotlar omborini versiyalardan foydalangan holda unga o’zgarishlar kiritishlari mumkin.
- Ma’lumotlar omborini avtomatik yaratish. EF Core Migrations yordamida ma’lumotlar omborida avtomatik sxemalar yaratish mumkin. Bunda dasturchilar qo’lda SQL ssenariyalar yozishlari shart bo’lmaydi.
- Bir xil ma’lumotlar ombori. EF Core Migrations yordamida dasturni turli xil intancelarida bir holatni, bir xil tuzilmani olib borish mumkin. Masalan dasturchilar o’rtasida yoki dastur stage’ida(prod, qa, dev va h.k.).
- Loyihada jamoa bo’lib ishlash. Loyihada ishlash davomida dasturchilar ma’lumotlar omborini lokal versiyasida ishlashadi va kerakli o’zgarishlarni olishlar va kerakli o’zgarishlarni kiritishlari mumkin.
EF Core Migrations dasturchilarga loyihada ishlashda juda katta qulaylik yaratadi. Bundan tashqari loyihada ishlash davomida chiqishi mumkin bo’lgan muommolarni, konfilkt holatlarni oldini oladi.
Umumiy Dasturlash
Entity Framework Coreda migratsiyalar asoslari