다음을 통해 공유


저장 프로시저 기본 사항

Microsoft SQL Server의 저장 프로시저는 다음과 같은 점에서 다른 프로그래밍 언어의 저장 프로시저와 유사합니다.

  • 입력 매개 변수를 받아 여러 값을 출력 매개 변수의 형태로 호출하는 프로시저 또는 일괄 처리에 반환합니다.

  • 다른 프로시저 호출을 비롯하여 데이터베이스에서 작업을 수행하는 프로그래밍 문이 포함되어 있습니다.

  • 호출하는 프로시저 또는 일괄 처리에 상태 값을 반환하여 성공 또는 실패 및 실패 원인을 나타냅니다.

Transact-SQL EXECUTE 문을 사용하여 저장 프로시저를 실행할 수 있습니다. 저장 프로시저는 이름 위치에 값을 반환하지 않고 식에 직접 사용할 수 없다는 점에서 함수와 다릅니다.

클라이언트 컴퓨터에 로컬로 저장되는 Transact-SQL 프로그램 대신 SQL Server 저장 프로시저를 사용하면 다음과 같은 이점이 있습니다.

  • 서버에 등록됩니다.

  • 사용 권한과 같은 보안 특성과 소유권 체인을 가질 수 있고 인증서를 첨부할 수 있습니다.

    사용자에게 프로시저에서 참조된 개체에 대한 직접 권한이 없어도 저장 프로시저를 실행할 권한을 부여할 수 있습니다.

  • 사용하는 응용 프로그램의 보안을 강화할 수 있습니다.

    매개 변수화된 저장 프로시저를 사용하면 SQL 인젝션 공격으로부터 응용 프로그램을 보호할 수 있습니다. 자세한 내용은 SQL 인젝션을 참조하십시오.

  • 모듈식 프로그래밍을 허용합니다.

    프로시저를 한 번 만든 다음 프로그램에서 원하는 만큼 호출할 수 있습니다. 이렇게 하면 응용 프로그램을 관리하기가 용이해지며 응용 프로그램이 동일한 방식으로 데이터베이스에 액세스할 수 있습니다.

  • 지연된 바인딩을 허용하는 명명된 코드입니다.

    간단한 코드 변경에 대한 간접 참조 수준을 제공합니다.

  • 네트워크 트래픽을 줄일 수 있습니다.

    수백 줄의 Transact-SQL 코드가 필요한 작업을 네트워크로 보내지 않고 프로시저에서 코드를 실행하는 하나의 문을 통해 수행할 수 있습니다.

참고 항목

개념

관련 자료