Клубове Дир.бг
powered by diri.bg
търси в Клубове diri.bg Разширено търсене

Вход
Име
Парола

Клубове
Dir.bg
Взаимопомощ
Горещи теми
Компютри и Интернет
Контакти
Култура и изкуство
Мнения
Наука
Политика, Свят
Спорт
Техника
Градове
Религия и мистика
Фен клубове
Хоби, Развлечения
Общества
Я, архивите са живи
Клубове Дирене Регистрация Кой е тук Въпроси Списък Купувам / Продавам 01:39 28.04.24 
Клубове/ Компютри и Интернет / Бази данни Всички теми Следваща тема Пълен преглед*
Информация за клуба
Тема Re: прехвърляне на топката [re: Dakota]
Автор salle (един такъв)
Публикувано12.12.09 17:39  



Всъщност това е и нещото, около което се върти спора ни - чия е отговорността.

Не разбирам защо толкова упорито игнорираш факта, че в твоя пример клиентът изпраща явен COMMIT

Явният COMMIT означава "запази са постоянно промените направени от текущата транзакция". Нищо повече нито по-малко! Дори не казва коя аджеба транзакция се предполага да е текущата.

В момента в който клиентът изпрате явен COMMIT той поема напълно отговорността за правилността на промените.



Правя последен опит да ти демонстрирам доколко е сбъркана твоята логика да очакваш сървърът да се погрижи за всичко без контрол от страна на клиента.

Ще използвам твоя пример

BEGIN;
INSERT INTO test VALUES (1, 'foo');
INSERT INTO test VALUES (2, 'foobar');
COMMIT;


Твоето изискване е резултатът да е или 2 реда или 0 и нищо друго нали така?

Да ама това НЕ Е гарантирано дори и когато сървърът прави неявен ROLLBACK до началото на транзакицята!

Защото може първият INSERT да даде грешка а вторият не и тогава имаме:

BEGIN; -- старт на нова транцакция #1

INSERT INTO test VALUES (1, 'foo');

-- грешка, ROLLBACK до началото на #1

INSERT INTO test VALUES (2, 'foobar');-- неявен старт на нова транзакция #2

-- успешен insert

COMMIT; -- приключи ТЕКУЩАТА транзакция т.е. #2 !!!!

Съдържанието на таблицата е (2, 'foobar')

Няма да намериш никъде никаква логика според която сървърът да откаже да изпълни втория INSERT. Това, че клиентът приема една поредица от оператори за една монолитна транзакция не го освобождава от задължението да провери дали сървърът е изпълнил тази поредица от оператори като една или повече транзакции.



Цялата тема
ТемаАвторПубликувано
* Транзакции в MySQL 5.0 Dakota   30.11.09 15:30
. * Re: Транзакции в MySQL 5.0 wqw   01.12.09 01:36
. * Re: Транзакции в MySQL 5.0 salle   05.12.09 01:10
. * така де Dakota   07.12.09 13:42
. * Re: така де salle   07.12.09 14:41
. * Re: така де wqw   07.12.09 15:14
. * Re: така де Dakota   07.12.09 19:07
. * Re: така де Aaron   07.12.09 20:49
. * Re: така де salle   08.12.09 11:58
. * прехвърляне на топката Dakota   09.12.09 18:10
. * Re: прехвърляне на топката Aaron   09.12.09 23:48
. * Re: прехвърляне на топката wqw   10.12.09 02:13
. * Re: прехвърляне на топката salle   10.12.09 11:49
. * Re: прехвърляне на топката Dakota   10.12.09 12:14
. * Re: прехвърляне на топката salle   10.12.09 11:42
. * Re: прехвърляне на топката Dakota   10.12.09 12:13
. * Re: прехвърляне на топката bira_more   10.12.09 20:27
. * Re: прехвърляне на топката salle   12.12.09 17:39
. * Re: прехвърляне на топката Dakota   13.12.09 01:34
. * Re: прехвърляне на топката wqw   13.12.09 01:41
. * Re: прехвърляне на топката salle   13.12.09 18:13
. * Re: прехвърляне на топката NDeu   14.12.09 09:29
. * Re: прехвърляне на топката salle   14.12.09 16:57
. * окей Dakota   15.12.09 12:45
. * Re: окей wqw   15.12.09 12:52
. * Re: окей Dakota   15.12.09 14:53
. * Re: окей wqw   16.12.09 12:15
. * Re: окей wqw   16.12.09 12:17
. * Re: окей Dakota   16.12.09 13:34
. * Re: окей wqw   16.12.09 13:39
. * Re: окей Dakota   16.12.09 15:04
. * Re: окей wqw   16.12.09 15:24
. * Re: окей Dakota   16.12.09 16:23
. * Re: Транзакции в MySQL 5.0 Aaron   06.12.09 13:02
. * Re: Транзакции в MySQL 5.0 salle   07.12.09 13:10
. * Re: Транзакции в MySQL 5.0 Aaron   07.12.09 18:42
. * Re: Транзакции в MySQL 5.0 salle   08.12.09 10:33
. * Re: Транзакции в MySQL 5.0 Aaron   08.12.09 10:51
. * Re: Транзакции в MySQL 5.0 sonic86   28.12.09 21:25
. * Re: Транзакции в MySQL 5.0 Aaron   29.12.09 09:48
Клуб :  


Clubs.dir.bg е форум за дискусии. Dir.bg не носи отговорност за съдържанието и достоверността на публикуваните в дискусиите материали.

Никаква част от съдържанието на тази страница не може да бъде репродуцирана, записвана или предавана под каквато и да е форма или по какъвто и да е повод без писменото съгласие на Dir.bg
За Забележки, коментари и предложения ползвайте формата за Обратна връзка | Мобилна версия | Потребителско споразумение
© 2006-2024 Dir.bg Всички права запазени.