์ ์ฒด ๊ธ
[PL/SQL] ์ปค์(Cursor)
์ปค์(Cursor) ํ๋์ ๋ ์ฝ๋๊ฐ ์๋ ์ฌ๋ฌ ๋ ์ฝ๋๋ก ๊ตฌ์ฑ๋ ์์ ์์ญ์์ SQL๋ฌธ์ ์คํํ๊ณ ๊ทธ ๊ณผ์ ์ ์๊ธด ์ ๋ณด๋ฅผ ์ ์ฅํ๊ธฐ ์ํด ์ฌ์ฉ ์ปค์์ ์ข ๋ฅ แ์์์ ์ปค์ : ๋ชจ๋ DML๊ณผ PL/SQL SELECT๋ฌธ์ ๋ํด ์ ์ธ แ๋ช ์์ ์ปค์ : ํ๋ก๊ทธ๋๋จธ์ ์ํด ์ ์ธ๋๋ฉฐ ์ด๋ฆ์ด ์๋ ์ปค์์ด๋ค ์์์ ์ปค์ ์ค๋ผํด์ด๋ PL/SQL์คํ ๋ฉ์ปค๋์ฆ์ ์ํด ์ฒ๋ฆฌ๋๋ SQL๋ฌธ์ฅ์ด ์ฒ๋ฆฌ๋๋ ๊ณณ์ ๋ํ ์ต๋ช ์ ์ฃผ์ ์ค๋ผํด ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ์คํ๋๋ ๋ชจ๋ SQL๋ฌธ์ฅ์ ์์์ ์ธ ์ปค์๊ฐ ์์ฑ๋๋ฉฐ, ์ปค์ ์์ฑ์ ์ฌ์ฉ SQL ๋ฌธ์ด ์คํ๋๋ ์๊ฐ ์๋์ผ๋ก OPEN๊ณผ CLOSE ์์์ ์ปค์ ์์ฑ - SQL%ROWCOUNT : ํด๋น SQL ๋ฌธ์ ์ํฅ์ ๋ฐ๋ ํ์ ์ -SQL%FOUND:ํด๋นSQL์ํฅ์๋ฐ๋ํ์์๊ฐ1๊ฐ์ด์์ผ๊ฒฝ์ฐTRUE - SQ..
[PL/SQL] ์ฌ์ฉ์ ์ ์ ํจ์
์ฌ์ฉ์ ์ ์ ํจ์ ์ฌ์ฉ์๊ฐ ์ง์ ๋ก์ง์ ๊ตฌํํ์ฌ ๊ตฌํํ ํจ์ ๋ด์ฅ ํจ์(๋นํธ์ธ ํจ์)์ฒ๋ผ ์ฟผ๋ฆฌ์์ ํธ์ถํ๊ฑฐ๋ EXECUTE ๋ฌธ ์ ํตํด ์คํ ๊ฒฐ๊ณผ๋ฅผ ๋ฐํํจ ํจํค์ง ๋ด์์ ์ฌ์ฉ์ ์ ์ ํจ์๋ ์ค๋ณต ์ ์๊ฐ ๊ฐ๋ฅ ํ๋ก์์ ๋ ํน์ ํ ๋ก์ง์ ์ฒ๋ฆฌํ๊ณ ๊ฒฐ๊ณผ๋ฅผ ๋ฐํํ์ง ์์ ์ฌ์ฉ์ ์ ์ ํจ์ ์ ๋ณด ํ์ธ SELECT * FROM user_procedures WHERE OBJECT_TYPE = ‘FUNCTION'; โ๏ธ USER_PROCEDURES ์ฌ์ฉ์ ์ ์ ํจ์์ ๋ชฉ๋ก์ ํ์ธ โ๏ธ USER_SOURCE ์ฌ์ฉ์ ์ ์ ํจ์์ ์์ค๋ฅผ ํ์ธ ์ฌ์ฉ์ ์ ์ ํจ์ ์์ฑ CREATE [ OR REPLACE ] FUNCTION function_name [ ( parameter ๋ฐ์ดํฐํ์ [ ,parameter ๋ฐ์ดํฐํ์ ... ] ..
[PL/SQL] ํ๋ก์์
ํ๋ก์์ ์์ฃผ ์คํํด์ผ ํ๋ ์ ๋ฌด ํ๋ฆ(SQL)์ ๋ฏธ๋ฆฌ ์์ฑํ์ฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ด์ ์ ์ฅํด ๋์๋ค๊ฐ ํ์ํ ๋๋ง๋ค ํธ์ถํ์ฌ ์คํ ํน์ ํ ๋ก์ง ์ฒ๋ฆฌ ๊ฒฐ๊ณผ ๋ฐํโโโ ์ ๋์ ์ผ๋ก ์ปค๋ฐ์ด ํ์ํจ ํ๋ก์์ ํน์ง ํ ์ด๋ธ์ ์ญ์ ํด๋ ์ฐ๊ด๋ ํ๋ก์์ ์ญ์ โ ํ ์ด๋ธ์ด ์ญ์ ๋ ์ํ์์ ์ฐ๊ด๋ ํ๋ก์์ ๋ฅผ ์คํ ํ๋ฉด ์ค๋ฅ ๋ฐ์ ํ๋ผ๋ฏธํฐ IN ํ๋ก์์ ์๊ฒ ๊ฐ์ ๋๊ฒจ์ค ๋ ์ฌ์ฉํจ OUT ์๋ฐ์๋ ์๋ ๊ฐ๋ ์ผ๋ก ํ๋ก์์ ๊ฐ ์คํํ ๊ฒฐ๊ณผ๋ฅผ ๋๋๋ ค ๋ฐ์ ๋ INOUT IN๊ณผ OUT์ ๊ฒฐํฉํ ๊ฐ๋ ํ๋ก์์ ์์ฑ CREATE OR REPLACE PROCEDURE ํ๋ก์์ ์ด๋ฆ IS --ํ๋ก์์ ๋ด์์ ์ฌ์ฉํ ๋ณ์ ๋ณ์์ด๋ฆ ๋ฐ์ดํฐํ์ ; ๋ณ์์ด๋ฆ ๋ฐ์ดํฐํ์ ; BEGIN ๊ธฐ๋ฅ ๊ตฌํ,์ฒ๋ฆฌ ์์ฑ; [EXCEPTION] END [ํ๋ก์์ ์ด๋ฆ]; โ๏ธ ..
[PL/SQL]
PL/SQL ํ๋ก๊ทธ๋๋ฐ์ธ์ด์ ํน์ฑ์ ๊ฐ์ง๋ SQL์ ํ์ฅ ๋ฐ์ดํฐ ์กฐ์๊ณผ ์ง์ ๋ฌธ์ฅ์ PL/SQL์ ์ ์ฐจ์ ์ฝ๋ ์์ ํฌํจ PL/SQL ํ๋ก๊ทธ๋๋ฐ ๋จ์ ๐โ๏ธ ใPL/SQL ์ต๋ช ๋ธ๋ก ใํจ์ ใํ๋ก์์ ใํจํค์ง : ํจํค์ง ๋ช ์ธ, ํจํค์ง ๋ฐ๋ ใํธ๋ฆฌ๊ฑฐ ํ๋ก์์ https://codeong.tistory.com/61