°ü¸® ¾È³»¼­


DB2 UDB¿¡¼­ÀÇ À¯´ÏÄÚµå/UCS-2 ¹× UTF-8 Áö¿ø

ÀÌ µÎ °¡Áö Ç¥ÁØÀÌ ´ÙÀ½°ú °°ÀÌ ¹®¼­È­µÇ¾î ÀÖ½À´Ï´Ù.

¼Ò°³

À¯´ÏÄÚµå ¹®ÀÚ ÄÚµåÈ­ Ç¥ÁØÀº »ç¿ëÁßÀÎ °ÅÀÇ ¸ðµç ¼¼°è ¾ð¾îÀÇ ¹®ÀÚ¸¦ Æ÷ÇÔÇÏ´Â °íÁ¤ ±æÀÌÀÇ ÄÚµåÈ­ ü°èÀÔ´Ï´Ù. À¯´ÏÄÚµå ¹®ÀÚ´Â ÀϹÝÀûÀ¸·Î +xxxx"·Î Ç¥½ÃµÇ¸ç, xxxx´Â ÀÌ ¹®ÀÚÀÇ 16Áø ÄÚµåÀÔ´Ï´Ù.

°¢ ¹®ÀÚ´Â ¾ð¾î¿¡ °ü°è¾øÀÌ 16ºñÆ®(2¹ÙÀÌÆ®) ÆøÀÔ´Ï´Ù. 65000 ÄÚµå ¿ä¼Ò°¡ ¼¼°è ÁÖ¿ä ¾ð¾îÀÇ ´ëºÎºÐÀÇ ¹®ÀÚ¸¦ ÃæºÐÈ÷ ¾ÏȣȭÇÏ´Â ÇÑÆí, À¯Æ¼ÄÚµå Ç¥ÁØÀº ¹é¸¸ °³³ª ´õ ¸¹Àº ¹®ÀÚ¸¦ ¾ÏȣȭÇÒ ¼ö ÀÖ´Â È®Àå ¸ÞÄ¿´ÏÁòÀ» Á¦°øÇϱ⵵ ÇÕ´Ï´Ù. ÀÌ È®ÀåÀº ÀϺΠ32ºñÆ® ¹®ÀÚ¸¦ µÎ °³ÀÇ ¿¬¼Ó ÄÚµå ¿ä¼Ò·Î ¾ÏȣȭÇϱâ À§ÇÑ ÄÚµå °ª ¹üÀ§("surrogates")·Î ¾Ë·ÁÁø U+D800¿¡¼­ U+D8FF±îÁö)¸¦ ¿¹¾àÇÕ´Ï´Ù.

±¹Á¦ Ç¥ÁØÈ­ ±â±¸(ISO) ¹× ±¹Á¦ Àü±â ±â¼ú À§¿øÈ¸(IEC) 10646 Ç¥ÁØ(ISO/IEC 10646)Àº 2¹ÙÀÌÆ® ¹öÀü(UCS-2)°ú 4¹ÙÀÌÆ® ¹öÀü(UCS-4)À» °®´Â UCS(Universal Multiple-Octet Coded Character Set)¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ÀÌ ISO Ç¥ÁØÀÇ 2¹ÙÀÌÆ® ¹öÀüÀº ´ë¸®°¡ ¾ø´Â À¯´ÏÄÚµå¿Í ÀÏÄ¡ÇÕ´Ï´Ù. ISO 10646´Â UCS-2 ¾ÏÈ£ ¹®ÀÚ¿­¿¡ ÀÖ´Â ÀϺΠUCS-4 Äڵ带 ¾ÏȣȭÇϱâ À§ÇØ È®Àå ±â¼úµµ Á¤ÀÇÇÕ´Ï´Ù. UTF-16À̶ó´Â ÀÌ È®ÀåÀÚ´Â ´ë¸®°¡ ÀÖ´Â À¯´ÏÄÚµå¿Í µ¿ÀÏÇÕ´Ï´Ù.

DB2 UDB´Â UCS-2, Áï, ´ë¸®°¡ ¾ø´Â À¯´ÏÄڵ带 Áö¿øÇÕ´Ï´Ù.

UTF-8(ÄÚµå ÆäÀÌÁö 1208) Ŭ¶óÀÌ¾ðÆ®¸¦ À¯´ÏÄڵ尡 ¾Æ´Ñ µ¥ÀÌÅͺ£À̽º¿¡ ¿¬°áÇÏ´Â °ÍÀº Áö¿øµÇÁö ¾Ê½À´Ï´Ù.

UTF-8

UCS-2 ¶Ç´Â À¯´ÏÄÚµå ¾Ïȣȭ·Î, ASCII ¹× Á¦¾î ¹®ÀÚ´Â ¶ÇÇÑ 2¹ÙÀÌÆ®À̸ç, ½ÃÀÛ ¹ÙÀÌÆ®´Â 0ÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, ³Î(NULL)Àº U+0000À̸ç, ´ë¹®ÀÚ "A"´Â U+0041·Î Ç¥½ÃµË´Ï´Ù. À̰ÍÀº UCS-2 ¹®ÀÚ¿­¿¡¼­ ³Ê¹« ¸¹Àº ³Î(NULL)ÀÌ ¹®ÀÚ¿­¿¡ ¾Æ¹«µ¥³ª ³ªÅ¸³¯ ¼ö Àֱ⠶§¹®¿¡ ASCII ±âº» ÀÀ¿ëÇÁ·Î±×·¥ ¹× ASCII ÆÄÀÏ ½Ã½ºÅÛ¿¡ ´ëÇØ ÁÖ¿ä ¹®Á¦Á¡ÀÌ µÉ ¼ö ÀÖ½À´Ï´Ù. UTF-8·Î ¾Ë·ÁÁ® ÀÖ´Â º¯È¯ ¾Ë°í¸®ÁòÀº ºÒº¯ÇÏ´Â ASCII Äڵ带 »ç¿ëÇÏ´Â ÇÁ·Î±×·¥¿¡ ´ëÇØ ÀÌ·¯ÇÑ ¹®Á¦Á¡À» ÇÇÇϱâ À§ÇØ »ç¿ëµÉ ¼ö ÀÖ½À´Ï´Ù.

UTF-8(UCS º¯È¯ Çü½Ä 8)Àº °íÁ¤ ±æÀÌ UCS-4 ¹®ÀÚ¸¦ °¡º¯ ±æÀÌ ¹ÙÀÌÆ® ¹®ÀÚ¿­·Î º¯È¯½ÃŰ´Â ¾Ë°í¸®Áò½Ä º¯È¯ÀÔ´Ï´Ù. UTF-8¿¡¼­, ASCII ¹®ÀÚ´Â ÀϹÝÀûÀÎ 1¹ÙÀÌÆ® ÄÚµå·Î Ç¥½ÃµÇÁö¸¸, UCS-2ÀÇ ºñASCII ¹®ÀÚ´Â 2 ¶Ç´Â 3¹ÙÀÌÆ®·Î µË´Ï´Ù. ´Ù½Ã ¸»Çؼ­, UTF-8Àº UCS-2¹®ÀÚ¸¦ ´ÙÁß ¹ÙÀÌÆ® ÄÚµå ¼¼Æ®·Î º¯È¯Çϰí, ASCII ÄÚµå´Â ºÒº¯ÇÕ´Ï´Ù. ´ÙÀ½ Ç¥¿¡¼­ UTF-8 Çü½ÄÀÇ °¢ UCS-2¹®ÀÚ¿¡ ´ëÇÑ ¹ÙÀÌÆ® ¼ö¸¦ °áÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.

    UCS-2 (hex)     UTF-8 (binary)                 Description
    ------------    --------------------------     ----------------
    0000 to 007F    0xxxxxxx                       ASCII
    0080 to 07FF    110xxxxx 10xxxxxx              up to U+07FF
    0800 to FFFF    1110xxxx 10xxxxxx 10xxxxxx     other UCS-2
    NOTE: The range D800 to DFFF is to be excluded from treatment
          by the third row of this table which governs the UCS-4 range
          0000 0800 to 0000 FFFF.

À§ÀÇ °¢ ³»¿ë Áß, xÀÇ ¿¬¼Ó ¹®ÀÚ´Â ¹®ÀÚÀÇ UCS ºñÆ® Ç¥½ÃÀÔ´Ï´Ù. ¿¹¸¦ µé¾î, U0080Àº 11000010 10000000À¸·Î º¯È¯µË´Ï´Ù.

DB2 UDB¿¡¼­ÀÇ UCS-2/UTF-8 ±¸Çö

ÄÚµå ÆäÀÌÁö/CCSID ¹øÈ£

IBM¿¡¼­, UCS-2 ÄÚµå ÆäÀÌÁö´Â ÄÚµå ÆäÀÌÁö 1200À¸·Î µî·ÏµÈ »óÅÂÀÔ´Ï´Ù. ¸ðµç ÄÚµå ÆäÀÌÁö´Â Áõ°¡ÇÏ´Â ¹®ÀÚ ¼¼Æ®¿Í ÇÔ²² Á¤ÀǵǾî ÀÖ½À´Ï´Ù. Áï, »õ·Î¿î ¹®ÀÚ°¡ ÄÚµå ÆäÀÌÁö¿¡ Ãß°¡µÉ ¶§ ÄÚµå ÆäÀÌÁö ¹øÈ£´Â º¯°æµÇÁö ¾Ê½À´Ï´Ù. ÄÚµå ÆäÀÌÁö 1200Àº Ç×»ó À¯´ÏÄÚµå/UCS-2ÀÇ ÇöÀç ¹öÀüÀ» ÂüÁ¶Çϸç, DB2 UDB¿¡ ÀÖ´Â UCS-2 Áö¿øÀ» À§ÇØ »ç¿ëµÇ¾î ¿Ô½À´Ï´Ù.

Unicode 2.0 ¹× ISO/IEC 10646-1¿¡ ÀÇÇØ Á¤ÀÇµÈ ´ë·Î, UCS Ç¥ÁØÀÇ Æ¯Á¤ ¹öÀüµµ IBM¿¡ CCSID 13488·Î µî·ÏµÇ¾î ÀÖ½À´Ï´Ù. ÀÌ CCSID´Â ÀϺ» EUC ¹× ´ë¸¸ EUC µ¥ÀÌÅͺ£À̽º¿¡ ±×·¡ÇÈ ¹®ÀÚ¿­ µ¥ÀÌÅ͸¦ ÀúÀåÇϱâ À§ÇØ DB2 UDB¿¡ ÀÇÇØ ³»ºÎÀûÀ¸·Î »ç¿ëµÇ¾ú½À´Ï´Ù. CCSID 13488 ¹× ÄÚµå ÆäÀÌÁö 1200Àº ¸ðµÎ UCS-2¸¦ ÂüÁ¶Çϸç, "2¹ÙÀÌÆ®"(DBCS) °ø°£ÀÇ °ªÀ» Á¦¿ÜÇϰí´Â °°Àº ¹æ¹ýÀ¸·Î 󸮵˴ϴÙ.

     CP/CCSID        Single-byte (SBCS) space      Double-byte (DBCS) space
    ---------        ------------------------      ------------------------
      1200                   N/A                           U+0020
      13488                  N/A                           U+3000
    NOTE: In a UCS-2 database, U+3000 has no special meaning.

º¯È¯ Å×ÀÌºí¿¡ °üÇÏ¿©´Â, ÄÚµå ÆäÀÌÁö 1200ÀÌ CCSID 13488ÀÇ »óÀ§¼¼Æ®À̹ǷΠµ¿ÀÏÇÑ(»óÀ§ ¼¼Æ®) Å×À̺íÀÌ µÑ´Ù¿¡ ´ëÇØ »ç¿ëµË´Ï´Ù.

IBM¿¡¼­, UTF-8ÀÌ Áõ°¡ÇÏ´Â ¹®ÀÚ ¼¼Æ®¿Í ÇÔ²² CCSID 1208·Î µî·ÏµÇ¾î ÀÖ½À´Ï´Ù(¶§·Î´Â ÄÚµå ÆäÀÌÁö 1208·Î¼­ ÂüÁ¶µÇ±âµµ ÇÔ). »õ·Î¿î ¹®ÀÚ°¡ Ç¥ÁØ¿¡ Ãß°¡µÉ ¶§, ÀÌ ¹øÈ£(1208) ¿ª½Ã º¯°æµÇÁö ¾Ê½À´Ï´Ù. ¹øÈ£ 1208Àº DB2ÀÇ UCS-2/UTF-8 Áö¿øÀ» À§ÇÑ ´ÙÁß ¹ÙÀÌÆ® ÄÚµå ÆäÀÌÁö ¹øÈ£·Î »ç¿ëµË´Ï´Ù.

DB2 UDB´Â »õ·Î¿î ´ÙÁß ¹ÙÀÌÆ® ÄÚµå ÆäÀÌÁö·Î¼­ UCS-2¸¦ Áö¿øÇÕ´Ï´Ù. MBCS ÄÚµå ÆäÀÌÁö ¹øÈ£´Â µ¥ÀÌÅͺ£À̽º ÄÚµå ÆäÀÌÁö ¹øÈ£ÀÎ 1208À̰í, µ¥ÀÌÅͺ£À̽ºÀÇ ¹®ÀÚ¿­ µ¥ÀÌÅÍÀÇ ÄÚµå ÆäÀÌÁöÀÔ´Ï´Ù. UCS-2ÀÇ 2¹ÙÀÌÆ® ÄÚµå ÆäÀÌÁö ¹øÈ£´Â µ¥ÀÌÅͺ£À̽ºÀÇ ±×·¡ÇÈ ¹®ÀÚ¿­ µ¥ÀÌÅÍÀÇ ÄÚµå ÆäÀÌÁöÀÎ 1200ÀÔ´Ï´Ù. µ¥ÀÌÅͺ£À̽º°¡ UCS-2/UTF-8¿¡¼­ ÀÛ¼ºµÇ¸é, CHAR, VARCHAR, LONG VARCHAR ¹× CLOB µ¥ÀÌÅÍ´Â UTF-8¿¡ ÀúÀåµÇ°í, GRAPHIC, VARGRAPHIC, LONG VARGRAPHIC ¹× DBCLOB µ¥ÀÌÅÍ´Â UCS-2¿¡ ÀúÀåµË´Ï´Ù. À̰ÍÀ» ´Ü¼øÈ÷ UCS-2 µ¥ÀÌÅͺ£À̽º·Î¼­ ÂüÁ¶ÇÕ´Ï´Ù.

UCS-2 µ¥ÀÌÅͺ£À̽º ÀÛ¼º

±âº» µ¥ÀÌÅͺ£À̽º´Â µ¥ÀÌÅͺ£À̽º¸¦ ÀÛ¼ºÇÏ´Â ÀÀ¿ëÇÁ·Î±×·¥ÀÇ ÄÚµå ÆäÀÌÁö¿¡¼­ ÀÛ¼ºµË´Ï´Ù. µû¶ó¼­, UTF-8 Ŭ¶óÀ̾ðÆ®(¿¹¸¦ µé¾î, AIXÀÇ UNIVERSAL ·ÎÄÉÀÏ)·ÎºÎÅÍ µ¥ÀÌÅͺ£À̽º¸¦ ÀÛ¼ºÇÒ °æ¿ì ¶Ç´Â Ŭ¶óÀ̾ðÆ®ÀÇ DB2CODEPAGE ·¹Áö½ºÆ®¸® º¯¼ö°¡ 1208·Î ¼³Á¤µÈ °æ¿ì, µ¥ÀÌÅͺ£À̽º´Â UCS-2 µ¥ÀÌÅͺ£À̽º·Î ÀÛ¼ºµË´Ï´Ù. ¶Ç´Â, CODESET À̸§À¸·Î "UTF-8"À» ¸í½ÃÀûÀ¸·Î ÁöÁ¤Çϰí, DB2 UDB°¡ Áö¿øÇÏ´Â À¯È¿ÇÑ µÎ ¹®ÀÚ TERRITORY Äڵ带 »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

¿¹¸¦ µé¾î, ¹Ì±¹ÀÇ Áö¿ª Äڵ带 »ç¿ëÇÏ¿© CLP¿¡¼­ UCS-2 µ¥ÀÌÅͺ£À̽º¸¦ ÀÛ¼ºÇÏ·Á¸é, ´ÙÀ½ ¸í·ÉÀ» ¹ßÇàÇϽʽÿÀ.

  DB2 CREATE DATABASE dbname USING CODESET UTF-8 TERRITORY US

sqlecrea API¸¦ »ç¿ëÇÏ¿© UCS-2 µ¥ÀÌÅͺ£À̽º¸¦ ÀÛ¼ºÇÏ·Á¸é, sqledbcountryinfo¿¡ °ªÀ» ÀûÀýÇÏ°Ô ¼³Á¤ÇØ¾ß ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, SQLDBCODESETÀ» UTF-8¿¡ ¼³Á¤Çϰí, SQLDBLOCALEÀ» À¯È¿ÇÑ ¸ðµç Áö¿ª ÄÚµå(¿¹: US)¿¡ ¼³Á¤ÇϽʽÿÀ.

UCS-2 µ¥ÀÌÅͺ£À̽º¿¡ ´ëÇÑ ±âº» Á¶ÇÕ ¼ø¼­´Â IDENTITYÀ̸ç, À̰ÍÀº UCS-2 ÄÚµå Æ÷ÀÎÆ® ¼ø¼­¸¦ Á¦°øÇÕ´Ï´Ù. µû¶ó¼­, ±âº»°ªÀ¸·Î ¸ðµç UCS-2/UTF-8 ¹®ÀÚ°¡ UCS-2 ÄÚµå Æ÷ÀÎÆ® ¼ø¼­¿¡ µû¶ó Á¤·ÄµÇ°í ºñ±³µË´Ï´Ù.

³¯Â¥ ¶Ç´Â ½Ã°£ Çü½Ä, ½ÊÁø¼ö ºÐ¸®ÀÚ µî°ú °°ÀÌ ¹®È­Àû Â÷À̰¡ ÀÖ´Â ¸ðµç ¸Å°³º¯¼ö´Â Ŭ¶óÀ̾ðÆ®ÀÇ ÇöÀç Áö¿ª¿¡ ±âÁØÀ» µÎ°í ÀÖ½À´Ï´Ù.

UCS-2 µ¥ÀÌÅͺ£À̽º´Â DB2 UDB°¡ Áö¿øÇÏ´Â ¸ðµç 1¹ÙÀÌÆ® ¹× ´ÙÁß ¹ÙÀÌÆ® ÄÚµå ÆäÀÌÁöÀÇ ¿¬°áÀ» Çã¿ëÇÕ´Ï´Ù. Ŭ¶óÀ̾ðÆ®ÀÇ ÄÚµå ÆäÀÌÁö¿Í UTF-8°£ÀÇ ÄÚµå ÆäÀÌÁö ¹®ÀÚ º¯È¯Àº µ¥ÀÌÅͺ£À̽º °ü¸® ÇÁ·Î±×·¥¿¡ ÀÇÇØ ÀÚµ¿À¸·Î ¼öÇàµË´Ï´Ù. ±×·¡ÇÈ ¹®ÀÚ¿­ À¯ÇüÀÇ µ¥ÀÌÅÍ´Â Ç×»ó UCS-2·Î µÇ¾î ÀÖÀ¸¸ç, ÄÚµå ÆäÀÌÁö º¯È¯À» Åë°úÇÏÁö ¾Ê½À´Ï´Ù. ¸í·ÉÇà 󸮱â(CLP) ȯ°æÀº ¿¹¿ÜÀÔ´Ï´Ù. CLP¿¡¼­ ¼±Åà ±×·¡ÇÈ ¹®ÀÚ¿­(UCS-2) µ¥ÀÌÅ͸¦ ¼±ÅÃÇÒ °æ¿ì, ¸®ÅÏµÈ ±×·¡ÇÈ ¹®ÀÚ¿­ µ¥ÀÌÅÍ´Â (CLP¿¡ ÀÇÇØ) UCS-2¿¡¼­ Ŭ¶óÀÌ¾ðÆ® È¯°æÀÇ ÄÚµå ÆäÀÌÁö·Î º¯È¯µË´Ï´Ù.

¸ðµç Ŭ¶óÀÌ¾ðÆ®°¡ ¹®ÀÚ ·¹ÆÛÅ丮, ÀÔ·Â ¹æ¹ý ¹× ȯ°æÀÌ Áö¿øÇÏ´Â ±Û²Ã¿¡ ÀÇÇØ Á¦ÇѵÇÁö¸¸, UCS-2 µ¥ÀÌÅͺ£À̽º ÀÚü´Â ¸ðµç UCS-2 ¹®ÀÚ¸¦ ½ÂÀÎÇϰí ÀúÀåÇÕ´Ï´Ù. µû¶ó¼­, ¸ðµç Ŭ¶óÀÌ¾ðÆ®°¡ ÀϹÝÀûÀ¸·Î UCS-2 ¹®ÀÚÀÇ ºÎ¼Ó ÁýÇÕÀ¸·Î ÀÛ¾÷ÇÏÁö¸¸, µ¥ÀÌÅͺ£À̽º °ü¸® ÇÁ·Î±×·¥Àº UCS-2 ¹®ÀÚÀÇ Àüü ·¹ÆÛÅ丮¸¦ Çã¿ëÇÕ´Ï´Ù.

¹®ÀÚ°¡ Áö¿ª ÄÚµå ÆäÀÌÁö¿¡¼­ UTF-8·Î º¯È¯µÉ ¶§ ¹ÙÀÌÆ® ¼ö°¡ È®ÀåµÉ ¼ö ÀÖ½À´Ï´Ù. ASCII ¹®ÀÚ¿¡ ´ëÇØ¼­´Â È®ÀåÀÌ ÀϾÁö ¾ÊÁö¸¸, ´Ù¸¥ UCS-2 ¹®ÀÚ´Â µÎ¼¼ °¡ÁöÀÇ Àμö¿¡ ÀÇÇØ È®ÀåµË´Ï´Ù. UTF-8 Çü½ÄÀÇ °¢ UCS-2 ¹®ÀÚÀÇ ¹ÙÀÌÆ® ¼ö´Â UTF-8¿¡ ÀÖ´Â Å×ÀÌºí¿¡¼­ °áÁ¤µÉ ¼ö ÀÖ½À´Ï´Ù.

µ¥ÀÌÅÍ À¯Çü

DB2 UDB¿¡¼­ Áö¿øµÇ´Â ¸ðµç µ¥ÀÌÅÍ À¯ÇüÀº UCS-2 µ¥ÀÌÅͺ£À̽º¿¡¼­µµ Áö¿øµË´Ï´Ù. ƯÈ÷, ±×·¡ÇÈ ¹®ÀÚ¿­ µ¥ÀÌÅÍ´Â UCS-2 µ¥ÀÌÅͺ£À̽º¿¡ ´ëÇØ Áö¿øµÇ¸ç, UCS-2/À¯´ÏÄڵ忡 ÀúÀåµË´Ï´Ù. SBCS Ŭ¶óÀÌ¾ðÆ®¸¦ Æ÷ÇÔÇÏ´Â ¸ðµç Ŭ¶óÀÌ¾ðÆ®´Â UCS-2 µ¥ÀÌÅͺ£À̽º¿¡ ¿¬°áµÉ ¶§ UCS-2/À¯´ÏÄڵ忡 ÀÖ´Â ±×·¡ÇÈ ¹®ÀÚ¿­ µ¥ÀÌÅÍ À¯ÇüÀ¸·Î ÀÛ¾÷ÇÒ ¼ö ÀÖ½À´Ï´Ù.

UCS-2 µ¥ÀÌÅͺ£À̽º´Â ¹®ÀÚ¿­ µ¥ÀÌÅͰ¡ ¹ÙÀÌÆ® ¼ö·Î ÃøÁ¤µÈ MBCS µ¥ÀÌÅͺ£À̽º¿Í °°½À´Ï´Ù. UTF-8ÀÇ ¹®ÀÚ¿­ µ¥ÀÌÅÍ·Î ÀÛ¾÷ÇÒ ¶§ °¢ ¹®ÀÚ°¡ 1¹ÙÀÌÆ®¶ó°í °¡Á¤Çؼ­´Â ¾È µË´Ï´Ù. ´ÙÁß ¹ÙÀÌÆ® UTF-8 ¾Ïȣȭ¿¡¼­, °¢ ASCII ¹®ÀÚ´Â 1¹ÙÀÌÆ®ÀÌÁö¸¸ ºñASCII ¹®ÀÚ´Â °¢°¢ 1 ¶Ç´Â 3¹ÙÀÌÆ®¸¦ Â÷ÁöÇÕ´Ï´Ù. CHAR Çʵ带 Á¤ÀÇÇÒ ¶§ À̰ÍÀ» °í·ÁÇØ¾ß ÇÕ´Ï´Ù. ºñ ASCII ¹®ÀÚ¿¡ ´ëÇÑ ASCII ºñÀ²¿¡ µû¶ó, n ¹ÙÀÌÆ® Å©±âÀÇ CHAR Çʵå´Â n/3¿¡¼­ nÀÚ±îÁö Æ÷ÇÔÇÒ ¼ö ÀÖ½À´Ï´Ù.

±×·¡ÇÈ ¹®ÀÚ¿­ UCS-2 µ¥ÀÌÅÍ À¯Çü°ú ´ëºñÇÏ¿© ¹®ÀÚ¿­ UTF-8 ¾Ïȣȭ »ç¿ëÀº ¶ÇÇÑ Àüü ÀúÀ念¿ª ¿ä±¸»çÇ׿¡ ¿µÇâÀ» ¹ÌĨ´Ï´Ù. ÁÖ·Î ASCII ¹®ÀÚ¸¦ »ç¿ëÇÏ°í ±× »çÀÌ¿¡ ¾à°£ÀÇ ºñASCII ¹®ÀÚ¸¦ »ç¿ëÇÏ´Â °æ¿ì, UTF-8 µ¥ÀÌÅÍÀÇ ÀúÀåÀº ÀúÀ念¿ª ¿ä±¸»çÇ×ÀÌ ÇÑ ¹®ÀÚ´ç 1¹ÙÀÌÆ®¿¡ °¡±õ±â ¶§¹®¿¡ ÁÁÀº ´ë¾ÈÀÌ µÉ ¼öµµ ÀÖ½À´Ï´Ù. ¹Ý¸é¿¡, ÁÖ·Î »ç¿ëµÈ ¹®ÀÚ°¡ 3¹ÙÀÌÆ® UTF-8 ¼ø¼­·Î È®ÀåÇÏ´Â ºñASCII ¹®ÀÚ(¿¹: Ç¥ÀÇ ¹®ÀÚ)ÀÏ °æ¿ì, ¸ðµç UCS-2 ¹®ÀÚ°¡ UTF-8 Çü½Ä¿¡¼­ »óÀÀÇÏ´Â °¢ ¹®ÀÚ¿¡ ´ëÇØ 3¹ÙÀÌÆ®º¸´Ù´Â ½ÇÁ¦·Î 2¹ÙÀÌÆ®¸¦ ÇÊ¿ä·Î Çϱ⠶§¹®¿¡ UCS-2 ±×·¡ÇÈ ¹®ÀÚ¿­ Çü½ÄÀÌ ´õ ÁÁÀº ´ë¾ÈÀÌ µÉ ¼ö ÀÖ½À´Ï´Ù.

MBCS ȯ°æ¿¡¼­ LENGTH, SUBSTR, POSSTR, MAX, MIN µî°ú °°ÀÌ ¹®ÀÚ¿­¿¡ ´ëÇØ ÀÛµ¿ÇÏ´Â SQL ½ºÄ®¶ó ÇÔ¼ö´Â "¹®ÀÚ" ¼öº¸´Ù´Â "¹ÙÀÌÆ®" ¼ö¿¡ ´ëÇØ ÀÛµ¿ÇÕ´Ï´Ù. ÀÌ ÀÛµ¿Àº UCS-2 µ¥ÀÌÅͺ£À̽º¿¡¼­ µ¿ÀÏÇÏ°Ô ¼öÇàµÇÁö¸¸, USC-2 µ¥ÀÌÅͺ£À̽º¿¡ ´ëÇÑ ¿ÀÇÁ¼Â°ú ±æÀ̸¦ ÁöÁ¤ÇÒ ¶§ ƯÈ÷ ÁÖÀÇÇØ¾ß ÇÕ´Ï´Ù. ¿Ö³ÄÇϸé, ÀÌµé °ªÀÌ Ç×»ó µ¥ÀÌÅͺ£À̽º ÄÚµå ÆäÀÌÁöÀÇ ¹®¸Æ¿¡ Á¤ÀǵDZ⠶§¹®ÀÔ´Ï´Ù. Áï, UCS-2 µ¥ÀÌÅͺ£À̽ºÀÇ °æ¿ì ¾Æ ¿ÀÇÁ¼ÂÀº UTF-8¿¡ Á¤ÀǵǾî¾ß ÇÕ´Ï´Ù. ÀϺΠ1¹ÙÀÌÆ® ¹®ÀÚ°¡ UTF-8¿¡¼­ 2¹ÙÀÌÆ® ÀÌ»óÀ» ¿ä±¸Çϱ⠶§¹®¿¡ 1¹ÙÀÌÆ® µ¥ÀÌÅͺ£À̽º¿¡ ´ëÇØ À¯È¿ÇÑ SUBSTR »öÀÎÀÌ UCS-2 µ¥ÀÌÅͺ£À̽º¿¡ ´ëÇØ¼­´Â À¯È¿ÇÏÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù. ºÎÁ¤È®ÇÑ »öÀÎÀ» ÁöÁ¤ÇÒ °æ¿ì, SQLCODE -191(SQLSTATE 22504) ¿À·ù°¡ ¹ß»ýÇÕ´Ï´Ù. SQL ÂüÁ¶¼­¿¡¼­ ÀÌ ÇÔ¼öµéÀÇ ÀÛµ¿¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ³»¿ëÀ» ÂüÁ¶ÇϽʽÿÀ.

SQL CHAR µ¥ÀÌÅÍ À¯ÇüÀº »ç¿ëÀÚ ÇÁ·Î±×·¥¿¡¼­ C ¾ð¾îÀÇ char µ¥ÀÌÅÍ À¯Çü¿¡ ÀÇÇØ Áö¿øµË´Ï´Ù. SQL GRAPHIC µ¥ÀÌÅÍ À¯ÇüÀº »ç¿ëÀÚ ÇÁ·Î±×·¥¿¡¼­ sqldbchar¿¡ ÀÇÇØ Áö¿øµË´Ï´Ù. UCS-2 µ¥ÀÌÅͺ£À̽ºÀÇ °æ¿ì, sqldbchar µ¥ÀÌÅͰ¡ Ç×»ó ºò¿£µð¾È(Å«¹ÙÀÌÆ® ¸ÕÀú) Çü½ÄÀ¸·Î µÇ¾î ÀÖ´Ù´Â °ÍÀ» ÁÖÁöÇϽʽÿÀ. ÀÀ¿ëÇÁ·Î±×·¥ÀÌ UCS-2 µ¥ÀÌÅͺ£À̽º¿¡ ¿¬°áµÉ ¶§, ¹®ÀÚ¿­ µ¥ÀÌÅÍ´Â DB2 UDB¿¡ ÀÇÇØ ÀÀ¿ëÇÁ·Î±×·¥ ÄÚµå ÆäÀÌÁö¿Í UTF-8 »çÀÌ¿¡¼­ º¯È¯µÇÁö¸¸, ±×·¡ÇÈ ¹®ÀÚ¿­ µ¥ÀÌÅÍ´Â Ç×»ó UCS-2·Î µÇ¾î ÀÖ½À´Ï´Ù.

½Äº°ÀÚ

UCS-2 µ¥ÀÌÅͺ£À̽º¿¡¼­ ¸ðµç ½Äº°ÀÚ´Â ´ÙÁß ¹ÙÀÌÆ® UTF-8ÀÔ´Ï´Ù. µû¶ó¼­, DB2 UDB°¡ È®Àå ¹®ÀÚ ¼¼Æ®(¿¹: °­Á¶ ¹®ÀÚ ¶Ç´Â ´ÙÁß ¹ÙÀÌÆ® ¹®ÀÚ)¿¡ ÀÖ´Â ¹®ÀÚ »ç¿ëÀ» Çã¿ëÇÑ ½Äº°ÀÚ¿¡ ¸ðµç UCS-2 ¹®ÀÚ¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ºÎ·Ï A, À̸§ ÁöÁ¤ ±ÔÄ¢¿¡¼­ ¾î¶² ½Äº°ÀÚ°¡ È®Àå ¹®ÀÚÀÇ »ç¿ëÀ» Çã¿ëÇϴ°¡¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ³»¿ëÀ» ÂüÁ¶ÇϽʽÿÀ.

Ŭ¶óÀÌ¾ðÆ®´Â SBCS ¶Ç´Â MVCS ȯ°æÀÌ Áö¿øÇÏ´Â ¸ðµç ¹®ÀÚ¸¦ ÀÔ·ÂÇÒ ¼ö ÀÖÀ¸¸ç, ½Äº°ÀÚ¿¡ ÀÖ´Â ¸ðµç ¹®ÀÚ´Â µ¥ÀÌÅͺ£À̽º °ü¸® ÇÁ·Î±×·¥¿¡ ÀÇÇØ UTF-8·Î º¯È¯µË´Ï´Ù. UCS-2 µ¥ÀÌÅͺ£À̽º¿¡ ´ëÇÑ ½Äº°ÀÚ¿¡ ÀÚ±¹¾î ¹®ÀÚ¸¦ ÁöÁ¤ÇÒ ¶§ µÎ °¡Áö Á¡À» °í·ÁÇØ¾ß ÇÕ´Ï´Ù.

UCS-2 ¸®ÅÍ·²

UCS-2 ¸®ÅÍ·²Àº µÎ °¡Áö ¹æ¹ýÀ¸·Î ÁöÁ¤µÉ ¼ö ÀÖ½À´Ï´Ù.

¸í·ÉÇà 󸮱â(CLP)¸¦ »ç¿ëÇÒ ¶§, Áö¿ª ÀÀ¿ëÇÁ·Î±×·¥ ÄÚµå ÆäÀÌÁö¿¡ UCS-2 ¹®ÀÚ°¡ ÀÖÀ» °æ¿ì¿¡´Â ù¹øÂ° ¹æ¹ýÀÌ º¸´Ù ½±½À´Ï´Ù(¿¹¸¦ µé¾î, ÄÚµå ÆäÀÌÁö 850À» »ç¿ëÇÏ´Â Å͹̳ηκÎÅÍ ÄÚµå ÆäÀÌÁö 850ÀÚ¸¦ ÀÔ·ÂÇÒ °æ¿ì). µÎ¹øÂ° ¹æ¹ýÀº ÀÀ¿ëÇÁ·Î±×·¥ ÄÚµå ÆäÀÌÁö ·¹ÆÛÅ丮 ¹Û¿¡ ÀÖ´Â ¹®ÀÚ¿¡ ´ëÇØ »ç¿ëµÇ¾î¾ß ÇÕ´Ï´Ù(¿¹¸¦ µé¾î, ÄÚµå ÆäÀÌÁö 850À» »ç¿ëÇÏ´Â Å͹̳ηκÎÅÍ ÀϺ»¾î ¹®ÀÚ¸¦ ÁöÁ¤ÇÒ °æ¿ì).

UCS-2 µ¥ÀÌÅͺ£À̽º¿¡¼­ÀÇ ÆÐÅÏ ÀÏÄ¡

ÆÐÅÏ ÀÏÄ¡´Â ±âÁ¸ MBCS µ¥ÀÌÅͺ£À̽ºÀÇ ÀÛµ¿ÀÌ UCS-2 µ¥ÀÌÅͺ£À̽ºÀÇ ÀÛµ¿°ú Á¶±Ý ´Ù¸¥ ¿µ¿ªÀÔ´Ï´Ù.

DB2 UDBÀÇ MBCS µ¥ÀÌÅͺ£À̽ºÀÇ °æ¿ì, ÇöÀç ÀÛµ¿Àº ´ÙÀ½°ú °°½À´Ï´Ù. ÀÏÄ¡ Ç¥Çö½Ä(match-expression)¿¡ MBCS µ¥ÀÌÅͰ¡ µé¾î ÀÖÀ» °æ¿ì, ÆÐÅÏÀº SBCS¿Í MBCS ¹®ÀÚ¸¦ ¸ðµÎ Æ÷ÇÔÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ÆÐÅÏ¿¡ Àִ Ư¼ö ¹®ÀÚ´Â ´ÙÀ½°ú °°ÀÌ ÇØ¼®µË´Ï´Ù.

ÀÏÄ¡ Ç¥Çö½Ä¿¡ ±×·¡ÇÈ ¹®ÀÚ¿­ DBCS µ¥ÀÌÅͰ¡ ÀÖÀ» °æ¿ì, ÀÌ Ç¥Çö½ÄÀº DBCS ¹®ÀÚ¸¸ Æ÷ÇÔÇÕ´Ï´Ù. ÀÌ ÆÐÅÏ¿¡ Àִ Ư¼ö ¹®ÀÚ´Â ´ÙÀ½°ú °°ÀÌ ÇØ¼®µË´Ï´Ù.

UCS-2 µ¥ÀÌÅͺ£À̽º¿¡¼­, "1¹ÙÀÌÆ®" ¹× "2¹ÙÀÌÆ®" ¹®ÀÚ »çÀÌ¿¡ ½ÇÁ¦ÀûÀ¸·Î ¾Æ¹« ±¸º°ÀÌ ¾ø½À´Ï´Ù. ¸ðµç UCS-2 ¹®ÀÚ´Â 2¹ÙÀÌÆ®¸¦ Â÷ÁöÇÕ´Ï´Ù. UTF-8 Çü½ÄÀÌ UCS-2 ¹®ÀÚÀÇ "È¥ÇÕ ¹ÙÀÌÆ®" ¾ÏȣȭÀ̱â´Â ÇÏÁö¸¸, UTF-8¿¡ ÀÖ´Â SBCS¿Í MBCS ¹®ÀÚ°£¿¡ ½ÇÁ¦ÀûÀÎ ±¸º°Àº ¾ø½À´Ï´Ù. UTF-8 Çü½Ä¿¡¼­ÀÇ ¹ÙÀÌÆ® ¼ö¿Í °ü°è¾øÀÌ ¸ðµç ¹®ÀÚ´Â UCS-2 ¹®ÀÚÀÔ´Ï´Ù. ¹®ÀÚ¿­ ¶Ç´Â ±×·¡ÇÈ ¹®ÀÚ¿­ Ç¥Çö½ÄÀ» ÁöÁ¤ÇÒ ¶§, ¹ØÁÙÀº ÇϳªÀÇ UCS-2 ¹®ÀÚ¸¦ ÂüÁ¶Çϰí, ÆÛ¼¾Æ®´Â 0 ÀÌ»óÀÇ UCS-2 ¹®ÀÚ¿­À» ÂüÁ¶ÇÕ´Ï´Ù.

Ŭ¶óÀ̾ðÆ®Ãø¿¡¼­, ¹®ÀÚ¿­ Ç¥Çö½ÄÀº Ŭ¶óÀ̾ðÆ®ÀÇ ÄÚµå ÆäÀÌÁö¿¡ ÀÖÀ¸¸ç, µ¥ÀÌÅͺ£À̽º °ü¸® ÇÁ·Î±×·¥¿¡ ÀÇÇØ UTF-8·Î º¯È¯µË´Ï´Ù. SBCS Ŭ¶óÀÌ¾ðÆ® ÄÚµå ÆäÀÌÁö´Â DBCS ÆÛ¼¾Æ® ºÎÈ£ ¶Ç´Â DBCS ¹ØÁÙÀ» °¡Áö°í ÀÖÁö ¾ÊÁö¸¸, Áö¿øµÇ´Â ¸ðµç ÄÚµå ÆäÀÌÁö¿¡ 1¹ÙÀÌÆ® ÆÛ¼¾Æ® ºÎÈ£(U+0025¿¡ ÇØ´ç)¿Í 1¹ÙÀÌÆ® ¹ØÁÙ(U+005F¿¡ ÇØ´ç)ÀÌ µé¾î ÀÖ½À´Ï´Ù. UCS-2 µ¥ÀÌÅͺ£À̽º¿¡ ´ëÇÑ Æ¯¼ö ¹®ÀÚÀÇ ÇØ¼®Àº ´ÙÀ½°ú °°½À´Ï´Ù.

DBCS ÄÚµå ÆäÀÌÁö´Â DBCS ÆÛ¼¾Æ® ºÎÈ£(U+FF05¿¡ ÇØ´ç) ¹× DBCS ¹ØÁÙ(U+FF3F¿¡ ÇØ´ç)µµ Áö¿øÇÕ´Ï´Ù. ÀÌµé ¹®ÀÚ´Â UCS-2 µ¥ÀÌÅͺ£À̽º¿¡ ´ëÇØ Ưº°ÇÑ Àǹ̸¦ °®Áö ¾Ê½À´Ï´Ù.

ÇÑ ¹®ÀÚ¸¦ ¹ØÁÙ ¹× ÆÛ¼¾Æ® ºÎÈ£ ¹®ÀÚÀÇ Æ¯¼öÇÑ Àǹ̸¦ ¼öÁ¤Çϱâ À§ÇØ »ç¿ëµÇµµ·Ï ÁöÁ¤ÇÏ´Â ¼±ÅÃÀû "escape-Ç¥Çö½Ä"ÀÇ °æ¿ì, ASCII ¹®ÀÚ ¶Ç´Â 2¹ÙÀÌÆ® UTF-8 ¼ø¼­·Î È®ÀåÇÏ´Â ¹®ÀÚ¸¸ Áö¿øµË´Ï´Ù. 3¹ÙÀÌÆ® UTF-8 °ªÀ¸·Î È®ÀåÇÏ´Â Escape ¹®ÀÚ¸¦ ÁöÁ¤ÇÒ °æ¿ì, ¿À·ù ¸Þ¼¼Áö¸¦ ¹Þ°Ô µË´Ï´Ù(¿À·ù SQL0130N, SQLSTATE 22019).

°¡Á®¿À±â/³»º¸³»±â/·Îµå °í·Á»çÇ×

ÀÌ Àý¿¡ ¼³¸íµÈ ´ë·Î UCS-2 µ¥ÀÌÅͺ£À̽º¿¡ ´ëÇØ DEL, ASC ¹× PC/IXF ÆÄÀÏ Çü½ÄÀÌ Áö¿øµË´Ï´Ù. WSF Çü½ÄÀº Áö¿øµÇÁö ¾Ê½À´Ï´Ù.

UCS-2 µ¥ÀÌÅͺ£À̽º¿¡¼­ ASCII ±¸ºÐ(DEL) ÆÄÀÏ·Î ³»º¸³¾ ¶§, ¸ðµç ¹®ÀÚ µ¥ÀÌÅͰ¡ ÀÀ¿ëÇÁ·Î±×·¥ ÄÚµå ÆäÀÌÁö·Î º¯È¯µË´Ï´Ù. ¹®ÀÚ¿­°ú ±×·¡ÇÈ ¹®ÀÚ¿­ µ¥ÀÌÅÍ´Â ¸ðµÎ Ŭ¶óÀ̾ðÆ®ÀÇ µ¿ÀÏÇÑ SBCS ¶Ç´Â MBCS ÄÚµå ÆäÀÌÁö·Î º¯È¯µË´Ï´Ù. À̰ÍÀº ¸ðµç µ¥ÀÌÅͺ£À̽ºÀÇ ³»º¸³»±â¿¡ ´ëÇØ ¿¹»óµÈ ÀÛµ¿À̸ç, Àüü ±¸ºÐ ASCII ÆÄÀÏÀÌ ÇѰ³ÀÇ ÄÚµå ÆäÀÌÁö¸¸ °¡Áú ¼ö Àֱ⠶§¹®¿¡ º¯°æÇÒ ¼ö ¾ø½À´Ï´Ù. µû¶ó¼­, ±¸ºÐµÈ ASCII ÆÄÀÏÀ» ³»º¸³¾ °æ¿ì, ÀÀ¿ëÇÁ·Î±×·¥ ÄÚµå ÆäÀÌÁö¿¡ ÀÌ¹Ì ÀÖ´Â UCS-2 ¹®ÀÚ¸¸ ÀúÀåµË´Ï´Ù. ´Ù¸¥ ¹®ÀÚ´Â ÀÀ¿ëÇÁ·Î±×·¥ ÄÚµå ÆäÀÌÁö¿¡ ´ëÇÑ ±âº» ´ëü ¹®ÀÚ·Î ±³Ã¼µË´Ï´Ù. UTF-8 Ŭ¶óÀ̾ðÆ®(ÄÚµå ÆäÀÌÁö 1208)ÀÇ °æ¿ì, ¸ðµç UCS-2 ¹®ÀÚ°¡ UTF-8 Ŭ¶óÀÌ¾ðÆ®¿¡ ÀÇÇØ Áö¿øµÇ¹Ç·Î µ¥ÀÌÅͰ¡ À¯½ÇµÇÁö ¾Ê½À´Ï´Ù.

ASCII ÆÄÀÏ(DEL ¶Ç´Â ASC)¿¡¼­ UCS-2 µ¥ÀÌÅͺ£À̽º·Î °¡Á®¿Ã ¶§, ¹®ÀÚ¿­ µ¥ÀÌÅÍ´Â ÀÀ¿ëÇÁ·Î±×·¥ ÄÚµå ÆäÀÌÁö¿¡¼­ UTF-8·Î º¯È¯µÇ°í, ±×·¡ÇÈ ¹®ÀÚ¿­ µ¥ÀÌÅÍ´Â ÀÀ¿ëÇÁ·Î±×·¥ ÄÚµå ÆäÀÌÁö¿¡¼­ UCS-2·Î º¯È¯µË´Ï´Ù. À̶§ À¯½ÇµÇ´Â µ¥ÀÌÅÍ´Â ¾ø½À´Ï´Ù. ´Ù¸¥ ÄÚµå ÆäÀÌÁö ¾Æ·¡¿¡ ÀúÀåµÇ¾î ÀÖ´Â ASCII µ¥ÀÌÅ͸¦ °¡Á®¿À·Á ÇÒ °æ¿ì, IMPORT ¸í·ÉÀ» ¹ßÇàÇϱâ Àü¿¡ µ¥ÀÌÅÍ ÆÄÀÏ ÄÚµå ÆäÀÌÁö¸¦ º¯°æÇØ¾ß ÇÕ´Ï´Ù. À̸¦ ¼öÇàÇϱâ À§ÇÑ ÇÑ °¡Áö ¹æ¹ýÀº DB2CODEPAGE¸¦ ASCII µ¥ÀÌÅÍ ÆÄÀÏÀÇ ÄÚµå ÆäÀÌÁö·Î ¼³Á¤ÇÏ´Â °ÍÀÔ´Ï´Ù.

SBCS ¹× MBCS Ŭ¶óÀÌ¾ðÆ®¿¡ ´ëÇÑ À¯È¿ ASCII ºÐ¸® ¹®ÀÚÀÇ ¹üÀ§´Â À̵é Ŭ¶óÀÌ¾ðÆ®¿¡ ´ëÇØ DB2 UDB°¡ ÇöÀç Áö¿øÇÏ´Â ¹üÀ§¿Í µ¿ÀÏÇÕ´Ï´Ù. UTF-8 Ŭ¶óÀÌ¾ðÆ®¿¡ ´ëÇÑ À¯È¿ ºÐ¸® ¹®ÀÚÀÇ ¹üÀ§´Â 0x01¿¡¼­ ox7FÀ̸ç, ÀÏ¹Ý Á¦ÇÑ»çÇ×ÀÌ Àû¿ëµË´Ï´Ù. À̵é Á¦ÇÑ»çÇ×ÀÇ ¿ÏÀüÇÑ ¸ñ·ÏÀº µ¥ÀÌÅÍ À̵¿ À¯Æ¿¸®Æ¼ ¾È³» ¹× ÂüÁ¶¼­¿¡ ÀÖ´Â "°¡Á®¿À±â/³»º¸³»±â/·Îµå À¯Æ¿¸®Æ¼ ÆÄÀÏ Çü½Ä" ºÎ·ÏÀ» ÂüÁ¶ÇϽʽÿÀ.

UCS-2 µ¥ÀÌÅͺ£À̽º¿¡¼­ PC/IXF ÆÄÀÏ·Î ³»º¸³¾ ¶§, ¹®ÀÚ¿­ µ¥ÀÌÅʹ Ŭ¶óÀ̾ðÆ®ÀÇ SBCS/MBCS ÄÚµå ÆäÀÌÁö·Î º¯È¯µË´Ï´Ù. ±×·¡ÇÈ ¹®ÀÚ¿­ µ¥ÀÌÅÍ´Â º¯È¯µÇÁö ¾ÊÀ¸¸ç UCS-2(ÄÚµå ÆäÀÌÁö 1200)¿¡ ÀúÀåµË´Ï´Ù. À̶§ À¯½ÇµÇ´Â µ¥ÀÌÅÍ´Â ¾ø½À´Ï´Ù.

PC/IXF ÆÄÀÏ¿¡¼­ UCS-2 µ¥ÀÌÅͺ£À̽º·Î °¡Á®¿Ã ¶§, ¹®ÀÚ¿­ µ¥ÀÌÅÍ´Â PC/IXF Çì´õ¿¡ ÀúÀåµÈ SBCS/MBCS ÄÚµå ÆäÀÌÁö¿¡ ÀÖ´Ù°í °£Áֵǰí, ±×·¡ÇÈ ¹®ÀÚ¿­ µ¥ÀÌÅÍ´Â PC/IXF Çì´õ¿¡ ÀúÀåµÈ DBCS ÄÚµå ÆäÀÌÁö¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ. ¹®ÀÚ¿­ µ¥ÀÌÅÍ´Â °¡Á®¿À±â À¯Æ¿¸®Æ¼¿¡ ÀÇÇØ PC/IXF Çì´õ¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â ÄÚµå ÆäÀÌÁö¿¡¼­ Ŭ¶óÀ̾ðÆ®ÀÇ ÄÚµå ÆäÀÌÁö·Î º¯È¯µÈ ´ÙÀ½, Ŭ¶óÀÌ¾ðÆ® ÄÚµå ÆäÀÌÁö¿¡¼­ UTF-8(INSERT¹® »ç¿ëÀ¸·Î)·Î º¯È¯µË´Ï´Ù. ±×·¡ÇÈ ¹®ÀÚ¿­ µ¥ÀÌÅÍ´Â °¡Á®¿À±â À¯Æ¿¸®Æ¼¿¡ ÀÇÇØ PC/IXF Çì´õ¿¡ ÁöÁ¤µÇ¾î ÀÖ´Â DBCS ÄÚµå ÆäÀÌÁö¿¡¼­ Á÷Á¢ UCS-2(ÄÚµå ÆäÀÌÁö 1200)·Î º¯È¯µË´Ï´Ù.

·Îµå À¯Æ¿¸®Æ¼´Â µ¥ÀÌÅ͸¦ Á÷Á¢ µ¥ÀÌÅͺ£À̽º¿¡ ¹èÄ¡Çϰí, ±âº»°ªÀ¸·Î, ASC ¶Ç´Â DEL ÆÄÀÏ¿¡ ÀÖ´Â µ¥ÀÌÅͰ¡ µ¥ÀÌÅͺ£À̽ºÀÇ ÄÚµå ÆäÀÌÁö¿¡ ÀÖ´Ù°í °£ÁÖÇÕ´Ï´Ù. µû¶ó¼­, ±âº»°ªÀ¸·Î ASCII ÆÄÀÏ¿¡ ´ëÇØ ÄÚµå ÆäÀÌÁö º¯È¯ÀÌ ÀϾÁö ¾Ê½À´Ï´Ù. µ¥ÀÌÅÍ ÆÄÀÏÀÇ ÄÚµå ÆäÀÌÁö°¡ ¸í½ÃÀûÀ¸·Î ÁöÁ¤µÇ¾î ÀÖÀ¸¸é(codepage ¼öÁ¤ÀÚ¸¦ »ç¿ëÇÏ¿©), ·Îµå À¯Æ¿¸®Æ¼´Â µ¥ÀÌÅ͸¦ ·ÎµåÇϱâ Àü¿¡ ÀÌ Á¤º¸¸¦ »ç¿ëÇÏ¿© ÁöÁ¤ ÄÚµå ÆäÀÌÁö¿¡¼­ µ¥ÀÌÅͺ£À̽º ÄÚµå ÆäÀÌÁö·Î º¯È¯ÇÕ´Ï´Ù. PC/IXF ÆÄÀÏÀÇ °æ¿ì, ·Îµå À¯Æ¿¸®Æ¼´Â Ç×»ó IXF Çì´õ¿¡ ÁöÁ¤µÈ ÄÚµå ÆäÀÌÁö¿¡¼­ µ¥ÀÌÅͺ£À̽º ÄÚµå ÆäÀÌÁö(CHARÀÇ °æ¿ì 1208, GRAPHICÀÇ °æ¿ì 1200)·Î º¯È¯ÇÕ´Ï´Ù.

DBCLOB ÆÄÀÏÀÇ ÄÚµå ÆäÀÌÁö´Â Ç×»ó UCS-2ÀÇ 1200ÀÔ´Ï´Ù. CLOG ÆÄÀÏÀÇ ÄÚµå ÆäÀÌÁö´Â °¡Á®¿À±â, ·Îµå ¶Ç´Â ³»º¸³»±â ÁßÀÎ µ¥ÀÌÅÍ ÆÄÀÏÀÇ ÄÚµå ÆäÀÌÁö¿Í µ¿ÀÏÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, PC/IXF Çü½ÄÀ» »ç¿ëÇÏ¿© ·ÎµåÇϰųª °¡Á®¿Ã °æ¿ì, CLOB ÆÄÀÏÀº PC/IXF Çì´õ°¡ ÁöÁ¤ÇÏ´Â ÄÚµå ÆäÀÌÁö¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ. DBCLOB ÆÄÀÏÀÌ ASC ¶Ç´Â DEL Çü½ÄÀÏ °æ¿ì, CLOB µ¥ÀÌÅÍ´Â µ¥ÀÌÅͺ£À̽ºÀÇ ÄÚµå ÆäÀÌÁö¿¡ ÀÖ´Ù°í °£ÁֵǸç(±×·¸Áö ¾Ê°í codepage ¼öÁ¤ÀÚ¸¦ »ç¿ëÇÏ¿© ¸í½ÃÀûÀ¸·Î ÁöÁ¤ÇÑ °æ¿ì¸¦ Á¦¿ÜÇϰí´Â), °¡Á®¿À±â À¯Æ¿¸®Æ¼´Â Ŭ¶óÀÌ¾ðÆ® ÀÀ¿ëÇÁ·Î±×·¥ ÄÚµå ÆäÀÌÁö¿¡ ÀÖ´Ù°í °£Áֵ˴ϴÙ.

nochecklengths ¼öÁ¤ÀÚ´Â Ç×»ó UCS-2 µ¥ÀÌÅͺ£À̽º¿ëÀ¸·Î ÁöÁ¤µÇ´Âµ¥, ±× ÀÌÀ¯´Â ´ÙÀ½°ú °°½À´Ï´Ù.

µ¥ÀÌÅÍ À̵¿ À¯Æ¿¸®Æ¼ ¾È³» ¹× ÂüÁ¶¼­¿¡¼­ ·Îµå, °¡Á®¿À±â, ³»º¸³»±â À¯Æ¿¸®Æ¼¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ³»¿ëÀ» ÂüÁ¶ÇϽʽÿÀ.

ºñȣȯ¼º

UCS-2 µ¥ÀÌÅͺ£À̽º¿¡ ¿¬°áµÈ ÀÀ¿ëÇÁ·Î±×·¥¿¡¼­ ±×·¡ÇÈ ¹®ÀÚ¿­ µ¥ÀÌÅÍ´Â Ç×»ó UCS-2(ÄÚµå ÆäÀÌÁö 1200)ÀÔ´Ï´Ù. ºñUCS-2 µ¥ÀÌÅͺ£À̽º¿¡ ¿¬°áµÈ ÀÀ¿ëÇÁ·Î±×·¥ÀÇ °æ¿ì, ±×·¡ÇÈ ¹®ÀÚ¿­ µ¥ÀÌÅÍ´Â ÀÌ ÀÀ¿ëÇÁ·Î±×·¥ DBCS ÄÚµå ÆäÀÌÁö¿¡ Àְųª, ÀÀ¿ëÇÁ·Î±×·¥ ÄÚµå ÆäÀÌÁö°¡ SBCSÀÏ °æ¿ì¿¡´Â ±×·¡ÇÈ ¹®ÀÚ¿­ µ¥ÀÌÅͰ¡ Çã¿ëµÇÁö ¾Ê½À´Ï´Ù. ¿¹¸¦ µé¾î, 932 Ŭ¶óÀÌ¾ðÆ®°¡ ÀϺ»¾îÀÇ ºñUCS-2 µ¥ÀÌÅͺ£À̽º¿¡ ¿¬°áµÇ¾î ÀÖÀ» ¶§, ±×·¡ÇÈ ¹®ÀÚ¿­ µ¥ÀÌÅÍ´Â ÄÚµå ÆäÀÌÁö 301¿¡ ÀÖ½À´Ï´Ù. 932 Ŭ¶óÀÌ¾ðÆ® ÀÀ¿ëÇÁ·Î±×·¥ÀÌ UCS-2 µ¥ÀÌÅͺ£À̽º¿¡ ¿¬°áµÈ °æ¿ì, ±×·¡ÇÈ ¹®ÀÚ¿­ µ¥ÀÌÅÍ´Â UCS-2ÀÔ´Ï´Ù.


[ ÆäÀÌÁöÀÇ ¸Ç À§ | ÀÌÀü ÆäÀÌÁö | ´ÙÀ½ ÆäÀÌÁö | ¸ñÂ÷ | »öÀÎ ]