ÀÀ¿ëÇÁ·Î±×·¥ °³¹ß ¾È³»¼­

Æ®¸®°Å À̺¥Æ®

¸ðµç Æ®¸®°Å´Â À̺¥Æ®¿Í ¿¬°üµË´Ï´Ù. Æ®¸®°Å´Â ÇØ´ç À̺¥Æ®°¡ µ¥ÀÌÅͺ£À̽º¿¡¼­ ¹ß»ýÇϸé Ȱ¼ºÈ­µË´Ï´Ù. ÀÌ Æ®¸®°Å À̺¥Æ®´Â ÂüÁ¶ Á¦ÇÑÁ¶°Ç Á¶Ä¡¿¡ ÀÇÇØ ¹ß»ýµÈ °ÍµéÀ» Æ÷ÇÔÇÏ¿© UPDATE, INSERT ¶Ç´Â DELETE Áß Çϳª°¡ ÁÖÁ¦ Å×ÀÌºí¿¡¼­ ¼öÇàµÉ¶§ ¹ß»ýÇÕ´Ï´Ù. ¿¹¸¦ µé¸é ´ÙÀ½°ú °°½À´Ï´Ù.

    CREATE TRIGGER NEW_HIRE
      AFTER INSERT ON EMPLOYEE
      FOR EACH ROW MODE DB2SQL
      UPDATE COMPANY_STATS SET NBEMP = NBEMP + 1

À§ÀÇ ¸í·É¹®Àº new_hire Æ®¸®°Å¸¦ Á¤ÀÇÇϴµ¥, À̰ÍÀº employee Å×ÀÌºí¿¡ »ðÀÔ Á¶ÀÛÀ» ¼öÇàÇÒ ¶§ Ȱ¼ºÈ­µË´Ï´Ù.

»ç¿ëÀÚ´Â ¸ðµç Æ®¸®°Å À̺¥Æ®¿Í ¸ðµç Æ®¸®°Å¸¦ Á¤È®È÷ ÇϳªÀÇ ÁÖÁ¦ Å×ÀÌºí ¹× ÇϳªÀÇ °»½Å Á¶ÀÛ¿¡ ¿¬°ü½Ãŵ´Ï´Ù. °»½Å Á¶ÀÛÀº ´ÙÀ½°ú °°½À´Ï´Ù.

»ðÀÔ Á¶ÀÛ
»ðÀÔ Á¶ÀÛÀº INSERT¹®¿¡ ÀÇÇØ¼­¸¸ »ý¼ºµÉ ¼ö ÀÖ½À´Ï´Ù. ±×·¯¹Ç·Î µ¥ÀÌÅͰ¡ LOAD ¸í·É°ú °°ÀÌ INSERT¸¦ »ç¿ëÇÏÁö ¾Ê´Â À¯Æ¿¸®Æ¼¸¦ »ç¿ëÇÏ¿© ·ÎµåµÉ ¶§´Â Ȱ¼ºÈ­µÇÁö ¾Ê½À´Ï´Ù.

°»½Å Á¶ÀÛ
°»½Å Á¶ÀÛÀº UPDATE¹®À̳ª ON DELETE SET NULLÀÇ ÂüÁ¶ Á¦ÇÑÁ¶°Ç ±ÔÄ¢ÀÇ °á°ú ¹ß»ýÇÒ ¼ö ÀÖ½À´Ï´Ù.

»èÁ¦ Á¶ÀÛ
»èÁ¦ Á¶ÀÛÀº DELETE¹®À̳ª ON DELETE CASCADEÀÇ ÂüÁ¶ Á¦ÇÑÁ¶°Ç ±ÔÄ¢ÀÇ °á°ú·Î ¹ß»ýÇÒ ¼ö ÀÖ½À´Ï´Ù.

Æ®¸®°Å À̺¥Æ®°¡ °»½Å Á¶ÀÛÀÎ °æ¿ì, À̺¥Æ®´Â ÁÖÁ¦ Å×À̺íÀÇ Æ¯Á¤ Ä÷³°ú ¿¬°üµÉ ¼ö ÀÖ½À´Ï´Ù. ÀÌ °æ¿ì, Æ®¸®°Å´Â °»½Å Á¶ÀÛÀÌ ÁöÁ¤µÈ Ä÷³ Áß ÀÓÀÇÀÇ Ä÷³À» °»½ÅÇÏ·Á°í ½ÃµµÇÒ ¶§¿¡¸¸ Ȱ¼ºÈ­µË´Ï´Ù. À̰ÍÀ¸·Î Æ®¸®°Å¸¦ Ȱ¼ºÈ­½ÃŰ´Â À̺¥Æ®°¡ ´õ¿í ´Ùµë¾îÁú ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î ´ÙÀ½°ú °°Àº Æ®¸®°Å REORDER´Â »ç¿ëÀÚ°¡ PARTS Å×À̺íÀÇ ON_HAND ¶Ç´Â MAX_STOCKED Ä÷³¿¡ °»½Å Á¶ÀÛÀ» ¼öÇàÇÏ´Â °æ¿ì¿¡¸¸ Ȱ¼ºÈ­µË´Ï´Ù.

    CREATE TRIGGER REORDER
      AFTER UPDATE OF ON_HAND, MAX_STOCKED ON PARTS
      REFERENCING NEW AS N_ROW
      FOR EACH ROW MODE DB2SQL
      WHEN (N_ROW.ON_HAND < 0.10 * N_ROW.MAX_STOCKED)
      BEGIN ATOMIC
      VALUES(ISSUE_SHIP_REQUEST(N_ROW.MAX_STOCKED -
                                    N_ROW.ON_HAND,
                                    N_ROW.PARTNO));
      END


[ ÆäÀÌÁöÀÇ ¸Ç À§ | ÀÌÀü ÆäÀÌÁö | ´ÙÀ½ ÆäÀÌÁö | ¸ñÂ÷ | »öÀÎ ]