JavaRush /Java Blog /Random-KO /Oracle DBMS ๊ฐœ๋ฐœ์„ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์‹œ์ž‘ํ•˜๋Š” ๋ฐฉ๋ฒ•

Oracle DBMS ๊ฐœ๋ฐœ์„ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์‹œ์ž‘ํ•˜๋Š” ๋ฐฉ๋ฒ•

Random-KO ๊ทธ๋ฃน์— ๊ฒŒ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค
์ €์„œ์˜ ์ €์ž์ด์ž Oracle ๋ฐ SQL DBMS ์ „๋ฌธ๊ฐ€์ธ Stephen Feuerstein์˜ ๊ธฐ์‚ฌ ๋ฒˆ์—ญ์„ ์—ฌ๋Ÿฌ๋ถ„๊ป˜ ์•Œ๋ ค๋“œ๋ฆฝ๋‹ˆ๋‹ค . "Oracle DBMS ๊ฐœ๋ฐœ"์ด๋ž€ SQL ๋˜๋Š” PL/SQL ์–ธ์–ด๋กœ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ธฐ์‚ฌ์—์„œ๋Š” ๊ท€ํ•˜๊ฐ€ Oracle ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค(Oracle ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค, Docker, GitHub ๋ฐ OTN์„ ํ†ตํ•ด ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ์Œ)์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•ฉ๋‹ˆ๋‹ค.
Oracle DBMS ๊ฐœ๋ฐœ์„ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์‹œ์ž‘ํ•˜๋Š” ๋ฐฉ๋ฒ• - 1
  1. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ์—ผ๋‘์— ๋‘๊ณ  ์„ค๊ณ„๋œ ๊ฐ•๋ ฅํ•œ IDE์˜ ์ด์ 

    Oracle DBMS์™€ ํ•จ๊ป˜ ์ž‘๋™ํ•˜๋„๋ก ์„ค๊ณ„๋œ ๋งŽ์€ ํŽธ์ง‘๊ธฐ์™€ IDE๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฌผ๋ก  ๋ฉ”๋ชจ์žฅ์„ ์‚ฌ์šฉํ•  ์ˆ˜๋„ ์žˆ์ง€๋งŒ ํšจ์œจ์„ฑ์˜ ์†์‹ค์€ ์—„์ฒญ๋‚ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ Sublime๊ณผ ๊ฐ™์€ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ํŽธ์ง‘๊ธฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ Oracle๊ณผ ์ž‘๋™ํ•˜๋„๋ก ๊ตฌ์„ฑํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๊ทธ๋Ÿฌ๋‚˜ ์ €๋Š” Oracle์ด ์ง์ ‘ ๊ฐœ๋ฐœํ•œ ๊ฐ•๋ ฅํ•œ ๋ฌด๋ฃŒ IDE์ธ SQL Developer๋ฅผ ๋‹ค์šด๋กœ๋“œํ•˜์—ฌ ์„ค์น˜ํ•˜๋Š” ๊ฒƒ์„ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค.


  2. ์ปดํŒŒ์ผ๋Ÿฌ ๋ฐ PL/Scope ๊ฒฝ๊ณ ๋ฅผ ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค.

    Oracle ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—๋Š” ์ˆ˜๋งŽ์€ ์œ ์šฉํ•œ ๊ธฐ๋Šฅ์ด ๋‚ด์žฅ๋˜์–ด ์žˆ์–ด ์—ฌ๋Ÿฌ๋ถ„์ด ์‚ฌ์šฉํ•˜๊ธฐ๋ฅผ ๊ธฐ๋‹ค๋ฆฌ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด Oracle์€ PL/SQL ํ”„๋กœ๊ทธ๋žจ ๋ชจ๋“ˆ์„ ์ปดํŒŒ์ผํ•  ๋•Œ ์ฃผ์„("์ปดํŒŒ์ผ๋Ÿฌ ๊ฒฝ๊ณ "๋ผ๊ณ  ํ•จ)์„ ๋ฐœํ–‰ํ•˜์—ฌ ์ฝ”๋“œ์˜ ํ’ˆ์งˆ๊ณผ ์„ฑ๋Šฅ์„ ํ–ฅ์ƒ์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋˜ํ•œ PL/Scope ์œ ํ‹ธ๋ฆฌํ‹ฐ๋Š” ํ™œ์„ฑํ™”๋œ ๊ฒฝ์šฐ ์‹๋ณ„์ž ๋ฐ SQL ๋ฌธ(๋ฒ„์ „ 12.2)์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ์ˆ˜์ง‘ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ํ•„์š”ํ•œ ์ฝ”๋“œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์— ๋Œ€ํ•œ ๋งค์šฐ ์ธ์ƒ์ ์ธ ๋ถ„์„์ด ๊ฐ€๋Šฅํ•ด์กŒ์Šต๋‹ˆ๋‹ค.

    ๋Œ€๋ถ€๋ถ„์˜ ๊ฐœ๋ฐœ์ž๋Š” ์ด๋Ÿฌํ•œ ๊ธฐ๋Šฅ์— ๋Œ€ํ•ด ์ „ํ˜€ ๋ชจ๋ฅด๊ณ  ๋น„ํ™œ์„ฑํ™”๋œ ์ƒํƒœ๋กœ ๋‘ก๋‹ˆ๋‹ค. SQL Developer ํ™˜๊ฒฝ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ œ์•ˆํ•˜๊ณ  ์‹ถ์€ ๋‚ด์šฉ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

    ํ™˜๊ฒฝ ์„ค์ • ๋ฉ”๋‰ด ํ•ญ๋ชฉ์„ ์—ด๊ณ  ๊ฒ€์ƒ‰ ํ•„๋“œ์— "์ปดํŒŒ์ผ"์„ ์ž…๋ ฅํ•˜์‹ญ์‹œ์˜ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ ์„ค์ •์„ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค.

    Oracle DBMS ๊ฐœ๋ฐœ์„ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์‹œ์ž‘ํ•˜๋Š” ๋ฐฉ๋ฒ• - 2

    ๋‹ค์‹œ ๋งํ•ด์„œ:

    1. ๋ชจ๋“  ๊ฒฝ๊ณ ๋ฅผ ์ผœ์‹ญ์‹œ์˜ค.

      ๋”ฐ๋ผ์„œ ์†Œํ”„ํŠธ์›จ์–ด ๋ชจ๋“ˆ์„ ์ปดํŒŒ์ผํ•  ๋•Œ Oracle์€ ์ฝ”๋“œ ๊ฐœ์„  ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ์กฐ์–ธ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

    2. ๋ชจ๋“  "์‹ฌ๊ฐํ•œ" ๊ฒฝ๊ณ ๋ฅผ ์ปดํŒŒ์ผ ์˜ค๋ฅ˜๋กœ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

      PL/SQL ๊ฐœ๋ฐœ ํŒ€์ด ์ด๋Ÿฌํ•œ ๊ฒฝ๊ณ ๊ฐ€ ์–ด๋–ค ๋ฐฉ์‹์œผ๋กœ๋“  ์ค‘์š”ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋Š” ๊ฒฝ์šฐ ํ•ด๋‹น ๊ฒฝ๊ณ ๋ฅผ ํ”„๋กœ๋•์…˜ ์ฝ”๋“œ์— ํฌํ•จํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ด ๋ฐ”๋žŒ์งํ•ฉ๋‹ˆ๋‹ค. ์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ERROR๋กœ ์„ค์ •ํ•˜๋ฉด ํ•ด๋‹น ๋งค๊ฐœ๋ณ€์ˆ˜๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ ์ฝ”๋“œ๊ฐ€ ์ปดํŒŒ์ผ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

    3. ์ตœ์ ํ™” ์ˆ˜์ค€์„ 3์œผ๋กœ ๋†’์ž…๋‹ˆ๋‹ค(์ด๊ฒƒ์€ ํ•„์š”ํ•œ ๋ชจ๋“  ์„ค์ •๊ณผ ์„œ๋ธŒ๋ฃจํ‹ด ์ฝ”๋“œ ํฌํ•จ์ž…๋‹ˆ๋‹ค).

      ๋” ์ค‘์š”ํ•œ ๊ฒƒ์€ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์˜ ํ”„๋กœ๋•์…˜ ์ค€๋น„ ์ฝ”๋“œ๊ฐ€ ํ•„์š”ํ•œ ๋ชจ๋“  ์ˆ˜๋‹จ์„ ํ†ตํ•ด ๋™์ผํ•œ ์ˆ˜์ค€์˜ ์ตœ์ ํ™”๋กœ ์ปดํŒŒ์ผ๋˜๋Š”์ง€ ํ™•์ธํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ž์„ธํ•œ ์ง€์นจ์€ PL/SQL ํŒ€์ด ์ž‘์„ฑํ•œ ๋‹ค์Œ ํŠœํ† ๋ฆฌ์–ผ์„ ํ™•์ธํ•˜์„ธ์š”.

    4. PL/Scope ์œ ํ‹ธ๋ฆฌํ‹ฐ ํ™œ์„ฑํ™”

      ์ด๋ฅผ ํ†ตํ•ด ๋ช…๋ช… ๊ทœ์น™, ์ตœ์ ์ด ์•„๋‹Œ ์ฝ”๋“œ ๋ฐ ์„ฑ๋Šฅ ๊ฐœ์„ ์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ์ฝ”๋“œ์—์„œ ์ฟผ๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

      LiveSQL ๋ฐ GitHub ์—์„œ PL/Scope์— ๋Œ€ํ•œ ์œ ์šฉํ•œ ์ •๋ณด์™€ ๋„์šฐ๋ฏธ ์œ ํ‹ธ๋ฆฌํ‹ฐ๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค .


  3. ๋กœ๊น… ๋ฐ ๋„๊ตฌ์— ๋Œ€ํ•œ ๊ฒฐ์ •์„ ์ง€์—ฐํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค.

    Oracle DBMS ๊ฐœ๋ฐœ์„ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์‹œ์ž‘ํ•˜๋Š” ๋ฐฉ๋ฒ• - 3

    ๋‹ค์Œ ํ”„๋กœ๊ทธ๋žจ ์ž‘์„ฑ์„ ์‹œ์ž‘ํ•˜๊ธฐ ์ „์— ์ฝ”๋“œ์— ํ•„์—ฐ์ ์œผ๋กœ ์˜ค๋ฅ˜๊ฐ€ ๊ฐ€๋“ํ•  ๊ฒƒ์ด๋ผ๋Š” ์ ์„ ์ธ์ •ํ•˜์„ธ์š”. ํ”„๋กœ๋•์…˜์šฉ ์ฝ”๋“œ๋ฅผ ์ค€๋น„ํ•˜๊ณ  ํ”„๋กœ๋•์…˜์—์„œ ์•ˆ์ •์ ์ธ ์ž‘๋™์„ ๋ณด์žฅํ•˜๋ ค๋ฉด ํ”„๋กœ๊ทธ๋žจ ์‹คํ–‰์„ ์ถ”์ ํ•˜๊ณ  ์ด๋Ÿฌํ•œ ์˜ค๋ฅ˜๋„ ๊ธฐ๋กํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

    ์ด๋ฅผ ์œ„ํ•ด์„œ๋Š” ๋กœ๊น… ๋„๊ตฌ๊ฐ€ ํ•„์š”ํ•˜๋ฉฐ, GitHub์—์„œ ์ œ๊ณต๋˜๋Š” ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ์˜คํ”ˆ ์†Œ์Šค ์œ ํ‹ธ๋ฆฌํ‹ฐ์ธ Logger๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

์ฝ”๋ฉ˜ํŠธ
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION