|
Facebook Joinc ±×·ì
Joinc QA »çÀÌÆ®
joinc´Â Firefox¿Í chrome¿¡¼ Å×½ºÆ® Çß½À´Ï´Ù. IE¿¡¼´Â Å×À̺íÀÌ ±úÁö°Å³ª À̹ÌÁö°¡ º¸ÀÌÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù. ƯÈ÷ ±¸±Û DocsÀ̹ÌÁöÀÇ °æ¿ì ¿¢¹Úó¸®µÉ ¼ö ÀÖ½À´Ï´Ù.
DB ÀÎÄÚµù ÄÁ¹öÀü
ÀÛ¼ºÀÚ: ½Å±â¹è(¼ÒŸ) nonun@nate.com
Contents
- 1 ÀÎÄÚµù
- 2 ¼¹ö ÀÎÄÚµù
- 3 Ŭ¶óÀÌ¾ðÆ® ÀÎÄÚµù
- 4 ÀÎÄÚµù Á¦¾à
- 5 ÀÎÄÚµù º¯È¯ Ç¥
- 6 Âü°í ÀÚ·á
- 6.1 libpq ÀÎÅÍÆäÀ̽º
- 6.2 PostgreSQL ¸Å´º¾ó
|
1 ÀÎÄÚµù
- PostgreSQLÀº ¸¹Àº ¾ð¾î ÀÎÄÚµù/ÄÁ¹öÀüÀ» Áö¿øÇÑ´Ù.
- Çѱ۰ú °ü·ÃµÇ¾î 3°¡ÁöÀÇ ÀÎÄÚµùÀ» Áö¿øÇÑ´Ù. EUC_KR, UNICODE, UHC
2 ¼¹ö ÀÎÄÚµù
[root@linux root]# createdb --help
createdb creates a PostgreSQL database.
Usage:
createdb [OPTION]... [DBNAME] [DESCRIPTION]
Options:
-D, --location=PATH alternative place to store the database
-E, --encoding=ENCODING encoding for the database
-O, --owner=OWNER database user to own the new database
-T, --template=TEMPLATE template database to copy
-e, --echo show the commands being sent to the server
-q, --quiet don't write any messages
--help show this help, then exit
--version output version information, then exit
Connection options:
-h, --host=HOSTNAME database server host or socket directory
-p, --port=PORT database server port
-U, --username=USERNAME user name to connect as
-W, --password prompt for password
By default, a database with the same name as the current user is created.
Report bugs to <pgsql-bugs@postgresql.org>.
Àß º¸½Ã¶ó. DB¸¶´Ù ÀÎÄÚµùÀ» ´Ù¸£°Ô ¼³Á¤ÇÒ ¼ö ÀÖ´Ù.
[root@linux root]# createdb -E UNICODE root
CREATE DATABASE
[root@linux root]# psql
Welcome to psql 7.4.1, the PostgreSQL interactive terminal.
Type: \copyright for distribution terms
\h for help with SQL commands
\? for help on internal slash commands
\g or terminate with semicolon to execute query
\q to quit
root=# SHOW server_encoding ;
server_encoding
-----------------
UNICODE
(1 row)
À¯´ÏÄÚµå·Î DB°¡ ¸¸µé¾îÁ³´Ù.
3 Ŭ¶óÀÌ¾ðÆ® ÀÎÄÚµù
- ±×·¸´Ù¸é ÀÎÄÚµù ÄÁ¹öÀüÀº ¾ðÁ¦ ÀϾ´Â°¡?
- UNICODE·Î »ý¼ºµÈ DB´Â UNICODE·Î µ¥ÀÌÅ͸¦ ÀÔ·ÂÇØÁà¾ß¸¸ ÇÑ´Ù. (Àû¾îµµ ´Ù¸¥ DBMS¿¡¼´Â ±×·² °ÍÀÌ´Ù.) ÇÏÁö¸¸ ´ëºÎºÐÀÇ °æ¿ì¿¡¼ pgsqlÀº ±×·² Çʿ䰡 ¾ø´Ù.
root=# SHOW server_encoding ;
server_encoding
-----------------
UNICODE
(1 row)
root=# SHOW client_encoding ;
client_encoding
-----------------
UNICODE
(1 row)
- º¸Åë ÀϹÝÀûÀÎ »óÅ·δ ÀÌ·¸´Ù. ÇÏÁö¸¸ psqlÀ̳ª ´Ù¸¥ ÀÎÅÍÆäÀ̽º(°¡·É À¥)¿¡¼ uhc³ª euc_kr À» ÀÌ¿ëÇØ Á¢±ÙÇÏ·Á ÇÑ´Ù¸é.
root=# SET client_encoding='uhc';
SET
root=# SHOW client_encoding ;
client_encoding
-----------------
uhc
(1 row)
- ÀÌÁ¦ µ¥ÀÌÅ͸¦ ÀÔ·ÂÇØº¸ÀÚ. uhc ÀÎÄÚµùÀÇ µ¥ÀÌÅͰ¡ ÀÚ¿¬½º·´°Ô UNICODE·Î ÀúÀåµÈ´Ù. À̰ÍÀÌ pgsqlÀÇ °íÀ¯ÇÏ¸é¼ ¶Ù¾î³ ±â´ÉÀÌ´Ù.
- Âü°í·Î ÇÊÀÚ´Â postgresql.conf ¿¡ ¾Æ¿¹ client_encoding = uhc ·Î ÇØ³õ°í ÀÖ´Ù. psql, À¥À» Æ÷ÇÔÇÑ ¸ðµç ÀÎÅÍÆäÀ̽º¿¡¼ uhc·Î ÀÔ·ÂÇÏ°í ¸ðµç DB´Â UNICODE·Î ÀúÀåµÇ°í ÀÖ´Ù. utf_encode, decode ÀÌ·± ÇÔ¼ö¸¦ ½áº»Áö ³Ê¹« ¿À·¡ µÇ¾ú´Ù.
- Ŭ¶óÀÌ¾ðÆ® ÀÎÄÚµùÀ» ¹Ù²Ù´Â ¹æ¹ýÀº 2°¡ÁöÀÌ´Ù.
root=# \encoding
UNICODE
root=# \encoding uhc
root=# \encoding
UHC
root=# SET client_encoding='uhc';
SET
4 ÀÎÄÚµù Á¦¾à
- "¾Æ햏햏" À̶ó´Â ´Ü¾î´Â uhc¿Í UNICODE¿¡¼´Â À¯È¿ÇÏ´Ù. ÇÏÁö¸¸ euc_kr¿¡¼´Â À¯È¿ÇÏÁö ¾Ê´Ù. pgsql¿¡ euc_kr·Î DB¸¦ »ý¼ºÇϰí "¾Æ햏햏" À̶ó´Â ´Ü¾î¸¦ ÀÔ·ÂÇÏ¸é ¿Ã¹Ù¸£Áö ¾ÊÀº ij¸¯ÅͶó´Â ¿¡·¯¸¸ 밷¾î ³½´Ù. ¾ð¾î ¼±ÅÃÀ» Àß ÇØ¾ß ÇÑ´Ù. UNICODE°¡ ´ë¼¼´Ù. ±×¸®°í ´ëºÎºÐÀÇ ¾ð¾î°¡ UNICODE¿Í´Â »óÈ£ ÄÁ¹öÀü µÇ°í ÀÖ´Ù.
5 ÀÎÄÚµù º¯È¯ Ç¥
- ¸ðµç ÀÎÄÚµùÀÌ ¼·Î º¯È¯µÇ´Â °ÍÀº ¾Æ´Ï´Ù. ´ëºÎºÐ UNICODE¿Í´Â »óÈ£ º¯È¯ µÇÁö¸¸ euc_kr°ú uhc´Â ¼·Î ȣȯµÇÁö ¾Ê´Â´Ù.
| Server Character Set | Available Client Character Sets |
| SQL_ASCII | SQL_ASCII, UNICODE, MULE_INTERNAL |
| EUC_JP | EUC_JP, SJIS, UNICODE, MULE_INTERNAL |
| EUC_CN | EUC_CN, UNICODE, MULE_INTERNAL |
| EUC_KR | EUC_KR, UNICODE, MULE_INTERNAL |
| JOHAB | JOHAB, UNICODE |
| EUC_TW | EUC_TW, BIG5, UNICODE, MULE_INTERNAL |
| LATIN1 | LATIN1, UNICODE MULE_INTERNAL |
| LATIN2 | LATIN2, WIN1250, UNICODE, MULE_INTERNAL |
| LATIN3 | LATIN3, UNICODE, MULE_INTERNAL |
| LATIN4 | LATIN4, UNICODE, MULE_INTERNAL |
| LATIN5 | LATIN5, UNICODE |
| LATIN6 | LATIN6, UNICODE, MULE_INTERNAL |
| LATIN7 | LATIN7, UNICODE, MULE_INTERNAL |
| LATIN8 | LATIN8, UNICODE, MULE_INTERNAL |
| LATIN9 | LATIN9, UNICODE, MULE_INTERNAL |
| LATIN10 | LATIN10, UNICODE, MULE_INTERNAL |
| ISO_8859_5 | ISO_8859_5, UNICODE, MULE_INTERNAL, WIN, ALT, KOI8 |
| ISO_8859_6 | ISO_8859_6, UNICODE |
| ISO_8859_7 | ISO_8859_7, UNICODE |
| ISO_8859_8 | ISO_8859_8, UNICODE |
| UNICODE | EUC_JP, SJIS, EUC_KR, UHC, JOHAB, EUC_CN, GBK, EUC_TW, BIG5, LATIN1 to LATIN10, ISO_8859_5, ISO_8859_6, ISO_8859_7, ISO_8859_8, WIN, ALT, KOI8, WIN1256, TCVN, WIN874, GB18030, WIN1250 |
| MULE_INTERNAL | EUC_JP, SJIS, EUC_KR, EUC_CN, EUC_TW, BIG5, LATIN1 to LATIN5, WIN, ALT, WIN1250, BIG5, ISO_8859_5, KOI8 |
| KOI8 | ISO_8859_5, WIN, ALT, KOI8, UNICODE, MULE_INTERNAL |
| WIN | ISO_8859_5, WIN, ALT, KOI8, UNICODE, MULE_INTERNAL |
| ALT | ISO_8859_5, WIN, ALT, KOI8, UNICODE, MULE_INTERNAL |
| WIN1256 | WIN1256, UNICODE |
| TCVN | TCVN, UNICODE |
| WIN874 | WIN874, UNICODE |
| Conversion Name | Source Encoding | Destination Encoding |
| ascii_to_mic | SQL_ASCII | MULE_INTERNAL |
| ascii_to_utf_8 | SQL_ASCII | UNICODE |
| big5_to_euc_tw | BIG5 | EUC_TW |
| big5_to_mic | BIG5 | MULE_INTERNAL |
| big5_to_utf_8 | BIG5 | UNICODE |
| euc_cn_to_mic | EUC_CN | MULE_INTERNAL |
| euc_cn_to_utf_8 | EUC_CN | UNICODE |
| euc_jp_to_mic | EUC_JP | MULE_INTERNAL |
| euc_jp_to_sjis | EUC_JP | SJIS |
| euc_jp_to_utf_8 | EUC_JP | UNICODE |
| euc_kr_to_mic | EUC_KR | MULE_INTERNAL |
| euc_kr_to_utf_8 | EUC_KR | UNICODE |
| euc_tw_to_big5 | EUC_TW | BIG5 |
| euc_tw_to_mic | EUC_TW | MULE_INTERNAL |
| euc_tw_to_utf_8 | EUC_TW | UNICODE |
| gb18030_to_utf_8 | GB18030 | UNICODE |
| gbk_to_utf_8 | GBK | UNICODE |
| iso_8859_10_to_utf_8 | LATIN6 | UNICODE |
| iso_8859_13_to_utf_8 | LATIN7 | UNICODE |
| iso_8859_14_to_utf_8 | LATIN8 | UNICODE |
| iso_8859_15_to_utf_8 | LATIN9 | UNICODE |
| iso_8859_16_to_utf_8 | LATIN10 | UNICODE |
| iso_8859_1_to_mic | LATIN1 | MULE_INTERNAL |
| iso_8859_1_to_utf_8 | LATIN1 | UNICODE |
| iso_8859_2_to_mic | LATIN2 | MULE_INTERNAL |
| iso_8859_2_to_utf_8 | LATIN2 | UNICODE |
| iso_8859_2_to_windows_1250 | LATIN2 | WIN1250 |
| iso_8859_3_to_mic | LATIN3 | MULE_INTERNAL |
| iso_8859_3_to_utf_8 | LATIN3 | UNICODE |
| iso_8859_4_to_mic | LATIN4 | MULE_INTERNAL |
| iso_8859_4_to_utf_8 | LATIN4 | UNICODE |
| iso_8859_5_to_koi8_r | ISO_8859_5 | KOI8 |
| iso_8859_5_to_mic | ISO_8859_5 | MULE_INTERNAL |
| iso_8859_5_to_utf_8 | ISO_8859_5 | UNICODE |
| iso_8859_5_to_windows_1251 | ISO_8859_5 | WIN |
| iso_8859_5_to_windows_866 | ISO_8859_5 | ALT |
| iso_8859_6_to_utf_8 | ISO_8859_6 | UNICODE |
| iso_8859_7_to_utf_8 | ISO_8859_7 | UNICODE |
| iso_8859_8_to_utf_8 | ISO_8859_8 | UNICODE |
| iso_8859_9_to_utf_8 | LATIN5 | UNICODE |
| johab_to_utf_8 | JOHAB | UNICODE |
| koi8_r_to_iso_8859_5 | KOI8 | ISO_8859_5 |
| koi8_r_to_mic | KOI8 | MULE_INTERNAL |
| koi8_r_to_utf_8 | KOI8 | UNICODE |
| koi8_r_to_windows_1251 | KOI8 | WIN |
| koi8_r_to_windows_866 | KOI8 | ALT |
| mic_to_ascii | MULE_INTERNAL | SQL_ASCII |
| mic_to_big5 | MULE_INTERNAL | BIG5 |
| mic_to_euc_cn | MULE_INTERNAL | EUC_CN |
| mic_to_euc_jp | MULE_INTERNAL | EUC_JP |
| mic_to_euc_kr | MULE_INTERNAL | EUC_KR |
| mic_to_euc_tw | MULE_INTERNAL | EUC_TW |
| mic_to_iso_8859_1 | MULE_INTERNAL | LATIN1 |
| mic_to_iso_8859_2 | MULE_INTERNAL | LATIN2 |
| mic_to_iso_8859_3 | MULE_INTERNAL | LATIN3 |
| mic_to_iso_8859_4 | MULE_INTERNAL | LATIN4 |
| mic_to_iso_8859_5 | MULE_INTERNAL | ISO_8859_5 |
| mic_to_koi8_r | MULE_INTERNAL | KOI8 |
| mic_to_sjis | MULE_INTERNAL | SJIS |
| mic_to_windows_1250 | MULE_INTERNAL | WIN1250 |
| mic_to_windows_1251 | MULE_INTERNAL | WIN |
| mic_to_windows_866 | MULE_INTERNAL | ALT |
| sjis_to_euc_jp | SJIS | EUC_JP |
| sjis_to_mic | SJIS | MULE_INTERNAL |
| sjis_to_utf_8 | SJIS | UNICODE |
| tcvn_to_utf_8 | TCVN | UNICODE |
| uhc_to_utf_8 | UHC | UNICODE |
| utf_8_to_ascii | UNICODE | SQL_ASCII |
| utf_8_to_big5 | UNICODE | BIG5 |
| utf_8_to_euc_cn | UNICODE | EUC_CN |
| utf_8_to_euc_jp | UNICODE | EUC_JP |
| utf_8_to_euc_kr | UNICODE | EUC_KR |
| utf_8_to_euc_tw | UNICODE | EUC_TW |
| utf_8_to_gb18030 | UNICODE | GB18030 |
| utf_8_to_gbk | UNICODE | GBK |
| utf_8_to_iso_8859_1 | UNICODE | LATIN1 |
| utf_8_to_iso_8859_10 | UNICODE | LATIN6 |
| utf_8_to_iso_8859_13 | UNICODE | LATIN7 |
| utf_8_to_iso_8859_14 | UNICODE | LATIN8 |
| utf_8_to_iso_8859_15 | UNICODE | LATIN9 |
| utf_8_to_iso_8859_16 | UNICODE | LATIN10 |
| utf_8_to_iso_8859_2 | UNICODE | LATIN2 |
| utf_8_to_iso_8859_3 | UNICODE | LATIN3 |
| utf_8_to_iso_8859_4 | UNICODE | LATIN4 |
| utf_8_to_iso_8859_5 | UNICODE | ISO_8859_5 |
| utf_8_to_iso_8859_6 | UNICODE | ISO_8859_6 |
| utf_8_to_iso_8859_7 | UNICODE | ISO_8859_7 |
| utf_8_to_iso_8859_8 | UNICODE | ISO_8859_8 |
| utf_8_to_iso_8859_9 | UNICODE | LATIN5 |
| utf_8_to_johab | UNICODE | JOHAB |
| utf_8_to_koi8_r | UNICODE | KOI8 |
| utf_8_to_sjis | UNICODE | SJIS |
| utf_8_to_tcvn | UNICODE | TCVN |
| utf_8_to_uhc | UNICODE | UHC |
| utf_8_to_windows_1250 | UNICODE | WIN1250 |
| utf_8_to_windows_1251 | UNICODE | WIN |
| utf_8_to_windows_1256 | UNICODE | WIN1256 |
| utf_8_to_windows_866 | UNICODE | ALT |
| utf_8_to_windows_874 | UNICODE | WIN874 |
| windows_1250_to_iso_8859_2 | WIN1250 | LATIN2 |
| windows_1250_to_mic | WIN1250 | MULE_INTERNAL |
| windows_1250_to_utf_8 | WIN1250 | UNICODE |
| windows_1251_to_iso_8859_5 | WIN | ISO_8859_5 |
| windows_1251_to_koi8_r | WIN | KOI8 |
| windows_1251_to_mic | WIN | MULE_INTERNAL |
| windows_1251_to_utf_8 | WIN | UNICODE |
| windows_1251_to_windows_866 | WIN | ALT |
| windows_1256_to_utf_8 | WIN1256 | UNICODE |
| windows_866_to_iso_8859_5 | ALT | ISO_8859_5 |
| windows_866_to_koi8_r | ALT | KOI8 |
| windows_866_to_mic | ALT | MULE_INTERNAL |
| windows_866_to_utf_8 | ALT | UNICODE |
| windows_866_to_windows_1251 | ALT | WIN |
| windows_874_to_utf_8 | WIN874 | UNICODE |
6 Âü°í ÀÚ·á
6.1 libpq ÀÎÅÍÆäÀ̽º
Ŭ¶óÀÌ¾ðÆ® ÀÎÄÚµùÀ» ¼¼ÆÃÇÑ´Ù.
Ŭ¶óÀÌ¾ðÆ® ÀÎÄÚµù ¼³Á¤À» °¡Á®¿Â´Ù.
PQclientEncodingÀÌ ¸®ÅÏÇÑ ÀÎÄÚµù ID¸¦ ¹®ÀÚ·Î º¯°æÇÑ´Ù.
6.2 PostgreSQL ¸Å´º¾ó
20.2. Character Set Support
9.4. String Functions and Operators (Table 9-8. Built-in Conversions)
|
|