Æ®¸®°Å´Â ÁöÁ¤µÈ ±âº» Å×ÀÌºí ¹× À¯Çü Å×ÀÌºí¿¡¼ INSERT, UPDATE ¶Ç´Â DELETEÀý°úÇÔ²² ½ÇÇàµÇ´Â Á¶Ä¡ ¶Ç´Â ÀÌ·¯ÇÑ Àý¿¡ ÀÇÇØ Æ®¸®°ÅµÇ´Â ÀÏ·ÃÀÇ Á¶Ä¡¸¦Á¤ÀÇÇÕ´Ï´Ù. Æ®¸®°Å´Â ´ÙÀ½ °æ¿ì¿¡ »ç¿ëµË´Ï´Ù.
º°¸íÀÌ ÀÖ´Â Æ®¸®°Å¸¦ »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.
»ç¿ëÀÚ´Â ¹«°á¼º ¶Ç´Â ºñÁö´Ï½º ±ÔÄ¢ÀÇ ÀÏ¹Ý ¾ç½ÄÀ» Áö¿øÇϱâ À§ÇØ Æ®¸®°Å¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, Æ®¸®°Å´Â ÁÖ¹®À» ¹Þ¾ÆµéÀ̱â Àü¿¡ °í°´ÀÇ ½Å¿ë Çѵµ¸¦ Á¡°ËÇϰųª ¿ä¾à µ¥ÀÌÅÍ Å×À̺íÀ» °»½ÅÇÒ ¼ö ÀÖ½À´Ï´Ù.
Æ®¸®°Å »ç¿ëÀÇ ÀÌÁ¡Àº ´ÙÀ½°ú °°½À´Ï´Ù.
Á¦¾î ¼¾Å͸¦ »ç¿ëÇÏ¿© Æ®¸®°Å¸¦ ÀÛ¼ºÇϽʽÿÀ.
|
¸í·ÉÇàÀ» »ç¿ëÇÏ¿© Æ®¸®°Å¸¦ ÀÛ¼ºÇϽʽÿÀ.
CREATE TRIGGER <name> <action> ON <table_name> <operation> <triggered_action>
´ÙÀ½ÀÇ SQL¹®Àº ½ÅÀÔ »ç¿øÀÌ ÀÔ»çÇÒ ¶§¸¶´Ù »ç¿øÀÇ ¼ö¸¦ Áõ°¡½ÃŰ´Â Æ®¸®°Å¸¦ ÀÛ¼ºÇÏ´Â °ÍÀ¸·Î, EMPLOYEE Å×ÀÌºí¿¡ ÇàÀÌ Ãß°¡µÉ ¶§¸¶´Ù COMPANY_STATS Å×À̺íÀÇ »ç¿ø ¹øÈ£(NBEMP) Ä÷³¿¡ 1À» Ãß°¡ÇÕ´Ï´Ù.
CREATE TRIGGER NEW_HIRED AFTER INSERT ON EMPLOYEE FOR EACH ROW MODE DB2SQL UPDATE COMPANY_STATS SET NBEMP = NBEMP+1;
Æ®¸®°Å º»¹®¿¡´Â Çϳª ÀÌ»óÀÇ SQL¹®, Áï INSERT, °Ë»öµÈ UPDATE, °Ë»öµÈ DELETE, Àüü ¼±ÅÃ, SET ÀüÀÌ º¯¼ö ¹× SIGNAL SQLSTATE°¡ Æ÷Ç﵃ ¼ö ÀÖ½À´Ï´Ù. Æ®¸®°Å´Â ÂüÁ¶ÇÏ´Â INSERT, UPDATE ¶Ç´Â DELETE¹® ÀÌÀü ¶Ç´Â ÀÌÈÄ¿¡ Ȱ¼ºÈµÉ ¼ö ÀÖ½À´Ï´Ù. CREATE TRIGGER¹®¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ±¸¹® Á¤º¸´Â SQL ÂüÁ¶¼¿¡¼ ÀÚ¼¼ÇÑ ³»¿ëÀ» ÂüÁ¶ÇϽʽÿÀ. Æ®¸®°ÅÀÇ ÀÛ¼º ¹× »ç¿ë¿¡ ´ëÇØ¼´Â ÀÀ¿ëÇÁ·Î±×·¥ °³¹ß ¾È³»¼¿¡¼ ÀÚ¼¼ÇÑ ³»¿ëÀ» ÂüÁ¶ÇϽʽÿÀ.
ÁÖ: | Æ®¸®°Å°¡ »çÀü Æ®¸®°ÅÀ̸é, Æ®¸®°Å Á¶Ä¡¿¡ ÀÇÇØ ÁöÁ¤µÇ´Â Ä÷³ À̸§Àº ½Äº° Ä÷³ À̿ܿ¡ »ý¼ºµÈ Ä÷³ÀÏ ¼ö ¾ø½À´Ï´Ù. Áï, »ý¼ºµÈ ½Äº° °ªÀº »çÀü Æ®¸®°Å¿¡ °¡½ÃÀûÀÔ´Ï´Ù. |
ÀϺΠ´Ù¸¥ ¿ÀºêÁ§Æ®¿¡ ´ëÇÑ Æ®¸®°ÅÀÇ ¸ðµç Á¾¼Ó¼ºÀÌ SYSCAT.TRIGDEP īŻ·Î±×¿¡ ±â·ÏµË´Ï´Ù. Æ®¸®°Å´Â ¿©·¯ ¿ÀºêÁ§Æ®¿¡ µû¶ó °áÁ¤µÉ ¼ö ÀÖ½À´Ï´Ù. ÀÌµé ¿ÀºêÁ§Æ® ¹× Á¾¼Ó Æ®¸®°Å´Â SQL ÂüÁ¶¼ÀÇ DROP¹® ¼³¸í ºÎºÐ¿¡ ÀÚ¼¼È÷ ±â¼úµÇ¾î ÀÖ½À´Ï´Ù.
ÀÌµé ¿ÀºêÁ§Æ® Áß Çϳª°¡ »èÁ¦µÇ¸é, Æ®¸®°Å´Â Á¶ÀÛ ºÒ°¡´ÉÇÏ°Ô µÇÁö¸¸ Á¤ÀǴ īŻ·Î±×¿¡ ³²¾Æ ÀÖ½À´Ï´Ù. ÀÌ Æ®¸®°Å¸¦ ´Ù½Ã È®ÀÎÇÏ·Á¸é, īŻ·Î±×¿¡¼ Á¤ÀǸ¦ °Ë»öÇÏ¿© »õ·Î¿î CREATE TRIGGER¹®À» Á¦ÃâÇØ¾ß ÇÕ´Ï´Ù.
Æ®¸®°Å°¡ »èÁ¦µÇ¸é, SYSCAT.TRIGGERS īŻ·Î±× ºä¿¡¼ Æ®¸®°Å¿¡ °üÇÑ ¼³¸íÀÌ »èÁ¦µÇ°í SYSCAT.TRIGDEP īŻ·Î±× ºä¿¡¼ ¸ðµç Á¾¼Ó¼ºÀÌ »èÁ¦µË´Ï´Ù. Æ®¸®°Å¿¡ ´ëÇØ UPDATE, INSERT ¶Ç´Â DELETE Á¾¼Ó¼ºÀ» °¡Áö°í ÀÖ´Â ¸ðµç ÆÐŰÁöµµ ¹«È¿°¡ µË´Ï´Ù.
Á¾¼Ó ¿ÀºêÁ§Æ®°¡ ºäÀÌ°í ºä°¡ Á¶ÀÛ ºÒ°¡´ÉÇÏ°Ô µÇ¸é, Æ®¸®°Åµµ Á¶ÀÛ ºÒ°¡´ÉÀ¸·Î Ç¥½ÃµË´Ï´Ù. Á¶ÀÛ ºÒ´ÉÀ̶ó°í Ç¥½ÃµÈ Æ®¸®°Å¿¡ Á¾¼ÓµÈ ÀÓÀÇÀÇ ÆÐŰÁö´Â À¯È¿ÇÏÁö ¾Ê½À´Ï´Ù(¿ÀºêÁ§Æ® º¯°æ½ÃÀÇ ¸í·É¹® Á¾¼Ó¼º¿¡¼ ÀÚ¼¼ÇÑ ³»¿ëÀ» ÂüÁ¶ÇϽʽÿÀ).