diff --git a/KIV DB1/07. Normální formy a dekompozice.md b/KIV DB1/07. Normální formy a dekompozice.md index c70e1df..0a59cac 100644 --- a/KIV DB1/07. Normální formy a dekompozice.md +++ b/KIV DB1/07. Normální formy a dekompozice.md @@ -32,7 +32,7 @@ - jestliže je v 2NF - každý atribut, který není součástí primárního klíče relace $R$, není tranzitivně závislý na primárním klíči relace $R$ - poznámka - - hledáme, nezávisí některý nmeklíčový atribut na jiném neklíčovém atributu + - hledáme, nezávisí některý neklíčový atribut na jiném neklíčovém atributu - pokud relace obsahuje maximálně jeden neklíčový atribut, 3NF je splněna triviálně - pokud tabulka obsahuje pouze dva sloupce, splňuje 3NF (PK tvořen 1-2 sloupci) - příklad diff --git a/KIV DB1/10. Transakce.md b/KIV DB1/10. Transakce.md index cecc9f5..3d70782 100644 --- a/KIV DB1/10. Transakce.md +++ b/KIV DB1/10. Transakce.md @@ -91,11 +91,11 @@ **Metody ochrany transakce** - odložený zápis do databáze - tvorba žurnálu s odloženými realizacemi změn - - v minulosti též dvoufázové potvrzování + - v minulosti též **dvoufázové potvrzování** - přímý zápis do databáze - tvorba žurnálu s bezprostřední realizací změn -**Odložený zápis do databáze* +**Odložený zápis do databáze** - transakce nesmí měnit hodnoty objektů v databázi dříve, než je částečně potvrzena - transakce nemůže být částečně potvrzená, pokud není vytvořen příslušný záznam o změnách v žurnálu - žurnál nevyžaduje staré hodnoty objektů @@ -134,11 +134,7 @@ - vytvoříme dva seznamy: `REDO` a `UNDO` - do seznamu `UNDO` vložíme všechny transakce z kontrolního bodu - seznam `REDO` zůstane prázdný -- žurnál p -# T1 -A := read(X) -A := A + 5 -write(X, A)rocházíme do kontrolního bodu do předu +- žurnál procházíme od kontrolního bodu do předu - narazíme-li na začátek transakce, vložíme ji do `UNDO` - narazíme-li na konec transakce, převedeme ji z `UNDO` do `REDO` - transakce zpracujeme metodou odpovídající názvu seznamu, ve kterém se nachází