저장 프로시저
- 일반적인 프로그래밍 언어에 준하는 기능을 구현 할 수 있는 강력하고 확장성과 활용도가 높은 영역
여러단계를 하나의 프로시저로 묶음
-> 코드형태로 포함되어서 미리 컴파일되어 속도가 빠름
-> 단순해짐
-> SQL명령어가 노출되지 않아서 보안에도 유리
다른 프로시저나 함수 사용가능
레코드셋 반환 방식
- 처리 결과를 레코드셋으로 전달 받는 방식.
- 쉽고 간단하지만 확장 시 문제 발생 가능성이 있음
출력변수 반환 방식
- @변수에 저장하여 전달 하는 방식.
- 유연하고 확장성이 좋음.
프로시저의 디버깅
- 사용자 PC에서는 서버에서 설정 및 허용을 해야 디버깅가능.
- 일반적인 개발 상황에서는 디버그 기능보다 PRINT(특정한 값), SELECT(레코드셋의 데이터)를 활용함.
주의점
- @@ERROR, @@ROWCOUNT 값 체크 시 PRINT명령 수행 시 주의
- 단, SELECT는 다른 응용프로그램이나 WEB에서 오류발생 가능성이 높으므로 해당 프로시저를 복사하여 다른 이름으로 저장 후에 디버깅하는 것을 추천.