µ¥ÀÌÅͺ£À̽º¿¡ À̹ÌÁö, ¿Àµð¿À ¶Ç´Â ºñµð¿À ¿ÀºêÁ§Æ® ÀúÀå½Ã, Extender´Â µ¥ÀÌÅͺ£À̽º¿¡ ¿ÀºêÁ§Æ® ¼Ó¼º ¶ÇÇÑ ÀúÀåÇÕ´Ï´Ù. ¿ÀºêÁ§Æ® °»½Å½Ã, Extender´Â µ¥ÀÌÅͺ£À̽º¿¡ ÀúÀåµÈ ¿ÀºêÁ§Æ®ÀÇ ¼Ó¼ºÀ» °»½ÅÇÕ´Ï´Ù. ÀÌ·¯ÇÑ ¼Ó¼ºÀº Á¶È¸¿¡¼ »ç¿ë °¡´ÉÇÕ´Ï´Ù.
Extender´Â °ü¸®ÇÏ´Â °¢°¢ÀÇ ¼Ó¼º¿¡ ´ëÇÑ UDF¸¦ ¸¸µì´Ï´Ù.
±× °á°ú, »ç¿ëÀÚ´Â ¿ÀºêÁ§Æ® ¼Ó¼ºÀ» ¾×¼¼½ºÇÏ°í »ç¿ëÇϱâ À§ÇØ
SQL¹®¿¡ UDF¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.
´ÙÀ½
Å×À̺íÀº Extender°¡ °ü¸®ÇÏ´Â ¼Ó¼º°ú ÀÚ½ÅÀÇ UDF¸¦ ³ª¿ÇÕ´Ï´Ù.
À̰ÍÀº ¶ÇÇÑ °¢°¢ÀÇ ¼Ó¼º¿¡ ´ëÇÑ ¿ÀºêÁ§Æ® À¯ÇüÀ» Ç¥½ÃÇÕ´Ï´Ù.
¿ÀºêÁ§Æ® Çü½Ä ¹× ÆÄÀÏ À̸§°ú °°Àº, ÀϺΠ¼Ó¼ºÀº ¸ðµç ¿ÀºêÁ§Æ® À¯Çü¿¡
°øÅëÀÔ´Ï´Ù. ÀÌµé ¼Ó¼ºÀº À̹ÌÁö, ¿Àµð¿À ¹× ºñµð¿À ¿ÀºêÁ§Æ®¿Í
¿¬°üµË´Ï´Ù. »ùÇøµÀ²À̳ª ¾ÐÃà À¯Çü °°Àº ±× ¹ÛÀÇ ¼Ó¼ºÀº ¿Àµð¿À¿Í ºñµð¿À
°°Àº ƯÁ¤ ¿ÀºêÁ§Æ® À¯Çü¿¡ ÁöÁ¤µË´Ï´Ù.
Ç¥ 6. DB2 Extender°¡ °ü¸®ÇÏ´Â ¼Ó¼º
¼Ó¼º | UDF | Image | Audio | Video |
---|---|---|---|---|
¿ÀºêÁ§Æ®°¡ ÀúÀåµÈ ¼¹ö ÆÄÀÏ À̸§ | Filename | x | x | x |
¿ÀºêÁ§Æ®¸¦ ÀúÀåÇÑ »ç¶÷ÀÇ »ç¿ëÀÚ ID | Importer | x | x | x |
¿ÀºêÁ§Æ® ÀúÀå½Ã ³¯Â¥¿Í ½Ã°£ | ImportTime | x | x | x |
¿ÀºêÁ§Æ®ÀÇ ¹ÙÀÌÆ® Å©±â | Size | x | x | x |
¿ÀºêÁ§Æ®¸¦ ÃÖ±Ù °»½ÅÇÑ »ç¶÷ÀÇ »ç¿ëÀÚ ID | Updater | x | x | x |
¿ÀºêÁ§Æ®ÀÇ ÃÖ±Ù °»½ÅÇÑ ³¯Â¥¿Í ½Ã°£ | UpdateTime | x | x | x |
¿ÀºêÁ§Æ® Çü½Ä(¿¹¸¦ µé¾î, GIF ¶Ç´Â MPEG1) | Format | x | x | x |
¿ÀºêÁ§Æ®¿¡ ´ëÇÑ ÁÖ¼® | Comment | x | x | x |
¿ÀºêÁ§Æ®ÀÇ ³ôÀÌ(Çȼ¿) | Height | x | x | |
¿ÀºêÁ§Æ®ÀÇ Æø(Çȼ¿) | Width | x | x | |
¿ÀºêÁ§Æ®ÀÇ »ö»ó ¼ö | NumColors | x | ||
¿ÀºêÁ§Æ®ÀÇ ½æ³×ÀÏ Å©±â À̹ÌÁö | Thumbnail | x | x | |
¿Àµð¿À ¶Ç´Â ºñµð¿ÀÀÇ ¿Àµð¿À Æ®·¢¿¡¼ »ùÇÃ´ç ¸®ÅϵǴ ¹ÙÀÌÆ® ¼ö | AlignValue | x | x | |
°¢°¢ÀÇ »ùÇÃÀÇ Ç¥Çö¿¡ »ç¿ëµÇ´Â ºñÆ® ¼ö | BitsPerSample | x | x | |
·¹ÄÚµåµÈ ä³Î ¼ö | NumChannels | x | x | |
Áö¼Ó±â°£(ÃÊ ´ÜÀ§) | Duration | x | x | |
»ùÇøµÀ²(ÃÊ´ç »ùÇÃ) | SamplingRate | x | x | |
Àü¼Û ½Ã°£ ÃÊ´ç Æò±Õ ¹ÙÀÌÆ® | BytesPerSec | x | ||
¾Ç±â¿ë ¿Àµð¿À Æ®·¢ ¹øÈ£ | FindInstrument | x | ||
À̸§ ÁöÁ¤µÈ Æ®·¢ÀÇ Æ®·¢ ¹øÈ£ | FindTrackName | x | ||
·¹ÄÚµåµÈ ¾Ç±â À̸§ | GetInstruments | x | ||
·¹ÄÚµåµÈ ¾Ç±âÀÇ Æ®·¢ ¹øÈ£¿Í À̸§ | GetTrackNames | x | ||
¿Àµð¿ÀÀÇ ÃÊ´ç ½Ã°è Æ½ ¼ö | TicksPerSec | x | ||
¿Àµð¿ÀÀÇ 1/4 ³ëÆ®´ç ½Ã°è ƽ ¼ö | TicksPerQNote | x | ||
¿µ»óºñ | AspectRatio | x | ||
ºñµð¿À ¾ÐÃà Çü½Ä(¿¹: MPEG1) | CompressType | x | ||
󸮷®ÀÇ ÃÊ´ç ÇÁ·¹ÀÓ | FrameRate | x | ||
ÃÖ´ë 󸮷®(ÃÊ´ç ¹ÙÀÌÆ®) | MaxBytesPerSec | x | ||
¿Àµð¿À Æ®·¢ ¼ö | NumAudioTracks | x | x | |
ÇÁ·¹ÀÓ ¼ö | NumFrames | x | ||
ºñµð¿À Æ®·¢ ¼ö | NumVideoTracks | x |
¼Ó¼º UDF´Â SQL¹® SELECTÀý Ç¥Çö½Ä ¶Ç´Â WHEREÀý Ž»ö Á¶°Ç¿¡¼ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. UDF ¿äû½Ã, ¿ÀºêÁ§Æ® ÇÚµéÀÌ ÀÖ´Â µ¥ÀÌÅͺ£À̽º Å×ÀÌºí¿¡ Ä÷³ À̸§À» ÁöÁ¤ÇÕ´Ï´Ù.
¿¹¸¦ µé¾î, ´ÙÀ½ÀÇ ¸í·É¹®Àº SQL SELECT¹®ÀÇ SELECTÀý¿¡¼ Updater UDF¸¦ »ç¿ëÇÏ¿© Á÷¿ø Å×ÀÌºí¿¡¼ À̹ÌÁö¸¦ °¡Àå ÃÖ±Ù¿¡ °»½ÅÇÑ »ç¶÷ÀÇ »ç¿ëÀÚ ID¸¦ °Ë»öÇÕ´Ï´Ù.
EXEC SQL BEGIN DECLARE SECTION; char hvUpdatr[30]; EXEC SQL END DECLARE SECTION; EXEC SQL SELECT UPDATER(PICTURE) INTO :hvUpdatr FROM EMPLOYEE WHERE NAME = 'Anita Jones';
´ÙÀ½ÀÇ ¸í·É¹®Àº SELECT¹®ÀÇ SELECTÀý¿¡ Filename UDF¿Í WHEREÀý¿¡ NumAudioTracks UDF¸¦ »ç¿ëÇÏ¿©, ¿Àµð¿À Æ®·¢ÀÌ ÀÖ´Â Á÷¿ø Å×ÀÌºí¿¡ ÀúÀåµÈ ºñµð¿À¸¦ ã½À´Ï´Ù.
EXEC SQL BEGIN DECLARE SECTION; char hvVid_fname[251]; EXEC SQL END DECLARE SECTION; EXEC SQL SELECT FILENAME(VIDEO) INTO :hvVid_fname FROM EMPLOYEE WHERE NUMAUDIOTRACKS(VIDEO)>0;