¥Ç¡¼¥¿¥Ù¡¼¥¹Æâ¤Ç¤Î³ÊǼÊýË¡ (DATE¡¢NUMBER¡¢LOB)
Oracle ¤Ç¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ë³ÊǼ²Äǽ¤Ê ¥Ç¡¼¥¿·¿ ¤Î¤¤¤¯¤Ä¤«¤Ï³ÊǼ¤¹¤ë¥Õ¥©¡¼¥Þ¥Ã¥È¤¬¸ø³«¤µ¤ì¤Æ¤¤¤ë¡£
¤Þ¤¿¤Ï¸ø³«¤µ¤ì¤Æ¤¤¤¿¡£DATE ·¿¤Î³ÊǼÊý¼°¤Î»ñÎÁ¤Ï¥ª¥é¥¯¥ë¤Î¸ø¼°¥µ¥¤¥È¤Î¥ê¥Ë¥å¡¼¥¢¥ë»þ¤Ë¹ÔÊýÉÔÌÀ¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤Ã¤¿¡£
¸ø³«½ªÎ»¤·¤Æ¤·¤Þ¤Ã¤¿¤«¤â¤·¤ì¤Ê¤¤¡£¤Þ¤¿ SQL ¤Î DUMP ´Ø¿ô¤ò»ÈÍѤ¹¤ë¤ÈÆâÉô¤Î¾õÂÖ¤¬¸«¤¨¤ë¤Î¤Ç»î¤·¤Æ¤ß¤Æ¤Ï?
DATE: ÆüÉÕ·¿¤Î³ÊǼ·Á¼°
DATE
ǯ·îÆü»þʬÉÃ(ÆüÉÕ·¿: DATE + TIME) ¡¿ ¥¿¥¤¥à¥¾¡¼¥ó¾ðÊó¤Ï¤Ê¤·
¥Ç¡¼¥¿ÆâÉô¤Çǯ(¾å°Ì2·å)¡¢Ç¯(²¼°Ì2·å)¡¢·î¡¢Æü¡¢»þ¡¢Ê¬¡¢Éäò¤â¤Ä(³Æ 1 ¥Ð¥¤¥È¤Ç·× 7 ¥Ð¥¤¥È)
À°¿ôÉô¤ÇÆüÉÕ¡¢¾®¿ôÉô¤Ç»þʬÉÃ¤Î·× 7 ¥Ð¥¤¥È¤ÇÊݸ¤·¤Æ¤¤¤ë¤È¤Î´ª°ã¤¤(¢¨)¤ò¤¿¤Þ¤Ë¸«¼õ¤±¤ë¡£
¯¤Ë¤¤¤¦ UNIX ¥¿¥¤¥à¤Î¤è¤¦¤Ê´ð½à¤È¤Ê¤ëÆüÉÕ¤«¤é¤Î·Ð²áÉÿô¡Ê¥¨¥Ý¥Ã¥¯ÉáˤȤ¤¤¦³ÊǼ·Á¼°¤Ç¤Ï¤Ê¤¤¤¿¤á ¥Ç¡¼¥¿¤Î³ÊǼÊýË¡¥ì¥Ù¥ë¤Ç¤Ï XXXXǯÌäÂê¤È¤Ï̵±ï¤Ç¤¢¤ë¡£
(¢¨) 1 Æü¸å¤ò SYSDATE + 1¡¢1 »þ´Ö¸å¤ò SYSDATE + 1/24 ¤È¤¤¤¦ÆüÉդȿôÃͤη׻»¤¬¤Ç¤¡¢
´ü´Ö·¿¤Î¤Ê¤«¤Ã¤¿¤È¤¤Î Oracle ¤ÎÆüÉդΤ·»»(°ú¤»»)¤Ç»ÈÍѤ¹¤ë¾ì¹ç¤Î Tips¤È¤·¤Æ¹¤¯ÃΤìÅϤ俤¿¤á¤À¤È»×¤ï¤ì¤ë¡£
ÆâÉô½èÍý·Á¼°¤ÈÊݸ·Á¼°¤Ç¥Õ¥©¡¼¥Þ¥Ã¥È°Û¤Ê¤ë¡£
³ÊǼ·Á¼°(¡Á10g)
¡¡Î㤨¤Ð2004ǯ10·î12Æü 14»þ05ʬ00Éà ¤Ï °Ê²¼¤Î¤è¤¦¤Ë³ÊǼ¤µ¤ì¤Æ¤¤¤ë¡£(10¿Ê)
¡¡2000ǯÌäÂê»þ¤Ë»ñÎÁ¤Ï³°Éô¸ø³«¤µ¤ì¤Æ¤¤¤¿(1999/9ÆüËܸþ¤±¡§URL¤Ï¾ÃÌÇ)
2004ǯ 10·î 12Æü 14»þ 05ʬ 00Éà = 120,104,10,12,15,6,1
1 2 3 4 5 6 7
+-----+-----+----+----+----+----+----+
| 120 | 104 | 10 | 12 | 15 | 6 | 1 |
+-----+-----+----+----+----+----+----+
·×»»¼°¡§
100+20 / 100+04 / 10 / 12 / 1+14 / 1+5 / 1+0
(NULL(0) ¤òÇÓ½ü¤·¤Æ¤«¤Ä»»½Ñ¤â¤Ç¤¤ë¤è¤¦¤Ë¡Ö¤²¤¿¡×¤ò¤Ï¤«¤»¤Æ¤¤¤ë)
(Ãí°Õ) SYSDATE ¤Ï¸·Ì©¤Ë¤Ï DATE ·¿¤È¤Ï°Û¤Ê¤ë¥Ç¡¼¥¿¥¿¥¤¥×¤Ç¤¢¤ë¡£¡Ê¥µ¥¤¥º¤â³ÊǼ·Á¼°¤â°ã¤¦)
¥Ç¡¼¥¿¥¿¥¤¥×¤Î¥¿¥¤¥×¥³¡¼¥É»²¾È
NUMBER: ¿ôÃͤγÊǼ·Á¼°
NUMBER / NUMBER( p [,s] )
¸ÇÄê¾®¿ôÅÀ ÀºÅÙp(1¡Á38·å)¡¢°Ì¼è¤ês(-84¡Á127·å:¾Êά»þ 0)
³ÊǼ·Á¼°(10g):
- ºÇÂç¤Ç 21 ¥Ð¥¤¥È
- ²Ê³ØÉ½µ¤Ë¤Æ³ÊǼ(Àè¹Ô¤ª¤è¤Ó¸å³ 0 ¤Ïºï½ü)
- »Ø¿ô¤ò³ÊǼ¤¹¤ë¤¿¤á¤Ë1 ¥Ð¥¤¥È¡¢²¾¿ô¤ò³ÊǼ¤¹¤ë¤¿¤á¤ËºÇÂç¤Ç 20 ¥Ð¥¤¥È¡£
- Éé¤ÎÉ乿¤ò³ÊǼ¤¹¤ë¤¿¤á¤Ë¤Ï¡¢1 ¥Ð¥¤¥È¤Î²¾¿ô¥¨¥ê¥¢¤ò»ÈÍѤ¹¤ë¡£
- ²¾¿ôÉô¤Î¿ôÃÍɽ¸½¤Ë¤Ï 100 ¿Ê¿ô¤ò»ÈÍÑ (¡á2·å¤ò 1 ¥Ð¥¤¥È)¤·¤Æ¤¤¤ë¡£
¢¨ BCD ɽ¸½¤Ï£±·å¤¬4¥Ó¥Ã¥È¹½À®¤Ç¡¢2·å¤Ç1¥Ð¥¤¥È¤Ë¤Ê¤ë¤â¤Î¤ÎÆâÉôɽ¸½¤¬°Û¤Ê¤Ã¤Æ¤¤¤ë¡£
BCD(Binary-Coded-Decimal¡§Æó¿Ê²½½½¿Êɽ¸½) ¤Ç¤Ï¤Ê¤¯ BCC(Binary-Coded-Centezimal¡§Æó¿Ê²½É´¿Êɽ¸½)¤È¤¤¤¦¤À¤í¤¦¤«¡©
ÀºÅÙ°ÊÆâ¤Ç¤¢¤ì¤Ð¡¢¾ï¤Ë¸íº¹¤Î̵¤¤Àµ³Î¤Ê¿ôÃͤòÊÝ»ý¤··×»»¤¹¤ë¤³¤È¤¬²Äǽ¡£
(2¿Ê¿ôÀºÅ٤Τ褦¤Ëɽ¸½¤Ç¤¤Ê¤¤¿ôÃͤ¬È¯À¸¤¹¤ë¤³¤È¤¬¤Ê¤¤¡£)
ÉâÆ°¾®¿ôÅÀ¤Î³ÊǼ·Á¼° (BINARY_FLOAT¡¢BINARY_DOUBLE)
2 ¿Ê¿ôÀºÅ٤ˤè¤ëÉâÆ°¾®¿ôÅÀ¿ôÃÍ
BINARY_FLOAT
32 ¥Ó¥Ã¥È¤ÎÉâÆ°¾®¿ôÅÀ¿ô ( 4 + 1 ¥Ð¥¤¥È)
Àµ¤ÎºÇ¾®ÃÍ 1.17549E-38¡¢Àµ¤ÎºÇÂçÃÍ 3.40282E+38
³ÊǼ·Á¼°¡§IEEE·Á¼°ÉâÆ°¾®¿ôÅÀ¥Ç¡¼¥¿+´ÉÍýÎΰè 1 ¥Ð¥¤¥È
0¡Á22 bit:²¾¿ô
23¡Á30 bit: »Ø¿ô
31 bit:É乿
¡ÞINF(+-̵¸ÂÂç)¡¢NaN(Not a Number:¥ª¥é¥¯¥ë¤Ë¤Ï¡Þ¤Î¶èÊ̤Ϥʤ¤)¤ò»ý¤Ä
BINARY_DOUBLE
ÇÜÀºÅÙ 64 ¥Ó¥Ã¥È¤ÎÉâÆ°¾®¿ôÅÀ¿ô ( 8 + 1 ¥Ð¥¤¥È)
Àµ¤ÎºÇ¾®ÃÍ 2.22507485850720E-308¡¢Àµ¤ÎºÇÂçÃÍ 1.79769313486231E+308
³ÊǼ·Á¼°¡§IEEE·Á¼°ÉâÆ°¾®¿ôÅÀ¥Ç¡¼¥¿(ÇÜÀºÅÙ)+´ÉÍýÎΰè 1 ¥Ð¥¤¥È
0¡Á51 bit:²¾¿ô
51¡Á62 bit: »Ø¿ô
63 bit:É乿
¡ÞINF(+-̵¸ÂÂç)¡¢NaN(Not a Number:¥ª¥é¥¯¥ë¤Ë¤Ï¡Þ¤Î¶èÊ̤Ϥʤ¤)¤ò»ý¤Ä
¥é¡¼¥¸¥ª¥Ö¥¸¥§¥¯¥È (CLOB¡¢NCLOB)
ºÇÂç³ÊǼ²Äǽ¥µ¥¤¥º ɸ½à¥Ö¥í¥Ã¥¯¥µ¥¤¥º¡ß(4G-1)¡ÄºÇÂç 8T(2KB) ¡Á 128T(32KB) ¥Ð¥¤¥È
¡Ö 9i ¤Ç¤ÏºÇÂç 4G ¥Ð¥¤¥È¡×¤Ë¤Ê¤ë¡£
ÆüËܸì´Ä¶¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹¥¥ã¥é¥¯¥¿¥»¥Ã¥È¤ò»ÈÍѤ·¤Æ¤¤¤ë¾ì¹ç¡¢
CLOB ¤Î³ÊǼÊý¼°¤Ï¸ÇÄêŤΠUCS-2 ¸ß´¹·Á¼°(¢¨)¤Ç³ÊǼ¤µ¤ì¤Æ¤¤¤ë¡£
¤½¤·¤Æ¡¢DBMS_LOB ¥Ñ¥Ã¥±¡¼¥¸¤Ë¤Ï¥¥ã¥é¥¯¥¿¿ô¤ò¿ô¤¨¤ë GET_LENGTH ¤À¤±¤Ç¤¢¤ë¡£
¥Ð¥¤¥È¿ô¤ò¿ô¤¨¤ë GET_LENGTHB ¤Ï(¸ºß¤·¤Æ¤â°ÕÌ£¤¬¤Ê¤¤¤Î¤Ç)¸ºß¤·¤Ê¤¤¡£
LENGTHB ɸ½à´Ø¿ô¤â»ÈÍѤϵö¤µ¤ì¤Æ¤¤¤Ê¤¤¡£¡ÊOracle 10g »þÅÀ¡Ë
(¢¨) UCS-2 ¤Ï 2 ¥Ð¥¤¥È¸ÇÄê¤Î ¥¥ã¥é¥¯¥¿¥»¥Ã¥È
¤³¤ì¤Ï CLOB ¤ò Ê£¿ô¤ÎVARCHAR2(xx BYTE) ¤ËÀÚ¤êʬ¤±¤ÆÂåÆþ¤¹¤ë¤Î¤Ë»þ´Ö¤Î¤«¤«¤ë;·×¤Ê¼ê´Ö¤¬É¬ÍפǤ¢¤ë¤³¤È¤ò°ÕÌ£¤¹¤ë¡£
Èó¾ï¤ËÃÏÌ£¤ÊÀ©¸Â¤À¤¬¡¢¤³¤ì¤Ï¥Ü¥Ç¥£¡¼¥Ö¥í¡¼¤Î¤è¤¦¤ÊÀ©¸Â¤Ç¤¢¤ë¡£
¤³¤ì¤òÃΤ餺¤Ë»È¤¦¤È¸å¡¹¡¢³«È¯¥Õ¥§¡¼¥º¤ËÆþ¤Ã¤Æ¤«¤éÌåÀ䤹¤ë²ÄǽÀ¤¬¤¢¤ë¤«¤é¤Ç¤¢¤ë¡£
CLOB ¤ò»È¤¦¤Ê¤é¤ÐÀß·×»þ¤«¤éÃí°Õ¤¬É¬Íס£
(¤ª¤½¤é¤¯ CLOB ¤ò»ÈÍÑ»þ¤ÎºÇÂç¤Î¥Ç¥á¥ê¥Ã¥È¤À¤È»×¤ï¤ì¤ë)
´ØÏ¢»ö¹à