/
spirzen
/
it-code-examples
Обзор
Документация
Войти
/
spirzen
/
it-code-examples
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
examples/sql/sql-883-008/part-02.sql
25 строк
703 B
Spirzen
Code migration pack
09 июн 2026, 01:41
09 июн 2026, 01:41
cebc284
Код
Авторство
О чём код?
-- PostgreSQL ≥11 CREATE PROCEDURE transfer_funds(from_acc INT, to_acc INT, amount NUMERIC) LANGUAGE plpgsql AS $$ BEGIN UPDATE accounts SET balance = balance - amount WHERE id = from_acc; UPDATE accounts SET balance = balance + amount WHERE id = to_acc; COMMIT; -- разрешено только в PROCEDURE (не в FUNCTION!) END; $$; CALL transfer_funds(1, 2, 100.00); -- T-SQL CREATE PROCEDURE TransferFunds @from_acc INT, @to_acc INT, @amount DECIMAL(18,2) AS BEGIN BEGIN TRANSACTION; UPDATE Accounts SET Balance -= @amount WHERE Id = @from_acc; UPDATE Accounts SET Balance += @amount WHERE Id = @to_acc; COMMIT; END; EXEC TransferFunds 1, 2, 100.00;