DB2Image, DB2Audio ¹× DB2Video UDF´Â ¿À¹ö·ÎµåµË´Ï´Ù. Áï, UDF°¡ »ç¿ëµÇ´Â ¿ëµµ¿¡ µû¶ó ´Ù¸¥ Çü½ÄÀ» °®½À´Ï´Ù. °¢°¢ÀÇ UDF´Â ´ÙÀ½°ú °°Àº Çü½ÄÀ» °®½À´Ï´Ù(Çü½Ä¿¡ Ç¥½ÃµÈ xxxxx´Â Image, Audio ¶Ç´Â Video°¡ µÉ ¼ö ÀÖ½À´Ï´Ù).
Çü½Ä 1: Ŭ¶óÀÌ¾ðÆ® ¹öÆÛ ¶Ç´Â Ŭ¶óÀÌ¾ðÆ® ÆÄÀÏ¿¡¼ ¿ÀºêÁ§Æ®¸¦ ÀúÀåÇÕ´Ï´Ù.
DB2xxxxx( CURRENT SERVER, /* database name name in CURRENT SERVER REGISTER */ content, /* object content */ format, /* source format */ target_file, /* target file name for storage in file server */ /* or NULL for storage in table as BLOB */ comment /* user comment */ );
Çü½Ä 2: ¼¹ö ÆÄÀÏ¿¡¼ ¿ÀºêÁ§Æ®¸¦ ÀúÀåÇÕ´Ï´Ù.
DB2xxxxx( CURRENT SERVER, /* database name in CURRENT SERVER REGISTER */ source_file, /* source file name */ format, /* source format */ stortype, /* MMDB_STORAGE_TYPE_EXTERNAL=store */ /* in file server*/ /* MMDB_STORAGE_TYPE_INTERNAL=store */ /* as a BLOB*/ comment /* user comment */ );
Çü½Ä 3: Ŭ¶óÀÌ¾ðÆ® ¹öÆÛ³ª Ŭ¶óÀÌ¾ðÆ® ÆÄÀÏ¿¡¼ »ç¿ëÀÚ Á¦°ø ¼Ó¼ºÀ¸·Î ¿ÀºêÁ§Æ®¸¦ ÀúÀåÇÕ´Ï´Ù.
DB2xxxxx( CURRENT SERVER, /* database name in CURRENT SERVER REGISTER */ content, /* object content */ target_file, /* target file name for storage in file server */ /* or NULL for storage in table as BLOB */ comment, /* user comment */ attrs, /* user-supplied attributes */ thumbnail /* thumbnail (image and video only) */ );
Çü½Ä 4: ¼¹ö ÆÄÀÏ¿¡¼ »ç¿ëÀÚ Á¦°ø ¼Ó¼ºÀ¸·Î ¿ÀºêÁ§Æ®¸¦ ÀúÀåÇÕ´Ï´Ù.
DB2xxxxx( CURRENT SERVER, /* database name in CURRENT SERVER REGISTER */ source_file, /* source file name */ stortype, /* MMDB_STORAGE_TYPE_EXTERNAL=store */ /* in file server*/ /* MMDB_STORAGE_TYPE_INTERNAL=store */ /* as a BLOB*/ comment, /* user comment */ attrs, /* user-supplied attributes */ thumbnail /* thumbnail (image and video only) */ );
DB2Image UDF¿¡´Â ´ÙÀ½ÀÇ Ãß°¡ Çü½ÄÀÌ ÀÖ½À´Ï´Ù.
Çü½Ä 5: Çü½Ä º¯È¯À» »ç¿ëÇÏ¿© Ŭ¶óÀÌ¾ðÆ® ¹öÆÛ ¶Ç´Â Ŭ¶óÀÌ¾ðÆ® ÆÄÀÏ¿¡¼ À̹ÌÁö¸¦ ÀúÀåÇÕ´Ï´Ù.
DB2Image( CURRENT SERVER, /* database name in CURRENT SERVER REGISTER */ content, /* object content */ source_format, /* source format */ target_format, /* target format */ target_file, /* target file name for storage in file server */ /* or NULL for storage in table as BLOB */ comment /* user comment */ );
Çü½Ä 6: Çü½Ä º¯È¯À» »ç¿ëÇÏ¿© ¼¹ö ÆÄÀÏ¿¡¼ À̹ÌÁö¸¦ ÀúÀåÇÕ´Ï´Ù.
DB2Image( CURRENT SERVER, /* database name in CURRENT SERVER REGISTER */ source_file, /* server file name */ source_format, /* source format */ target_format, /* target format */ target_file, /* target file name for storage in file server */ /* or NULL for storage in table as BLOB */ comment /* user comment */ );
Çü½Ä 7: Çü½Ä º¯È¯ ¹× Ãß°¡ º¯°æÀ» »ç¿ëÇÏ¿© Ŭ¶óÀÌ¾ðÆ® ¹öÆÛ ¶Ç´Â Ŭ¶óÀÌ¾ðÆ® ÆÄÀÏ¿¡¼ À̹ÌÁö¸¦ ÀúÀåÇÕ´Ï´Ù.
DB2Image( CURRENT SERVER, /* database name in CURRENT SERVER REGISTER */ content, /* object content */ source_format, /* source format */ target_format, /* target format */ conversion_options, /* Conversion options */ target_file, /* target file name for storage in file server */ /* or NULL for storage in table as BLOB */ comment /* user comment */ );
Çü½Ä 8: Çü½Ä º¯È¯ ¹× Ãß°¡ º¯°æÀ» »ç¿ëÇÏ¿© ¼¹ö ÆÄÀÏ¿¡¼ À̹ÌÁö¸¦ ÀúÀåÇÕ´Ï´Ù.
DB2Image( CURRENT SERVER, /* database name in CURRENT SERVER REGISTER */ source_file, /* server file name */ source_format, /* source format */ target_format, /* target format */ conversion_options /* conversion options */ target_file, /* target file name for storage in file server */ /* or NULL for storage in table as BLOB */ comment /* user comment */ );
¿¹¸¦ µé¾î, C ÀÀ¿ëÇÁ·Î±×·¥¿¡ ÀÖ´Â ´ÙÀ½ÀÇ ¸í·É¹®Àº À̹ÌÁö°¡ ÀÖ´Â ÇàÀ» Á÷¿ø Å×À̺í·Î »ðÀÔÇÕ´Ï´Ù. ¼Ò½º À̹ÌÁö´Â ajones.bmp¶ó´Â ¼¹ö ÆÄÀÏÀÔ´Ï´Ù. À̹ÌÁö´Â Á÷¿ø Å×ÀÌºí¿¡ BLOBÀ¸·Î ÀúÀåµË´Ï´Ù. (À̰ÍÀº ¾Õ¿¡¼ ¼³¸íÇÑ Çü½Ä 2¿¡ ´ëÀÀÇÕ´Ï´Ù.)
EXEC SQL BEGIN DECLARE SECTION; long hvStorageType; EXEC SQL END DECLARE SECTION; hvStorageType=MMDB_STORAGE_TYPE_INTERNAL; EXEC SQL INSERT INTO EMPLOYEE VALUES( '128557', /*id*/ 'Anita Jones', /*name*/ DB2IMAGE( /*Image Extender UDF*/ CURRENT SERVER, /*database*/ '/employee/images/ajones.bmp', /*source file */ 'ASIS', /*keep the image format*/ :hvStorageType /*store image in DB as BLOB*/ 'Anita''s picture') /*comment */ );
C ÀÀ¿ëÇÁ·Î±×·¥¿¡ ÀÖ´Â ´ÙÀ½ÀÇ ¸í·É¹®Àº ÀÌÀü ¿¹½Ã¿¡ ³ª¿Â µ¿ÀÏÇÑ ÇàÀ» Á÷¿ø Å×ÀÌºí¿¡ ÀúÀåÇÕ´Ï´Ù. ±×·¯³ª ÀÌ·¯ÇÑ À̹ÌÁöÀÇ ÀúÀå½Ã, BMP´Â GIF Çü½ÄÀ¸·Î º¯È¯µË´Ï´Ù. (À̰ÍÀº ¾Õ¿¡¼ ¼³¸íÇÑ Çü½Ä 6¿¡ ÇØ´çµË´Ï´Ù.)
EXEC SQL INSERT INTO EMPLOYEE VALUES( '128557', /*id*/ 'Anita Jones', /*name*/ DB2IMAGE( /*Image Extender UDF* CURRENT SERVER, /*database*/ '/employee/images/ajones.bmp', /*source file */ 'ASIS', /*source image format*/ 'GIF', /*target image format*/ 'Anita''s picture') /*comment*/ );
À̹ÌÁö, ¿Àµð¿À ¶Ç´Â ºñµð¿À ¿ÀºêÁ§Æ®ÀÇ ÀúÀå½Ã, Extender´Â À̹ÌÁö¿¡¼ »ç¿ëµÈ »ö»ó ¼ö³ª ¿Àµð¿À Àç»ý ½Ã°£ ¶Ç´Â ¾ÐÃà Çü½Ä°ú °°Àº ¼Ó¼ºÀ» °è»êÇÕ´Ï´Ù. ÀνĵÇÁö ¾Ê´Â Çü½ÄÀ¸·Î ¿ÀºêÁ§Æ®¸¦ ÀúÀåÇÏ´Â °æ¿ì, ÀÌ·¯ÇÑ ¼Ó¼ºÀ» ÀÔ·ÂÀ¸·Î UDF¿¡ Á¦°øÇØ¾ß ÇÕ´Ï´Ù. Extender´Â ¿ÀºêÁ§Æ®¿¡ ´ëÇÑ ÁÖ¼® ¹× ¿ÀºêÁ§Æ®¸¦ ÀúÀåÇÑ »ç¿ëÀÚ ID¿Í °°Àº ´Ù¸¥ ¼Ó¼ºµé°ú ÇÔ²² µ¥ÀÌÅͺ£À̽º¿¡ ÀÌ·¯ÇÑ ¼Ó¼ºÀ» ÀúÀåÇÕ´Ï´Ù. ÀÌ·¯ÇÑ ¼Ó¼ºÀº Á¶È¸¿¡¼ »ç¿ë °¡´ÉÇÕ´Ï´Ù.