°úÁ¤ ¸ñÇ¥
º» °úÁ¤¿¡¼´Â
Å×ÀÌºí¿¡ ÇàÀ» »ðÀÔÇÏ°í, Å×ÀÌºí¿¡ ÀÖ´Â ±âÁ¸ÀÇ ÇàÀ» °»½ÅÇÏ°í ±×¸®°í Å×À̺í·ÎºÎÅÍ ±âÁ¸ÀÇ ÇàÀ» »èÁ¦ÇÏ´Â ¹æ¹ýÀ» ¹è¿ó´Ï´Ù. ¶ÇÇÑ COMMIT, SAVEPOINT ±×¸®°í ROLLBACK
¹®ÀåÀ¸·Î Æ®·£Àè¼ÇÀ» Á¦¾îÇÏ´Â ¹æ¹ýÀ» ¹è¿ó ´Ï´Ù.
µ¥ÀÌÅÍ Á¶ÀÛ¾î
DML(Data manipulation
language)Àº SQLÀÇ ÇÙ½É ºÎºÐÀÔ´Ï´Ù. µ¥ÀÌÅͺ£À̽º¿¡ µ¥ÀÌÅ͸¦ Ãß°¡, °»½Å ¶Ç´Â »èÁ¦ÇÏ°íÀÚ ÇÑ´Ù¸é DML ¹®ÀåÀ»
½ÇÇàÇÕ´Ï´Ù. ÀÛ¾÷ÀÇ ³í¸®ÀûÀÎ ´ÜÀ§ ÇüÅÂÀÎ DML ¹®ÀåÀÇ ¸ðÀ½À» Æ®·£Àè¼ÇÀ̶ó°í ÇÕ´Ï´Ù.
ÀºÇà µ¥ÀÌÅͺ£À̽º¸¦ °í·ÁÇØ º¾½Ã´Ù. ÀºÇà
°í°´ÀÌ ÀúÃ༺ ¿¹±ÝÀ» ´çÁ ¿¹±ÝÀ¸·Î Àü´ÞÇÒ ¶§, Æ®·£Àè¼ÇÀº ¼¼ °¡ÁöÀÇ ºÐ¸®µÇ´Â ÀÛ¾÷À¸·Î ±¸¼ºµË´Ï´Ù: ÀúÃ༺ ¿¹±Ý °¨¼Ò, ´çÁ ¿¹±Ý Áõ°¡ ±×¸®°í
Æ®·£Àè¼Ç ÀÏÁö¿¡ Æ®·£Àè¼ÇÀ» ±â·Ï. ¿À¶óŬ ¼¹ö´Â ¿Ã¹Ù¸£°Ô ¿¹±ÝÀ» À¯ÁöÇϱâ À§ÇØ ¼¼ °¡Áö SQL ¹®Àå ¸ðµÎ°¡ ¼öÇàµÇµµ·Ï ÇØ¾ß ÇÕ´Ï´Ù. ´©±º°¡°¡
½ÇÇà ½Ã¿¡ Æ®·£Àè¼ÇÀÇ ¹®Àå ÁßÀÇ Çϳª¸¦ ¸·¾Æ ¹ö¸°´Ù¸é, ±× Æ®·£Àè¼Ç ³»ÀÇ ´Ù¸¥ ¹®ÀåÀº Ãë¼ÒµÇ¾î¾ß ÇÕ´Ï´Ù.
Å×ÀÌºí¿¡ »õ·Î¿î Çà Ãß°¡
À§ÀÇ ±×·¡ÇÁ´ÂDEPT Å×ÀÌºí¿¡ »õ·Î¿î ºÎ¼¸¦ Ãß°¡ÇÕ´Ï´Ù.
Å×ÀÌºí¿¡ »õ·Î¿î Çà Ãß°¡(°è¼Ó)
INSERT ¹®ÀåÀ» ½ÇÇàÇÏ¿© Å×ÀÌºí¿¡ »õ·Î¿î
ÇàÀ» Ãß°¡ÇÒ ¼ö ÀÖ½À´Ï´Ù.
±¸¹®Çü½Ä¿¡¼:
table Å×À̺íÀÇ
À̸§ÀÔ´Ï´Ù.
column Å×À̺íÀÇ ¿
À̸§ÀÔ´Ï´Ù.
value ¿¿¡ ÇØ´çµÇ´Â °ªÀÔ´Ï´Ù.
ÁÖ: VALUES
ÀýÀ» °¡Áö´Â ÀÌ ¹®ÀåÀº Å×ÀÌºí¿¡ Çѹø¿¡ ¿ÀÁ÷ ÇϳªÀÇ ÇุÀ» Ãß°¡ÇÕ´Ï´Ù.
Å×ÀÌºí¿¡ »õ·Î¿î Çà Ãß°¡(°è¼Ó)
°¢°¢ÀÇ ¿¿¡ ´ëÇÑ °ªÀ» Æ÷ÇÔÇÏ´Â »õ·Î¿î ÇàÀ»
»ðÀÔÇÒ ¼ö Àֱ⠶§¹®¿¡ ¿ ¸ñ·ÏÀº INSERT Àý¿¡ ¼ ¿ä±¸µÇÁö ¾Ê½À´Ï´Ù. ±×·¯³ª, ¿ ¸ñ·ÏÀ» »ç¿ëÇÏÁö ¾Ê´Â´Ù¸é °ªÀº Å×ÀÌºí¿¡ ÀÖ´Â ¿ÀÇ µðÆúÆ®
¼ø¼·Î ³ª¿µÇ¾î¾ß¸¸ ÇÕ´Ï´Ù.
SQL> DESCRIBE dept |
Name Null?
Type |
¸í·áÇÔÀ» À§Çؼ INSERT Àý¿¡¼ ¿ ¸ñ·ÏÀ» »ç¿ëÇÕ´Ï´Ù.
¹®ÀÚ¿Í ³¯Â¥ °ªÀº ´ÜÀÏ Àοë Ç¥½Ã
³»¿¡ ÀÖ¾î¾ß ÇÕ´Ï´Ù. ¼ýÀÚ °ªÀº ´ÜÀÏ Àοë Ç¥½Ã ³»¿¡ µÎ¾î¼´Â ¾ÈµË´Ï´Ù.
NULL °ªÀ» »ðÀÔÇϱâ À§ÇÑ ¹æ¹ý
¹æ ¹ý |
¼³ ¸í |
¾Ï½ÃÀû |
¿ ¸ñ·ÏÀ¸·ÎºÎÅÍ ¿À» »ý·«ÇÕ´Ï´Ù. |
¸í½ÃÀû |
VALUES ¸ñ·Ï¿¡ NULL Å°¿öµå¸¦ ¸í½ÃÇÕ´Ï´Ù. VALUES ¸ñ·Ï¿¡ °ø¹é ½ºÆ®¸µ(' ')À» ¸í½ÃÇÕ´Ï´Ù. ¹®ÀÚ ½ºÆ®¸µ°ú ³¯Â¥ ½ºÆ®¸µÀÇ °æ¿ì¿¡¸¸. |
SQL*Plus DESCRIBE ¸í·É¾î·ÎºÎÅÍ Null? »óŸ¦ °Ë»çÇÏ¿© ¸ñÇ¥(target) ¿ÀÌ ³Î
°ªÀ» Çã¿ëÇÏ´ÂÁö È®ÀÎÇϽʽÿÀ
¿À¶óŬ ¼¹ö´Â ÀÚµ¿ÀûÀ¸·Î ¸ðµç µ¥ÀÌÅÍÇü, µ¥ÀÌÅÍ ¹üÀ§ ±×¸®°í µ¥ÀÌÅÍ ¹«°á¼º Á¦¾àÁ¶°ÇÀ»
°¿äÇÕ´Ï´Ù.
SQL ÇÔ¼ö¸¦ »ç¿ëÇÏ¿© Ư¼ö °ª »ðÀÔ
Å×ÀÌºí¿¡ Ư¼ö °ªÀ» ÀÔ·ÂÇϱâ À§Çؼ
ÀÇ»ç¿(pseudocolumn)À» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
À§ÀÇ ¿¹´Â EMP Å×ÀÌºí¿¡ ÀÖ´Â Á¾¾÷¿ø Green¿¡ ´ëÇÑ Á¤º¸¸¦ ±â·ÏÇÕ´Ï´Ù.
HIREDATE ¿¿¡ ÇöÀç ½Ã°£°ú ³¯Â¥¸¦ ÀÔ·ÂÇÕ´Ï´Ù. ÇöÀç ³¯Â¥¿Í ½Ã°£À» À§Çؼ SYSDATE ÇÔ¼ö¸¦ »ç¿ëÇÕ´Ï´Ù.
¶ÇÇÑ Å×ÀÌºí¿¡ ÇàÀ»
ÀÔ·ÂÇÒ ¶§ USER ÇÔ¼ö¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
Å×ÀÌºí¿¡ Ãß°¡ÇÑ ³»¿ëÀ» È®ÀÎ
SQL> SELECT empno, ename, job,
hiredate, comm |
EMPNO ENAME JOB HIREDATE
COMM |
ƯÁ¤ ³¯Â¥¿Í ½Ã°£ °ª ÀÔ·Â
Çü½Ä DD-MON-YY´Â Ç×»ó ³¯Â¥ °ªÀ» ÀÔ·ÂÇÒ
¶§ »ç¿ëµË´Ï´Ù. ÀÌ Çü½ÄÀ¸·Î ÇöÀç ¼¼±â¿¡ ´ëÇÑ µðÆúÆ® ¼¼±â¸¦ ´Ù½Ã È£ÃâÇÕ´Ï´Ù. ³¯Â¥°¡ ½Ã°£ Á¤º¸¸¦ Æ÷ÇÔÇϹǷΠµðÆúÆ® ½Ã°£Àº
ÀÚÁ¤(00:00:00)ÀÔ´Ï´Ù.
³¯Â¥¸¦ ´Ù¸¥ ¼¼±â·Î ÀÔ·ÂÇϱ⸦ ¿øÇÏ°í, ¶Ç ƯÁ¤ ½Ã°£À» ¿ä±¸ÇÑ´Ù¸é TO_DATE ÇÔ¼ö¸¦
»ç¿ëÇÕ´Ï´Ù.
½½¶óÀ̵åÀÇ ¿¹´Â EMP Å×ÀÌºí¿¡ Á¾¾÷¿ø Aromano ¿¡ ´ëÇÑ Á¤º¸¸¦ ±â·ÏÇÕ´Ï´Ù. HIREDATE ¿À» February
3, 1997·Î ¼³Á¤ÇÕ´Ï´Ù.
ÁÖ: RR Çü½ÄÀ» ¼³Á¤ÇÑ´Ù¸é ¾Æ¸¶µµ ¼¼±â´Â ÇöÀç ¼¼±â°¡ ¾Æ´Ò ¼öµµ
ÀÖ½À´Ï´Ù.
´Ù¸¥ Å×À̺í·ÎºÎÅÍ Çà º¹»ç
±âÁ¸ÀÇ Å×À̺í·ÎºÎÅÍ °ªÀ» °¡Á®¿Í Å×ÀÌºí¿¡ Ãß°¡Çϱâ
À§Çؼ INSERT ¹®ÀåÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. VALUES Àý¿¡¼ ¼ºêÄõ¸®¸¦ »ç¿ëÇÒ ¼ö
ÀÖ½À´Ï´Ù.
±¸¹®Çü½Ä
INSERT INTO table [ column (, column)
] |
¿©±â¼: table Å×À̺íÀÇ
À̸§ÀÔ´Ï´Ù.
column Å×ÀÌºí¿¡ ÀÖ´Â ¿ÀÇ
À̸§ÀÔ´Ï´Ù.
subquery ÇàÀ» Å×ÀÌºí¿¡ ¸®ÅÏÇÒ ¼ºêÄõ¸®ÀÔ´Ï´Ù.
¡°SELECT,¡±
¼ºêÄõ¸®¿¡ ´ëÇؼ º¸´Ù ¸¹Àº Á¤º¸¸¦ ¾Ë°íÀÚ ÇÑ´Ù¸é, Oracle Server SQL Reference, Release 7.3 ¶Ç´Â
8.0 À» ÂüÁ¶ÇϽʽÿÀ.
INSERT ÀýÀÇ ¿ ¸ñ·Ï¿¡¼ ¿ÀÇ °³¼ö¿Í ±×µéÀÇ µ¥ÀÌÅÍÇüÀº ¼ºêÄõ¸®¿¡ ÀÖ´Â °ªÀÇ °³¼ö¿Í
±×µéÀÇ µ¥ÀÌÅÍÇü°ú ÀÏÄ¡ÇØ¾ß ÇÕ´Ï´Ù.
Å×ÀÌºí µ¥ÀÌÅÍ º¯°æ
ˤ˂
±×·¡ÇÁ´Â ClarkÀÇ ºÎ¼ ¹øÈ£¸¦ 10¿¡¼ 20À¸·Î º¯°æÇÕ´Ï´Ù.
Çà °»½Å
UPDATE ¹®ÀåÀ» »ç¿ëÇÏ¿© ±âÁ¸ÀÇ ÇàÀ» ¼öÁ¤ÇÒ ¼ö
ÀÖ½À´Ï´Ù.
À§ÀÇ ±¸¹®Çü½Ä¿¡¼:
table Å×À̺íÀÇ
À̸§ÀÔ´Ï´Ù.
column Å×À̺íÀÇ ¿
À̸§ÀÔ´Ï´Ù.
value ¿¿¡ ´ëÇÑ °ü·Ã °ªÀ̳ª
¼ºêÄõ¸®ÀÔ´Ï´Ù.
condition °»½ÅÇÒ ÇàÀ» ¸í½ÃÇÏ°í, ¿ À̸§, Ç¥Çö½Ä, »ó¼ö, ¼ºêÄõ¸® ±×¸®°í ºñ±³
¿¬»çÀÚ·Î ±¸¼ºµË´Ï´Ù.
°»½ÅµÈ ÇàÀ» µð½ºÇ÷¹ÀÌÇϱâ À§ÇØ Å×À̺íÀ» ÁúÀÇÇÏ¿© °»½Å
ÀÛ¾÷À» È®ÀÎÇÕ´Ï´Ù.
¡°UPDATE.¡± ¿¡ ´ëÇؼ º¸´Ù ¸¹Àº Á¤º¸¸¦ ¾Ë°íÀÚ ÇÑ´Ù¸é, Oracle Server SQL
Reference, Release 7.3 ¶Ç´Â 8.0 À» ÂüÁ¶ÇϽʽÿÀ.
ÁÖ: ÀϹÝÀûÀ¸·Î ´ÜÀÏ ÇàÀ»
½Äº°Çϱâ À§Çؼ ±âº» Å°(primary key)¸¦ »ç¿ëÇÕ´Ï´Ù. ´Ù¸¥ ¿À» »ç¿ëÇÏ¸é ¿øÇÏÁö ¾Ê´Â ¿©·¯ ÇàÀÌ °»½ÅµÉ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¸é,
À̸§À¸·Î EMP Å×ÀÌºí¿¡¼ ´ÜÀÏ ÇàÀ» ½Äº°ÇÏ¸é ¶È°°Àº À̸§À» °¡Áö´Â Á¾¾÷¿øÀÌ ¿©·¯ ¸íÀÌ ÀÖÀ» ¼ö Àֱ⠶§¹®¿¡ ¸ðÈ£ÇØÁý ´Ï´Ù.
Çà °»½Å(°è¼Ó)
UPDATE ¹®ÀåÀº ƯÁ¤ Çà(µé)À» °»½ÅÇÕ´Ï´Ù. WHERE
ÀýÀÌ ¸í½ÃµÇ¾ú´Ù¸é, À§ÀÇ ¿¹´Â Á¾¾÷¿ø 7782(Clark)¸¦ ºÎ¼ ¹øÈ£ 20À¸·Î Àü´ÞÇÕ´Ï´Ù.
WHERE ÀýÀ» »ý·«Çϸé Å×À̺íÀÇ ¸ðµç ÇàÀÌ
°»½ÅµË´Ï´Ù.
SQL> SELECT ename, deptno |
ENAME DEPTNO |
ÁÖ: EMPLOYEE Å×À̺íÀº EMP¿Í ¶È°°Àº µ¥ÀÌÅ͸¦
°¡Áý´Ï´Ù.
´ÙÁß ¿ ¼ºêÄõ¸®·Î Çà °»½Å
´ÙÁß ¿ ¼ºêÄõ¸®´Â UPDATE ¹®ÀåÀÇ SET
Àý·Î ±¸ÇöÇÒ ¼ö ÀÖ½À´Ï´Ù.
±¸¹®Çü½Ä
UPDATE table |
Å×À̺í·ÎºÎÅÍ Çà Á¦°Å
ˤ˂
±×·¡ÇÁ´Â DEPT Å×À̺í(DEPT Å×ÀÌºí¿¡´Â Á¤ÀÇµÈ Á¦¾àÁ¶°ÇÀÌ ¾ø´Ù°í °¡Á¤ÇÕ´Ï´Ù)·ÎºÎÅÍ DEVELOPMENT ºÎ¼¸¦
Á¦°ÅÇÕ´Ï´Ù.
Çà »èÁ¦
DELETE ¹®ÀåÀ» »ç¿ëÇÏ¿© ±âÁ¸ÀÇ ÇàÀ»
Á¦°ÅÇÕ´Ï´Ù.
±¸¹®Çü½Ä¿¡¼:
table |
Å×À̺íÀÇ À̸§ÀÔ´Ï´Ù. |
condition |
»èÁ¦µÈ ÇàÀ» ¸í½ÃÇÏ°í, ¿ À̸§, Ç¥Çö½Ä, »ó¼ö, ¼ºêÄõ¸® ±×¸®°í ºñ±³ ¿¬»êÀÚ·Î ±¸¼ºµË´Ï´Ù. |
¡°DELETE.¡± ¿¡ ´ëÇØ º¸´Ù ÀÚ¼¼ÇÑ Á¤º¸¸¦ ¿øÇÑ´Ù¸é Oracle Server SQL Reference, Release 8.0 À» ÂüÁ¶ÇϽʽÿÀ.
Çà »èÁ¦(°è¼Ó)
DELETE ¹®Àå¿¡ WHERE ÀýÀ» ¸í½ÃÇÏ¿© ƯÁ¤ Çà(µé)À»
»èÁ¦ÇÒ ¼ö ÀÖ½À´Ï´Ù. À§ÀÇ ¿¹´Â DEPARTMENT Å×À̺í·ÎºÎÅÍ DEVELOPMENT ºÎ¼¸¦ »èÁ¦ÇÕ´Ï´Ù. SELECT ¹®ÀåÀ» »ç¿ëÇÏ¿© »èÁ¦µÈ
ÇàÀ» µð½ºÇ÷¹ÀÌÇÏ¿© »èÁ¦ ÀÛ¾÷À» È®ÀÎÇÒ ¼ö ÀÖ½À´Ï´Ù.
SQL> SELECT * |
¿¹
January 1, 1997 ÀÌÈÄ¿¡ ÀÔ»çÇÑ ¸ðµç Á¾¾÷¿øÀ»
Á¦°ÅÇÕ´Ï´Ù.
SQL> DELETE FROM emp |
WHERE ÀýÀ» »ý·«ÇÑ´Ù¸é Å×ÀÌºí¿¡ ÀÖ´Â ¸ðµç ÇàÀÌ »èÁ¦µÉ °ÍÀÔ´Ï´Ù. ½½¶óÀ̵åÀÇ µÎ¹ø° ¿¹´Â
WHERE ÀýÀ» ¸í½ÃÇÏÁö ¾Ê¾Ò±â ¶§¹®¿¡ DEPARTMENT Å×À̺íÀÇ ¸ðµç ÇàÀ» »èÁ¦ÇÕ´Ï´Ù.
ÁÖ: DEPARTMENT Å×À̺íÀº DEPT Å×À̺í°ú ¶È°°Àº µ¥ÀÌÅ͸¦ °¡Áý´Ï´Ù.
´Ù¸¥ Å×À̺íÀ» ±Ù°Å·Î ÇÏ´Â Çà »èÁ¦
´Ù¸¥ Å×À̺íÀÇ °ªÀ» ±Ù°Å·Î Å×À̺í·ÎºÎÅÍ ÇàÀ» »èÁ¦Çϱâ À§ÇØ ¼ºêÄõ¸®¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. À§ÀÇ ¿¹´Â ºÎ¼ 30¿¡ ÀÖ´Â ¸ðµç
Á¾¾÷¿øÀ» »èÁ¦ÇÕ´Ï´Ù. ¼ºêÄõ¸®´Â SALES ºÎ¼¿¡ ´ëÇØ ºÎ¼ ¹øÈ£¸¦ ¾Ë±â À§Çؼ DEPT Å×À̺íÀ» °Ë»öÇÕ´Ï´Ù. ±×·± ´ÙÀ½¿¡ ¼ºêÄõ¸®´Â ÀÌ ºÎ¼
¹øÈ£¸¦ ±Ù°Å·Î ÇÏ´Â EMPLOYEE Å×À̺í·ÎºÎÅÍ µ¥ÀÌÅÍÀÇ ÇàÀ» »èÁ¦ÇÏ´Â ¸ÞÀÎ Äõ¸®·Î ºÎ¼ ¹øÈ£¸¦ ³Ñ°ÜÁÝ´Ï´Ù.
¹«°á¼º Á¦¾àÁ¶°Ç ¿¡·¯
¹«°á¼º Á¦¾àÁ¶°ÇÀ» À§¹ÝÇϵµ·Ï ·¹Äڵ带 »èÁ¦ÇÏ°íÀÚ ÇÑ´Ù¸é ¿¡·¯°¡ ¹ß»ýÇÒ °ÍÀÔ´Ï´Ù.
À§ÀÇ ¿¹´Â DEPT Å×À̺í·ÎºÎÅÍ ºÎ¼
¹øÈ£ 10À» »èÁ¦ÇÏ·Á°í ½ÃµµÇÏÁö¸¸, ºÎ¼ ¹øÈ£¸¦ EMP Å×ÀÌºí¿¡ ÀÖ´Â ¿Ü·¡ Å°(foreign key)°¡ »ç¿ëÇϱ⠶§¹®¿¡ ¿¡·¯°¡ ¹ß»ýÇÕ´Ï´Ù. »èÁ¦ÇÏ·Á°í ÇÏ´Â ºÎ¸ð ·¹Äڵ尡 ÀÚ½Ä ·¹Äڵ带
°¡Áö°í ÀÖ´Ù¸é child record found violation ORA-02292¶ó´Â ¿¡·¯ ¸Þ½ÃÁö°¡ ³ªÅ¸³³´Ï´Ù.