Çü½Ä º¯È¯ ¾øÀÌ À̹ÌÁö, ¿Àµð¿À ¶Ç´Â ºñµð¿À ¿ÀºêÁ§Æ®¸¦ Ŭ¶óÀÌ¾ðÆ® ¹öÆÛ³ª Ŭ¶óÀÌ¾ðÆ® ÆÄÀÏ·Î °Ë»öÇÏ·Á¸é, Content UDF¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¶ÇÇÑ »ç¿ëÀÚ´Â °Ë»ö½Ã À̹ÌÁö Çü½ÄÀ» º¯È¯½ÃŰ´Â Image Extender ¿É¼ÇÀ» °®½À´Ï´Ù.
À̹ÌÁö, ¿Àµð¿À ¶Ç´Â ºñµð¿À ¿ÀºêÁ§Æ®¸¦ Ŭ¶óÀÌ¾ðÆ® ¹öÆÛ·Î °Ë»öÇϰųª LOBÀ» °Ë»öÇÏ·Á¸é LOB À§Ä¡ ÁöÁ¤ÀÚ¸¦ »ç¿ëÇϽʽÿÀ. À̹ÌÁö, ¿Àµð¿À ¶Ç´Â ºñµð¿À ¿ÀºêÁ§Æ®¸¦ Ŭ¶óÀÌ¾ðÆ® ÆÄÀÏ·Î °Ë»öÇÏ·Á¸é, ÆÄÀÏ ÂüÁ¶ º¯¼ö¸¦ »ç¿ëÇϽʽÿÀ.
À̹ÌÁö, ¿Àµð¿À ¶Ç´Â ºñµð¿À ¿ÀºêÁ§Æ®¸¦ È£½ºÆ® º¯¼ö¸¦ »ç¿ëÇÏ¿© Ŭ¶óÀÌ¾ðÆ® ¹öÆÛ·Î °Ë»öÇϰųª, ÆÄÀÏ ÂüÁ¶ º¯¼ö¸¦ »ç¿ëÇÏ¿© Ŭ¶óÀÌ¾ðÆ® ÆÄÀÏ·Î °Ë»öÇÏ´Â °ÍÀº ¿ÀºêÁ§Æ®ÀÇ ³»¿ëÀ» µ¥ÀÌÅͺ£À̽º Å×ÀÌºí¿¡ BLOBÀ¸·Î ÀúÀåÇÒ ¶§ ÀûÇÕÇÕ´Ï´Ù. ³»¿ëÀÌ ¼¹ö ÆÄÀÏ¿¡ ÀÖ´Ù¸é, ±×°ÍÀº ¼¹ö ÆÄÀÏ¿¡¼ Ŭ¶óÀÌ¾ðÆ® ÆÄÀÏ·Î ³»¿ëÀ» º¹»çÇÏ´Â ÆíÀÌ ´õ È¿À²ÀûÀÏ ¼ö ÀÖ½À´Ï´Ù.
¿ÀºêÁ§Æ®ÀÇ ÇÚµéÀ» ÁöÁ¤ÇϽʽÿÀ. ¼±ÅÃÀûÀ¸·Î, »ç¿ëÀÚ´Â ¶ÇÇÑ °Ë»öÀÌ ½ÃÀ۵Ǵ ¹ÙÀÌÆ® 1¿¡¼ ½ÃÀÛÇÏ´Â ¿ÀÇÁ¼Â°ú °Ë»öÇÏ·Á´Â ¹ÙÀÌÆ® ¼ö¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.
C ÀÀ¿ëÇÁ·Î±×·¥¿¡ ÀÖ´Â ´ÙÀ½ÀÇ ¸í·É¹®Àº audio_loc¶ó´Â LOB À§Ä¡ ÁöÁ¤ÀÚ¸¦ »ç¿ëÇÏ¿© ¿Àµð¿À Ŭ¸³À» Ŭ¶óÀÌ¾ðÆ® ¹öÆÛ·Î °Ë»öÇÕ´Ï´Ù.
EXEC SQL BEGIN DECLARE SECTION; SQL TYPE IS BLOB_LOCATOR audio_loc; EXEC SQL END DECLARE SECTION; EXEC SQL SELECT CONTENT( SOUND) /* audio handle */ INTO :audio_loc FROM EMPLOYEE WHERE NAME = 'Anita Jones';
UDF ¸Þ¸ð¸®°¡ ÃæºÐÇÑÁö È®ÀÎÇϽʽÿÀ. ¿ÀºêÁ§Æ®¸¦ Ŭ¶óÀÌ¾ðÆ® ¹öÆÛ·Î °Ë»öÇÒ ¶§, µ¥ÀÌÅͺ£À̽º °ü¸® ÇÁ·Î±×·¥ ±¸¼º¿¡ ÀÖ´Â UDF_MEM_SZ ¸Å°³º¯¼ö°¡ 4MB ÀÌ»óÀ¸·Î ¼³Á¤µÇ¾ú´ÂÁö È®ÀÎÇØ¾ß ÇÕ´Ï´Ù.
DB2 ¸í·É UPDATE DATABASE MANAGER CONFIGURATIONÀ» »ç¿ëÇÏ¿© UDF_MEM_SZ ¸Å°³º¯¼ö¸¦ °»½ÅÇÒ ¼ö ÀÖ½À´Ï´Ù.
UPDATE DATABASE MANAGER ¸í·É¿¡ ´ëÇÑ Á¤º¸´Â DB2 Command Reference¸¦ ÂüÁ¶ÇϽʽÿÀ.
ÀúÀåµÈ À̹ÌÁö¸¦ Çü½Ä º¯È¯À» »ç¿ëÇÏ¿© Ŭ¶óÀÌ¾ðÆ® ¹öÆÛ·Î °Ë»öÇϰųª LOBÀ» °Ë»öÇÏ·Á¸é LOB À§Ä¡ ÁöÁ¤ÀÚ¸¦ »ç¿ëÇϽʽÿÀ. ÀúÀåµÈ À̹ÌÁö¸¦ Çü½Ä º¯È¯À» »ç¿ëÇÏ¿© Ŭ¶óÀÌ¾ðÆ® ÆÄÀÏ·Î °Ë»öÇÏ·Á¸é ÆÄÀÏ ÂüÁ¶ º¯¼ö¸¦ »ç¿ëÇϽʽÿÀ.
À̹ÌÁö¸¦ È£½ºÆ® º¯¼ö¸¦ »ç¿ëÇÏ¿© Ŭ¶óÀÌ¾ðÆ® ¹öÆÛ·Î °Ë»öÇϰųª ÆÄÀÏ ÂüÁ¶ º¯¼ö¸¦ »ç¿ëÇÏ¿© Ŭ¶óÀÌ¾ðÆ® ÆÄÀÏ·Î °Ë»öÇÏ´Â °ÍÀº À̹ÌÁöÀÇ ³»¿ëÀÌ µ¥ÀÌÅͺ£À̽º Å×ÀÌºí¿¡ BLOBÀ¸·Î ÀúÀåµÉ ¶§ ÀûÇÕÇÕ´Ï´Ù. ³»¿ëÀÌ ¼¹ö ÆÄÀÏ¿¡ ÀÖ´Ù¸é, ±×°ÍÀº ¼¹ö ÆÄÀÏ¿¡¼ Ŭ¶óÀÌ¾ðÆ® ÆÄÀÏ·Î ³»¿ëÀ» º¹»çÇÏ´Â ÆíÀÌ ´õ È¿À²ÀûÀÏ ¼ö ÀÖ½À´Ï´Ù.
Çü½Ä º¯È¯À» »ç¿ëÇÏ¿© À̹ÌÁö °Ë»ö½Ã, ¸ñÇ¥ Çü½Ä(Áï, º¯È¯µÈ Çü½Ä)À» ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù. Ç¥ 4´Â Çã¿ëµÇ´Â Çü½Ä º¯È¯À» ½Äº°ÇÕ´Ï´Ù. °Ë»öµÈ À̹ÌÁö¸¦ Àû¿ëÇÏ·Á´Â Ãß°¡ º¯°æ»çÇ×(ȸÀüÀ̳ª ¹èÀ² °°Àº)À» ½Äº°ÇÏ´Â º¯È¯ ¿É¼Çµµ ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. Ç¥ 5´Â ÁöÁ¤ÇÒ ¼ö ÀÖ´Â º¯È¯ ¿É¼ÇÀ» ³ª¿ÇÕ´Ï´Ù.
¿¹¸¦ µé¾î, C ÀÀ¿ëÇÁ·Î±×·¥¿¡ ÀÖ´Â ´ÙÀ½ ¸í·É¹®Àº À̹ÌÁö¸¦ Ŭ¶óÀÌ¾ðÆ® ÆÄÀÏ·Î °Ë»öÇÕ´Ï´Ù. ¼Ò½º À̹ÌÁö´Â ºñÆ®¸Ê Çü½ÄÀÌ°í µ¥ÀÌÅͺ£À̽º Å×ÀÌºí¿¡ BLOBÀ¸·Î ÀúÀåµË´Ï´Ù. °Ë»öµÈ À̹ÌÁö´Â GIF·Î º¯È¯µÇ°í ¿ø·¡ Å©±âÀÇ 3¹è·Î Á¶Á¤µË´Ï´Ù.
EXEC SQL BEGIN DECLARE SECTION; SQL TYPE IS BLOB_FILE Img_file; EXEC SQL END DECLARE SECTION; strcpy (Img_file.name, "/employee/images/ajones.gif"); Img_file.name_length= strlen(Img_file.name); Img_file.file_options= SQL_FILE_CREATE; EXEC SQL SELECT CONTENT( PICTURE, /* image handle */ 'GIF', /* target format */ '-s 3.0') /* conversion options */ INTO :Img_file, FROM EMPLOYEE WHERE NAME = 'Anita Jones';