> ÷ÙÛÅ ÕÖÅ ÇÏ×ÏÒÉÌÉ, ÞÔÏ ÔÅÒÍÉÎ "ÁÔÏÍÁÒÎÏÓÔØ" ÉÍÅÅÔ ÎÅÓËÏÌØËÏ ÄÒÕÇÏÅ 
> ÚÎÁÞÅÎÉÅ.

ËÁË ÖÅ ÄÒÕÇÏÊ??

×ÏÔ äë ÐÉÛÅÔ

Ñ ÚÁÍÅÞÕ, ÞÔÏ ÁÔÏÍÁÒÎÏÓÔØ update ÜÔÏ ÏÂÎÏ×ÉÔ update ×ÓÅ ÚÁÐÉÓÉ,
ÐÏÐÁÄÁÀÝÉÅ ÐÏÄ ÕÓÌÏ×ÉÅ, ÉÌÉ ÐÒÉ ÏÂÌÏÍÅ - ÎÉ ÏÄÎÏÊ
-----
ÐÏÐÒÏÂÕÀ ÕÐÒÏÓÔÉÔØ - ÏÂÎÏ×ÉÔØ ×ÓÅ ÉÌÉ ÎÉÞÅÇÏ - ÐÁ×ÉÌØÎÏ?

Ó ÄÒÕÇÏÊ ÓÔÏÒÏÎÙ ÐÒÏ ÓÅÌÅËÔ × ÓÔÁÔØÅ Ï ÔÒÁÎÚÁËÃÉÑÈ (Ñ ÕÖÅ ÐÒÉ×ÏÄÉÌ ÜÔÕ 
ÃÉÔÁÔÕ), ÇÏ×ÏÒÉÔÓÑ, ÞÔÏ ÁÔÏÍÁÒÎÏÓÔØ ÓÅÌÅËÔ - ÜÔÏ ÐÏÌÕÞÉÔØ ÚÁÐÉÓÉ 
ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÅ ÐÁÒÁÍÅÔÒÁÍ ÚÁÐÒÏÓÁ ÎÁ ÍÏÍÅÎÔ ÓÔÁÒÔÁ ÏÐÅÒÁÃÉÉ (ÍÏÍÅÎÔ ÓÔÁÒÔÁ 
ÏÐÅÒÁÃÉÉ ÚÁ×ÉÓÉÔ ÏÔ ÐÁÒÁÍÅÔÒÏ× ÔÒÁÎÚÁËÃÉÉ) - ÚÄÅÓØ Ñ ÐÒÁ×ÉÌØÎÏ ÐÏÎÑÌ 
ÄÏËÕÍÅÎÔ?

ÐÒÏ update ÎÁÊÔÉ ÎÉÞÅÇÏ ÎÅ ÕÄÁÌÏÓØ, ÐÏÜÔÏÍÕ ÐÒÏÂÕÀ ÒÁÚÍÙÛÌÑÔØ ÌÏÇÉÞÅÓËÉ, 
ÉÚÍÅÎÅÎÉÅ ÄÁÎÎÙÈ ÂÅÚ ÞÔÅÎÉÑ ÎÅ×ÏÚÍÏÖÎÏ, ÚÎÁÞÉÔ ÓÎÁÞÁÌÁ ÄÏÌÖÅÎ ×ÙÐÏÌÎÉÔÓÑ 
ÜÔÁÐ ÞÔÅÎÉÑ ÄÁÎÎÙÈ Ó ÐÁÒÁÌÌÅÌØÎÙÍ Õ×ÅÄÏÍÌÅÎÉÅÍ ×ÓÅÈ ÞÔÏ "ÓÞÁÓ ÂÕÄÕ ÍÅÎÑÔØ 
×ÏÔ ÜÔÉ ÄÁÎÎÙÅ" É _ÔÏÌØËÏ_ÅÓÌÉ_ ÜÔÏÔ ÜÔÁÐ ÐÒÏÛÅÌ ÕÓÐÅÛÎÏ ÍÏÖÎÏ ÄÁÎÎÙÅ ÍÅÎÑÔØ 
(ÓÏÏÔ×ÅÔÓ×ÅÎÎÏ ×ÓÅ ÄÒÕÇÉÅ ÂÕÄÕÔ ÕÖÅ ÚÎÁÔØ ÞÔÏ ÉÍÅÎÎÏ ÜÔÉ ÄÁÎÎÙÅ ÍÅÎÑÀÔÓÑ É 
ÄÅÊÓÔ×Ï×ÁÔØ ÓÏÇÌÁÓÎÏ ÐÁÒÁÍÅÔÒÏ× Ó×ÏÉÈ ÔÒÁÎÚÁËÃÉÊ)

× ÞÅÍ Ñ ÎÅ ÐÒÁ×?

>
>> update some_table set counter = counter + 1 where id = :id
>>
>> Ô.Å. ÎÁÓËÏÌØËÏ ÇÁÒÁÎÔÉÒÏ×ÁÎÏ, ÞÔÏ ÅÓÌÉ ÏÐÅÒÁÔÏÒ ÐÒÏÞÉÔÁÌ ÄÁÎÎÙÅ É ÒÅÛÉÌ 
>> ÉÈ ÍÅÎÑÔØ, ËÁËÏ×Á ×ÅÒÏÑÔÎÏÓÔØ, ÞÔÏ ËÔÏ-ÎÉÂÕÄØ ÄÒÕÇÏÊ (× ËÏÎËÕÒÉÒÕÀÝÅÊ 
>> ÔÒÁÎÚÁËÃÉÉ) ÎÅ ÉÚÍÅÎÉÔ ÄÁÎÎÙÅ (ÓÏÇÌÁÓÉÓØ, ÞÔÏ ÄÁÖÅ ÏÏÏÞÅÎØ ËÏÒÏÔËÉÅ 
>> ÏÐÅÒÁÃÉÉ ÍÏÇÕÔ ×ÙÐÏÌÎÉÔØÓÑ ÏÄÎÏ×ÒÅÍÅÎÎÏ) É ÞÔÏ × ÜÔÏÍ ÓÌÕÞÁÅ ÐÒÏÉÚÏÊÄÅÔ
>
> Update conflict, ×ÅÓÔÉÍÏ.

ÄÁ, ÜÔÏ ÐÏÎÑÔÎÏ, ÎÏ ... ×ÏÏÂÝÅÍ ÚÄÅÓØ Ñ ÞÅÓÔÎÏ ÓËÁÖÕ ÎÅ ÚÎÁÀ ËÁË ÐÒÁ×ÉÌØÎÏ 
×ÏÐÒÏÓ ÚÁÄÁÔØ, ÐÏ ÂÏÌØÛÏÍÕ ÓÞÅÔÕ ÍÅÎÑ ÉÎÔÅÒÅÓÕÀÔ ÄÅÔÁÌÉ ÞÔÏ ÐÒÏÉÓÈÏÄÉÔ 
×ÎÕÔÒÉ ÓÅÒ×ÅÒÁ, ËÏÇÄÁ ×ÏÔ ÔÁËÏÅ ÏÂÎÁÒÕÖÉ×ÁÅÔÓÑ. îÁ×ÅÒÎÏÅ ÐÒÁ×ÉÌØÎÅÅ ÂÙÌÏ ÂÙ 
ÐÏÓÌÁÔØ ÍÅÎÑ ÞÉÔÁÔØ ÉÓÈÏÄÎÉËÉ, ÎÏ ÐÒÏÛÕ ÜÔÏÇÏ ÎÅ ÄÅÌÁÔØ, Ñ ÉÈ ×ÓÅ ÒÁ×ÎÏ ÎÅ 
ÐÏÊÍÕ.

> éÍÅÎÎÏ ÔÁË.

ÓÅÎËÓ



Ответить