BEGIN

Name

BEGIN -- Æ®·£Àè¼Ç ºí·ÏÀÇ ½ÃÀÛ

Synopsis

BEGIN [ WORK | TRANSACTION ] [ 
transaction_mode
 [, ...] ]


transaction_mode
´Â ÀÌÇÏÁßÀÇ Çϳª¿¡.

    ISOLATION LEVEL { SERIALIZABLE | REPEATABLE READ | READ COMMITTED | READ UNCOMMITTED }
    READ WRITE | READ ONLY

¼³¸í

BEGIN´Â Æ®·£Àè¼Ç ºí·ÏÀ» ÃʱâÈ­ÇÕ´Ï´Ù. BEGINÄ¿¸àµå ÀÌÈÄÀÇ ¸í·É¹®Àº ¸ðµÎ, ¸í½ÃÀûÀÎ COMMIT ȤÀº ROLLBACK ÀÌ ÁÖ¾îÁú ¶§±îÁö, ´ÜÀÏÀÇ Æ®·£Àè¼Ç¿¡¼­ ½ÇÇàµË´Ï´Ù. ±âº»°ª(BEGIN°¡ ¾ø´Â °æ¿ì)Àº, PostgreSQL´Â Æ®·£Àè¼Ç¸¦ "¿ÀÅä Ä¿¹Ô"À¸·Î ½ÇÇàÇÕ´Ï´Ù. Áï, °¢ ¹®Àº °¢°¢ °íÀ¯ÀÇ Æ®·£Àè¼Ç¿¡¼­ ½ÇÇàµÇ¾î, ¸í·É¹®ÀÇ ¸¶Áö¸·¿¡¼­ ¾Ï¹¬ÀûÀ¸·Î Ä¿¹ÔÀÌ ½ÇÇàµË´Ï´Ù (À̰ÍÀº ½ÇÇàÀÌ ¼º°øÇßÀ» °æ¿ìÀÔ´Ï´Ù. ½ÇÆÐÇßÀ» °æ¿ì´Â ·Ñ¹é(rollback) µË´Ï´Ù).

Æ®·£Àè¼Ç ºí·Ï³»¿¡¼­, ¸í·É¹®Àº º¸´Ù ½Å¼ÓÈ÷ ½ÇÇàµË´Ï´Ù. ¿Ö³ÄÇϸé, Æ®·£Àè¼ÇÀÇ ½ÃÀÛÀ̳ª Ä¿¹ÔÀº, CPU¿Í µð½ºÅ©¿¡ ²Ï ³ôÀº ºÎÇϸ¦ ¿ä±¸Çϱ⠶§¹®ÀÔ´Ï´Ù. ¶Ç, 1°³ÀÇ Æ®·£Àè¼ÇÀ¸·Î º¹¼öÀÇ ¸í·É¹®À» ½ÇÇàÇÏ´Â °ÍÀº, º¹¼öÀÇ °ü·Ã Å×À̺íÀ» °»½ÅÇÒ ¶§, È®½ÇÇÑ Àϰü¼º À¯Áö¿¡ µµ¿òÀÌ µË´Ï´Ù. °ü·ÃµÈ °»½ÅÀÌ ¿Ï·áµÇÁö ¾ÊÀº Áß°£ÀûÀÎ »óŸ¦, ´Ù¸¥ ¼¼¼ÇÀ¸·ÎºÎÅÍ ÂüÁ¶ÇÒ ¼ö ¾ø°Ô µÇ±â ¶§¹®ÀÔ´Ï´Ù.

°Ý¸®¼öÁØ, ¶Ç´Â Àаí/¾²±â ¸ðµå°¡ ÁöÁ¤µÈ °æ¿ì, »õ·Î¿î Æ®·£Àè¼ÇÀº SET TRANSACTION ÀÌ ½ÇÇàµÇ¾úÀ» ¶§¿Í °°Àº Ư¼ºÀ» °¡Áý´Ï´Ù.

¸Å°³º¯¼ö

WORK
TRANSACTION

»ý·« °¡´ÉÇÑ Å°¿öµåÀÔ´Ï´Ù. ¾Æ¹«°Íµµ È¿·ÂÀÌ ¾ø½À´Ï´Ù.

ÀÌ ¸í·É¹®ÀÇ ¶Ç ´Ù¸¥ ¸Å°³º¯¼ö¿¡ ´ëÇØ¼­´Â , SET TRANSACTION À» ÂüÁ¶ÇØ ÁÖ¼¼¿ä.

ÁÖ¼®

START TRANSACTION ¿¡´Â, BEGIN¿Í °°Àº ±â´ÉÀÌ ÀÖ½À´Ï´Ù.

Æ®·£Àè¼ÇÀ» Á¾·á½ÃŰ·Á¸é, COMMIT ¶Ç´Â ROLLBACK À» »ç¿ëÇØ ÁÖ¼¼¿ä.

Æ®·£Àè¼Ç ºí·Ï³»¿¡¼­ BEGIN¸¦ ¹ßÇàÇϸé, °æ°í ¸Þ¼¼Áö°¡ Ç¥½ÃµË´Ï´Ù. ´Ù¸¸, Æ®·£Àè¼Ç »óÅ¿¡´Â ¿µÇâÀÌ ¾ø½À´Ï´Ù. Æ®·£Àè¼Ç ºí·Ï³»¿¡¼­ Æ®·£Àè¼ÇÀ» ³ÖÀ¸·Á¸é, ¼¼ÀÌºê Æ÷ÀÎÆ®¸¦ »ç¿ëÇØ ÁÖ¼¼¿ä (ÀÚ¼¼ÇÑ °ÍÀº SAVEPOINT À» ÂüÁ¶ÇØ ÁÖ¼¼¿ä).

ȣȯ¼ºÀ» À§ÇØ, ¿¬¼ÓÇÏ´Â transaction_modes °£ÀÇ ½°Ç¥´Â »ý·« ÇÒ ¼ö ÀÖ½À´Ï´Ù.

¿¹

Æ®·£Àè¼Ç ºí·ÏÀ» ½ÃÀÛÇÕ´Ï´Ù.

BEGIN;

ȣȯ¼º

BEGIN´Â PostgreSQLÀÇ È®ÀåÀÔ´Ï´Ù. Ç¥ÁØ SQLÀÇ START TRANSACTION ¸í·É°ú µ¿ÀÏÇÕ´Ï´Ù. ÀÌ ÂüÁ¶ ÆäÀÌÁö¿¡´Â ȣȯ¼º¿¡ °üÇÑ »ó¼¼ÇÑ Á¤º¸°¡ Æ÷ÇԵ˴ϴÙ.

µ¡ºÙ¿© ¸»ÇÏÀÚ¸é, ÀÓº£µðµå SQL¿¡¼­´Â BEGIN¶ó´Â Ű¿öµå¸¦ ´Ù¸¥ ¸ñÀûÀ¸·Î »ç¿ëÇϰí ÀÖ½À´Ï´Ù. µ¥ÀÌÅͺ£À̽º ¾îÇø®ÄÉÀ̼ÇÀ» À̽ÄÇÒ ¶§, Æ®·£Àè¼ÇÀÇ Àǹ̷Π»ç¿ëµÇ°í ÀÖ´ÂÁö¿¡ ÁÖÀÇÇØ ÁÖ¼¼¿ä.

°ü·Ã Ç׸ñ

COMMIT , ROLLBACK , START TRANSACTION , SAVEPOINT