[sql] 저장 프로시저(Stored Procedure)를 생성하고 호출하는 방법은 어떻게 되나요?

SQL에서 저장 프로시저는 데이터베이스에 저장된 미리 작성된 SQL 코드의 집합입니다. 저장 프로시저를 사용하면 동일한 로직을 여러 번 반복해서 작성하지 않고도 실행할 수 있습니다.

저장 프로시저를 생성하려면 다음과 같은 단계를 따르세요:

저장 프로시저 생성하기

  1. 데이터베이스에 접속하세요.

  2. 새로운 저장 프로시저를 생성하기 위해 CREATE PROCEDURE 문을 사용하세요. 문법은 다음과 같습니다:

    CREATE PROCEDURE procedure_name (parameter1 datatype, parameter2 datatype, ...)
    BEGIN
        -- 저장 프로시저의 로직을 작성합니다.
    END;
    

    여기서 procedure_name은 저장 프로시저의 이름이고, parameter1, parameter2 등은 저장 프로시저에 전달할 매개변수입니다. 필요에 따라 매개변수를 추가 또는 제거할 수 있습니다.

  3. 저장 프로시저의 로직을 작성합니다. 로직은 주로 SQL 쿼리문이며, 데이터를 조작하는 등의 작업을 수행할 수 있습니다.

  4. 저장 프로시저를 저장하려면 마지막에 DELIMITER 문을 사용하여 구분자를 재정의해야합니다. 예를 들어, DELIMITER $$를 사용하여 기본 구분자인 세미콜론(;)을 사용할 수 있습니다.

    DELIMITER $$
    CREATE PROCEDURE procedure_name (parameter1 datatype, parameter2 datatype, ...)
    BEGIN
        -- 저장 프로시저의 로직을 작성합니다.
    END $$
    DELIMITER ;
    

저장 프로시저 호출하기

저장 프로시저를 호출하려면 다음과 같은 단계를 따르세요:

  1. 데이터베이스에 접속하세요.

  2. CALL 문을 사용하여 저장 프로시저를 호출하세요. 문법은 다음과 같습니다:

    CALL procedure_name(value1, value2, ...);
    

    여기서 procedure_name은 호출하려는 저장 프로시저의 이름이며, value1, value2 등에는 저장 프로시저에 전달할 매개변수의 값이 들어갑니다. 필요에 따라 값을 변경하거나 추가할 수 있습니다.

  3. 저장 프로시저가 실행되고 결과를 반환합니다.

많은 데이터베이스 시스템에서 다양한 방법으로 저장 프로시저를 생성하고 호출할 수 있습니다. 위의 예시는 일반적인 방법을 보여주며, 각 데이터베이스 시스템마다 조금씩 다를 수 있습니다. 데이터베이스 공식 문서나 관련 자료를 참조하여 각 시스템에 맞게 작성해야합니다.