초보자(우) 님이 쓰신 글 :
: MS-SQL에선
: IF @aa = 1
:
: Begin
:
: INSERT into Table
:
: end
:
: IF @aa = 2
:
: Begin
:
: Update Table set
:
: End
:
: 이렇게 파라메타 값을 넘겨서 거기에 맞는 걸로 쿼리문을 실행 할 수 있는데
: 인터베이스에는 이런 기능이 엄나요?
CREATE PROCEDURE 문의 문법은 다음과 같습니다.
CREATE PROCEDURE name
[(param <datatype> [, param <datatype> …])] // 이 부분이 입력 파라미터들의 선언
[RETURNS param <datatype> [, param <datatype> …])] // 이 부분이 출력 파라미터들의 선언
AS <procedure_body> [terminator]
<procedure_body> =
[<variable_declaration_list>]
<block>
<variable_declaration_list> =
DECLARE VARIABLE var <datatype>;
[DECLARE VARIABLE var <datatype>; …]
<block> =
BEGIN
<compound_statement>
[<compound_statement> …]
END
그리고 변수나 파라미터 등을 스테이트먼트 안에서 사용할 때는
M$-SQL과는 달리 :을 사용합니다.
CREATE PROCEDURE INSERT_OR_UPDATE (aa AS INTEGER)
AS
BEGIN
IF (:aa = 1) THEN
Begin
INSERT into Table 어쩌구 저쩌구
end
ELSE IF (:aa = 2) THEN
Begin
Update Table set 어쩌구 저쩌구
End
END
|