CLR ÇÁ·Î½ÃÀú°¡ ¸®ÅÏÇÒ ¼ö ÀÖ´Â ÃÖ´ë °á°ú ¼¼Æ® ¼ö´Â Á¦Çѵ˴ϴÙ. ÀÌ ÇÑ°è °ªÀº DB2 .NET Data Provider°¡ ÇÑ ¿¬°á ³»¿¡¼ µ¿½Ã¿¡ ¿ ¼ö ÀÖ´Â DB2DataReader ¿ÀºêÁ§Æ®ÀÇ ÃÖ´ë ¼ö¿¡ ÀÇÇØ °áÁ¤µË´Ï´Ù. µ¿½Ã È°¼º µ¥ÀÌÅÍ Æǵ¶±â Áö¿øÀ» ÅëÇØ ¿©·¯ DB2DataReader ¿ÀºêÁ§Æ®¸¦ ÇÑ ¿¬°á ³»¿¡¼ ¿ ¼ö ÀÖ½À´Ï´Ù. ±×·¯¹Ç·Î ÇÑ CLR ÇÁ·Î½ÃÀú¿¡¼ ¿©·¯ °á°ú ¼¼Æ®¸¦ ¸®ÅÏÇÒ ¼ö ÀÖ½À´Ï´Ù.
µ¥ÀÌÅͺ£À̽º °ü¸®ÀÚ ¶Ç´Â ÀÀ¿ëÇÁ·Î±×·¥ °³¹ßÀڷμ, ·±Å¸Àӽà ·çƾÀÇ Á¶Ä¡¸¦ Á¦ÇÑÇÏ¿© ¿øÇÏÁö ¾Ê´Â °£¼·À¸·ÎºÎÅÍ DB2 Universal Database(TM)(UDB) ¿ÜºÎ ·çƾ°ú ¿¬°üµÇ´Â ¾î¼Àºí¸®¸¦ º¸È£ÇÒ ¼ö ÀÖ½À´Ï´Ù. DB2(R) .NET CLR ·çƾÀº ·±Å¸ÀÓ¿¡¼ ·çƾÀÌ ¼öÇàÇÒ ¼ö ÀÖ´Â Á¶Ä¡ À¯ÇüÀ» ½Äº°ÇÏ´Â ½ÇÇà Á¦¾î ¸ðµå ½ºÆåÀ» Áö¿øÇÕ´Ï´Ù. ·±Å¸ÀÓ½Ã, DB2 UDB°¡ ·çƾÀÌ ÁöÁ¤µÈ ½ÇÇà Á¦¾î ¸ðµå ¹üÀ§¸¦ ¹þ¾î³ª¼ Á¶Ä¡¸¦ ¼öÇàÇÏ·Á°í ÇÏ´ÂÁö ¹ß°ßÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ´Â ¾î¼Àºí¸® ¼Õ»ó ¿©ºÎ¸¦ ÆǺ°ÇÒ ¶§ À¯¿ëÇÕ´Ï´Ù.
CLR ·çƾÀÇ ½ÇÇà Á¦¾î ¸ðµå¸¦ ¼³Á¤ÇÏ·Á¸é ·çƾÀÇ CREATE¹®¿¡ ¼±ÅÃÀû EXECUTION CONTROLÀýÀ» ÁöÁ¤ÇϽʽÿÀ. À¯È¿ÇÑ ¸ðµå´Â ´ÙÀ½°ú °°½À´Ï´Ù.
±âÁ¸ CLR ·çƾ¿¡¼ ½ÇÇà Á¦¾î ¸ðµå¸¦ ¼öÁ¤ÇÏ·Á¸é, ALTER PROCEDURE ¶Ç´Â ALTER FUNCTION¹®À» ½ÇÇàÇϽʽÿÀ.
CLR ·çƾ¿¡ ´ëÇØ EXECUTION CONTROLÀýÀ» ÁöÁ¤ÇÏÁö ¾ÊÀº °æ¿ì, µðÆúÆ®·Î CLR ·çƾÀº Á¦ÇÑµÈ ½ÇÇà Á¦¾î ¸ðµå SAFE¸¦ »ç¿ëÇÏ¿© ½ÇÇàÇÕ´Ï´Ù. ÀÌ ½ÇÇà Á¦¾î ¸ðµå·Î ÀÛ¼ºµÈ ·çƾÀº µ¥ÀÌÅͺ£À̽º °ü¸® ÇÁ·Î±×·¥ÀÌ Á¦¾îÇÏ´Â ÀÚ¿ø¿¡¸¸ ¾×¼¼½ºÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ú Á¦ÇѵǴ ½ÇÇà Á¦¾î ¸ðµå¸¦ »ç¿ëÇÏ¸é ·çƾÀÌ ·ÎÄà ÆÄÀÏ ½Ã½ºÅÛ(FILEREAD ¶Ç´Â FILEWRITE)À̳ª ³×Æ®¿öÅ©¿¡¼ ÆÄÀÏ¿¡ ¾×¼¼½ºÇÒ ¼ö ÀÖ½À´Ï´Ù. ½ÇÇà Á¦¾î ¸ðµå UNSAFE´Â ·çƾ µ¿ÀÛ¿¡ ´ëÇØ ¾î¶² Á¦Çѵµ ¹ß»ýÇÏÁö ¾ÊÀ½À» ÁöÁ¤ÇÕ´Ï´Ù. UNSAFE ½ÇÇà Á¦¾î ¸ðµå¿¡¼ Á¤ÀÇµÈ ·çƾÀº 2Áø Äڵ带 ½ÇÇàÇÒ ¼ö ÀÖ½À´Ï´Ù.
ÀÌ·¯ÇÑ Á¦¾î ¸ðµå´Â Çã¿ë °¡´ÉÇÑ Á¶Ä¡ °èÃþ ±¸Á¶¸¦ Ç¥½ÃÇϸç, »óÀ§ ·¹º§ ¸ðµå¿¡´Â °èÃþ ±¸Á¶¿¡¼ ÀÌ ¸ðµå ¾Æ·¡¿¡¼ Çã¿ëµÇ´Â Á¶Ä¡°¡ Æ÷ÇԵ˴ϴÙ. ¿¹¸¦ µé¾î, ½ÇÇà Á¦¾î ¸ðµå NETWORKÀº ·çƾÀÌ ³×Æ®¿öÅ©ÀÇ ÆÄÀÏ, ·ÎÄà ÆÄÀÏ ½Ã½ºÅÛÀÇ ÆÄÀÏ ¹× µ¥ÀÌÅͺ£À̽º °ü¸® ÇÁ·Î±×·¥ Á¦¾î¸¦ ¹Þ´Â ÀÚ¿ø¿¡ ¾×¼¼½ºÇÒ ¼ö ÀÖµµ·Ï Çã¿ëÇÕ´Ï´Ù. °¡´ÉÇÏ¸é °¡Àå Á¦ÇÑÀûÀÎ ½ÇÇà Á¦¾î ¸ðµå¸¦ »ç¿ëÇÏ°í UNSAFE ¸ðµå´Â »ç¿ëÇÏÁö ¸¶½Ê½Ã¿À.
DB2 UDB°¡ ·±Å¸ÀÓ¿¡¼ CLR ·çƾÀÌ ½ÇÇà Á¦¾î ¸ðµå ¹üÀ§ ¹Û¿¡¼ Á¶Ä¡¸¦ ½ÃµµÇÏ°í ÀÖÀ½À» ¹ß°ßÇϸé, DB2 UDB´Â ¿À·ù(SQLSTATE 38501)¸¦ ¸®ÅÏÇÕ´Ï´Ù.
EXECUTION CONTROLÀýÀº LANGUAGE CLR ·çƾ¿¡ ´ëÇؼ¸¸ ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. EXECUTION CONTROLÀýÀÇ Àû¿ë °¡´É¼º ¹üÀ§´Â .NET CLR ·çƾ ÀÚü·Î Á¦ÇѵǸç, È£ÃâÇÒ ¼ö ÀÖ´Â ´Ù¸¥ ·ÎƾÀ¸·Î È®ÀåµÇÁö ¾Ê½À´Ï´Ù.
DB2 Universal Database(UDB)¿¡¼ DECIMAL µ¥ÀÌÅÍ À¯ÇüÀº 31 ÀÚ¸´¼ö Á¤¹Ðµµ¿Í 28 ÀÚ¸´¼ö ½ºÄÉÀϷΠǥ½ÃµË´Ï´Ù. .NET CLR System.Decimal µ¥ÀÌÅÍ À¯ÇüÀº 29 ÀÚ¸´¼ö Á¤¹Ðµµ¿Í 28 ÀÚ¸´¼ö ½ºÄÉÀÏ·Î Á¦Çѵ˴ϴÙ. µû¶ó¼ DB2 UDB ¿ÜºÎ CLR ·çƾÀº 29 ÀÚ¸´¼ö Á¤¹Ðµµ¿Í 28 ÀÚ¸´¼ö ½ºÄÉÀÏÀ» »ç¿ëÇÏ¿© Ç¥½ÃÇÒ ¼ö ÀÖ´Â ÃÖ»óÀ§ °ªÀÎ (2^96)-1º¸´Ù Å« °ªÀ» System.Decimal µ¥ÀÌÅÍ À¯Çü º¯¼ö¿¡ ÁöÁ¤ÇÒ ¼ö ¾ø½À´Ï´Ù. ÀÌ·¯ÇÑ ÁöÁ¤ÀÌ ¹ß»ýÇϸé DB2 UDB´Â ·±Å¸ÀÓ ¿À·ù(SQLSTATE 22003, SQLCODE -413)¸¦ ¹ß»ýÇÕ´Ï´Ù.
·çƾ CREATE¹®ÀÌ ½ÇÇàµÉ ¶§ 28º¸´Ù Å« ½ºÄÉÀÏÀ» »ç¿ëÇÏ¿© DECIMAL µ¥ÀÌÅÍ À¯Çü ¸Å°³º¯¼ö¸¦ Á¤ÀÇÇÑ °æ¿ì, DB2 UDB´Â ¿À·ù(SQLSTATE 42611, SQLCODE -604)¸¦ ¹ß»ýÇÕ´Ï´Ù.
[ ÆäÀÌÁöÀÇ ¸Ç À§ |ÀÌÀü ÆäÀÌÁö | ´ÙÀ½ ÆäÀÌÁö | ¸ñÂ÷ ]