Этот запрос делает следующее: - Увеличивает значение столбца balance на 100100100 у записи(ей) таблицы accounts, у которых id=2id = 2id=2. - Если строки с id=2id = 2id=2 нет — изменений не будет (возвращается 0 затронутых строк). - Операция выполняется в рамках транзакции — изменения станут видимы другим после COMMIT (или отменятся при ROLLBACK). - Требуется право UPDATE на таблицу accounts. Полезные дополнения: - Посмотреть новый баланс сразу (PostgreSQL): `UPDATE accounts SET balance = balance + 100100100 WHERE id = 222 RETURNING balance;` - Или выполнить сначала проверку/блокировку строки для атомарности: `BEGIN; SELECT balance FROM accounts WHERE id = 222 FOR UPDATE; UPDATE accounts SET balance = balance + 100100100 WHERE id = 222; COMMIT;` - Предостережение: без WHERE можно изменить все строки; для защиты ограничьте условия или используйте проверку (например, чтобы баланс не стал отрицательным).
- Увеличивает значение столбца balance на 100100100 у записи(ей) таблицы accounts, у которых id=2id = 2id=2.
- Если строки с id=2id = 2id=2 нет — изменений не будет (возвращается 0 затронутых строк).
- Операция выполняется в рамках транзакции — изменения станут видимы другим после COMMIT (или отменятся при ROLLBACK).
- Требуется право UPDATE на таблицу accounts.
Полезные дополнения:
- Посмотреть новый баланс сразу (PostgreSQL):
`UPDATE accounts SET balance = balance + 100100100 WHERE id = 222 RETURNING balance;`
- Или выполнить сначала проверку/блокировку строки для атомарности:
`BEGIN; SELECT balance FROM accounts WHERE id = 222 FOR UPDATE; UPDATE accounts SET balance = balance + 100100100 WHERE id = 222; COMMIT;`
- Предостережение: без WHERE можно изменить все строки; для защиты ограничьте условия или используйте проверку (например, чтобы баланс не стал отрицательным).