CREATE PROCEDURE 문
CREATE PROCEDURE 문 (CREATE PROCEDURE Statement)
CREATE PROCEDURE 문은 사용자 정의 SQL 프로시저(저장 프로시저, stored procedure)를 만들기 위해 사용하는 문이에요. 반복 사용할 로직을 프로시저로 정의해 두면 코드 재사용이 가능합니다.
출처: 문서
본문
구문 (Syntax):
[ALTER | CREATE [OR REPLACE] | REPLACE] PROCEDURE | PROC procedure_name [parameters]
[AS | IS]
body
parameters:
([IN | OUT | INOUT | IN OUT] name data_type, ...)
|
(name [IN | OUT | INOUT | IN OUT] data_type, ...)
body:
statement | expression | BEGIN statements END
예제 (Example):
프로시저를 정의하고, 파라미터를 넘겨 호출해 봅니다.
CREATE PROCEDURE set_message(IN name STRING, OUT result STRING)
BEGIN
SET result = 'Hello, ' || name || '!';
END;
-- Now call the procedure and print the results
DECLARE str STRING;
CALL set_message('world', str);
PRINT str;
결과:
Hello, world!
호환성 (Compatibility): Oracle, Teradata, IBM DB2, Microsoft SQL Server, PostgreSQL, MySQL, Netezza
더 보기:
- 사용자 정의 함수와 저장 프로시저 (User-Defined Functions and Stored Procedures)
CALLCREATE PACKAGECREATE FUNCTIONINCLUDE
더 알아보기 (Learn more)
CREATE PROCEDURE로 만들어 둔 프로시저는 CALL 문으로 호출해 재사용할 수 있어요. IN/OUT/INOUT 파라미터로 값을 주고받을 수 있고, 관련된 유용한 문으로 CREATE PACKAGE, CREATE FUNCTION, INCLUDE 등이 있으니 함께 참고하세요.