| | |
| Stránka: 1 z 1
| [ Príspevkov: 7 ] | |
Autor | Správa |
---|
Registrovaný: 09.07.08 Prihlásený: 17.01.15 Príspevky: 1585 Témy: 96 |
Zdravíčko
Nemám zatiaľ žiadne praktické skúsenosti s transakciami.
Potreboval by som spraviť SELECT a hneď za tým update alebo delete (to je jedno). Ten istý skript bude bežať v niekoľkých procesoch pod rovnakým db userom.
Potrebujem zabezpečiť to, aby sa náhodou nestalo, že si dvaja zoberú z tabulky ten istý riadok.
Bude stačiť ak dám
Kód: START TRANSACTION; SELECT nieco FROM tabulka LIMIT 1; DELETE FROM tabulka WHERE nieco=nieco_zo_selectu; COMMIT; ?
Engine mám na tú tabuľku InnoDB.
|
|
Registrovaný: 21.10.07 Prihlásený: 02.09.09 Príspevky: 7 Témy: 0 | |
Registrovaný: 09.07.08 Prihlásený: 17.01.15 Príspevky: 1585 Témy: 96 |
aha... a keď uzamknem tabulku a v tom čase sa bude snažiť dostať "druhý skript" k tej tabulke, vráti chybu alebo čaká?
_________________ neříkejte, že něco nejde udělat, protože se vždycky najde nějaký blbec, co neví, že to nejde – a udělá to! |
|
Registrovaný: 21.10.07 Prihlásený: 02.09.09 Príspevky: 7 Témy: 0 | Napísal final: 22.10.2008 13:19 | |
|
počká.. teraz ma napadlo, že ten subselect ani nepôjde (vzhľadom na to, že nemôžeš čítať tabuľku, nad ktorou sa takéto operácie vykonávajú)..
//som si na začiatku nevšimol, že robíš nad jednou tabuľkou uzamykanie ani nepotrebuješ, stačí keď ten delete/update vykonáš normálne..
|
|
Registrovaný: 09.07.08 Prihlásený: 17.01.15 Príspevky: 1585 Témy: 96 |
práveže niečo na to potrebujem, pretože keď pôjdu tie skripty súbežne, môže sa stať, že bude priebeh z pohladu databázy takýto:
skript1 - SELECT id FROM tabulka LIMIT 1 // vrati 1
skript2 - SELECT id FROM tabulka LIMIT 1 // vrati 1
skript1 - DELETE FROM tabulka WHERE id=1
skript2 - DELETE FROM tabulka WHERE id=1
Ideálne by bolo, keby to išlo
skript1 - SELECT id FROM tabulka LIMIT 1 // vrati 1
skript1 - DELETE FROM tabulka WHERE id=1
skript2 - SELECT id FROM tabulka LIMIT 1 // vrati 2
skript2 - DELETE FROM tabulka WHERE id=2
ale to by som sa musel spoliehať na náhodu
_________________ neříkejte, že něco nejde udělat, protože se vždycky najde nějaký blbec, co neví, že to nejde – a udělá to! |
|
Registrovaný: 21.10.07 Prihlásený: 02.09.09 Príspevky: 7 Témy: 0 | Napísal final: 22.10.2008 13:56 | |
|
ale nerozumiem prečo z tej tabuľky niečo načítaš a potom podľa toho z nej mažeš? prečo nespravíš rovno delete from tabulka where id = ?..
|
|
Registrovaný: 09.07.08 Prihlásený: 17.01.15 Príspevky: 1585 Témy: 96 |
To je taká ako keby temporary table. Tam si načítam nejaké údaje a postupne ich spracovávam, robím kadejaké hovadinky s tým a tak. Každý riadok potrebujem spracovať iba raz. Všetko by bolo v pohode, nič také by som nepotreboval, keby som to nemusel ešte rozdeľovať na rôzne procesy, možno aj rôzne servery...
_________________ neříkejte, že něco nejde udělat, protože se vždycky najde nějaký blbec, co neví, že to nejde – a udělá to! |
|
| Stránka: 1 z 1
| [ Príspevkov: 7 ] | |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
| jdbc transakcia v Databázy | 0 | 622 | 29.03.2009 14:48 tlacitko Enter | | Jednoduchá stránka v Webhosting a servery | 7 | 560 | 06.05.2014 14:09 JanoF | | Jednoducha galeria v Ostatné | 1 | 502 | 09.02.2010 14:17 don jebot | | Jednoducha vyhybka v Zvuk | 3 | 2349 | 12.01.2010 20:30 KocuR | | jednoducha funkcia v PHP, ASP | 7 | 693 | 26.12.2007 13:42 Flety | | Jednoducha otazka.... v nVidia grafické karty | 18 | 1199 | 05.05.2008 17:08 luboxxx | | jednoducha kalkulacka v Assembler, C, C++, Pascal, Java | 6 | 1475 | 17.01.2012 15:33 vychytraly | | Jednoduchá hashovacia funkcia v JavaScript, VBScript, Ajax | 3 | 393 | 20.09.2014 20:27 chrono | | jednoducha 2d animacia v Grafické programy | 5 | 612 | 24.07.2011 16:06 svejk | | python - jednoduchá úloha v Perl, Python, Ruby, CGI | 5 | 961 | 08.06.2020 14:50 ux | | ajax jednoducha funkcia v JavaScript, VBScript, Ajax | 7 | 528 | 24.04.2010 20:20 Ďuri | | Jednoduchá úprava videa v Video programy | 29 | 1117 | 02.05.2015 13:16 shiro | | Jednoducha ochrana systemu v Antivíry a antispywary | 7 | 699 | 31.07.2008 19:12 dedko45 | | Jednoducha stranka na vypocet v Ostatné | 11 | 904 | 01.06.2011 6:39 borisko27 | | Jednoducha MVC aplikacia PHP v Ponuka práce | 0 | 409 | 12.12.2014 17:42 peter902 | | Jednoduchá stránka//rozhodenie stránky v HTML, XHTML, XML, CSS | 7 | 516 | 28.03.2013 12:45 Merlin_sk |
| Nemôžete zakladať nové témy v tomto fóre Nemôžete odpovedať na témy v tomto fóre Nemôžete upravovať svoje príspevky v tomto fóre Nemôžete mazať svoje príspevky v tomto fóre
|
|