16. diel - Databázy v Androide - Knižnica Room a Migrácia
V minulej lekcii, Databázy v Androide - Databázové triedy , sme pokračovali úpravami Java kódu hlavnej aktivity a deklaráciou tried pre prácu s databázou.
V dnešnom Android tutoriále si preberieme problematiku migrácie medzi verziami databázy pri použití knižnice Room.
V priebehu vývoja alebo neskoršej aktualizácie projektu sa môže objaviť požiadavka na úpravu triedy entity (napr. pridaním ďalšej premennej, resp. ďalšieho stĺpca tabuľky databázy), čím meníme štruktúru databázy.
Po každej zmene štruktúry databázy musíme v Java kóde zmeniť číslo verzie databázy.
Zmenu verzie vykonáme úpravou vlastnosti version
anotácie
@Database
našej triedy AppDatabase
(viď.
nasledujúca ukážka kódu).
Po aktualizácii aplikácie, zahŕňajúcej aj zmenu verzie databázy, budú všetky dáta, ktoré používateľ v našej aplikácii do databázy uložil, nenávratne stratené.
Strate dát sa môžeme vyhnúť použitím migrácie. Knižnica Room ponúka:
- automatickú migráciu - fungujú pre väčšinu základných zmien schémy databázy,
- manuálnu migráciu - definujeme v prípade zložitejších zmien.
Databáza Room podporuje automatizované migrácie od verzie 2.4.0-alpha01.
Verzia Room databázy
Verziu Room databázy definujeme v súborebuild.gradle
:
def room_version = "2.4.0-alpha04" implementation "androidx.room:room-runtime:$room_version" annotationProcessor "androidx.room:room-compiler:$room_version"
Automatická migrácia
V našom projekte poznámkového bločku sme deklarovali triedu databázyAppDatabase
s týmito vlastnosťami anotácie
@Database
:
...koniec náhľadu článku...
Pokračuj ďalej
Minul si až sem a to je super! Veríme, že ti prvé lekcie ukázali niečo nového a užitočného.
Chceš v kurze pokračovať? Prejdi do prémiové sekcie.
Kúpiť tento kurz
Pred kúpou tohto článku je potrebné kúpiť predchádzajúci diel
Obsah článku spadá pod licenciu Premium, kúpou článku súhlasíš so zmluvnými podmienkami.
- Neobmedzený a trvalý prístup k jednotlivým lekciím.
- Kvalitné znalosti v oblasti IT.
- Zručnosti, ktoré ti pomôžu získať vysnívanú a dobre platenú prácu.
Popis článku
Požadovaný článok má nasledujúci obsah:
V Android tutoriále si preberieme problematiku migrácie medzi verziami databázy pri použití knižnice Room.
Kredity získaš, keď podporíš našu sieť. To môžeš urobiť buď zaslaním symbolickej sumy na podporu prevádzky alebo pridaním obsahu na sieť.