저장 프로시저

홍범선·2024년 6월 25일
0

CS지식

목록 보기
3/4

저장 프로시저 왜 사용할까?

  • 응용 프로그램에서 DB 접속하고 SQL 처리하는데 상당한 시간이 소요된다. 반면에 저장 프로시저는 DB내에서 준비하고 있기 때문에 성능 향상이 된다.
  • 재사용, 유지보수가 쉬워진다. 저장 프로시저를 바꾸기면 되기 때문이다. 또한 SQL문을 바꾸고 컴파일을 다시 할 필요가 없다.

저장 프로시저는 어떻게 만들까?

  • DELIMITER => 저장 프로시저 내부에 사용하는 SQL문은 일반 SQL이기 떄문에 세미클론으로 끝맺어야 한다.
    이 때, 저장 프로시저 작성이 완료되지 않았음에도 SQL문이 실행되는 위험을 막기위해 구분자를 사용해야하는데 이 때 DELIMITER를 사용한다.

  • CREATE PROCEDURE 프로시저명 () => 프로시저 명을 선언하고 안에 파라미터 변수들을 선언한다.

  • BEGIN ~ END => 프로시저 실행을 정의한다. 여러 SQL문을 사용할 수 있다.

  • CALL => 이 때 선언한 파라미터 순서에 맞게 매개변수를 넣어주어야 한다.

스토어드 함수와 스토어드 프로시저 차이


스토어드 함수는 말 그대로 함수이기 때문에 어떠한 값을 반환하는데 사용된다. 그래서 반드시 RETURN으로 1개 값을 반환해야 한다.
그리고 호출할 때 SELECT 스토어드 함수이름으로 호출해야 한다.
그래서 세금 계산, 가격 계산, 데이터 변환 등 하나의 값으로 리턴되는 로직에 사용된다.

profile
알고리즘 정리 블로그입니다.

0개의 댓글