JavaScript¤¬Ìµ¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£
¤³¤Î¾õÂ֤ǤϰìÉô¤Î¾ðÊó¤¬É½¼¨¤µ¤ì¤º¡¢¤¹¤Ù¤Æ¤Îµ¡Ç½¤òÍøÍѤ¹¤ë¤³¤È¤¬¤Ç¤¤Þ¤»¤ó¡£
Oracle ¤ÇÆüËܸì¤ò¼è¤ê°·¤¦¤È¤¤Îʸ»ú¥³¡¼¥É
¥ª¥é¥¯¥ë¤Î CHAR ¤ª¤è¤Ó VARCHAR2 ¤Ê¤É¤ËʬÎव¤ì¤ëɸ½àʸ»úÎ󷿤ǻÈÍѤµ¤ì¤ëʸ»ú¥³¡¼¥É¤ò Database Characterset ¤È¸Æ¤Ó¡¢
NCHAR ¤ª¤è¤Ó NVARCHAR2 ¤Ê¤É¤Î³Æ¹ñ¸ìʸ»úÎ󷿤ǻÈÍѤµ¤ì¤ëʸ»ú¥³¡¼¥É¤ò National Characterset ¤È¸Æ¤Ö¡£
¥Þ¥ë¥Á¥Ð¥¤¥È¡¦¥¥ã¥é¥¯¥¿¥»¥Ã¥È¡Ê¥À¥Ö¥ë¥Ð¥¤¥È¡¦¥¥ã¥é¥¯¥¿¥»¥Ã¥È¡Ë
ÆüËܤò´Þ¤à¥¢¥¸¥¢·÷¤Ê¤É¤Ë¤ª¤¤¤Æ»ÈÍѤµ¤ì¤ë¥¥ã¥é¥¯¥¿¥»¥Ã¥È¤Ï¡¢Ê¸»ú¼ï¤¬Â¿¤¯ 1 ¥Ð¥¤¥È¤Ç¤Ïɽ¸½ÉÔ²Äǽ¤Ê¤¿¤á 2¥Ð¥¤¥È°Ê¾å¤Çɽ¸½¤µ¤ì¤Æ¤¤¤ë¡£
°ìÈÌŪ¤ËÁ´³Ñʸ»ú¡á¥Þ¥ë¥Á¥Ð¥¤¥È¡¦¥¥ã¥é¥¯¥¿¤ÈÏ䷤Ƥ¤¤ë¤³¤È¤â¿¤¤¤¬¸·Ì©¤Ë¤Ï´Ö°ã¤¤¤È¤Ê¤ë¡£
(¤½¤ì¤Ç¸í²ò¤·¤¿(¤µ¤ì¤¿)¤³¤È¤Ï̵¤¯¡¢ÌäÂê¤Ë¤Ê¤Ã¤¿¤³¤È¤â¤Ê¤¤¤Î¤ÇÂç¾æÉפ«¤È»×¤¦)
°Ê²¼¤ÏÆüËܸì¤ò¥µ¥Ý¡¼¥È¤¹¤ë¥¥ã¥é¥¯¥¿¥»¥Ã¥È¤ÎÂåɽŪ¤Ê¤â¤Î
±Ñ¿ô»ú¡¢¥¹¥Ú¡¼¥¹,µ¹æ(_,$,#,¤Ê¤É)¤Ï 1 ¥Ð¥¤¥È(UTF-16 ¤ÏÎã³°)
Ⱦ³Ñ¥«¥¿¥«¥Ê¡¢¤Ò¤é¤¬¤Ê¡¢´Á»ú¤Ê¤É¤ÎÁ´³Ñʸ»ú¤Ï 2 ¥Ð¥¤¥È°Ê¾å¤Ç¹½À®¤µ¤ì¤ë¡£
Shift_JIS ¤Î¾ì¹ç¡¢È¾³Ñ¥«¥¿¥«¥Ê¤Ï 1 ¥Ð¥¤¥È¤Î¤¿¤á¡¢Â¾¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Î EUC ´Ä¶¤Ë¥Ç¡¼¥¿¤ò°Ü¿¢¤¹¤ë¾ì¹ç¤Ë¤è¤¯ÌäÂê¤Ë¤Ê¤ë¡£
Database Characterset ¡Êʸ»ú¥³¡¼¥É¡Ë NLS ɽµ Shift_JIS 1¡Á2¥Ð¥¤¥È JA16SJISTILDE (9iR2°Ê¹ß) JA16SJIS EUC-JP 1¡Á2(3) ¥Ð¥¤¥È*2 JA16EUCTILDE (9iR2°Ê¹ß) JA16EUC UTF-8 1¡Á3 ¥Ð¥¤¥È*3 (or 6 ¥Ð¥¤¥È=3¡ß2¢¨) ¢¨ AL32UTF8 ¤ÇÊä½õʸ»ú »²¾È 1 ¥Ð¥¤¥È:ASCII 2 ¥Ð¥¤¥È:Èó´Á»ú¡¢µ¹æ¡¢¥®¥ê¥·¥ãʸ»ú¡Ê¦¸¦Á¦Â¡Ä¡Ë¡¢¥í¥·¥¢Ê¸»ú¡Ê§¡§¢¡Ä¡Ë 3 ¥Ð¥¤¥È:Ⱦ³Ñ¥«¥Ê¡¢¤Ò¤é¤¬¤Ê¡¢´Á»ú AL32UTF8 (UTF8 ¤Ïµì·Á¼° AL32UTF8¤ò»È¤¦) Unicode 3.2 Unicode 4.0 ¥µ¥Ý¡¼¥È Unicode 5.0 ¥µ¥Ý¡¼¥È UTF-EBCDIC 1¡Á4 ¥Ð¥¤¥È UTFE
National Characterset*4 NLS ɽµ UTF-8 1¡Á3 ¥Ð¥¤¥È(UTF8 ¤ÏUnicode 3.0¤Þ¤Ç) ÆüËܸìʸ»ú¤Ï 3 ¥Ð¥¤¥È ÆÃ¼ìʸ»ú 4 ¥Ð¥¤¥È(Oracle 10g ̤¥µ¥Ý¡¼¥È) 5 ¥Ð¥¤¥È°Ê¾å¤Ï¤ï¤«¤ê¤Þ¤»¤ó¡£µ¬³Ê¾å¤À¤±? UTF8 UTF-16 2 ¥Ð¥¤¥È(¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È¡¢ÆüËܸì) 4 ¥Ð¥¤¥È(ÆÃ¼ìʸ»ú) AL16UTF16 Unicode 5.0 ¥µ¥Ý¡¼¥È
¤½¤ì°Ê³°¤Îʸ»ú¥³¡¼¥É È÷¹Í UCS-2 2 ¥Ð¥¤¥È ¥Þ¥ë¥Á¥Ð¥¤¥È¡¦¥¥ã¥é¥¯¥¿¥»¥Ã¥È¤Î¾ì¹ç¤Ë CLOB ¤¬¥Ç¡¼¥¿³ÊǼ¤Ë»ÈÍѤ¹¤ë¥¥ã¥é¥¯¥¿¥»¥Ã¥È ¢Í ¥Ç¡¼¥¿·¿¤ÎÆâÉô·Á¼° Java ¤ä Win NT·Ï¤Î UNICODE UCS-4 4 ¥Ð¥¤¥È
AL32UTF8 ¤ÇÊä½õʸ»ú¡Ê4¥Ð¥¤¥È¤Îʸ»ú¡Ë¤Î°·¤¤ (JIS X 0213:2004 / Âè3¡¦4¿å½à´Á»ú)
Windows Vista ¤Ë¤è¤ë JIS X 0213:2004 ¥µ¥Ý¡¼¥È¤Ë¤è¤Ã¤Æ 4 ¥Ð¥¤¥Èʸ»ú¤ÎÌäÂ꤬¸²ºß²½¤¹¤ë²ÄǽÀ¤â¡Ä
Oracle 10g R1 ¤Ï 3 ¥Ð¥¤¥È¤Þ¤Ç¤Î Unicode 3.2
Oracle 10g R2 ¤«¤é AL32UTF32 ¤È AL16UTF16 ¤Ç Unicode 4.0 ¥µ¥Ý¡¼¥È
Oracle 11g ¤«¤é AL32UTF32 ¤È AL16UTF16 ¤Ç Unicode 5.0 ¥µ¥Ý¡¼¥È
¥Þ¥Ë¥å¥¢¥ë¾å¤Îɽµ¤Ç¤Ï(Oracle 10g R1 °ÊÁ°¤Þ¤Ç¡©¡Ë
UTF8 ¥Ç¡¼¥¿¥Ù¡¼¥¹¤ËÊä½õʸ»ú¤¬ÁÞÆþ¤µ¤ì¤Æ¤â¡¢¥Ç¡¼¥¿¥Ù¡¼¥¹Æâ¤Î¥Ç¡¼¥¿¤Ï
ÇË»¤·¤Þ¤»¤ó¡£ Êä½õʸ»ú¤Ï 6¥Ð¥¤¥È¤òÀê¤á¤ë 2¤Ä¤ÎÊ̸ĤΥ桼¥¶¡¼ÄêµÁʸ»ú
¤È¤·¤Æ½èÍý¤µ¤ì¤Þ¤¹¡£
¤È½ñ¤«¤ì¤Æ¤¤¤ë¡£¤Ä¤Þ¤ê 4¥Ð¥¤¥Èʸ»ú¤Ï 6¥Ð¥¤¥È¾ÃÈñ¤¹¤ë¤È¤¤¤¦¤³¤È¤Î¤è¤¦¤Ç¤¢¤ë¡£¡Ê¤Ä¤Þ¤ê AL32UTF8 ¤Ë¤Ï Oracle ¤Ë¤è¤ë³ÈÄ¥¤¬»Ü¤µ¤ì¤Æ¤¤¤ë¡£NCHAR ¤Î UTF8 ¤Ï¡©¡©¡©¡Ë
⤷¡¢Ì¤³Îǧ & TTC ¥ì¥¤¥ä ¡¢¥ß¥É¥ë¥¦¥§¥¢¤Î¥Ð¡¼¥¸¥ç¥ó¤Ë¤è¤Ã¤Æ¤ÏͽÁÛ³°¤Îưºî¤Ë¤Ê¤ë¤«¤â¤·¤ì¤Ê¤¤¡£
¥¯¥é¥¤¥¢¥ó¥È¡Ê¸ÜµÒ¡Ë¤¬ Windows Vista »ÈÍѤò²ò¶Ø¤·¤¿¸å¤ËȯÀ¸¤¬Í½ÁÛ¤µ¤ì¤ë¥¨¥é¡¼
Unicode UTF-16
Oracle ¤Ï UTF-16 ¤Î¤¦¤Á¤Ç UTF-16BE ¤Î¤ß¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤ë¡£
UTF-16LE(AL16UTF16LE) ¤ÏÊÑ´¹ÀìÍÑ¡Ê¢Í CONVERT ¡Ë¤Ë¸ºß¤¹¤ë¤¬ Database Characterset ¤ª¤è¤Ó National Characterset ¤ËÍøÍѤǤ¤Ê¤¤¡£
e-mail ¤ÇÎɤ¯ÍøÍѤµ¤ì¤ë ISO2022-JP ¤âÊÑ´¹ÀìÍѤΥ¥ã¥é¥¯¥¿¥»¥Ã¥È¤È¤·¤ÆÂ¸ºß¤¹¤ë¡£
Oracle Characterset Structure Word (byte) US7ASCII ASCII A ¦¸ ¸ì ¥¢¡ÊȾ³Ñ¡Ë 41 - - - UTF8 , AL32UTF8 UTF-8 A ¦¸ ¸ì ¥¢ 41 CE.A9 E8.AA.9E EF.BD.B1 AL16UTF16 UTF-16BE A ¦¸ ¸ì ¥¢ 00.41 03.A9 8A.9E FF.71 (UTF16)*5 UTF-16LE A ¦¸ ¸ì ¥¢ 41.00 A9.03 9E.8A 71.FF - UTF-32BE A ¦¸ ¸ì ¥¢ 00.00.00.41 00.00.03.A9 00.00.8A.9E 00.00.FF.71 UTF-32LE A ¦¸ ¸ì ¥¢ 41.00.00.00 A9.03.00.00 9E.8A.00.00 71.FF.00.00
BE(Big Endian):¥Ó¥Ã¥°¥¨¥ó¥Ç¥£¥¢¥ó(¥Ó¥Ã¥¯¥¤¥ó¥Ç¥£¥¢¥ó) ¥Ð¥¤¥È¥ª¡¼¥À
LE(Big Endian):¥ê¥È¥ë¥¨¥ó¥Ç¥£¥¢¥ó(¥ê¥È¥ë¥¤¥ó¥Ç¥£¥¢¥ó) ¥Ð¥¤¥È¥ª¡¼¥À
¤³¤ÎÍѸì¤ÎÀâÌÀ¤Ë¡¢¤¿¤Þ¡Á¤ËÂç¾®¤Î¥¤¥ó¥Ç¥£¥¢¥ó¤Î̱²°áÁõ¤ò¤Ä¤±¤¿ÁÞ³¨¤¬¤¢¤ë¤³¤È¤¬¤¢¤ê¤Þ¤¹¤¬
¤¢¤ì¤Ï°ú¤Ã³Ý¤±¤Ç¤¹¡£Endian(¥Õ¥£¥¯¥·¥ç¥ó) ¡â Indian(¥Î¥ó¥Õ¥£¥¯¥·¥ç¥ó) ¤Ç¤¹¡£
Indian ¤Ï ¥¤¥ó¥É¿Í¤È´ª°ã¤¤¤·¤¿¤³¤È¤«¤éÀ¸¤Þ¤ì¤¿¤â¤Î¤Ç¡¢Endian ¤ÏÍñ¤ò¤¢¤¿¤Þ (little) ¤È¤ª¤·¤ê (big) ¤Î¤É¤Á¤é¤«¤é³ä¤ë¤«
¤ÇÁ褤¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤Ã¤¿ Big End + ian(¿Í) ¤È Litte End + ian(¿Í) ¤È¤¤¤¦Êª¸ì¤Ë¤Ç¤Æ¤¯¤ë¤Î¿Í¼ï¤Î̾Á°¤Ç CPU ¤Î¼çƳ¸¢Á褤¤Î¤È¤¤ÎÍͻҤò³ê·Î¤Ë¤¢¤é¤ï¤·¤Æ¤¤¤ë¤â¤Î¤À¤È»×¤¤¤Þ¤¹¡£
Big Endian ¤Ï Motorola ¤ä Sun ÀªÎÏ¤Ç Litte Endian ¤Ï Intel ¤ä Zilog ÀªÎϤǤ¹¡£¤Þ¤ë¤Çº£¤Î¼¡À¤Âå DVD µ¬³Ê¤Î¤è¤¦¤Ê¾õÂÖ¤À¤Ã¤¿¤è¤¦¤Ê¡Ä Z80 ¤Ã¤ÆÃΤäƤ¤¤Þ¤¹¤«?
¥¥ã¥é¥¯¥¿¥»¥Ã¥È̾¡¿Ê¸»ú¥³¡¼¥É¤Î³ÎǧÊýË¡
¸½ºß¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹¤Î¥¥ã¥é¥¯¥¿¥»¥Ã¥È¡¢³Æ¹ñ¸ì¥¥ã¥é¥¯¥¿¥»¥Ã¥È¤ò³Îǧ¤¹¤ë¤Ë¤Ï ¡Ê¢Í NLS_CHARSET_ID¡¢NLS_CHARSET_NAME ´Ø¿ô ¡Ë
SELECT NLS_CHARSET_NAME(NLS_CHARSET_ID('CHAR_CS')),
NLS_CHARSET_NAME(NLS_CHARSET_ID('NCHAR_CS')) FROM DUAL;
¤Þ¤¿¤Ï
SELECT PARAMETER, VALUE
FROM NLS_DATABASE_PARAMETERS
WHERE PARAMETER IN ('NLS_CHARACTERSET', 'NLS_NCHAR_CHARACTERSET');
¤ò»ÈÍѤ¹¤ë¡£
NLS_CHARACTERSET: ¥Ç¡¼¥¿¥Ù¡¼¥¹¡¦¥¥ã¥é¥¯¥¿¥»¥Ã¥È
NLS_NCHAR_CHARACTERSET: ³Æ¹ñ¸ì¥¥ã¥é¥¯¥¿¥»¥Ã¥È
SQL*Plus ¥³¥Þ¥ó¥É ¤Î SHOW ¥³¥Þ¥ó¥É
SQL> SHOW PARAMETER NLS_
¤Ç¤Ï»ÈÍѤ·¤Æ¤¤¤ëʸ»ú¥³¡¼¥É¤Î³Îǧ¤Ï¤Ç¤¤Ê¤¤¡£
»²¹Í¡§ ¥Ç¡¼¥¿¥Ù¡¼¥¹¤Îʸ»ú¥³¡¼¥É¤òÊѹ¹¤¹¤ë
´ØÏ¢»ö¹à
(;ÃÌ) VARCHAR ¤Ï¡¢¤Ê¤ó¤È¸Æ¤Ó¤Þ¤¹¤«?
»ä¤Ï¡¢È¯²»¤Î¤·¤ä¤¹¤µ¤«¤é¡¢¤Ä¤¤¡Ö¥Ð¡¼¥Á¥ã¡¼¡×¤È¸Æ¤ó¤Ç¤¤¤Þ¤¹¡¢Ã¢¤· CHAR ¤Ï¥¥ã¥é¤È¸Æ¤Ö¡¢Í¥½ÀÉÔÃǤµ¡£
¤½¤·¤Æ¡¢¸Æ¤ÓÊý¤Ë¤¦¤ë¤µ¤¤¿Í¤È»Å»ö¤ò¤¹¤ë¤È¤¤Ë¤Ï¡¢¡Ö¥Ð¡¼¥¥ã¥é¡×¤È¸Æ¤Ö¤¯¤é¤¤Å°Ä줷¤ÆÍ¥½ÀÉÔÃǤǤ¹¡£
¤³¤Î¡Ö¥Ð¡¼¥Á¥ã¡¼¡×¡¢ÈÆÍѵ¡·Ð¸³¼Ô(COBOL ¤Î¤ß?)¤Ï¡¢¤³¤ì¤òÆÃ¤Ë·ù¤Ã¤Æ¤¤¤ë¤è¤¦¤Ë»×¤¨¤Þ¤¹¡£
Oracle ¤Ë¤Ï VIRTUAL ·¿¤Ï¤Ê¤¤¤Ï¤º*1 ¤Ç¤¹¤¬
¡Ö¥Ð¡¼¥Á¥ã¡¼¡×¤Ï VIRTUAL ¤ò¥¤¥á¡¼¥¸¤¹¤ë¤Î¤Ç¡Ö¥Ð¡¼¥¥ã¥é¡×¤¬Àµ¤·¤¤¤È¤¤¤¦²¦Æ»¤ÇÎÏÀ⤷¤Æ¤¤¤ë¤«¤È»×¤¤¤Þ¤¹¡£
¡Ö¥Ð¡¼¥Á¥ã¡¼¡×¤òÈÝÄꤹ¤ë»ñÎÁ¤Ï¤¢¤Ã¤Æ¤â¡¢ÀµÅö²½¤¹¤ë»ñÎÁ¤¬Â¸ºß¤¹¤ë¤È¤Ï»×¤¨¤Þ¤»¤ó¤¬¡¢
¤È¤ê¤¢¤¨¤º Oracle ´ØÏ¢¤Î·Ç¼¨ÈĤȥª¥Õ¥£¥·¥ã¥ë¥µ¥¤¥È¤Ç¤Ï¡¢´ØÏ¢¤¹¤ë¸ø¼°¤Ê»ñÎÁ¤Ï¸«¤Ä¤±¤é¤ì¤Þ¤»¤ó¤Ç¤·¤¿¡Ä¤ª¤·¤Þ¤¤¡£