|
Тема |
Re: прехвърляне на топката [re: Dakota] |
|
Автор |
Aaron (charming) |
|
Публикувано | 09.12.09 23:48 |
|
|
Транзакцията (логическата операция) "банков превод" се състои от две операции върху БД - намаляване на едната сметка и увеличаване на другата:
BEGIN;
UPDATE account SET money = money - 200 WHERE id=1;
UPDATE account SET money = money + 200 WHERE id=2;
COMMIT;
Какво се случва, когато първата операция не мине по някаква причина, а втората - да? Появяват се 200 лв. от нищото.
Ще започна да се шегувам с теб...надявам се да не ми се обидиш..
Все пак шегата си е шега, нали...:-))))
Аз лично смятам, че ако след така подадения пример, ако
след COMMIT сложиш още 2 COMMIT-а...... ВСИЧКО ЩЕ БЪДЕ НАРЕД . Или поне ще "покажеш на системата, че искаш да направи нещо по твоя воля и тя трябва да се съобрази с теб!!!":-)
Но това, което е по-важно за мен и за теб е следното:
От къде взе примера с банковите сметки?
Не за друго, просто примера наистина е уникален...Такъв пример съм виждал само в книги за 10-ти клас
П.П. Все пак бих ти казал следното.....
Опитай се да разсъждаваш логично и тогава отговорите сами ще дойдат
|
| |
|
|
|