μ€λΌν΄μ μ¬μ©νλ€λ³΄λ©΄ μμ£Ό μ νκ² λλ νλ‘μμ μ ν¨μ.
β
μ΄ λμ μ μμ μ°¨μ΄μ μ λν΄ μμ보μ.
νλ‘μμ (Procedure)λ?
λμ μλ―Έλ‘λ μ΄λ€ μ 무λ₯Ό μννκΈ° μν μ μ°¨λ₯Ό λ»νλ€.
β
μλ₯Ό λ€μ΄ μΌνλͺ°μμ μ λ°μ ꡬ맀νλ νλ‘μμ λ‘ ννν΄λ³Έλ€λ©΄
[ Procedure Start ]
β μΌνλͺ° νμ λ‘κ·ΈμΈ
①ꡬ맀ν μ λ° μ ν
β’ κ°μΈμ 보 λ° λ°°μ‘μ§ μ ν
β£ κ²°μ
[ Procedure End ]
μ μ²λΌ μ΄λ€ νλ‘μΈμ€λ₯Ό μ μ°¨μ μΌλ‘ κΈ°μ ν΄ λμ κ²μ νλ‘μμ λΌ νλ€.
νλ‘μμ λ¬Έλ²
CREATE OR REPLACE PROCEDURE νλ‘μμ μ΄λ¦
( 맀κ°λ³μλͺ
1 [ IN || OUT || INOUT ] λ°μ΄ν°νμ
,
맀κ°λ³μλͺ
2 [ IN || OUT || INOUT ] λ°μ΄ν°νμ
... )
IS||AS
λ³μ, μμ λ± μ μΈ ( μ μΈλΆ )
BEGIN
μ€ν λ¬Έμ₯ ( μ€νλΆ )
EXCEPTION λ¬Έμ₯ //νμμλ
END ;
νλ‘μμ μμ
//μ¬λ²μ μ
λ ₯λ°μ κΈμ¬λ₯Ό μΈμνλ update_sal νλ‘μμ
CREATE OR REPLACE PROCEDURE update_sal
( v_empno IN NUMBER )
IS
BEGIN
UPDATE emp
SET sal = sal * 1.1
WHERE empno = v_empno;
END update_sal;
ν¨μ(Function)λ?
μμ νλ‘μμ μ κ° νλ‘μΈμ€λ₯Ό μννκΈ° μν΄ νμν κΈ°λ₯λ€μ ν¨μλΌ νλ€.
β
μλ₯Ό λ€μ΄ μΌνλͺ°μ λ‘κ·ΈμΈκΈ°λ₯ μ€ IDμ PWλ₯Ό 체ν¬νλ κΈ°λ₯λ±μ ν¨μλΌ λ³΄λ©΄ λλ€.
β
κ°νΉ "ν¨μλ 리ν΄κ°μ κ°λ νλ‘μμ μ΄λ©° νλ‘μμ λ 리ν΄κ°μ΄ μλ€"λΌκ³ μκ°νμλ λΆλ€μ΄ μλλ° μ΄λ λͺ λ°±ν νλ¦° μ μμ΄λ€.
β
μ΄μ λ ν¨μλ νλ‘μμ λ ꡬ쑰μ μΌλ‘λ λμΌνλ©° νλ‘μμ λ 리ν΄κ°μ κ°μ§μ μκΈ° λλ¬Έμ΄λ€.
β
ν¨μ λ¬Έλ²
CREATE OR REPLACE FUNCTION ν¨μ μ΄λ¦
( 맀κ°λ³μλͺ
1 맀κ°λ³μ1νμ
,
맀κ°λ³μλͺ
2 맀κ°λ³μ2νμ
... )
RETURN λ°μ΄ν°νμ
IS||AS
λ³μ, μμ λ± μ μΈ ( μ μΈλΆ )
BEGIN
μ€ν λ¬Έμ₯ ( μ€νλΆ )
RETURN λ°νκ° //νμ
EXCEPTION λ¬Έμ₯ //νμμλ
END ;
ν¨μ μμ
//λ μ§λ₯Ό μ
λ ₯νλ©΄ YYYY-MM-DD ννλ‘ λ°κΏμ£Όλ ν¨μ
CREATE OR REPLACE FUNCTION testDate ( date Date )
RETURN VARCHAR2
IS
changeDate VARCHAR2 ( 20 ) ;
BEGIN
changeDate := NULL ;
changeDate := TO_CHAR ( date, 'YYYY-MM-DD' ) ;
RETURN changeDate ;
END ;
κ·Έλ λ€λ©΄ νλ‘μμ μ ν¨μλ λ¬΄μ¨ μ°¨μ΄κ° μλκ°?
νλ‘μμ (Procedure)μ ν¨μ(Function)μ μ°¨μ΄
μΆμ²: https://mjn5027.tistory.com/47
'π κ°λ° > λ°μ΄ν°λ² μ΄μ€' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[PostgreSQL] Windows νκ²½μ PostgreSQL μ€μΉνκΈ° (0) | 2021.07.19 |
---|---|
[MySQL] μμ€ν νκ²½ λ³μ λ±λ‘νκΈ° (0) | 2021.07.19 |
[λ°μ΄ν°λ² μ΄μ€] λ·° (View) - 3 (0) | 2021.07.15 |
[MySQL] MariaDB root λΉλ°λ²νΈ λ³κ²½ (MariaDB 10.4 μ΄μ) (4) | 2021.07.14 |
[λ°μ΄ν°λ² μ΄μ€] λ·° (View) - 2 (0) | 2021.07.14 |
λκΈ