A stored procedure is a prepared SQL code that you can save, so the code can be reused over and over again.
So if you have an SQL query that you write over and over again, save it as a stored procedure, and then just call it to execute it.
You can also pass parameters to a stored procedure, so that the stored procedure can act based on the parameter value(s) that is passed.
Stored Procedure Syntax
CREATEPROCEDUREprocedure_nameASsql_statementGO;
Execute a Stored Procedure
EXECprocedure_name;
Demo Database
Below is a selection from the "Customers" table in the Northwind sample database:
Stored Procedure
The following SQL statement creates a stored procedure named "SelectAllCustomers" that selects all records from the "Customers" table:
Execute the stored procedure above as follows:
Stored Procedure With One Parameter
The following SQL statement creates a stored procedure that selects Customers from a particular City from the "Customers" table:
Execute the stored procedure above as follows:
Stored Procedure With Multiple Parameters
Setting up multiple parameters is very easy. Just list each parameter and the data type separated by a comma as shown below.
The following SQL statement creates a stored procedure that selects Customers from a particular City with a particular PostalCode from the "Customers" table:
CREATE PROCEDURE SelectAllCustomers
AS
SELECT * FROM Customers
GO;
EXEC SelectAllCustomers;
CREATE PROCEDURE SelectAllCustomers @City nvarchar(30)
AS
SELECT * FROM Customers WHERE City = @City
GO
EXEC SelectAllCustomers City = "London";
CREATE PROCEDURE SelectAllCustomers @City nvarchar(30),
@PostalCode nvarchar(10)
SELECT * FROM Customers WHERE City =
@City AND PostalCode = @PostalCode
GO;
EXEC SelectAllCustomers City = "London", PostalCode = "WA1 1DP";