Curriculum
Course: SQL
Login

Curriculum

SQL

SQL References

0/80

MySQL Functions

0/139

SQL Server Functions

0/84

SQL Quick Ref

0/1
Text lesson

SQL Stored Procedures

What is a Stored Procedure?

A stored procedure is a prewritten block of SQL code that can be stored in a database for reuse.

By saving frequently used SQL queries as stored procedures, you can easily execute them whenever needed.

Additionally, stored procedures can accept parameters, allowing them to adapt their actions based on the values passed to them.

Stored Procedure Syntax

CREATE PROCEDURE procedure_name
AS
sql_statement
GO;

Execute a Stored Procedure

EXEC procedure_name

Demo Database

Here’s an excerpt from the “Customers” table in the Northwind sample database:

CustomerID

CustomerName

ContactName

Address

City

PostalCode

Country

1

Alfreds Futterkiste

Maria Anders

Obere Str. 57

Berlin

12209

Germany

2

Ana Trujillo Emparedados y helados

Ana Trujillo

Avda. de la Constitución 2222

México D.F.

05021

Mexico

3

Antonio Moreno Taquería

Antonio Moreno

Mataderos 2312

México D.F.

05023

Mexico

4

Around the Horn

Thomas Hardy

120 Hanover Sq.

London

WA1 1DP

UK

5

Berglunds snabbköp

Christina Berglund

Berguvsvägen 8

Luleå

S-958 22

Sweden

Stored Procedure Example

This SQL statement creates a stored procedure named “SelectAllCustomers” which retrieves all records from the “Customers” table:

Example

CREATE PROCEDURE SelectAllCustomers
AS
SELECT * FROM Customers
GO;

Execute the previously mentioned stored procedure in the following manner:

Example

EXEC SelectAllCustomers;

Stored Procedure With One Parameter

This SQL statement creates a stored procedure that retrieves customers from a specific city from the “Customers” table:

Example

CREATE PROCEDURE SelectAllCustomers @City nvarchar(30)
AS
SELECT * FROM Customers WHERE City = @City
GO;

Execute the aforementioned stored procedure as demonstrated below:

Example

EXEC SelectAllCustomers @City = ‘London’

Stored Procedure With Multiple Parameters

Creating a stored procedure with multiple parameters is straightforward. Simply list each parameter along with its data type, separated by commas, as illustrated below:

The subsequent SQL statement generates a stored procedure that retrieves customers from a specific city and postal code from the “Customers” table:

Example

CREATE PROCEDURE SelectAllCustomers @City nvarchar(30), @PostalCode nvarchar(10)
AS
SELECT * FROM Customers WHERE City = @City AND PostalCode = @PostalCode
GO;

Execute the aforementioned stored procedure as follows:

Example

EXEC SelectAllCustomers @City = ‘London’, @PostalCode = ‘WA1 1DP’