SQL - Stored Procedures

Overview

Stored procedures are named routines stored in the database. They encapsulate logic and can accept parameters.

DELIMITER //
CREATE PROCEDURE give_raise(IN dept INT, IN pct DECIMAL(4,2))
BEGIN
  UPDATE employees SET salary = salary * (1+pct) WHERE department_id = dept;
END //
DELIMITER ;

CALL give_raise(1, 0.10);
DROP PROCEDURE give_raise;
CREATE OR ALTER PROCEDURE dbo.give_raise @dept INT, @pct DECIMAL(4,2)
AS
BEGIN
  SET NOCOUNT ON;
  UPDATE dbo.employees SET salary = salary * (1+@pct) WHERE department_id = @dept;
END
GO

EXEC dbo.give_raise @dept=1, @pct=0.10;
DROP PROCEDURE dbo.give_raise;
-- SQLite does not support stored procedures; use user-defined functions in host
-- languages or implement logic in the application.