NOVINKA: Získej 40 hodin praktických dovedností s AI – ZDARMA ke každému akreditovanému kurzu!
S účinností od 26. 3. jsme aktualizovali Zásady zpracování osobních údajů – doplnili jsme informace o monitorování telefonických hovorů se zájemci o studium. Ostatní části zůstávají beze změn.

Diskuze: Transakcie - môžu sa dáta zmeniť?

V předchozím kvízu, Online test znalostí SQL a databází, jsme si ověřili nabyté zkušenosti z kurzu.

Jak se ti líbí článek?
Před uložením hodnocení, popiš prosím autorovi, co je špatněZnaků 0 z 50-500
Jak se ti kurz líbí?
Tvé hodnocení kurzuZnaků 0 z 50-500
Aktivity
Avatar
Juraj Mlich
Tvůrce
Avatar
Juraj Mlich:29.3.2016 10:58

Zdravím,

hľadám odpoveď na jednu otázku, ale nemôžem ju nikde nájsť.

Počas transakcie, môžu byť dáta zmenené iným dotazom mimo transakcie? Tzn. transakcia, v ktorej by boli dva rovnaké SELECT dotazy, môže vrátiť dva rozdielne výsledky, ak by v čase vykonávania transakcie v inom pripojení bol vykonaný povedzme napríklad INSERT dotaz?

Ďakujem za odpoveď :)

 
Odpovědět
29.3.2016 10:58
Avatar
Odpovídá na Juraj Mlich
Michal Štěpánek:29.3.2016 11:04

V podstatě ano. Mezi dvěma selecty se to stát může. Ale jak to myslíš

transakcia, v ktorej by boli dva rovnaké SELECT dotazy

Neumím si představit důvod dvou stejných selectů v jedné transakci...

Editováno 29.3.2016 11:06
Nahoru Odpovědět
29.3.2016 11:04
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Avatar
coells
Tvůrce
Avatar
Odpovídá na Juraj Mlich
coells:29.3.2016 11:30

Transakce ti zaručuje konzistenci dat, takže dva stejné dotazy vrátí v rámci transakce vždy stejné výsledky.

Ovšem nutno dodat, že výsledek bude stejný v rámci sigma-algebry, nikoliv z hlediska toho, co reálně uvidíš.
Pokud máš v tabulce 100 záznamů a uděláš SELECT TOP 10 *, můžeš dostat pokaždé různá data.

 
Nahoru Odpovědět
29.3.2016 11:30
Avatar
Juraj Mlich
Tvůrce
Avatar
Juraj Mlich:29.3.2016 11:45

Transakce ti zaručuje konzistenci dat, takže dva stejné dotazy vrátí v rámci transakce vždy stejné výsledky.
vs
V podstatě ano. Mezi dvěma selecty se to stát může.

Takže? :) Dva rovnaké selecty bol len príklad, potrebujem to využiť inak :)

 
Nahoru Odpovědět
29.3.2016 11:45
Avatar
Odpovídá na Juraj Mlich
Michal Štěpánek:29.3.2016 12:24

Mezi dvěma selecty ANO, ovšem pokud jsou tyto selecty v jedné transakci, tak NE. Ovšem, jak píše coells může být rozdíl mezi tím, co vidíš a tím, co je skutečně v DB. Jen jsem právě nějak nepochopil, proč jsi chtěl mít dva stejné selecty v jedné transakci...

Editováno 29.3.2016 12:25
Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
Nahoru Odpovědět
29.3.2016 12:24
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Avatar
Juraj Mlich
Tvůrce
Avatar
Odpovídá na Michal Štěpánek
Juraj Mlich:29.3.2016 13:17

Záleží na tom ? Bol to len príklad, neplánujem to použiť, potreboval som to vedieť kvôli niečomu inému. Každopádne ďakujem za upresnenie :)

 
Nahoru Odpovědět
29.3.2016 13:17
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 6 zpráv z 6.