DATABASE/MsSQL

[Stored Procedure] 매개변수 전달 및 출력

Fehoon- 2023. 7. 1. 12:30

- 정리

  • SP생성 시 변수를 뒤에 추가하여 전달 받은 매개변수로 프로시저를 수행할 수 있다.
  • 출력용으로 사용하는 변수에는 OUTPUT을 반드시 넣어주어야 한다.

- 예시

CREATE PROCEDURE GetEmployeeCountByDepartment
    @DepartmentName VARCHAR(50),
    @EmployeeCount INT OUTPUT
AS
BEGIN
    -- 직원 수 계산
    SELECT @EmployeeCount = COUNT(*) 
    FROM Employees
    WHERE Department = @DepartmentName

    -- 결과 반환
    SELECT @EmployeeCount AS EmployeeCount
END
  • 이 stored procedure는 @DepartmentName 매개변수를 입력으로 받고, @EmployeeCount 변수를 출력으로 반환합니다. 프로시저는 입력된 부서 이름에 해당하는 직원 수를 계산하고, @EmployeeCount 변수에 저장합니다. 그리고 @EmployeeCount 값을 출력으로 반환합니다.

- 호출

DECLARE @Count INT
EXEC GetEmployeeCountByDepartment @DepartmentName = 'IT', @EmployeeCount = @Count OUTPUT
SELECT @Count AS TotalEmployees
  • 이 예시에서는 @DepartmentName 매개변수에 'IT'라는 값을 전달하고, @EmployeeCount 변수에 결과가 저장됩니다. 그리고 @Count 값을 출력으로 선택적으로 사용할 수 있습니다.
  • Stored procedure는 데이터베이스에서 로직을 캡슐화하고 재사용성을 높일 수 있는 강력한 도구입니다. 매개변수를 전달하고 출력 값을 반환하는 방식을 사용하면 프로시저가 다양한 상황에서 유연하게 사용될 수 있습니다.
반응형