±ÇÇÑ ºÎ¿©¸¦ ÅëÇØ »ç¿ëÀÚ ¶Ç´Â ±×·ìÀº µ¥ÀÌÅͺ£À̽º¿¡ ¿¬°á, Å×À̺í ÀÛ¼º ¶Ç´Â ½Ã½ºÅÛ °ü¸®¿Í °°Àº ÀϹÝÀûÀΠŸ½ºÅ©¸¦ ¼öÇàÇÒ ¼ö ÀÖ½À´Ï´Ù. Ư±ÇÀº ÁöÁ¤µÈ ¹æ½ÄÀ¸·Î ƯÁ¤ µ¥ÀÌÅͺ£À̽º ¿ÀºêÁ§Æ® Çϳª¿¡ ¾×¼¼½ºÇÒ ¼ö ÀÖ´Â ±ÇÇÑÀ» »ç¿ëÀÚ ¶Ç´Â ±×·ì¿¡°Ô Á¦°øÇÕ´Ï´Ù. DB2´Â Ư±Ç ¼¼Æ®¸¦ »ç¿ëÇÏ¿© ±× ¾È¿¡ ÀúÀåÇÏ´Â Á¤º¸¿¡ ´ëÇÑ º¸È£¸¦ Á¦°øÇÕ´Ï´Ù. ´Ù¸¥ Ư±Ç¿¡ ´ëÇØ¼´Â °ü¸® ¾È³»¼: °èȹ¿¡¼ ÀÚ¼¼ÇÑ ³»¿ëÀ» ÂüÁ¶ÇϽʽÿÀ.
´ëºÎºÎÀÇ SQL¹®¿¡´Â ¸í·É¹®ÀÌ ÀÌ¿ëÇÏ´Â µ¥ÀÌÅͺ£À̽º ¿ÀºêÁ§Æ®¿¡ ´ëÇÑ ÀϺΠƯ±Ç À¯ÇüÀÌ ÇÊ¿äÇÕ´Ï´Ù. ÀϹÝÀûÀ¸·Î ´ëºÎºÐÀÇ API È£ÃâÀÇ °æ¿ì, È£ÃâÀÌ ÀÌ¿ëÇÏ´Â µ¥ÀÌÅͺ£À̽º ¿ÀºêÁ§Æ®¿¡ ´ëÇÑ Æ¯±ÇÀÌ ÇÊ¿äÇÏÁö ¾ÊÁö¸¸, ´ëºÎºÐÀÇ API¿¡¼´Â »ç¿ëÀÚ°¡ ÀÌµé ¿ÀºêÁ§Æ®¸¦ È£ÃâÇϱâ À§Çؼ´Â ÇÊ¿äÇÑ ±ÇÇÑÀ» ¼ÒÀ¯ÇØ¾ß ÇÕ´Ï´Ù. DB2 API¸¦ ÀÌ¿ëÇÏ¿© »ç¿ëÀÚÀÇ ÀÀ¿ëÇÁ·Î±×·¥À¸·ÎºÎÅÍ DB2 °ü¸® ±â´ÉÀ» ¼öÇàÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î, ¹ÙÀÎµå ÆÄÀÏ¿¡ ´ëÇÑ ÇÊ¿ä ¾øÀÌ µ¥ÀÌÅͺ£À̽º¿¡ ÀúÀåµÈ ÆÐŰÁö¸¦ ÀçÀÛ¼ºÇϱâ À§ÇØ sqlarbnd(¶Ç´Â REBIND) API¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. °¢ DB2 API¿¡ ´ëÇÑ ¼¼ºÎ»çÇ×Àº Administrative API ReferenceÀÇ ³»¿ëÀ» ÂüÁ¶ÇϽʽÿÀ.
°¢ SQL¹® ½ÇÇà¿¡ ÇÊ¿äÇÑ Æ¯±Ç¿¡ ´ëÇØ¼´Â SQL ÂüÁ¶¼ÀÇ ³»¿ëÀ» ÂüÁ¶ÇϽʽÿÀ. °¢ API È£Ãâ ¹ßÇà¿¡ ÇÊ¿äÇÑ Æ¯±Ç ¹× ±ÇÇÑ¿¡ ´ëÇØ¼´Â Administrative API ReferenceÀÇ ³»¿ëÀ» ÂüÁ¶ÇϽʽÿÀ.
ÀÀ¿ëÇÁ·Î±×·¥À» ¼³°èÇÒ ¶§ »ç¿ëÀÚ°¡ ÀÀ¿ëÇÁ·Î±×·¥À» ¼öÇàÇÒ ¶§ ÇÊ¿äÇÑ Æ¯±ÇÀÌ ¹«¾ùÀÏÁö °í·ÁÇϽʽÿÀ. »ç¿ëÀÚ¿¡°Ô ÇÊ¿äÇÑ Æ¯±ÇÀº ´ÙÀ½ »çÇ׿¡ µû¶ó °áÁ¤µË´Ï´Ù.
DYNAMICRULES RUN(±âº»°ª)À¸·Î ¹ÙÀεåµÈ ÆÐŰÁö¿¡¼ µ¿Àû SQLÀ» »ç¿ëÇÏ·Á¸é, µ¿Àû SQL ÀÀ¿ëÇÁ·Î±×·¥À» ¼öÇàÇÏ´Â »ç¶÷Àº ¼öÇàµÇ´Â °¢ SQL ¿äûÀ» ½ÇÇàÇÏ´Â µ¥ ÇÊ¿äÇÑ Æ¯±Ç »Ó¸¸ ¾Æ´Ï¶ó ÇØ´ç ÆÐŰÁö¿¡ ´ëÇÑ EXECUTE Ư±ÇÀÌ ÀÖ¾î¾ß ÇÕ´Ï´Ù. Ư±ÇÀº »ç¿ëÀÚÀÇ ±ÇÇÑ ºÎ¿© ID, »ç¿ëÀÚ°¡ ±× ±¸¼º¿øÀÎ ±×·ì ¶Ç´Â PUBLIC¿¡ ±ÇÇÑ ºÎ¿©µÉ ¼ö ÀÖ½À´Ï´Ù.
DYNAMICRULES BIND ¿É¼ÇÀ¸·Î ÀÀ¿ëÇÁ·Î±×·¥À» ¹ÙÀεåÇÒ °æ¿ì DB2´Â »ç¿ëÀÚÀÇ ±ÇÇÑ ºÎ¿© ID¸¦ ÀÀ¿ëÇÁ·Î±×·¥ ÆÐŰÁö¿Í ¿¬°á½Ãŵ´Ï´Ù. À̸¦ ÅëÇØ ÀÀ¿ëÇÁ·Î±×·¥À» »ç¿ëÇÏ´Â ¾î¶² »ç¿ëÀÚ¶óµµ ±ÇÇÑ ºÎ¿© ID¿Í ¿¬°áµÈ Ư±ÇÀ» °è½Â¹ÞÀ» ¼ö ÀÖ½À´Ï´Ù.
(³»Æ÷µÈ µ¿Àû SQL ÀÀ¿ëÇÁ·Î±×·¥ÀÇ °æ¿ì) ÀÀ¿ëÇÁ·Î±×·¥À» ¹ÙÀεåÇÏ´Â »ç¶÷Àº ÇÁ·Î±×·¥¿¡ Á¤Àû SQLÀÌ Æ÷ÇԵǾî ÀÖÁö ¾ÊÀº °æ¿ì µ¥ÀÌÅͺ£À̽º¿¡ BINDADD ±ÇÇѸ¸ ÇÊ¿äÇÕ´Ï´Ù. ´Ù½Ã, ÀÌ Æ¯±ÇÀº »ç¿ëÀÚÀÇ ±ÇÇÑ ºÎ¿© ID, »ç¿ëÀÚ°¡ ±¸¼º¿øÀÎ ±×·ì ¶Ç´Â PUBLIC¿¡ ±ÇÇÑ ºÎ¿©µÉ ¼ö ÀÖ½À´Ï´Ù.
µ¿Àû SQL ÆÐŰÁö¸¦ DYNAMICRULES BIND ¿É¼Ç°ú ¹ÙÀεåÇÒ ¶§ ÀÀ¿ëÇÁ·Î±×·¥À» ¼öÇàÇÏ´Â »ç¿ëÀÚ¿¡°Ô´Â ±× ÆÐŰÁö¿¡ ´ëÇØ EXECUTE Ư±Ç¸¸ ÇÊ¿äÇÕ´Ï´Ù. µ¿Àû SQL ÀÀ¿ëÇÁ·Î±×·¥°ú DYNAMICRULES BIND ¿É¼ÇÀ» ¹ÙÀεåÇÏ·Á¸é, ÀÀ¿ëÇÁ·Î±×·¥¿¡¼ ¸ðµç µ¿Àû ¹× Á¤Àû SQL¹®À» ¼öÇàÇÏ´Â µ¥ ÇÊ¿äÇÑ Æ¯±ÇÀÌ ÀÖ¾î¾ß ÇÕ´Ï´Ù. »ç¿ëÀÚ¿¡°Ô SYSADM ¶Ç´Â DBADM ±ÇÇÑÀÌ ÀÖ°í ÆÐŰÁö¸¦ DYNAMICRULES BIND¿Í ¹ÙÀεåÇÒ °æ¿ì, OWNER BIND ¿É¼ÇÀ» »ç¿ëÇÏ¿© ´Ù¸¥ ±ÇÇÑ ºÎ¿© ID¸¦ ÁöÁ¤ÇϽʽÿÀ. OWNER BIND´Â ÆÐŰÁö°¡ ÀÚµ¿À¸·Î µ¿Àû SQL¹®¿¡ ´ëÇÑ SYSADM ¶Ç´Â DBADM Ư±ÇÀ» °è½ÂÇÏÁö ¸øÇϵµ·Ï ÇÕ´Ï´Ù. DYNAMICRULES BIND ¹× OWNER BIND¿¡ ´ëÇÑ ¼¼ºÎ»çÇ×Àº Command ReferenceÀÇ BIND ¸í·ÉÀ» ÂüÁ¶ÇϽʽÿÀ.
Á¤Àû SQLÀ» »ç¿ëÇÏ·Á¸é ÀÀ¿ëÇÁ·Î±×·¥À» ¼öÇàÇÏ´Â »ç¿ëÀÚ´Â ±× ÆÐŰÁö¿¡ ´ëÇØ EXECUTE Ư±Ç¸¸ ÇÊ¿äÇÕ´Ï´Ù. ÆÐŰÁö¸¦ ±¸¼ºÇÏ´Â °¢ ¸í·É¹®¿¡ ´ëÇØ Ư±ÇÀÌ ÇÊ¿äÇÏÁö ¾Ê½À´Ï´Ù. EXECUTE Ư±ÇÀº »ç¿ëÀÚÀÇ ±ÇÇÑ ºÎ¿© ID, »ç¿ëÀÚ°¡ ±× ±¸¼º¿øÀÎ ±×·ì ¶Ç´Â PUBLIC¿¡ ±ÇÇÑ ºÎ¿©µÉ ¼ö ÀÖ½À´Ï´Ù.
±×·¯³ª ÀÀ¿ëÇÁ·Î±×·¥À» ¹ÙÀεùÇÏ´Â °æ¿ì, BINDADD ±ÇÇѰú ÀÀ¿ëÇÁ·Î±×·¥ÀÇ ¸ðµç ¸í·É¹®À» ¼öÇàÇÏ´Â µ¥ ÇÊ¿äÇÑ Æ¯±ÇÀÌ ÀÖ¾î¾ß ÇÕ´Ï´Ù. VALIDATE RUNÀÌ BIND ½Ã°£¿¡ ÁöÁ¤µÇ¸é ÀÌ ÆÐŰÁö¿¡¼ Á¤Àû SQLÀÇ ¸ðµç ±ÇÇÑ ºÎ¿©°¡ ½ÇÆÐÇØµµ BIND´Â ½ÇÆÐÇÏÁö ¾ÊÀ¸¸ç ÀÌ·± ¸í·É¹®Àº ·±Å¸ÀÓ¿¡ ´Ù½Ã È®Àε˴ϴÙ. ÀÀ¿ëÇÁ·Î±×·¥À» ¹ÙÀεåÇÏ´Â »ç¶÷¿¡°Ô´Â Ç×»ó BINDADD ±ÇÇÑÀÌ ÀÖ¾î¾ß ÇÕ´Ï´Ù. ¸í·É¹®À» ½ÇÇàÇÏ´Â µ¥ ÇÊ¿äÇÑ Æ¯±ÇÀº »ç¿ëÀÚÀÇ ±ÇÇÑ ºÎ¿© ¶Ç´Â PUBLIC¿¡ ±ÇÇÑ ºÎ¿©µÇ¾î¾ß ÇÕ´Ï´Ù. Á¤Àû SQL¹®À» ¹ÙÀεùÇÒ ¶§ ±×·ì Ư±ÇÀº »ç¿ëµÇÁö ¾Ê½À´Ï´Ù. µ¿Àû SQL¿¡¼¿Í ¸¶Âù°¡Áö·Î, BINDADD Ư±ÇÀº »ç¿ëÀÚ ±ÇÇÑ ºÎ¿© ID, »ç¿ëÀÚ°¡ ±× ±¸¼º¿øÀÎ ±×·ì ¶Ç´Â PUBLIC¿¡ ºÎ¿©µÉ ¼ö ÀÖ½À´Ï´Ù.
ÀÌ·¯ÇÑ Á¤Àû SQLÀÇ Æ¯¼ºÀº »ç¿ëÀÚ¿¡°Ô DB2¿¡ ÀÖ´Â Á¤º¸·ÎÀÇ ¾×¼¼½º¿¡ ´ëÇÑ Á¤È®ÇÑ Á¦¾î¸¦ Á¦°øÇÕ´Ï´Ù. °¡´ÉÇÑ Àû¿ë ¹æ¹ý¿¡ ´ëÇØ¼´Â ÀÌ Àý ³¡¿¡ ¿À´Â ¿¹¸¦ ÂüÁ¶ÇϽʽÿÀ.
DB2°¡ Á¦°øÇÏ´Â ´ëºÎºÐÀÇ API¿¡´Â Ư±Ç »ç¿ëÀÌ ÇÊ¿äÇÏÁö¸¸, È£ÃâÇϱâ À§Çؼ´Â ÀÏÁ¾ÀÇ ±ÇÇÑÀÌ ÇÊ¿äÇÕ´Ï´Ù. Ư±ÇÀÌ ÇÊ¿äÇÑ APIÀÇ °æ¿ì Ư±ÇÀº ÀÀ¿ëÇÁ·Î±×·¥À» ¼öÇàÇÏ´Â »ç¿ëÀÚ¿¡°Ô ±ÇÇÑ ºÎ¿©µÇ¾î¾ß ÇÕ´Ï´Ù. Ư±ÇÀº »ç¿ëÀÚÀÇ ±ÇÇÑ ºÎ¿© ID, »ç¿ëÀÚ°¡ ±× ±¸¼º¿øÀÎ ±×·ì ¶Ç´Â PUBLIC¿¡ ±ÇÇÑ ºÎ¿©µÉ ¼ö ÀÖ½À´Ï´Ù. °¢ API È£Ãâ ¹ßÇà¿¡ ÇÊ¿äÇÑ Æ¯±Ç ¹× ±ÇÇÑ¿¡ ´ëÇØ¼´Â Administrative API ReferenceÀÇ ³»¿ëÀ» ÂüÁ¶ÇϽʽÿÀ.
STAFF Å×ÀÌºí¿¡ ´ëÇØ Á¶È¸¸¦ ¼öÇàÇØ¾ß ÇÏ´Â µÎ »ç¿ëÀÚ, Áï PAYROLL ¹× BUDGETÀ» °í·ÁÇϽʽÿÀ. PAYROLLÀº ȸ»ç Á÷¿øÀÇ ±Þ¿©¸¦ ´ã´çÇϰí ÀÖÀ¸¹Ç·Î, ±Þ¿© ¸í¼¼Ç¥¸¦ ¹ßÇàÇÒ ¶§ ´Ù¾çÇÑ SELECT¹®À» ¹ßÇàÇØ¾ß ÇÕ´Ï´Ù. PAYROLLÀº °¢ »ç¿øÀÇ ±Þ¿©¿¡ ¾×¼¼½ºÇÒ ¼ö ÀÖ¾î¾ß ÇÕ´Ï´Ù. BUDGETÀº Áö±ÞÇÒ ±Þ¿©¾×À» °áÁ¤ÇÕ´Ï´Ù. ±×·¯³ª BUDGETÀº ƯÁ¤ »ç¿øÀÇ ±Þ¿©´Â º¼ ¼ö ¾ø½À´Ï´Ù.
PAYROLLÀÌ ¿©·¯ °¡Áö ¸¹Àº SELECT¹®À» ¹ßÇàÇϹǷΠPAYROLL¿ëÀ¸·Î ¼³°èÇÏ´Â ÀÀ¿ëÇÁ·Î±×·¥Àº µ¿Àû SQLÀ» Àß ÀÌ¿ëÇÒ ¼ö ÀÖ¾î¾ß ÇÕ´Ï´Ù. PAYROLL¿¡°Ô´Â STAFF Å×ÀÌºí¿¡ ´ëÇÑ SELECT Ư±ÇÀÌ ÇÊ¿äÇÕ´Ï´Ù. PAYROLLÀº Å×ÀÌºí¿¡ ´ëÇÑ Àüü ¾×¼¼½º°¡ ÇÊ¿äÇϹǷΠÀ̰ÍÀº ¹®Á¦°¡ µÇÁö ¾Ê½À´Ï´Ù.
ÇÑÆí, BUDGETÀº °¢ »ç¿øÀÇ ±Þ¿©¿¡ ¾×¼¼½ºÇÒ ¼ö ¾ø½À´Ï´Ù. ÀÌ´Â STAFF Å×ÀÌºí¿¡ ´ëÇÑ SELECT Ư±ÇÀ» BUDGET¿¡ ±ÇÇÑ ºÎ¿©ÇÒ ¼ö ¾øÀ½À» ÀǹÌÇÕ´Ï´Ù. BUDGETÀº STAFF Å×ÀÌºí¿¡ ÀÖ´Â Àüü ±Þ¿©ÀÇ ÇÕ°è¿¡ ¾×¼¼½ºÇϹǷΠÁ¤Àû SQL ÀÀ¿ëÇÁ·Î±×·¥À» ±¸ÃàÇÏ¿© SELECT SUM(SALARY) FROM STAFF¸¦ ½ÇÇàÇϰí, ÀÀ¿ëÇÁ·Î±×·¥À» ¹ÙÀεåÇϸç, ÀÀ¿ëÇÁ·Î±×·¥ÀÇ ÆÐŰÁö¿¡ ´ëÇÑ EXECUTE Ư±ÇÀ» BUDGET¿¡ ±ÇÇÑ ºÎ¿©ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô Çϸé BUDGETÀÌ º¼ ¼ö ¾ø´Â Á¤º¸¸¦ ³ëÃâ½ÃŰÁö ¾Ê°í BUDGETÀÌ ÇÊ¿äÇÑ Á¤º¸¸¦ ¾òÀ» ¼ö ÀÖ½À´Ï´Ù.