저장 프로시저 기본 사항
Microsoft SQL Server의 저장 프로시저는 다음과 같은 점에서 다른 프로그래밍 언어의 저장 프로시저와 유사합니다.
입력 매개 변수를 받아 여러 값을 출력 매개 변수의 형태로 호출하는 프로시저 또는 일괄 처리에 반환합니다.
다른 프로시저 호출을 비롯하여 데이터베이스에서 작업을 수행하는 프로그래밍 문이 포함되어 있습니다.
호출하는 프로시저 또는 일괄 처리에 상태 값을 반환하여 성공 또는 실패 및 실패 원인을 나타냅니다.
Transact-SQL EXECUTE 문을 사용하여 저장 프로시저를 실행할 수 있습니다. 저장 프로시저는 이름 위치에 값을 반환하지 않고 식에 직접 사용할 수 없다는 점에서 함수와 다릅니다.
클라이언트 컴퓨터에 로컬로 저장되는 Transact-SQL 프로그램 대신 SQL Server 저장 프로시저를 사용하면 다음과 같은 이점이 있습니다.
서버에 등록됩니다.
사용 권한과 같은 보안 특성과 소유권 체인을 가질 수 있고 인증서를 첨부할 수 있습니다.
사용자에게 프로시저에서 참조된 개체에 대한 직접 권한이 없어도 저장 프로시저를 실행할 권한을 부여할 수 있습니다.
사용하는 응용 프로그램의 보안을 강화할 수 있습니다.
매개 변수화된 저장 프로시저를 사용하면 SQL 인젝션 공격으로부터 응용 프로그램을 보호할 수 있습니다. 자세한 내용은 SQL 인젝션을 참조하십시오.
모듈식 프로그래밍을 허용합니다.
프로시저를 한 번 만든 다음 프로그램에서 원하는 만큼 호출할 수 있습니다. 이렇게 하면 응용 프로그램을 관리하기가 용이해지며 응용 프로그램이 동일한 방식으로 데이터베이스에 액세스할 수 있습니다.
지연된 바인딩을 허용하는 명명된 코드입니다.
간단한 코드 변경에 대한 간접 참조 수준을 제공합니다.
네트워크 트래픽을 줄일 수 있습니다.
수백 줄의 Transact-SQL 코드가 필요한 작업을 네트워크로 보내지 않고 프로시저에서 코드를 실행하는 하나의 문을 통해 수행할 수 있습니다.