07.09.2014, 08:05
Вот такой вот вопрос.
В таблице имеется 2 строки. У каждой по 3 значения.
Значения первой: name='vasya', age='22', id='1'
Значения второй: name='lena', age='32', id='3'
Мне надо обменять данные строк так, чтобы получилось:
Значения первой: name='lena', age='22', id='3'
Значения второй: name='vasya', age='32', id='1'
Принципы обмена в двух запросах:
1 запрос:
2 запрос:
Но на практике в итоге получается:
Значения первой: name='lena', age='22', id='3'
Значения второй: name='lena', age='32', id='3'
А всё потому, что запросы выполняются по очереди, и пока второй запрос начнет выполняться, данные уже изменятся. Собственно, как решить проблему?
В таблице имеется 2 строки. У каждой по 3 значения.
Значения первой: name='vasya', age='22', id='1'
Значения второй: name='lena', age='32', id='3'
Мне надо обменять данные строк так, чтобы получилось:
Значения первой: name='lena', age='22', id='3'
Значения второй: name='vasya', age='32', id='1'
Принципы обмена в двух запросах:
1 запрос:
Quote:
UPDATE table SET name='vasya',id='1' WHERE name='lena',id='3' |
Quote:
UPDATE table SET name='lena',id='3' WHERE name='vasya',id='1' |
Значения первой: name='lena', age='22', id='3'
Значения второй: name='lena', age='32', id='3'
А всё потому, что запросы выполняются по очереди, и пока второй запрос начнет выполняться, данные уже изменятся. Собственно, как решить проблему?