Chapter 8. µ¥ÀÌÅÍ Å¸ÀÔ

Table of Contents
8.1. ¼öÄ¡ µ¥ÀÌÅÍ Å¸ÀÔ
8.1.1. Á¤¼ö µ¥ÀÌÅÍ Å¸ÀÔ
8.1.2. ÀÓÀÇÀÇ Á¤¹Ðµµ¸¦ °¡Áö´Â ¼ö
8.1.3. ºÎµ¿ ¼Ò¼öÁ¡ µ¥ÀÌÅÍÇü
8.1.4. ¿¬¼ÓÇü
8.2. ÅëÈ­Çü
8.3. ¹®ÀÚÇü
8.4. ¹ÙÀ̳ʸ® µ¥ÀÌÅÍÇü
8.5. ³¯Â¥/½Ã°¢ µ¥ÀÌÅÍÇü
8.5.1. ³¯Â¥/½Ã°¢ ÀÔ·Â
8.5.2. ³¯Â¥/½Ã°¢ Ãâ·Â
8.5.3. ½Ã°£´ë
8.5.4. ³»ºÎ
8.6. ³í¸®Ä¡ µ¥ÀÌÅÍÇü
8.7. ±âÇÏ µ¥ÀÌÅÍÇü
8.7.1. ÁÂÇ¥Á¡
8.7.2. ¼±ºÐ
8.7.3. Boxes
8.7.4. °æ·Î
8.7.5. ´Ù°¢Çü
8.7.6. ¿ø
8.8. ³×Æ®¿öÅ© ÁÖ¼ÒÇü
8.8.1. inet
8.8.2. cidr
8.8.3. inet¿Ícidrµ¥ÀÌÅÍÇüÀÇ Â÷ÀÌ
8.8.4. macaddr
8.9. ºñÆ® ¹®ÀÚ¿­ ŸÀÔ
8.10. ¹è¿­
8.10.1. ¹è¿­ ŸÀÔÀÇ ¼±¾ð
8.10.2. ¹è¿­ °ªÀÇ ÀÔ·Â
8.10.3. ¹è¿­ »ç¿ëÇϱâ
8.10.4. ¹è¿­ º¯°æÇϱâ
8.10.5. ¹è¿­³» °Ë»ö
8.10.6. ¹è¿­ÀÇ ÀÔÃâ·Â ±¸¹®
8.11. º¹ÇÕÇü
8.11.1. º¹ÇÕÇüÀÇ ¼±¾ð
8.11.2. º¹ÇÕÇüÀÇ °ªÀÇ ÀÔ·Â
8.11.3. º¹ÇÕÇü¿¡ÀÇ ¾×¼¼½º
8.11.4. º¹ÇÕÇüÀÇ º¯°æ
8.11.5. º¹ÇÕÇüÀÇ ÀÔÃâ·Â ±¸¹®
8.12. ¿ÀºêÁ§Æ® ½Äº°ÀÚ µ¥ÀÌÅÍÇü
8.13. À¯»ç µ¥ÀÌÅÍÇü
8.14. XML ¹®¼­ Áö¿ø

PostgreSQL´Â »ç¿ëÀÚ°¡ »ç¿ë °¡´ÉÇÑ Ç³ºÎÇÑ µ¥ÀÌÅÍ Å¸ÀÔÀ» °¡Áö°í ÀÖ½À´Ï´Ù. CREATE TYPE Ä¿¸àµå¸¦ »ç¿ëÇÏ¿© PostgreSQL¿¡ »õ·Î¿î µ¥ÀÌÅÍ Å¸ÀÔÀ» Ãß°¡ÇÒ ¼ö ÀÖ½À´Ï´Ù.

Table 8-1¿¡ ³»Àå µÈ ¸ðµç ¹ü¿ë µ¥ÀÌÅÍ Å¸ÀÔÀ» º¸¿©ÁÖ°í ÀÖ½À´Ï´Ù. "Aliases"¿¡ ¿­°ÅµÈ ´ëü(alternative) À̸§ÀÇ ´ëºÎºÐÀº, ¿ª»çÀûÀÎ ÀÌÀ¯¿¡ ÀÇÇØ PostgreSQLÀÇ ³»ºÎ¿¡¼­ »ç¿ëµÇ°í ÀÖ´Â À̸§ÀÔ´Ï´Ù. Ãß°¡ÀûÀ¸·Î ¿©±â¿¡ ±âÀçÇϰí ÀÖÁö ¾Ê´Â, ³»ºÎ¿¡¼­ »ç¿ëµÇ´Â µ¥ÀÌÅÍÇü, »èÁ¦ ¿¹Á¤ÀÇ µ¥ÀÌÅÍÇüµµ ÀÖ½À´Ï´Ù.

Table 8-1. µ¥ÀÌÅÍ Å¸ÀÔ

À̸§ º°Äª(Aliases) ¼³¸í
bigint int8 8 byte Á¤¼ö
bigserial serial8 ÀÚµ¿ Áõ°¡ÇÏ´Â 8¹ÙÀÌÆ® Á¤¼ö
bit [ ( n ) ]   °íÁ¤±æÀÌÀÇ ºñÆ® ¹®ÀÚ¿­
bit varying [ ( n ) ] varbit °¡º¯±æÀÌÀÇ ºñÆ® ¹®ÀÚ¿­
boolean bool ³í¸®Àû Boolean(true/false)
box   Æò¸é»óÀÇ Á÷°¢ box
bytea   ¹ÙÀ̳ʸ® µ¥ÀÌÅÍ("¹ÙÀÌÆ®ÀÇ ¹è¿­(byte array)")
character varying [ ( n ) ] varchar [ ( n ) ] °¡º¯±æÀÌÀÇ Ä³¸¯ÅÍ ¹®ÀÚ¿­
character [ ( n ) ] char [ ( n ) ] °íÁ¤±æÀÌÀÇ Ä³¸¯ÅÍ ¹®ÀÚ¿­
cidr   IPv4³ª IPv6 ³×Æ®¿öÅ© ÁÖ¼Ò
circle   Æò¸é»óÀÇ ¿ø
date   ´Þ·Â ³¯ÀÚ(¿¬µµ,¿ù,ÀÏ)
double precision float8 2¹è Á¤¹Ðµµ ºÎµ¿ ¼Ò¼öÁ¡
inet   IPv4³ª IPv6 È£½ºÆ® ÁÖ¼Ò
integer int, int4 4¹ÙÀÌÆ® Á¤¼ö
interval [ ( p ) ]   ½Ã°£ °£°Ý
line   Æò¸é»óÀÇ ¹«ÇÑ Á÷¼±
lseg   Æò¸é»óÀÇ ¼±ºÐ
macaddr   MAC ÁÖ¼Ò
money   È­Æó ±Ý¾×
numeric [ ( p , s ) ] decimal [ ( p , s ) ] Á¤¹ÐµµÀÇ ¼±Åà °¡´ÉÇÑ °íÁ¤¹Ðµµ ¼öÄ¡
path   Æò¸é»óÀÇ ±âÇÏÇÐÀû °æ·Î
point   Æò¸é»óÀÇ ±âÇÏÇÐÀû Á¡
polygon   Æò¸é»óÀÇ ´ÝÈù ±âÇÏÇÐÀû °æ·Î
real float4 ´ÜÁ¤¹Ðµµ ºÎµ¿ ¼Ò¼öÁ¡
smallint int2 2¹ÙÀÌÆ® ºÎÈ£ ÷ºÎ Á¤¼ö
serial serial4 ÀÚµ¿ Áõ°¡ÇÏ´Â 4¹ÙÀÌÆ® Á¤¼ö
text   °¡º¯±æÀÌÀÇ Ä³¸¯ÅÍ ¹®ÀÚ¿­
time [ ( p ) ] [ without time zone ]   ½Ã°¢
time [ ( p ) ] with time zone timetz ½Ã°£´ë¸¦ Æ÷ÇÔÇÑ ½Ã°¢
timestamp [ ( p ) ] [ without time zone ]   ³¯Â¥¿Í ½Ã°¢
timestamp [ ( p ) ] with time zone timestamptz ½Ã°£´ë¸¦ Æ÷ÇÔÇÑ ³¯Â¥¿Í ½Ã°¢

ȣȯ¼º: ´ÙÀ½ÀÇ µ¥ÀÌÅÍ Å¸ÀÔ(ȤÀº ±×°ÍÀÇ ¾²´Â ¹æ¹ý)Àº SQL¿¡ ÁöÁ¤µÇ¾î ÀÖ½À´Ï´Ù. bit, bit varying, boolean, char, character varying, character, varchar, date, double precision, integer, interval, numeric, decimal, real, smallint, time(½Ã°£´ë¸¦ Æ÷ÇÔÇϰųª ÇÏÁö ¾Ê´Â °Í ¸ðµÎ), timestamp(½Ã°£´ë¸¦ Æ÷ÇÔÇϰųª ÇÏÁö ¾Ê´Â °Í ¸ðµÎ).

°¢ µ¥ÀÌÅÍ Å¸ÀÔÀº ÀÔÃâ·Â ÇÔ¼ö·Î °áÁ¤µÇ´Â ¿ÜºÎ Ç¥ÇöÀ» °¡Áö°í ÀÖ½À´Ï´Ù. ¸¹Àº ³»Àå ŸÀÔÀº ºÐ¸íÈ÷ ¿ÜºÎ ¼­½ÄÀ» °¡Áö°í ÀÖ½À´Ï´Ù. ±×·¯³ª ¸î°¡Áö ŸÀÔÀº ¾î´À ÇÑ ÂÊ¿¡¼­µµ PostgreSQL¿¡ À¯ÀÏÇÕ´Ï´Ù. ¿¹¸¦ µé¾î ±âÇÏÇÐÀû °æ·Î³ª ÀϺΠ°¡´ÉÇÑ ¼­½Ä, ¶Ç´Â ³¯Â¥³ª ½Ã°¢ ŸÀÔÀÌ ±×·¸½À´Ï´Ù. ÀϺÎÀÇ ÀÔÃâ·Â ÇÔ¼ö´Â ¹Ý´ë·Î µÇÁö ¾Ê½À´Ï´Ù. Áï, Ãâ·Â ÇÔ¼ö¿¡ ÀÇÇÑ °á°ú´Â ÃÖÃÊÀÇ ÀԷ°ú ºñ±³ÇÏ¿© Á¤È®¼ºÀ» ÀÒÀ» ¼ö ÀÖ½À´Ï´Ù.