¿À¶óŬ µ¥ÀÌÅͺ£À̽º¸¦ óÀ½ Á¢ÇÏ´Â »ç¶÷À» ´ë»óÀ¸·Î, ¿À¶óŬÀ» ½±°í Àç¹ÌÀÖ°Ô ¹è¿ï ¼ö ÀÖµµ·Ï ±¸¼ºÇÑ Ã¥ÀÌ´Ù. ¿À¶óŬ °¢°¢ÀÇ ±â´É¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ¼³¸íº¸´Ù´Â ½ÇÁ¦ ¿¹Á¦¸¦ ÅëÇؼ µû¶óÇϱâ Áß½ÉÀ¸·Î ¼³¸íÇß´Ù. PL/SQL ÇÁ·Î±×·¥À» »ý¼ºÇÏ°í ½ÇÇàÇÏ´Â ¹æ¹ý, Æ®·£Àè¼Ç ¹× »ç¿ëÀÚ °ü¸®¿Í ±ÇÇÑ°ú PL/SQL¿¡¼ ÀúÀå ÇÁ·Î½ÃÀú¸¦ ¸¸µé°í È£ÃâÇÏ´Â ¹æ¹ý, µ¥ÀÌÅͺ£À̽º Æ®¸®°ÅÀÇ Á¤ÀÇ¿Í »ç¿ë µîÀ» ´Ù·ç°í ÀÖ´Ù.
1Àå µ¥ÀÌÅͺ£À̽º °³³ä°ú ¿À¶óŬ ¼³Ä¡
µ¥ÀÌÅͺ£À̽º¶õ?
µ¥ÀÌÅͺ£À̽º °ü¸® ½Ã½ºÅÛ
¿À¶óŬ 10g ´Ù¿î¹Þ±â
¿À¶óŬ 10g ¼³Ä¡Çϱâ
¿À¶óŬ 10gÀÇ ½ÃÀÛ°ú Á¾·á
½Ã½ºÅÛ ±ÇÇÑÀ» °¡Áø µ¥ÀÌÅͺ£À̽º °ü¸®ÀÚ
2Àå SQLÀÇ ±âº»
µ¥ÀÌÅͺ£À̽º¿¡ ÀúÀåµÇ´Â ÀÚ·á ÇüÅÂ
µ¥ÀÌÅÍÀÇ ±¸Á¶¸¦ »ìÆ캸±â À§ÇÑ DESC
¿À¶óŬÀÇ µ¥ÀÌÅÍ Çü
±âº»ÀûÀÎ SELECT¹®
ƯÁ¤ µ¥ÀÌÅ͸¸ º¸±â
»ê¼ú ¿¬»êÀÚ
NULLµµ µ¥ÀÌÅÍÀÌ´Ù
º°Äª
Concatenation ¿¬»êÀÚÀÇ Á¤ÀÇ¿Í »ç¿ë
Áߺ¹µÇ´Â Ä÷³À» ÇÑ ¹ø¾¿¸¸ º¸¿©ÁÖ±â À§ÇÑ DISTINCT Å°¿öµå
3Àå SQL*Plus ¸í·É¾î
SQL*Plus ¸í·É¾î
SQL*Plus ÆíÁý ¸í·É°ú ÆÄÀÏ Á¶ÀÛ ¸í·É
¸í·É ¹öÆÛ¿¡ ÀúÀåµÈ Äõ¸®¹®À» ÆíÁýÇϱâ À§ÇÑ EDIT ¸í·É¾î
ÃÖ±Ù¿¡ ¼öÇàÇÑ Äõ¸®¹®À» ÀúÀåÇϱâ À§ÇÑ SAVE ¸í·É¾î
SQL¹®ÀÇ ½ÇÇà °á°ú¸¦ ÀúÀåÇϱâ À§ÇÑ SPOOL ¸í·É¾î
½Ã½ºÅÛÀÇ º¯¼ö ¼³Á¤Çϱâ À§ÇÑ SET ¸í·É¾î
Çü½ÄÀ» ÁöÁ¤Çϱâ À§ÇÑ ¸í·É¾î
4Àå ƯÁ¤ µ¥ÀÌÅ͸¦ ÃßÃâÇϱâ À§ÇÑ ¿¬»êÀÚ
WHEREÀý
ºñ±³ ¿¬»êÀÚ
ºñ±³ ¿¬»êÀÚ II
IN ¿¬»êÀÚ
BETWEEN AND ¿¬»êÀÚ
³í¸® ¿¬»êÀÚ
Á¤·ÄÇÏ¿© Ãâ·ÂÇϱâ À§ÇÑ ORDER BY Àý
5Àå SQL ÁÖ¿ä ÇÔ¼ö
DUAL Å×À̺í
¼ýÀÚ ÇÔ¼ö
¹®ÀÚ Ã³¸® ÇÔ¼ö
³¯Â¥ °ü·Ã ÇÔ¼ö
Çü º¯È¯ ÇÔ¼ö
NULL º¯È¯ ÇÔ¼öÀÎ NVL
C¾ð¾îÀÇ else if ¹®°ú °°Àº DECODE ÇÔ¼ö
Á¶°Ç¿¡ µû¶ó ¼·Î ´Ù¸¥ 󸮰¡ °¡´ÉÇÑ CASE ÇÔ¼ö
6Àå ±×·ìÇÔ¼ö
±×·ì ÇÔ¼ö
GROUP BY Àý
HAVING Àý
7Àå Á¶ÀÎ
Á¶ÀÎÀÇ ±âº» °³³ä
EQUI JOIN
NON-EQUI JOIN
SELF JOIN
OUTER JOIN
´Ù¾çÇÑ ¿¹Á¦
8Àå ¼ºê Äõ¸®
¼ºê Äõ¸®ÀÇ ¹®¹ý°ú Á¾·ù
´ÜÀÏ Çà ¼ºê Äõ¸®
¼ºê Äõ¸®¿¡¼ ±×·ì ÇÔ¼öÀÇ »ç¿ë
´ÙÁß Çà ¼ºê Äõ¸®
´Ù¾çÇÑ ¿¹Á¦
9Àå Å×ÀÌºí »ý¼º ¹× º¯°æ, »èÁ¦Çϱâ(DDL)
Å×ÀÌºí »ý¼º
Å×À̺íÀÇ ±¸Á¶ º¯°æÇϱâ
Å×À̺í Á¦°Å
Å×À̺íÀÇ ¸ðµç ·Î¿ì Á¦°Å
µ¥ÀÌÅÍ µñ¼Å³Ê¸®¿Í µ¥ÀÌÅÍ µñ¼Å³Ê¸® ºä (ºäÀÇ Á¤ÀÇ´Â 14Àå ÂüÁ¶)
10Àå Å×ÀÌºí¿¡ Ä÷³ Ãß°¡, ¼öÁ¤, »èÁ¦Çϱâ(DML)
INSERT¹®
ġȯº¯¼ö
¼ºê Äõ¸®·Î Å×À̺í ÀÛ¼ºÇϱâ
´ÙÁß Å×ÀÌºí¿¡ ´ÙÁß ·Î¿ì ÀÔ·ÂÇϱâ
Á¶°Ç(WHEN)¿¡ ÀÇÇØ ´ÙÁß Å×ÀÌºí¿¡ ´ÙÁß ·Î¿ì ÀÔ·ÂÇϱâ
PIVOTING¿¡ ÀÇÇØ ´ÙÁß Å×ÀÌºí¿¡ ´ÙÁß Çà ÀÔ·ÂÇϱâ
UPDATE¹®
¼ºê Äõ¸®¸¦ ÀÌ¿ëÇÑ µ¥ÀÌÅÍ ¼öÁ¤Çϱâ
DELETE¹®
MERGE
11Àå Æ®·£Àè¼Ç °ü¸®
Æ®·£Àè¼Ç
Ä¿¹Ô¿Í ·Ñ¹é
ÀÚµ¿ Ä¿¹Ô
¼¼À̺êÆ÷ÀÎÆ®
12Àå µ¥ÀÌÅÍ Àбâ ÀÏ°ü¼º°ú ¶ô
µ¥ÀÌÅÍ Àбâ ÀÏ°ü¼º°ú ¶ô
µ¥µå ¶ô
Å×À̺íÀ» °»½Å½Ã ¹ß»ýÇÑ ¶ôÀ» ÇØ°áÇÏ´Â ¹æ¹ý
13Àå ¹«°á¼º Á¦¾à Á¶°Ç
¹«°á¼º Á¦¾à Á¶°ÇÀÇ °³³ä
±âº» Å° Á¦ÇÑÁ¶°Ç
¿Ü·¡ Å° Á¦ÇÑ Á¶°Ç°ú ÂüÁ¶ ¹«°á¼º
À¯ÀÏ Å° Á¦ÇÑ Á¶°Ç
Check Á¦ÇÑ Á¶°Ç
NOT NULL Á¦ÇÑÁ¶°Ç
Á¦¾à Á¶°ÇÀÇ ºñÈ°¼ºÈ
14Àå ºä
ºä¶õ?
ºäÀÇ ³»ºÎ±¸Á¶
ºä¸¦ »ç¿ëÇÏ´Â ÀÌÀ¯
ºäÀÇ Á¾·ù
ºäÀÇ Á¦°Å
ºäÀÇ º¯°æ
ºäÀÇ »ý¼ºÇÒ ¶§ ÁöÁ¤ÇÏ´Â FORCE/NOFORCE ¿É¼Ç
WITH CHECK OPTION
WITH READ ONLY
ÀζóÀÎ ºä
Top-N ºÐ¼®
15Àå ½ÃÄö½º
½ÃÄö½º °³³ä ÀÌÇØ¿Í ½ÃÄö½º »ý¼º
½ÃÄö½º¿¡ °üÇÑ µ¥ÀÌÅÍ µñ¼Å³Ê¸®
CURRVAL°ú NEXTVALÀÇ »ç¿ë
½ÃÄö½ºÀÇ ¼öÁ¤°ú Á¦°Å
½ÃÄö½ºÀÇ ½Ç¹« Àû¿ë
16Àå À妽º
À妽º °³³äÀÇ ÀÌÇØ
À妽º »ý¼º/Á¦°Å¿Í À妽º Á¤º¸ Á¶È¸
À妽ºÀÇ Àå/´ÜÁ¡°ú À妽º À籸¼º
À妽ºÀÇ Á¾·ù
17Àå »ç¿ëÀÚ °ü¸®
»ç¿ëÀÚ »ý¼º
»ç¿ëÀÚ ±ÇÇÑ
½Ã½ºÅÛ ±ÇÇÑ
°´Ã¼ ±ÇÇÑ
18Àå µ¥ÀÌÅͺ£À̽º ·Ñ ±ÇÇÑ Á¦¾î
·ÑÀ̶õ
·ÑÀÇ Á¾·ù
»ç¿ëÀÚ°¡ ·Ñ Á¤ÀÇ
·Ñ¿¡ ºÎ¿©µÈ ±ÇÇÑ ¾Ë¾Æº¸°í ·Ñ ȸ¼öÇϱâ
·ÑÀÇ ÀåÁ¡
19Àå µ¿ÀǾî
µ¿ÀÇ¾î °³³ä°ú Á¾·ù
µ¿ÀǾîÀÇ »ý¼º
µ¿ÀǾîÀÇ Á¦°Å
20Àå PL/SQL ±âÃÊ
PL/SQL ±¸Á¶
º¯¼ö ¼±¾ð°ú ´ëÀÔ¹®
¼±Åù®
¹Ýº¹¹®
Å×ÀÌºí¿¡ ÀúÀå
½ÃÄö½º »ý¼º
PL/SQL Å×À̺í°ú ·¹ÄÚµå
21Àå Ä¿¼
Ä¿¼
OPEN-FETCH-CLOSE°¡ ¾øÀÌ Ä¿¼ ó¸®
Ä¿¼ÀÇ »óÅÂ
Ä¿¼¸¦ È°¿ëÇÑ ½Ç¿ë ¿¹Á¦
22Àå ÀúÀå ÇÁ·Î½ÃÀú¿Í ÇÔ¼ö
ÀúÀå ÇÁ·Î½ÃÀú »ý¼º
ÀúÀå ÇÁ·Î½ÃÀú ÀÛ¼º½Ã ¹ß»ýÇÏ´Â ¿À·ù ó¸®Çϱâ
ÀúÀå ÇÁ·Î½ÃÀú Á¶È¸Çϱâ
¸Å°³ º¯¼ö
ÀúÀå ÇÔ¼ö »ý¼º
23Àå ÆÐÅ°Áö¿Í Æ®¸®°Å
ÆÐÅ°Áö »ý¼º°ú ½ÇÇà
Àü¿ª º¯¼ö¿Í ÇÁ·Î½ÃÀúÀÇ ¿À¹ö·Îµù°ú ONE-TIME-ONLY ÇÁ·Î½ÃÀú
DBMS_OUTPUT ÆÐÅ°Áö
Æ®¸®°Å »ý¼º°ú ½ÇÇà
Æ®¸®°Å »èÁ¦
¿¹Á¦¸¦ ÅëÇÑ Æ®¸®°ÅÀÇ Àû¿ë
ºÎ·Ï 1 µ¥ÀÌÅͺ£À̽ºÀÇ ºÐ¼® ¼³°è °úÁ¤
µ¥ÀÌÅÍ ¸ðµ¨¸µ
¿ä±¸ »çÇ× ºÐ¼®
°³Ã¼ °ü°è ¸ðµ¨(³í¸®Àû ¼³°è ´Ü°è)
¹°¸®Àû ¼³°è
Á¤±ÔÈ
ºÎ·Ï 2 E-R Win »ç¿ëÇÏ¿© µ¥ÀÌÅͺ£À̽º ¸ðµ¨¸µÇϱâ
E-R Win »ç¿ëÇϱâ
³í¸®Àû ¸ðµ¨¸µ
´Ù´ë´Ù °ü°è Á¤ÀÇ
µµ¸ÞÀÎ ¼³Á¤
Subject Area
¹°¸®Àû(Physical) ¸ðµ¨
ºä(View) Á¤ÀÇ
½ºÅä¾îµå ÇÁ·Î½ÃÀú Á¤ÀÇ
Æ®¸®°Å(Trigger) Á¤ÀÇ
µ¥ÀÌÅͺ£À̽º ½ºÅ°¸¶ »ý¼º