½æ³×ÀÏÀº ÀúÀå À̹ÌÁö ¶Ç´Â ºñµð¿À ÇÁ·¹ÀÓÀÇ ¼ÒÇü ¹öÀüÀÔ´Ï´Ù. µ¥ÀÌÅͺ£À̽º¿¡ À̹ÌÁö ÀúÀå½Ã, Image Extender´Â ¼Ó¼º Å×ÀÌºí¿¡ À̹ÌÁöÀÇ ½æ³×ÀÏÀ» ÀúÀåÇÕ´Ï´Ù. µ¥ÀÌÅͺ£À̽º¿¡ ºñµð¿À¸¦ ÀúÀåÇÒ ¶§, Video Extender´Â ºñµð¿À ¿ÀºêÁ§Æ®¸¦ »ó¡ÇÏ´Â ÀÏ¹Ý ½æ³×ÀÏÀ» ¼Ó¼º Å×ÀÌºí¿¡ ÀúÀåÇÕ´Ï´Ù.
±âº»ÀûÀ¸·Î, Image Extender°¡ ÀÚµ¿À¸·Î ÀÛ¼ºÇÏ´Â ½æ³×ÀÏÀÇ Å©±â´Â ¾à 112 x 84 Çȼ¿ÀÔ´Ï´Ù. Video Extender°¡ »ðÀÔÇÏ´Â ÀÏ¹Ý ºñµð¿À ½æ³×ÀÏÀÇ Å©±â´Â 108 x78 Çȼ¿ÀÔ´Ï´Ù. ½æ³×Àϰú ÀÏ¹Ý ºñµð¿À ½æ³×ÀÏÀº µÑ´Ù GIF Çü½ÄÀ¸·Î ÀúÀåµË´Ï´Ù. À̹ÌÁö³ª ºñµð¿À ÇÁ·¹ÀÓÀÇ µ¥ÀÌÅÍ ¹Ðµµ¿¡ µû¶ó, À̰ÍÀº µ¥ÀÌÅÍÀÇ ¾à 4.5KB¿¡¼ 5KB±îÁö¿¡ ´ëÀÀÇÕ´Ï´Ù. »ç¿ëÀÚ Á¦°ø ¼Ó¼ºÀ¸·Î À̹ÌÁö ¶Ç´Â ºñµð¿À¸¦ ÀúÀåÇϰųª °»½ÅÇÑ´Ù¸é, ¼±ÅÃÇÑ Å©±â¿Í Çü½ÄÀÇ ½æ³×ÀÏÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.
µ¥ÀÌÅͺ£À̽º¿¡¼ ½æ³×ÀÏÀ» °Ë»öÇÏ·Á¸é SQL SELECT¹®¿¡ Thumbnail UDF¸¦ »ç¿ëÇϽʽÿÀ. ½æ³×ÀÏÀ» ÆÄÀÏ¿¡ Àü¼ÛÇÏ·Á¸é ÆÄÀÏ ÂüÁ¶ º¯¼ö¸¦ »ç¿ëÇϽʽÿÀ. UDF ÁöÁ¤½Ã, À̹ÌÁö³ª ºñµð¿À ÇÚµéÀÌ ÀÖ´Â µ¥ÀÌÅͺ£À̽º Å×ÀÌºí¿¡ Ä÷³ À̸§À» ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù. ±×·± ´ÙÀ½, À̹ÌÁö³ª ºñµð¿À ÇÁ·¹ÀÓ ½æ³×ÀÏÀ» Ç¥½ÃÇÏ·Á¸é, DBiBrowse API¸¦ »ç¿ëÇϽʽÿÀ.
¿¹¸¦ µé¾î, ´ÙÀ½ÀÇ ¸í·É¹®Àº ½æ³×ÀÏ À̹ÌÁö¸¦ °Ë»öÇÏ¿© ±×°ÍÀ» Ç¥½ÃÇÕ´Ï´Ù.
long rc, outCount; char Thumbnail_filename[254]; FILE *file_handle; EXEC SQL BEGIN DECLARE SECTION; struct { short len char data[10000]; }Thumbnail_buffer; EXEC SQL END DECLARE SECTION; EXEC SQL SELECT THUMBNAIL(PICTURE) INTO :Thumbnail_buffer FROM EMPLOYEE WHERE NAME = 'Anita Jones'; strcpy (Thumbnail_filename,"/tmp/ajones.tmb"); file_handle=fopen(Thumbnail_filename,"wb+"); outCount=fwrite(Thumbnail_buffer.data, 1, Thumbnail_buffer.len, file_handle); fclose(file_handle); rc = DBiBrowse ( NULL, /* use the default display program */ MMDB_PLAY_FILE, /* thumbnail image in file */ Thumbnail_filename, /* thumbnail image content */ MMDB_PLAY_WAIT); /* wait for user to finish */