Stored Procedures
A STORED PROCEDURE
is a set of SQL statements that you can save and reuse. Stored procedures are used to perform operations like querying or updating the database and can accept parameters, making them powerful tools for repetitive tasks.
Creating a Stored Procedure
Use the CREATE PROCEDURE
statement to create a stored procedure. The basic syntax is:
CREATE PROCEDURE ProcedureName
AS
BEGIN
-- SQL statements
END;
Example: Simple Stored Procedure
CREATE PROCEDURE GetAllFreedomFighters
AS
BEGIN
SELECT * FROM FreedomFighters;
END;
Explanation: This stored procedure, GetAllFreedomFighters
, retrieves all records from the FreedomFighters
table.
Executing a Stored Procedure
Use the EXEC
statement to execute a stored procedure:
EXEC GetAllFreedomFighters;
Stored Procedure with Parameters
Stored procedures can accept input parameters to filter or modify the results.
Example: Stored Procedure with Parameters
CREATE PROCEDURE GetFreedomFightersByCity @City VARCHAR(50)
AS
BEGIN
SELECT * FROM FreedomFighters WHERE City = @City;
END;
Executing with Parameters
EXEC GetFreedomFightersByCity @City = 'Chennai';
Explanation: This command executes the stored procedure GetFreedomFightersByCity
and retrieves records for freedom fighters from Chennai.
Updating a Stored Procedure
To modify a stored procedure, use the ALTER PROCEDURE
statement:
ALTER PROCEDURE GetAllFreedomFighters
AS
BEGIN
SELECT Name, City FROM FreedomFighters;
END;
Dropping a Stored Procedure
To delete a stored procedure, use the DROP PROCEDURE
statement:
DROP PROCEDURE GetAllFreedomFighters;
Do's and Don'ts
Do's
- Use stored procedures to improve performance by reducing the amount of information sent to the database server.
- Use parameters to make stored procedures flexible and reusable.
- Document your stored procedures for easy maintenance.
Don'ts
- Don't overuse stored procedures for simple queries that can be written directly.
- Don't forget to handle errors and exceptions in your stored procedures.
- Don't expose sensitive information through stored procedures without proper security measures.