Stored Procedures
Last updated
CREATE OR REPLACE PROCEDURE pr_money_transfer
(sender int, receiver int, amount dec)
AS
$$
BEGIN
UPDATE t_accounts
SET balance = balance - amount
WHERE recid = sender;
UPDATE t_accounts
SET balance = balance + amount
WHERE recid = receiver;
COMMIT;
END;
$$
LANGUAGE PLPGSQL;
CALL pr_money_transfer(1,2,30);
select * from t_accounts;CREATE OR REPLACE PROCEDURE pr_orders_count(INOUT total_count INTEGER DEFAULT 0 ) AS
$$
BEGIN
SELECT COUNT(*) INTO total_count FROM orders;
END;
$$ LANGUAGE PLPGSQL;
CALL pr_orders_count();