Çü½Ä º¯È¯ ¾øÀÌ ¼¹ö ÆÄÀÏ·Î À̹ÌÁö, ¿Àµð¿À ¶Ç´Â ºñµð¿À ¿ÀºêÁ§Æ®¸¦ °Ë»öÇÏ·Á¸é, Content UDF¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¶ÇÇÑ Çü½Ä º¯È¯À» »ç¿ëÇÏ¿© ¼¹ö ÆÄÀÏ·Î À̹ÌÁö¸¦ °Ë»öÇÏ·Á¸é, Content UDF¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
º¯È¯ ¾øÀÌ ¼¹ö¿¡ ÀÖ´Â ÆÄÀÏ·Î À̹ÌÁö, ¿Àµð¿À ¶Ç´Â ºñµð¿À ¿ÀºêÁ§Æ® °Ë»ö½Ã, ¿ÀºêÁ§Æ® ÇÚµé, ¸ñÇ¥ ÆÄÀÏ À̸§ ¹× °ãÃľ²±â Ç¥½Ã±â¸¦ ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù. ¸ñÇ¥ ÆÄÀÏÀÌ ¼¹ö¿¡ ÀÌ¹Ì Á¸ÀçÇÑ´Ù¸é, °ãÃľ²±â Ç¥½Ã±â´Â °Ë»öµÈ µ¥ÀÌÅÍ·Î ¸ñÇ¥ ÆÄÀÏÀ» °ãÃľµ °ÍÀÎÁö Extender¿¡°Ô Áö½ÃÇÕ´Ï´Ù.
¸ñÇ¥ ÆÄÀÏÀÌ Á¸ÀçÇÏÁö ¾Ê´Â °æ¿ì, Extender´Â ¼¹ö¿¡ ¸ñÇ¥ ÆÄÀÏÀ» ÀÛ¼ºÇÕ´Ï´Ù.
°ãÃľ²±â Ç¥½Ã±â °ª 1À» ÁöÁ¤ÇÑ´Ù¸é, Extender´Â °Ë»öµÈ µ¥ÀÌÅÍ·Î ¸ñÇ¥ ÆÄÀÏÀ» °ãÃľ¹´Ï´Ù. °ãÃľ²±â Ç¥½Ã±â °ª 0À» ÁöÁ¤ÇÑ´Ù¸é, Extender´Â ¸ñÇ¥ ÆÄÀÏÀ» °ãÃľ²Áö ¾Ê°í µ¥ÀÌÅÍ´Â °Ë»öµÇÁö ¾Ê½À´Ï´Ù.
°ãÃľ²±â Ç¥½Ã±â´Â °Ë»öµÉ ¿ÀºêÁ§Æ®°¡ BLOBÀ¸·Î µ¥ÀÌÅͺ£À̽º Å×ÀÌºí¿¡ ÀúÀåµÈ´Ù¸é ¹«½ÃµË´Ï´Ù. ¸ñÇ¥ ÆÄÀÏÀº °ãÃľ²±â Ç¥½Ã±â¿¡ ´ëÇØ ¹«¾ùÀÌ ÁöÁ¤µÇµçÁö »ó°ü¾øÀÌ ÀÛ¼ºµÇ°Å³ª °ãÃľ¹´Ï´Ù.
¼¹ö ÆÄÀÏ·Î ¿ÀºêÁ§Æ® °Ë»ö½Ã, À̰ÍÀº ¼¹ö ÆÄÀÏ À̸§À» ¸®ÅÏÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, C ÀÀ¿ëÇÁ·Î±×·¥¿¡ ÀÖ´Â ´ÙÀ½ ¸í·É¹®Àº ¼¹ö¿¡ ÀÖ´Â ÆÄÀÏ·Î ºñµð¿À¸¦ °Ë»öÇÕ´Ï´Ù. ¼¹ö ÆÄÀÏÀÇ ÆÄÀÏ À̸§Àº È£½ºÆ® º¯¼ö hvVid_fname¿¡ ÀúÀåµË´Ï´Ù.
EXEC SQL BEGIN DECLARE SECTION; struct{ short len; char data[250]; }hvVid_fname[; EXEC SQL END DECLARE SECTION; EXEC SQL SELECT CONTENT( VIDEO, /* video handle */ '/employee/videos/ajones.mpg', /* server file */ 1) /* overwrite target file */ INTO :hvVid_fname; FROM EMPLOYEE WHERE NAME = 'Anita Jones';
º¯È¯ ¾øÀÌ ¼¹ö ÆÄÀÏ·Î ¿ÀºêÁ§Æ®¸¦ °Ë»öÇÏ´Â Content UDFÀÇ »ç¿ëÀº ¿ÀºêÁ§Æ®°¡ BLOBÀ¸·Î µ¥ÀÌÅͺ£À̽º Å×ÀÌºí¿¡ ÀúÀåµÉ ¶§ ÀûÀýÇÕ´Ï´Ù. ¿ÀºêÁ§Æ®°¡ ¼¹ö ÆÄÀÏ¿¡ ÀÖ´Ù¸é, ¼Ò½º ÆÄÀÏÀÇ ³»¿ëÀ» ¸ñÇ¥ ÆÄÀÏ·Î º¹»çÇÏ´Â ÆíÀÌ ´õ È¿À²ÀûÀÏ ¼ö ÀÖ½À´Ï´Ù.
Çü½Ä º¯È¯À» »ç¿ëÇÏ¿© À̹ÌÁö¸¦ ¼¹ö ÆÄÀÏ·Î °Ë»öÇÒ ¶§, À̹ÌÁö ÇÚµé, ¸ñÇ¥ ÆÄÀÏ À̸§, °ãÃľ²±â ¸ñÇ¥ Ç¥½Ã±â ¹× ¸ñÇ¥ Çü½ÄÀ» ÁöÁ¤ÇϽʽÿÀ. Ç¥ 4´Â Çã¿ëµÇ´Â Çü½Ä º¯È¯À» ³ª¿ÇÕ´Ï´Ù. ¶ÇÇÑ ¸ñÇ¥ Çü½Ä¿¡ ³Î(NULL) °ª ¶Ç´Â ºó ¹®ÀÚ¿À̳ª ¹®ÀÚ¿ ASIS¸¦ ÁöÁ¤ÇÒ ¼öµµ ÀÖ½À´Ï´Ù. ÀÌ °æ¿ì, °Ë»öµÇ´Â À̹ÌÁö´Â ¼Ò½º¿Í °°Àº Çü½ÄÀ» °®½À´Ï´Ù.
¿¹¸¦ µé¾î, C ÀÀ¿ëÇÁ·Î±×·¥¿¡ ÀÖ´Â ´ÙÀ½ ¸í·É¹®Àº ¼¹ö¿¡ ÀÖ´Â ÆÄÀÏ·Î À̹ÌÁö¸¦ °Ë»öÇÕ´Ï´Ù. ¼Ò½º À̹ÌÁö´Â ºñÆ®¸Ê Çü½ÄÀ̰í BLOBÀ¸·Î µ¥ÀÌÅͺ£À̽º Å×ÀÌºí¿¡ ÀúÀåµË´Ï´Ù. °Ë»öµÈ À̹ÌÁö´Â GIF Çü½ÄÀ¸·Î º¯È¯µË´Ï´Ù. ¼¹ö ÆÄÀÏÀÇ ÆÄÀÏ À̸§Àº È£½ºÆ® º¯¼ö hvImg_fname¿¡ ÀúÀåµË´Ï´Ù.
EXEC SQL BEGIN DECLARE SECTION; struct{ short len; char [400]; }hvImg_fname[; EXEC SQL END DECLARE SECTION; EXEC SQL SELECT CONTENT( PICTURE, /* image handle */ '/employee/images/ajones.gif', /* target file */ 1, /* overwrite target file */ 'GIF') /* target format */ INTO :hvImg_fname FROM EMPLOYEE WHERE NAME = 'Anita Jones';
¼¹ö ÆÄÀÏÀÌ ¾×¼¼½º °¡´ÉÇØ¾ß ÇÕ´Ï´Ù. ¿ÀºêÁ§Æ®¸¦ ¼¹ö ÆÄÀÏ·Î °Ë»öÇÒ ¶§, ¸ñÇ¥ ÆÄÀÏÀÇ ¿ÏÀüÈ÷ ±ÔÁ¤µÈ À̸§À» ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù. ¶Ç´Ù¸¥ ¹æ¹ýÀ¸·Î, DB2IMAGEEXPORT, DB2AUDIOEXPORT ¹× DB2VIDEOEXPORT ȯ°æ º¯¼ö°¡ ºÒ¿ÏÀüÇÑ ÆÄÀÏ À̸§ ½ºÆåÀ» Á¦´ë·Î ÇØ°áÇÒ ¼ö ÀÖµµ·Ï ¼³Á¤µÇ¾ú´ÂÁö È®ÀÎÇØ¾ß ÇÕ´Ï´Ù.