/* ¸¹Àº ºÐµéÀÌ ¾Æ½Ã°ÚÁö¸¸ ¸ð¸£½Ã´Â ºÐµéÀ» À§ÇØ ÆÁ¿¡ ¿Ã¸³´Ï´Ù. Ãʺ¸°¡ ¾Æ´Ñ ºÐÀº µÚ·Î ¹öưÀ» ´­·¯ÁÖ½Ã¸é µÇ°Ú½À´Ï´Ù ^^; mysql 5.x ´ëºÎÅÍ ¸¹Àº º¯È­°¡ ÀÖ¾ú´Âµ¥¿ä ÀÌ Áß Trigger¿¡ ´ëÇØ ¿Ã¸±±î ÇÕ´Ï´Ù. Trigger¶õ ƯÁ¤ Å×ÀÌºí¿¡ ÀÔ·Â, ¼öÁ¤, »èÁ¦°¡ ÀÌ·ç¾î Á³À» °æ¿ì ƯÁ¤ ¸í·ÉÀ» ½ÇÇàÇÏ´Â ±â´ÉÀä, ÀÌ Æ®¸®°Å¸¦ ÀÌ¿ëÇÏ¿© Å×ÀÌºí¿¡ µ¥ÀÌŸ¸¦ ¼öÁ¤ÇßÀ» °æ¿ì ¼öÁ¤ÇÑ ³¯Â¥¸¦ ÀÚµ¿À¸·Î ±â·ÏÇÏ´Â ¿¹Á¦¸¦ ½ÇÇàÇØ º¸µµ·Ï ÇϰڽÀ´Ï´Ù. Æ®¸®°Å¸¦ ÀÌ¿ëÇÏÁö ¾Ê°íµµ DEFAULT CURRENT_TIMESTAMP UPDATE ON CURRENT_TIMESTAMP ¸¦ »ç¿ëÇϸé ÇØ°áµÇ°ÚÀ¸³ª, ÀÌ¹Ì ÀԷ³¯Â¥¸¦ DEFAULT CURRENT_TIMESTAMP·Î ÇßÀ» °æ¿ì µÎ Ä®·³ÀÇ ³¯Â¥¸¦ ÀÚµ¿À¸·Î ÀÔ·ÂÀÌ ºÒ°¡´ÉÇÒ¶§ »ç¿ëÇÏ½Ã¸é µÇ°Ú½À´Ï´Ù. [mysql]Æ®¸®°Å¸¦ ÀÌ¿ëÇÑ ³¯Â¥ ÀÚµ¿ ¾÷µ¥ÀÌÆ® Áغñ»çÇ× : mysql 5.0 ÀÌ»ó */ -- Æ®¸®°Å¿ë Å×½ºÆ® Å×À̺íÀ» ¸¸µì´Ï´Ù DROP TABLE TriggerTest; CREATE TABLE TriggerTest ( pk INTEGER AUTO_INCREMENT PRIMARY KEY, col01 VARCHAR(12) NOT NULL, regDate TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, -- ÀԷ½à ÀÚµ¿À¸·Î ³¯Â¥¸¦ ±âÀÔÇϱâ À§ÇØ timestamp ŸÀÔ°ú ±âº» ÀԷ°ªÀ¸·Î current_timestamp¸¦ »ç¿ëÇß½À´Ï´Ù modifyDate TIMESTAMP NOT NULL DEFAULT '0000-00-00 00:00:00' ) -- Æ®¸®°Å¸¦ ¸¸µì´Ï´Ù. -- ±âº» Æ®¸®°Å ¹®¹ýÀº CREATE TRIGGER [Æ®¸®°ÅÀ̸§] [BEFORE|AFTER] [INSERT|UPDATE|DELETE] ON [Å×À̺íÀ̸§] FOR EACH ROW [½ÇÇ๮] ÀÔ´Ï´Ù -- CREATE TRIGGER TRG_TriggerTest_UPDATE BEFORE UPDATE ON TriggerTest FOR EACH ROW BEGIN SET NEW.modifyDate = CURRENT_TIMESTAMP; END; -- Å×½ºÆ®¿ë µ¥ÀÌŸ¸¦ ÀÔ·ÂÇÕ´Ï´Ù. INSERT INTO TriggerTest SET col01 = '123'; INSERT INTO TriggerTest SET col01 = '456'; SELECT * FROM TriggerTest; -- ´ë·« ¾Æ·¡¿Í °°ÀÌ ½ÇÇàµÇ¾úÀ¸¸®¶ó ¿¹»óÇÕ´Ï´Ù. pk col01 regDate modifyDate ------------------------------------------------------------------------------------------------------------------ 1 123 "2008-03-20 ¿ÀÀü 11:33:44" '0000-00-00 00:00:00' 2 456 "2008-03-20 ¿ÀÀü 11:33:44" '0000-00-00 00:00:00' ------------------------------------------------------------------------------------------------------------------ --ÀÌÁ¦ PK°¡ 2ÀÎ COL01 ÀÇ Ä®·³À» ¼öÁ¤ÇϰڽÀ´Ï´Ù. UPDATE TriggerTest SET col01 = '012' where pk = 2; -- °á°ú¸¦ º¸µµ·Ï ÇÏÁÒ. SELECT * FROM TriggerTest; ¾Æ·¡¿Í °°ÀÌ ¼öÁ¤ÇÑ Ä®·³ÀÇ ¼öÁ¤ÀÏÀÌ ÀúÀåµÇ¾ú½À´Ï´Ù. pk col01 regDate modifyDate ------------------------------------------------------------------------------------------------------------------ 1 123 "2008-03-20 ¿ÀÀü 11:33:44" '0000-00-00 00:00:00' 2 012 "2008-03-20 ¿ÀÀü 11:33:44" "2008-03-20 ¿ÀÀü 11:36:34" ------------------------------------------------------------------------------------------------------------------ ÀÌ Æ®¸®°Å¸¦ Á»´õ Ȱ¿ëÇÏ¸é Æ¯Á¤ Å×ÀÌºí¿¡ µ¥ÀÌŸ°¡ µé¾î¿À¸é ÀÚµ¿À¸·Î ´Ù¸¥ Å×ÀÌºí¿¡ ÀÔ·Â, ¼öÁ¤, »èÁ¦µµ °¡´ÉÇÕ´Ï´Ù. ÀÌ»ó ÇãÁ¢ÇÑ ÆÁÀ̾ú½À´Ï´Ù.