Skip to content

33. Stored Procedures for SQL Server


1. Stored Procedure

  • Stored Procedure는 저장할 수 있는 준비된 SQL 코드이므로 코드를 계속해서 재사용할 수 있다.
  • 따라서 반복해서 작성하는 SQL 쿼리가 있는 경우 Stored Procedure로 저장한 다음 호출하여 실행할 수 있다.
  • 또한 매개변수를 Stored Procedure에 전달할 수 있으므로 전달된 매개변수 값을 기반으로 Stored Procedure가 작동할 수 있다.


2. Syntax

1) Stored Procedure

CREATE PROCEDURE procedure_name
AS
sql_statement
GO;


2) Execute a Stored Procedure

EXEC procedure_name;


Demo Database

  • 다음은 Northwind 샘플 데이터베이스의 Customers 테이블이다.


001


3. Stored Procedure Example

  • 다음은 Customers 테이블에서 모든 레코드를 선택하는 SelectAllCustomers라는 Stored Procedure를 만든다.


CREATE PROCEDURE SelectAllCustomers
AS
SELECT * FROM Customers
GO;


  • 다음과 같이 위의 Store Procedure를 실행한다.


EXEC SelectAllCustomers;


4. Stored Procedure With One Parameter

  • 다음은 Customers 테이블에서 특정 도시의 고객을 선택하는 Stored Procedure를 만든다.


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


  • 다음과 같이 위의 Stored Procedure를 실행한다.


EXEC SelectAllCustomers @City = 'London';


5. Stored Procedure With Multiple Parameters

  • 다음은 Customers 테이블에서 특정 PostalCode를 사용하여 특정 CityCustomers를 선택하는 Stored Procedure를 만든다.


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


  • 다음과 같이 위의 Stored Procedure를 실행한다.


EXEC SelectAllCustomers @City = 'London', @PostalCode = 'WA1 1DP';

References