]> granicus.if.org Git - postgresql/commitdiff
Translation updates
authorPeter Eisentraut <peter_e@gmx.net>
Sat, 11 Dec 2004 19:09:08 +0000 (19:09 +0000)
committerPeter Eisentraut <peter_e@gmx.net>
Sat, 11 Dec 2004 19:09:08 +0000 (19:09 +0000)
src/backend/po/zh_CN.po
src/bin/initdb/po/zh_CN.po
src/bin/pg_config/nls.mk
src/bin/pg_config/po/zh_CN.po [new file with mode: 0644]
src/bin/pg_controldata/po/zh_CN.po
src/bin/pg_ctl/po/zh_CN.po
src/bin/pg_dump/po/zh_CN.po
src/bin/pg_resetxlog/po/zh_CN.po
src/bin/psql/po/zh_CN.po
src/bin/scripts/po/zh_CN.po
src/interfaces/libpq/po/zh_CN.po

index 289030b7855eeec48735a4c9a22fa5c0bc9da74f..17578ba8e29889f800ea72e8321f0413d1ecd7b5 100644 (file)
@@ -1,13 +1,13 @@
 # simplified Chinese translation file for PostgreSQL server
 # Weiping He <laser@zhengmai.com.cn>, 2001.
 #
-# $PostgreSQL: pgsql/src/backend/po/zh_CN.po,v 1.8 2004/09/13 20:53:10 petere Exp $
+# $PostgreSQL: pgsql/src/backend/po/zh_CN.po,v 1.9 2004/12/11 19:08:56 petere Exp $
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: PostgreSQL 7.5\n"
+"Project-Id-Version: PostgreSQL 8.0\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2004-09-13 11:21+0000\n"
+"POT-Creation-Date: 2004-12-02 10:00+0000\n"
 "PO-Revision-Date: 2003-09-15 13:49:24+0800\n"
 "Last-Translator: Bao Wei <weibao@qmail.zhengmai.net.cn>\n"
 "Language-Team: Weiping He <laser@zhengmai.com.cn>\n"
@@ -16,38 +16,37 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 
 #: lib/dllist.c:43 lib/dllist.c:88 libpq/auth.c:637
-#: utils/adt/oracle_compat.c:73 utils/adt/oracle_compat.c:124
-#: utils/adt/ri_triggers.c:3459 utils/adt/cash.c:297 utils/adt/cash.c:312
-#: utils/adt/regexp.c:191 utils/fmgr/dfmgr.c:127 utils/fmgr/fmgr.c:521
-#: utils/fmgr/fmgr.c:532 utils/init/miscinit.c:186 utils/init/miscinit.c:207
-#: utils/init/miscinit.c:217 utils/misc/guc.c:1868 utils/misc/guc.c:1881
-#: utils/misc/guc.c:1894 utils/mmgr/aset.c:335 utils/mmgr/aset.c:501
-#: utils/mmgr/aset.c:698 utils/mmgr/aset.c:891 utils/mmgr/portalmem.c:75
+#: utils/adt/oracle_compat.c:73 utils/adt/oracle_compat.c:125
+#: utils/adt/ri_triggers.c:3472 utils/adt/cash.c:297 utils/adt/cash.c:312
+#: utils/adt/regexp.c:200 utils/fmgr/dfmgr.c:127 utils/fmgr/fmgr.c:528
+#: utils/hash/dynahash.c:178 utils/hash/dynahash.c:248
+#: utils/init/miscinit.c:213 utils/init/miscinit.c:234
+#: utils/init/miscinit.c:244 utils/misc/guc.c:1909 utils/misc/guc.c:1922
+#: utils/misc/guc.c:1935 utils/mmgr/aset.c:337 utils/mmgr/aset.c:503
+#: utils/mmgr/aset.c:700 utils/mmgr/aset.c:893 utils/mmgr/portalmem.c:78
 #: utils/cache/typcache.c:165 utils/cache/typcache.c:487
-#: utils/cache/relcache.c:164 utils/cache/relcache.c:178
-#: utils/cache/relcache.c:1130 storage/ipc/sinval.c:774 storage/file/fd.c:587
-#: storage/file/fd.c:620 storage/file/fd.c:766 storage/lmgr/lock.c:497
-#: storage/smgr/md.c:138 storage/smgr/md.c:848 storage/smgr/smgr.c:213
-#: storage/buffer/localbuf.c:139 commands/sequence.c:800
-#: executor/execGrouping.c:328 executor/execGrouping.c:388
-#: executor/nodeIndexscan.c:1051 postmaster/postmaster.c:808
-#: postmaster/postmaster.c:1696 postmaster/postmaster.c:2415
-#: postmaster/pgstat.c:1006 postmaster/pgstat.c:1023 postmaster/pgstat.c:2452
-#: postmaster/pgstat.c:2527 postmaster/pgstat.c:2572 postmaster/pgstat.c:2623
+#: utils/cache/relcache.c:169 utils/cache/relcache.c:183
+#: utils/cache/relcache.c:1135 storage/ipc/sinval.c:789 storage/file/fd.c:587
+#: storage/file/fd.c:620 storage/file/fd.c:766 storage/lmgr/lock.c:494
+#: storage/smgr/md.c:844 storage/smgr/smgr.c:213 storage/buffer/localbuf.c:139
+#: commands/sequence.c:794 executor/execGrouping.c:384
+#: postmaster/postmaster.c:809 postmaster/postmaster.c:1679
+#: postmaster/postmaster.c:2398 postmaster/pgstat.c:2432
+#: postmaster/pgstat.c:2499
 msgid "out of memory"
 msgstr "ÄÚ´æÓþ¡"
 
-#: main/main.c:94
+#: main/main.c:99
 #, c-format
 msgid "%s: setsysinfo failed: %s\n"
 msgstr "%s: setsysinfo Ê§°Ü: %s\n"
 
-#: main/main.c:112
+#: main/main.c:117
 #, c-format
 msgid "%s: WSAStartup failed: %d\n"
 msgstr "%s: WSAStartup Ê§°Ü: %d\n"
 
-#: main/main.c:215
+#: main/main.c:217
 msgid ""
 "\"root\" execution of the PostgreSQL server is not permitted.\n"
 "The server must be started under an unprivileged user ID to prevent\n"
@@ -59,41 +58,45 @@ msgstr ""
 "¿ÉÄܵÄϵͳ°²È«ÐÔÎÊÌâ. ²ÎÔÄÎĵµ»ñÈ¡¸ü¶à\n"
 "ÓйØÈçºÎÕýÈ·Æô¶¯·þÎñÆ÷µÄÐÅÏ¢.\n"
 
-#: main/main.c:234
+#: main/main.c:236
 #, c-format
 msgid "%s: real and effective user IDs must match\n"
 msgstr "%s: ÕæʵºÍÓÐЧÓû§±êʶ±ØÐëÏ໥ƥÅä\n"
 
-#: main/main.c:241
+#: main/main.c:243
 msgid ""
-"execution of PostgreSQL by a user with administrative permissions is not "
+"Execution of PostgreSQL by a user with administrative permissions is not\n"
 "permitted.\n"
 "The server must be started under an unprivileged user ID to prevent\n"
-"possible system security compromise.  See the documentation for\n"
+"possible system security compromises.  See the documentation for\n"
 "more information on how to properly start the server.\n"
 msgstr ""
+"²»ÔÊÐí¹ÜÀíԱȨÏÞµÄÓû§ÔËÐРPostgreSQL ·þÎñÆ÷.\n"
+"·þÎñÆ÷±ØÐëÒÔÒ»¸ö·ÇÌØȨµÄÓû§Éí·ÝÆô¶¯ÒÔ±ÜÃâ\n"
+"¿ÉÄܵÄϵͳ°²È«ÐÔÎÊÌâ. ²ÎÔÄÎĵµ»ñÈ¡¸ü¶à\n"
+"ÓйØÈçºÎÕýÈ·Æô¶¯·þÎñÆ÷µÄÐÅÏ¢.\n"
 
-#: main/main.c:301
+#: main/main.c:314
 #, c-format
 msgid "%s: invalid effective UID: %d\n"
 msgstr "%s: ÎÞЧ UID: %d\n"
 
-#: main/main.c:314
+#: main/main.c:327
 #, c-format
 msgid "%s: could not determine user name (GetUserName failed)\n"
 msgstr "%s: ÎÞ·¨È·¶¨Óû§Ãû³Æ (GetUserName Ê§°Ü)\n"
 
-#: port/pg_shmem.c:94 port/sysv_shmem.c:94
+#: port/pg_shmem.c:101 port/sysv_shmem.c:101
 #, c-format
 msgid "could not create shared memory segment: %m"
 msgstr "ÎÞ·¨´´½¨¹²ÏíÄÚ´æ¶Î: %m"
 
-#: port/pg_shmem.c:95 port/sysv_shmem.c:95
+#: port/pg_shmem.c:102 port/sysv_shmem.c:102
 #, c-format
 msgid "Failed system call was shmget(key=%lu, size=%u, 0%o)."
 msgstr "shmget(key=%lu, size=%u, 0%o) ÏµÍ³µ÷ÓÃʧ°Ü."
 
-#: port/pg_shmem.c:99 port/sysv_shmem.c:99
+#: port/pg_shmem.c:106 port/sysv_shmem.c:106
 #, c-format
 msgid ""
 "This error usually means that PostgreSQL's request for a shared memory "
@@ -109,7 +112,7 @@ msgid ""
 "configuration."
 msgstr ""
 
-#: port/pg_shmem.c:112 port/sysv_shmem.c:112
+#: port/pg_shmem.c:119 port/sysv_shmem.c:119
 #, c-format
 msgid ""
 "This error usually means that PostgreSQL's request for a shared memory "
@@ -120,7 +123,7 @@ msgid ""
 "configuration."
 msgstr ""
 
-#: port/pg_shmem.c:121 port/sysv_shmem.c:121
+#: port/pg_shmem.c:128 port/sysv_shmem.c:128
 #, c-format
 msgid ""
 "This error does *not* mean that you have run out of disk space. It occurs "
@@ -134,44 +137,40 @@ msgid ""
 "configuration."
 msgstr ""
 
-#: port/win32/signal.c:227
+#: port/pg_shmem.c:408 port/sysv_shmem.c:408
 #, c-format
-msgid "failed to create signal listener pipe: %d. Retrying.\n"
-msgstr ""
+msgid "could not stat data directory \"%s\": %m"
+msgstr "ÎÞ·¨È¡Ä¿Â¼ \"%s\" ×´Ì¬: %m"
 
-#: port/win32/signal.c:239
+#: port/win32/signal.c:173
 #, c-format
-msgid "failed to create signal dispatch thread: %d\n"
-msgstr "´´½¨É±ËÀÏ̵߳ÄÐźÅʧ°Ü: %d\n"
+msgid "could not create signal listener pipe for pid %d: error code %d"
+msgstr "ÎÞ·¨Îª½ø³Ì (pid) %d ´´½¨ÐźżàÌý¹ÜµÀ: ´íÎóÂëΪ %d"
 
-#: port/win32/security.c:39
+#: port/win32/signal.c:253
 #, c-format
-msgid "failed to open process token: %d\n"
-msgstr "´ò¿ª½ø³ÌÁîÅÆ (token) Ê§°Ü: %d\n"
-
-#: port/win32/security.c:46
-msgid "failed to get token information - got zero size!\n"
-msgstr "»ñÈ¡ÁîÅÆ (token) ÐÅϢʧ°Ü - »ñµÃµÄ´óСΪÁã!\n"
+msgid "could not create signal listener pipe: error code %d; retrying\n"
+msgstr "ÎÞ·¨´´½¨ÐźżàÌý¹ÜµÀ: ´íÎóÂë %d; ÖØÊÔ\n"
 
-#: port/win32/security.c:52 port/win32/security.c:69
+#: port/win32/signal.c:266
 #, c-format
-msgid "failed to get token information: %d\n"
-msgstr "»ñÈ¡ÁîÅÆ (token) ÐÅϢʧ°Ü: %d\n"
+msgid "could not create signal dispatch thread: error code %d\n"
+msgstr "ÎÞ·¨´´½¨Ðźŷ¢ËÍÏß³Ì: ´íÎóÂë %d\n"
 
-#: port/win32/security.c:60
+#: port/win32/security.c:43
 #, c-format
-msgid "failed to allocate %i bytes for token information!\n"
-msgstr "ΪÁîÅÆ (token) ÐÅÏ¢·ÖÅä %i ×Ö½Úʧ°Ü!\n"
+msgid "could not open process token: error code %d\n"
+msgstr "ÎÞ·¨´ò¿ª½ø³ÌÁîÅÆ (token): ´íÎóÂë %d\n"
 
-#: port/win32/security.c:80
+#: port/win32/security.c:63
 #, c-format
-msgid "failed to get SID for Administrators group: %d\n"
-msgstr "»ñÈ¡¹ÜÀíÔ±×éµÄ SID Ê§°Ü: %d\n"
+msgid "could not get SID for Administrators group: error code %d\n"
+msgstr "ÎÞ·¨»ñÈ¡¹ÜÀíÔ±×éµÄ SID: ´íÎóÂë %d\n"
 
-#: port/win32/security.c:89
+#: port/win32/security.c:72
 #, c-format
-msgid "failed to get SID for PowerUsers group: %d\n"
-msgstr "»ñÈ¡³¬¼¶Óû§×éµÄ SID Ê§°Ü: %d\n"
+msgid "could not get SID for PowerUsers group: error code %d\n"
+msgstr "ÎÞ·¨»ñÈ¡³¬¼¶Óû§×éµÄ SID: ´íÎóÂë %d\n"
 
 #: port/sysv_sema.c:117 port/pg_sema.c:117
 #, c-format
@@ -204,12 +203,12 @@ msgid ""
 msgstr ""
 "Äã¿ÉÄÜÐèÒªÔö¼ÓÄں˵ĠSEMVMX ÖµÖÁÉÙΪ %d. ÏêϸÐÅÏ¢Çë²éÕÒ PostgreSQL Îĵµ."
 
-#: tcop/fastpath.c:106 tcop/fastpath.c:449 tcop/fastpath.c:572
+#: tcop/fastpath.c:106 tcop/fastpath.c:444 tcop/fastpath.c:567
 #, c-format
 msgid "invalid argument size %d in function call message"
-msgstr ""
+msgstr "ÔÚº¯Êýµ÷ÓÃÐÅÏ¢ÖÐ, ²ÎÊý´óС %d ÊÇÎÞЧµÄ"
 
-#: tcop/fastpath.c:186 tcop/fastpath.c:516 tcop/postgres.c:1480
+#: tcop/fastpath.c:186 tcop/fastpath.c:511 tcop/postgres.c:1490
 #: access/common/printtup.c:296
 #, c-format
 msgid "unsupported format code: %d"
@@ -220,113 +219,113 @@ msgstr "
 msgid "function with OID %u does not exist"
 msgstr "OID Îª %u µÄº¯Êý²»´æÔÚ"
 
-#: tcop/fastpath.c:291 tcop/postgres.c:284 tcop/postgres.c:307
+#: tcop/fastpath.c:291 tcop/postgres.c:287 tcop/postgres.c:310
 #: commands/copy.c:403 commands/copy.c:421 commands/copy.c:425
 #: commands/copy.c:486 commands/copy.c:535
 msgid "unexpected EOF on client connection"
 msgstr "ÔÚ¿Í»§¶ËÁª½ÓÉϵÄÒâÍâ EOF"
 
-#: tcop/fastpath.c:304 tcop/postgres.c:845 tcop/postgres.c:1166
-#: tcop/postgres.c:1650
+#: tcop/fastpath.c:304 tcop/postgres.c:854 tcop/postgres.c:1176
+#: tcop/postgres.c:1660
 msgid ""
 "current transaction is aborted, commands ignored until end of transaction "
 "block"
 msgstr "µ±Ç°ÊÂÎñ±»ÖÕÖ¹, ÊÂÎñ¿é½áÊø֮ǰµÄ²éѯ±»ºöÂÔ"
 
-#: tcop/fastpath.c:419 tcop/fastpath.c:542
+#: tcop/fastpath.c:414 tcop/fastpath.c:537
 #, c-format
 msgid "function call message contains %d arguments but function requires %d"
 msgstr "º¯Êýµ÷ÓÃÐÅÏ¢°üº¬ %d ¸ö²ÎÊý, µ«º¯ÊýÐèÒª %d ¸ö"
 
-#: tcop/fastpath.c:427
+#: tcop/fastpath.c:422
 #, c-format
 msgid "function call message contains %d argument formats but %d arguments"
 msgstr "º¯Êýµ÷ÓÃÐÅϢΪ°üº¬ %d ¸ö²ÎÊýµÄ¸ñʽ, µ«¸ø¶¨ÁË %d ¸ö²ÎÊý"
 
-#: tcop/fastpath.c:510 tcop/fastpath.c:595
+#: tcop/fastpath.c:505 tcop/fastpath.c:590
 #, c-format
 msgid "incorrect binary data format in function argument %d"
 msgstr "º¯Êý²ÎÊý %d Îª²»ÕýÈ·µÄ¶þ½øÖÆÊý¾Ý¸ñʽ"
 
-#: tcop/pquery.c:409
+#: tcop/pquery.c:448
 #, c-format
 msgid "bind message has %d result formats but query has %d columns"
 msgstr ""
 
-#: tcop/pquery.c:481 tcop/pquery.c:1021 commands/portalcmds.c:337
+#: tcop/pquery.c:523 tcop/pquery.c:1096 commands/portalcmds.c:346
 #, c-format
 msgid "portal \"%s\" cannot be run"
 msgstr "Èë¿Ú \"%s\" ²»¿ÉÒÔÔËÐÐ"
 
-#: tcop/pquery.c:698
+#: tcop/pquery.c:771
 msgid "cursor can only scan forward"
 msgstr "ÓαêÄܹ»Ö»ÏòǰɨÃè"
 
-#: tcop/pquery.c:699
+#: tcop/pquery.c:772
 msgid "Declare it with SCROLL option to enable backward scan."
 msgstr "´ø SCROLL Ñ¡ÏîÉùÃ÷ÔÊÐíÏòºóɨÃè"
 
-#: tcop/postgres.c:334 tcop/postgres.c:346 tcop/postgres.c:357
-#: tcop/postgres.c:369 tcop/postgres.c:3175
+#: tcop/postgres.c:337 tcop/postgres.c:349 tcop/postgres.c:360
+#: tcop/postgres.c:372 tcop/postgres.c:3218
 #, c-format
 msgid "invalid frontend message type %d"
 msgstr "ÎÞЧǰ¶ËÐÅÏ¢ÀàÐÍ %d"
 
-#: tcop/postgres.c:468 tcop/postgres.c:503 tcop/postgres.c:514
+#: tcop/postgres.c:473 tcop/postgres.c:510 tcop/postgres.c:522
 #, c-format
 msgid "statement: %s"
 msgstr "Óï¾ä: %s"
 
-#: tcop/postgres.c:1008
+#: tcop/postgres.c:1018
 #, c-format
 msgid "duration: %ld.%03ld ms"
 msgstr "Ö´ÐÐʱ¼ä: %ld.%03ld ms"
 
-#: tcop/postgres.c:1021
+#: tcop/postgres.c:1031
 #, c-format
 msgid "duration: %ld.%03ld ms  statement: %s"
 msgstr "Ö´ÐÐʱ¼ä: %ld.%03ld ms  Óï¾ä: %s"
 
-#: tcop/postgres.c:1129
+#: tcop/postgres.c:1139
 msgid "cannot insert multiple commands into a prepared statement"
 msgstr "ÎÞ·¨²åÈë¶àÌõÃüÁîµ½Ò»¸ö×¼±¸ºÃµÄÓï¾äÖÐ"
 
-#: tcop/postgres.c:1194 parser/analyze.c:3141
+#: tcop/postgres.c:1204 parser/analyze.c:3149
 #, c-format
 msgid "could not determine data type of parameter $%d"
 msgstr "ÎÞ·¨È·¶¨²ÎÊý $%d µÄÊý¾ÝÀàÐÍ"
 
-#: tcop/postgres.c:1332
+#: tcop/postgres.c:1342
 #, c-format
 msgid "bind message has %d parameter formats but %d parameters"
 msgstr ""
 
-#: tcop/postgres.c:1345 tcop/postgres.c:1727
+#: tcop/postgres.c:1355 tcop/postgres.c:1737
 msgid "unnamed prepared statement does not exist"
 msgstr "δÃüÃûµÄ×¼±¸Óï¾ä²»´æÔÚ"
 
-#: tcop/postgres.c:1351
+#: tcop/postgres.c:1361
 #, c-format
 msgid ""
 "bind message supplies %d parameters, but prepared statement \"%s\" requires %"
 "d"
 msgstr ""
 
-#: tcop/postgres.c:1473
+#: tcop/postgres.c:1483
 #, c-format
 msgid "incorrect binary data format in bind parameter %d"
 msgstr ""
 
-#: tcop/postgres.c:1581 tcop/postgres.c:1780
+#: tcop/postgres.c:1591 tcop/postgres.c:1790
 #, c-format
 msgid "portal \"%s\" does not exist"
 msgstr "Èë¿Ú \"%s\" ²»´æÔÚ"
 
-#: tcop/postgres.c:1874
+#: tcop/postgres.c:1884
 msgid "terminating connection because of crash of another server process"
 msgstr "ÖжÏÁª½Ó, ÒòΪÆäËü·þÎñÆ÷½ø³Ì±ÀÀ£"
 
-#: tcop/postgres.c:1875
+#: tcop/postgres.c:1885
 msgid ""
 "The postmaster has commanded this server process to roll back the current "
 "transaction and exit, because another server process exited abnormally and "
@@ -335,39 +334,39 @@ msgstr ""
 "Postmaster ÃüÁî´Ë·þÎñÆ÷½ø³Ì»Ø¹öµ±Ç°ÊÂÎï²¢Í˳ö, ÒòΪÆäËü·þÎñÆ÷½ø³Ì²»Õý³£µÄÍ˳ö"
 "¿ÉÄܻٻµÁ˹²ÏíÄÚ´æ."
 
-#: tcop/postgres.c:1879
+#: tcop/postgres.c:1889
 msgid ""
 "In a moment you should be able to reconnect to the database and repeat your "
 "command."
 msgstr "Ò»»á¶ùÄ㽫¿ÉÒÔÖØÁª½ÓÊý¾Ý¿â²¢ÇÒÖظ´ÄãµÄÃüÁî."
 
-#: tcop/postgres.c:1995
+#: tcop/postgres.c:2005
 msgid "floating-point exception"
 msgstr "¸¡µãÒì³£"
 
-#: tcop/postgres.c:1996
+#: tcop/postgres.c:2006
 msgid ""
 "An invalid floating-point operation was signaled. This probably means an out-"
 "of-range result or an invalid operation, such as division by zero."
 msgstr ""
 
-#: tcop/postgres.c:2032
+#: tcop/postgres.c:2042
 msgid "terminating connection due to administrator command"
 msgstr "ÓÉÓÚ¹ÜÀíÔ±ÃüÁîÖжÏÁª½Ó"
 
-#: tcop/postgres.c:2042
+#: tcop/postgres.c:2052
 msgid "canceling query due to user request"
 msgstr "ÓÉÓÚÓû§ÇëÇóÈ¡Ïû²éѯ"
 
-#: tcop/postgres.c:2093
+#: tcop/postgres.c:2103
 msgid "stack depth limit exceeded"
 msgstr ""
 
-#: tcop/postgres.c:2094
+#: tcop/postgres.c:2104
 msgid "Increase the configuration parameter \"max_stack_depth\"."
 msgstr "Ôö¼ÓÅäÖòÎÊý \"max_stack_depth\"."
 
-#: tcop/postgres.c:2112
+#: tcop/postgres.c:2122
 #, c-format
 msgid ""
 "%s is the PostgreSQL stand-alone backend.  It is not\n"
@@ -378,7 +377,7 @@ msgstr ""
 " ²»ÊÇÆÕͨÓû§ÓÐÒâʹÓõÄ.\n"
 "\n"
 
-#: tcop/postgres.c:2114
+#: tcop/postgres.c:2124
 #, c-format
 msgid ""
 "Usage:\n"
@@ -389,92 +388,92 @@ msgstr ""
 "  %s [Ñ¡Ïî]... [Êý¾Ý¿âÃû]\n"
 "\n"
 
-#: tcop/postgres.c:2115 postmaster/postmaster.c:1088
+#: tcop/postgres.c:2125 postmaster/postmaster.c:1071
 #, c-format
 msgid "Options:\n"
 msgstr "Ñ¡Ïî:\n"
 
-#: tcop/postgres.c:2117 postmaster/postmaster.c:1090
+#: tcop/postgres.c:2127 postmaster/postmaster.c:1073
 #, c-format
 msgid "  -A 1|0          enable/disable run-time assert checking\n"
 msgstr "  -A 1|0          ´ò¿ª/¹Ø±ÕÔËÐÐʱ¶ÏÑÔ¼ì²é\n"
 
-#: tcop/postgres.c:2119 postmaster/postmaster.c:1092
+#: tcop/postgres.c:2129 postmaster/postmaster.c:1075
 #, c-format
 msgid "  -B NBUFFERS     number of shared buffers\n"
 msgstr "  -B NBUFFERS     ¹²Ïí»º³åÇøµÄÊýÁ¿\n"
 
-#: tcop/postgres.c:2120 postmaster/postmaster.c:1093
+#: tcop/postgres.c:2130 postmaster/postmaster.c:1076
 #, c-format
 msgid "  -c NAME=VALUE   set run-time parameter\n"
 msgstr "  -c Ãû×Ö=ÊýÖµ    ÉèÖÃÔËÐÐʱ²ÎÊý\n"
 
-#: tcop/postgres.c:2121
+#: tcop/postgres.c:2131
 #, c-format
 msgid "  -d 0-5          debugging level (0 is off)\n"
 msgstr "  -d 0-5          µ÷ÊÔ¼¶±ð (0 ¹Ø±Õ)\n"
 
-#: tcop/postgres.c:2122 postmaster/postmaster.c:1095
+#: tcop/postgres.c:2132 postmaster/postmaster.c:1078
 #, c-format
 msgid "  -D DATADIR      database directory\n"
 msgstr "  -D Êý¾ÝĿ¼     Êý¾Ý¿âĿ¼\n"
 
-#: tcop/postgres.c:2123
+#: tcop/postgres.c:2133
 #, c-format
 msgid "  -e              use European date input format (DMY)\n"
 msgstr "  -e              Ê¹ÓÃÅ·ÖÞÈÕÆÚÊäÈë¸ñʽ (DMY)\n"
 
-#: tcop/postgres.c:2124
+#: tcop/postgres.c:2134
 #, c-format
 msgid "  -E              echo query before execution\n"
 msgstr "  -E              Ö´ÐÐÇ°ÏÔʾ²éѯ\n"
 
-#: tcop/postgres.c:2125 postmaster/postmaster.c:1096
+#: tcop/postgres.c:2135 postmaster/postmaster.c:1079
 #, c-format
 msgid "  -F              turn fsync off\n"
 msgstr "  -F              ¹Ø±Õ fsync\n"
 
-#: tcop/postgres.c:2126
+#: tcop/postgres.c:2136
 #, c-format
 msgid "  -N              do not use newline as interactive query delimiter\n"
 msgstr "  -N              ²»Ê¹ÓÃÐÂÐÐ×÷Ϊ½»»¥²éѯµÄ·Ö¸ô·û\n"
 
-#: tcop/postgres.c:2127
+#: tcop/postgres.c:2137
 #, c-format
 msgid "  -o FILENAME     send stdout and stderr to given file\n"
 msgstr "  -o FILENAME     °Ñ±ê×¼Êä³öºÍ±ê×¼´íÎó·¢Ë͵½Ö¸¶¨µÄÎļþÖÐ\n"
 
-#: tcop/postgres.c:2128
+#: tcop/postgres.c:2138
 #, c-format
 msgid "  -P              disable system indexes\n"
 msgstr "  -P              ¹Ø±ÕϵͳË÷Òý\n"
 
-#: tcop/postgres.c:2129
+#: tcop/postgres.c:2139
 #, c-format
 msgid "  -s              show statistics after each query\n"
 msgstr "  -s              Ã¿¸ö²éѯºóÏÔʾͳ¼ÆÐÅÏ¢\n"
 
-#: tcop/postgres.c:2130
+#: tcop/postgres.c:2140
 #, c-format
-msgid "  -S WORK-MEM     set amount of memory for sorts (in kbytes)\n"
-msgstr "  -S WORK-MEM     ÉèÖÃÅÅÐòÄÚ´æÊýÁ¿ (µ¥Î»Îª kbytes)\n"
+msgid "  -S WORK-MEM     set amount of memory for sorts (in kB)\n"
+msgstr "  -S WORK-MEM     ÉèÖÃÅÅÐòÄÚ´æÊýÁ¿ (µ¥Î»Îª kB)\n"
 
-#: tcop/postgres.c:2131
+#: tcop/postgres.c:2141
 #, c-format
 msgid "  --describe-config  describe configuration parameters, then exit\n"
 msgstr "  --describe-config  ÃèÊöÅäÖòÎÊý, È»ºóÍ˳ö\n"
 
-#: tcop/postgres.c:2132 postmaster/postmaster.c:1107
+#: tcop/postgres.c:2142 postmaster/postmaster.c:1090
 #, c-format
 msgid "  --help          show this help, then exit\n"
 msgstr "  --help          ÏÔʾ´Ë°ïÖúÐÅÏ¢, È»ºóÍ˳ö\n"
 
-#: tcop/postgres.c:2133 postmaster/postmaster.c:1108
+#: tcop/postgres.c:2143 postmaster/postmaster.c:1091
 #, c-format
 msgid "  --version       output version information, then exit\n"
 msgstr "  --version       Êä³ö°æ±¾ÐÅÏ¢, È»ºóÍ˳ö\n"
 
-#: tcop/postgres.c:2134 postmaster/postmaster.c:1110
+#: tcop/postgres.c:2144 postmaster/postmaster.c:1093
 #, c-format
 msgid ""
 "\n"
@@ -483,32 +482,32 @@ msgstr ""
 "\n"
 "¿ª·¢ÈËԱѡÏî:\n"
 
-#: tcop/postgres.c:2135
+#: tcop/postgres.c:2145
 #, c-format
 msgid "  -f s|i|n|m|h    forbid use of some plan types\n"
 msgstr "  -f s|i|n|m|h    ½ûֹһЩ¹æ»®ÀàÐ͵ÄʹÓÃ\n"
 
-#: tcop/postgres.c:2136
+#: tcop/postgres.c:2146
 #, c-format
 msgid "  -i              do not execute queries\n"
 msgstr "  -i              ²»Ö´Ðвéѯ\n"
 
-#: tcop/postgres.c:2137
+#: tcop/postgres.c:2147
 #, c-format
 msgid "  -O              allow system table structure changes\n"
 msgstr "  -O              ÔÊÐí¸Ä±äϵͳ±í½á¹¹\n"
 
-#: tcop/postgres.c:2138
+#: tcop/postgres.c:2148
 #, c-format
 msgid "  -t pa|pl|ex     show timings after each query\n"
 msgstr "  -t pa|pl|ex     Ã¿¸ö²éѯºóÏÔʾ¼Æʱ\n"
 
-#: tcop/postgres.c:2139
+#: tcop/postgres.c:2149
 #, c-format
 msgid "  -W NUM          wait NUM seconds to allow attach from a debugger\n"
 msgstr "  -W NUM          µÈ´ý NUM Ãë, ÒÔ±ãÔÊÐíµ÷ÊÔÆ÷¼ÓÈëµ÷ÊÔ\n"
 
-#: tcop/postgres.c:2140
+#: tcop/postgres.c:2150
 #, c-format
 msgid ""
 "\n"
@@ -517,72 +516,59 @@ msgstr ""
 "\n"
 "´íÎ󱨸æÖÁ <pgsql-bugs@postgresql.org>.\n"
 
-#: tcop/postgres.c:2265
+#: tcop/postgres.c:2314
 msgid "assert checking is not compiled in"
 msgstr "ûÓаѶÏÑÔ (assert) ¼ì²é±àÒë½øÀ´"
 
-#: tcop/postgres.c:2505 postmaster/postmaster.c:498 bootstrap/bootstrap.c:302
+#: tcop/postgres.c:2533 postmaster/postmaster.c:549 bootstrap/bootstrap.c:299
 #, c-format
 msgid "--%s requires a value"
 msgstr "--%s ÐèÒªÒ»¸öÖµ"
 
-#: tcop/postgres.c:2510 postmaster/postmaster.c:503 bootstrap/bootstrap.c:307
+#: tcop/postgres.c:2538 postmaster/postmaster.c:554 bootstrap/bootstrap.c:304
 #, c-format
 msgid "-c %s requires a value"
 msgstr "-c %s ÐèÒªÒ»¸öÖµ"
 
-#: tcop/postgres.c:2578 postmaster/postmaster.c:950 bootstrap/bootstrap.c:335
-#, c-format
-msgid ""
-"%s does not know where to find the database system data.\n"
-"You must specify the directory that contains the database system\n"
-"either by specifying the -D invocation option or by setting the\n"
-"PGDATA environment variable.\n"
-msgstr ""
-"%s ²»ÖªµÀÔÚÄÄÀï¿ÉÒÔÕÒµ½Êý¾Ý¿âϵͳÊý¾Ý.\n"
-"Äã±ØÐëͨ¹ý -D Ñ¡ÏîÖ¸¶¨»òÕßͨ¹ýÉèÖÃ\n"
-"PGDATA »·¾³±äÁ¿ÉùÃ÷°üº¬Êý¾Ý¿âϵͳµÄĿ¼.\n"
-"\n"
-
-#: tcop/postgres.c:2655
+#: tcop/postgres.c:2652
 msgid "invalid command-line arguments for server process"
 msgstr "·þÎñÆ÷½ø³ÌµÄÎÞЧÃüÁîÐвÎÊý"
 
-#: tcop/postgres.c:2656 tcop/postgres.c:2672
+#: tcop/postgres.c:2653 tcop/postgres.c:2669
 #, c-format
 msgid "Try \"%s --help\" for more information."
 msgstr "ÇëÓà\"%s --help\" »ñÈ¡¸ü¶àµÄÐÅÏ¢."
 
-#: tcop/postgres.c:2670
+#: tcop/postgres.c:2667
 #, c-format
 msgid "%s: invalid command-line arguments"
 msgstr "%s: ÎÞЧµÄÃüÁîÐвÎÊý"
 
-#: tcop/postgres.c:2680
+#: tcop/postgres.c:2677
 #, c-format
 msgid "%s: no database nor user name specified"
 msgstr "%s: Ã»ÓÐÖ¸¶¨Êý¾Ý¿â, Ò²Ã»ÓÐÖ¸¶¨Óû§Ãû"
 
-#: tcop/postgres.c:3088
+#: tcop/postgres.c:3131
 #, c-format
 msgid "invalid CLOSE message subtype %d"
 msgstr "ÎÞЧµÄ CLOSE ÐÅÏ¢×ÓÀàÐÍ %d"
 
-#: tcop/postgres.c:3118
+#: tcop/postgres.c:3161
 #, c-format
 msgid "invalid DESCRIBE message subtype %d"
 msgstr "ÎÞЧµÄ DESCRIBE ÐÅÏ¢×ÓÀàÐÍ %d"
 
-#: tcop/postgres.c:3298 nodes/print.c:86 storage/lmgr/deadlock.c:888
-#: commands/vacuumlazy.c:489 commands/vacuumlazy.c:770 commands/vacuum.c:2258
+#: tcop/postgres.c:3341 nodes/print.c:86 storage/lmgr/deadlock.c:888
+#: commands/vacuumlazy.c:517 commands/vacuumlazy.c:820 commands/vacuum.c:2257
 #, c-format
 msgid "%s"
-msgstr ""
+msgstr "%s"
 
-#: tcop/postgres.c:3359
+#: tcop/postgres.c:3402
 #, c-format
 msgid "disconnection: session time: %s%s%s%s%s"
-msgstr ""
+msgstr "Áª½Ó¶Ï¿ª: »á»°Ê±¼ä: %s%s%s%s%s"
 
 #: tcop/utility.c:77
 #, c-format
@@ -590,8 +576,8 @@ msgid "table \"%s\" does not exist"
 msgstr "±í \"%s\" ²»´æÔÚ"
 
 #: tcop/utility.c:78 commands/trigger.c:141 commands/trigger.c:546
-#: commands/comment.c:341 commands/indexcmds.c:136 commands/indexcmds.c:937
-#: commands/tablecmds.c:539 commands/tablecmds.c:2592 commands/lockcmds.c:68
+#: commands/comment.c:341 commands/indexcmds.c:137 commands/indexcmds.c:951
+#: commands/tablecmds.c:544 commands/tablecmds.c:2624 commands/lockcmds.c:68
 #, c-format
 msgid "\"%s\" is not a table"
 msgstr "\"%s\" ²»ÊÇÒ»¸ö±í"
@@ -605,7 +591,7 @@ msgstr "
 msgid "sequence \"%s\" does not exist"
 msgstr "ÐòÁР\"%s\" ²»´æÔÚ"
 
-#: tcop/utility.c:83 commands/comment.c:334 commands/sequence.c:780
+#: tcop/utility.c:83 commands/comment.c:334 commands/sequence.c:767
 #, c-format
 msgid "\"%s\" is not a sequence"
 msgstr "\"%s\" ²»ÊÇÒ»¸öÐòÁÐ"
@@ -633,9 +619,9 @@ msgstr "
 msgid "index \"%s\" does not exist"
 msgstr "Ë÷Òý \"%s\" ²»´æÔÚ"
 
-#: tcop/utility.c:93 access/index/indexam.c:134 access/index/indexam.c:159
-#: access/index/indexam.c:184 commands/comment.c:327 commands/indexcmds.c:873
-#: commands/indexcmds.c:903
+#: tcop/utility.c:93 access/index/indexam.c:139 access/index/indexam.c:164
+#: access/index/indexam.c:189 commands/comment.c:327 commands/indexcmds.c:887
+#: commands/indexcmds.c:917
 #, c-format
 msgid "\"%s\" is not an index"
 msgstr "\"%s\" ²»ÊÇÒ»¸öË÷Òý"
@@ -647,7 +633,7 @@ msgstr "
 #: tcop/utility.c:97 utils/adt/regproc.c:1003 commands/functioncmds.c:110
 #: commands/typecmds.c:423 commands/typecmds.c:809 commands/typecmds.c:1167
 #: commands/typecmds.c:1288 commands/typecmds.c:1400 commands/typecmds.c:1487
-#: commands/typecmds.c:2072 commands/tablecmds.c:4586 parser/parse_func.c:1401
+#: commands/typecmds.c:2072 commands/tablecmds.c:4632 parser/parse_func.c:1401
 #: parser/parse_type.c:201 parser/parse_type.c:227 catalog/pg_type.c:517
 #, c-format
 msgid "type \"%s\" does not exist"
@@ -663,18 +649,18 @@ msgid "Use DROP TYPE to remove a type."
 msgstr "ÇëʹÓàDROP TYPE É¾³ýÒ»¸öÀàÐÍ."
 
 #: tcop/utility.c:182 tcop/utility.c:217 commands/trigger.c:147
-#: commands/trigger.c:552 commands/tablecmds.c:550 commands/tablecmds.c:1242
-#: commands/tablecmds.c:1448 commands/tablecmds.c:2604
-#: commands/tablecmds.c:3766 commands/tablecmds.c:5302
+#: commands/trigger.c:552 commands/tablecmds.c:555 commands/tablecmds.c:1274
+#: commands/tablecmds.c:1480 commands/tablecmds.c:2636
+#: commands/tablecmds.c:3798 commands/tablecmds.c:5427
 #, c-format
 msgid "permission denied: \"%s\" is a system catalog"
 msgstr "ȨÏÞ²»¹»: \"%s\" ÊÇÒ»¸öϵͳ±í"
 
-#: tcop/utility.c:283 commands/copy.c:905 executor/execMain.c:468
+#: tcop/utility.c:323 commands/copy.c:905 executor/execMain.c:443
 msgid "transaction is read-only"
 msgstr "ÊÂÎñÊÇÖ»¶Á"
 
-#: tcop/utility.c:934
+#: tcop/utility.c:973
 msgid "must be superuser to do CHECKPOINT"
 msgstr "Ö»Óг¬¼¶Óû§¿ÉÒÔ×ö CHECKPOINT"
 
@@ -683,7 +669,7 @@ msgid "conditional utility statements are not implemented"
 msgstr "Ìõ¼þ¹¤¾ßÓï¾äûÓÐʵÏÖ"
 
 #: rewrite/rewriteManip.c:749 rewrite/rewriteManip.c:805
-#: rewrite/rewriteHandler.c:177 parser/analyze.c:1687 parser/analyze.c:1759
+#: rewrite/rewriteHandler.c:177 parser/analyze.c:1699 parser/analyze.c:1771
 msgid "conditional UNION/INTERSECT/EXCEPT statements are not implemented"
 msgstr "Ìõ¼þ¹¤¾ßÓï¾ä UNION/INTERSECT/EXCEPT Ã»ÓÐʵÏÖ"
 
@@ -797,48 +783,48 @@ msgstr "
 msgid "rule \"%s\" for relation \"%s\" does not exist"
 msgstr "¹Øϵ \"%2$s\" µÄ \"%1$s\" ¹æÔò²»´æÔÚ"
 
-#: rewrite/rewriteHandler.c:491 rewrite/rewriteHandler.c:510
+#: rewrite/rewriteHandler.c:492 rewrite/rewriteHandler.c:511
 #, c-format
 msgid "multiple assignments to same column \"%s\""
 msgstr ""
 
-#: rewrite/rewriteHandler.c:646 catalog/heap.c:1827
+#: rewrite/rewriteHandler.c:647 catalog/heap.c:1812
 #, c-format
 msgid "column \"%s\" is of type %s but default expression is of type %s"
 msgstr "×ֶΠ\"%s\" ÀàÐÍÊÇ %s, µ«Ä¬Èϱí´ïʽÀàÐÍÊÇ %s"
 
-#: rewrite/rewriteHandler.c:651 parser/analyze.c:2693 parser/parse_node.c:247
-#: parser/parse_target.c:363 parser/parse_target.c:571
-#: parser/parse_target.c:580 catalog/heap.c:1832
+#: rewrite/rewriteHandler.c:652 parser/analyze.c:2701 parser/parse_node.c:247
+#: parser/parse_target.c:362 parser/parse_target.c:572
+#: parser/parse_target.c:581 catalog/heap.c:1817
 msgid "You will need to rewrite or cast the expression."
 msgstr "ÄãÐèÒªÖØд»òת»»±í´ïʽ"
 
-#: rewrite/rewriteHandler.c:967 rewrite/rewriteHandler.c:1252
+#: rewrite/rewriteHandler.c:968 rewrite/rewriteHandler.c:1253
 #, c-format
 msgid "infinite recursion detected in rules for relation \"%s\""
 msgstr "ÔÚ¹Øϵ \"%s\" µÄ¹æÔòÖз¢ÏÖÎÞÏÞÑ­»·"
 
-#: rewrite/rewriteHandler.c:1362
+#: rewrite/rewriteHandler.c:1365
 msgid "cannot insert into a view"
 msgstr "ÎÞ·¨²åÈëµ½Ò»¸öÊÓͼ"
 
-#: rewrite/rewriteHandler.c:1363
+#: rewrite/rewriteHandler.c:1366
 msgid "You need an unconditional ON INSERT DO INSTEAD rule."
 msgstr "ÄãÐèÒªÒ»¸öÎÞÌõ¼þµÄ ON INSERT DO INSTEAD ¹æÔò."
 
-#: rewrite/rewriteHandler.c:1368
+#: rewrite/rewriteHandler.c:1371
 msgid "cannot update a view"
 msgstr "ÎÞ·¨¸üÐÂÒ»¸öÊÓͼ"
 
-#: rewrite/rewriteHandler.c:1369
+#: rewrite/rewriteHandler.c:1372
 msgid "You need an unconditional ON UPDATE DO INSTEAD rule."
 msgstr "ÄãÐèÒªÒ»¸öÎÞÌõ¼þµÄ ON UPDATE DO INSTEAD ¹æÔò."
 
-#: rewrite/rewriteHandler.c:1374
+#: rewrite/rewriteHandler.c:1377
 msgid "cannot delete from a view"
 msgstr "ÎÞ·¨´ÓÒ»¸öÊÓͼÖÐɾ³ý"
 
-#: rewrite/rewriteHandler.c:1375
+#: rewrite/rewriteHandler.c:1378
 msgid "You need an unconditional ON DELETE DO INSTEAD rule."
 msgstr "ÄãÐèÒªÒ»¸öÎÞÌõ¼þµÄ ON DELETE DO INSTEAD ¹æÔò."
 
@@ -847,121 +833,118 @@ msgid ""
 "cannot use authentication method \"crypt\" because password is MD5-encrypted"
 msgstr "ÎÞ·¨Ê¹Óà\"crypt\" ÈÏÖ¤·½Ê½, ÒòΪ¿ÚÁîÊÇÓàMD5 ¼ÓÃܵÄ"
 
-#: libpq/hba.c:162
+#: libpq/hba.c:156
 #, c-format
 msgid "authentication file token too long, skipping: \"%s\""
 msgstr "ÈÏÖ¤Îļþ±ê¼Ç (token) Ì«³¤, ºöÂÔ: \"%s\""
 
-#: libpq/hba.c:328
+#: libpq/hba.c:324
 #, c-format
 msgid "could not open secondary authentication file \"@%s\" as \"%s\": %m"
 msgstr "ÎÞ·¨´ò¿ª´ÎÈÏÖ¤Îļþ \"@%s\" Îª \"%s\": %m"
 
 #: libpq/hba.c:741
 #, c-format
-msgid "invalid IP address \"%s\" in pg_hba.conf file line %d: %s"
-msgstr "ÔÚ pg_hba.conf ÎļþµÄµÚ %2$d ÐÐΪÎÞЧ IP µØÖ· \"%1$s\": %3$s"
+msgid "invalid IP address \"%s\" in file \"%s\" line %d: %s"
+msgstr "ÔÚ \"%2$s\" ÎļþµÄµÚ %3$d ÐÐΪÎÞЧ IP µØÖ· \"%1$s\": %4$s"
 
-#: libpq/hba.c:775
+#: libpq/hba.c:776
 #, c-format
-msgid "invalid IP mask \"%s\" in pg_hba.conf file line %d: %s"
-msgstr "ÔÚ pg_hba.conf ÎļþµÄµÚ %2$d ÐÐΪÎÞЧ IP ÑÚÂë \"%1$s\": %3$s"
+msgid "invalid IP mask \"%s\" in file \"%s\" line %d: %s"
+msgstr "ÔÚ \"%2$s\" ÎļþµÄµÚ %3$d ÐÐΪÎÞЧ IP ÑÚÂë \"%1$s\": %4$s"
 
-#: libpq/hba.c:789
+#: libpq/hba.c:791
 #, c-format
-msgid "IP address and mask do not match in pg_hba.conf file line %d"
-msgstr "ÔÚ pg_hba.conf ÎļþµÄµÚ %d ÐРIP µØÖ·ÓëÑÚÂëÎÞ·¨Æ¥Åä"
+msgid "IP address and mask do not match in file \"%s\" line %d"
+msgstr "ÔÚ \"%s\" ÎļþµÄµÚ %d ÐРIP µØÖ·ÓëÑÚÂëÎÞ·¨Æ¥Åä"
 
-#: libpq/hba.c:847
+#: libpq/hba.c:849 libpq/hba.c:1105
 #, c-format
-msgid "invalid entry in pg_hba.conf file at line %d, token \"%s\""
-msgstr "ÔÚ pg_hba.conf ÎļþµÄµÚ %d ÐÐΪÎÞЧ¼Ç¼, ±ê¼Ç \"%s\""
+msgid "invalid entry in file \"%s\" at line %d, token \"%s\""
+msgstr "ÔÚ \"%s\" ÎļþµÄµÚ %d ÐÐΪÎÞЧ¼Ç¼, ±ê¼Ç \"%s\""
 
-#: libpq/hba.c:852
+#: libpq/hba.c:855
 #, c-format
-msgid "missing field in pg_hba.conf file at end of line %d"
-msgstr "ÔÚ pg_hba.conf ÎļþµÄµÚ %d ÐÐĩβȱÉÙ×Ö¶Î"
+msgid "missing field in file \"%s\" at end of line %d"
+msgstr "ÔÚ \"%s\" ÎļþµÄµÚ %d ÐÐĩβȱÉÙ×Ö¶Î"
 
-#: libpq/hba.c:909 libpq/hba.c:933 utils/init/miscinit.c:734
-#: utils/init/miscinit.c:840 utils/misc/database.c:68 utils/error/elog.c:1118
+#: libpq/hba.c:912 libpq/hba.c:936 utils/init/miscinit.c:783
+#: utils/init/miscinit.c:889 utils/misc/database.c:68 utils/error/elog.c:1118
 #: access/transam/slru.c:638 access/transam/xlog.c:1632
+#: access/transam/xlog.c:2753 access/transam/xlog.c:2843
+#: access/transam/xlog.c:2941
 #, c-format
 msgid "could not open file \"%s\": %m"
 msgstr "ÎÞ·¨´ò¿ªÎļþ \"%s\": %m"
 
-#: libpq/hba.c:1058 guc-file.l:188
+#: libpq/hba.c:1045 guc-file.l:152
 #, c-format
 msgid "could not open configuration file \"%s\": %m"
 msgstr "ÎÞ·¨´ò¿ªÅäÖÃÎļþ \"%s\": %m"
 
-#: libpq/hba.c:1119
+#: libpq/hba.c:1111
 #, c-format
-msgid "invalid entry in pg_ident.conf file at line %d, token \"%s\""
-msgstr "ÔÚ pg_ident.conf ÎļþµÄµÚ %d ÐÐΪÎÞЧ¼Ç¼, ±ê¼Ç \"%s\""
+msgid "missing entry in file \"%s\" at end of line %d"
+msgstr "ÔÚ \"%s\" ÎļþµÄµÚ %d ÐÐĩβȱÉټǼ"
 
-#: libpq/hba.c:1124
-#, c-format
-msgid "missing entry in pg_ident.conf file at end of line %d"
-msgstr "ÔÚ pg_ident.conf ÎļþµÄµÚ %d ÐÐĩβȱÉټǼ"
-
-#: libpq/hba.c:1155
+#: libpq/hba.c:1142
 msgid "cannot use Ident authentication without usermap field"
 msgstr "ûÓÐÓû§Ó³Éä, ÎÞ·¨Ê¹ÓàIdent ÈÏÖ¤"
 
-#: libpq/hba.c:1213
+#: libpq/hba.c:1187
 #, c-format
 msgid "could not open Ident usermap file \"%s\": %m"
 msgstr "ÎÞ·¨´ò¿ª Ident Óû§Ó³ÉäÎļþ \"%s\": %m"
 
-#: libpq/hba.c:1392
+#: libpq/hba.c:1365
 #, c-format
 msgid "could not create socket for Ident connection: %m"
 msgstr "ÎÞ·¨Îª Ident Áª½Ó´´½¨Ì×½Ó×Ö: %m"
 
-#: libpq/hba.c:1408
+#: libpq/hba.c:1381
 #, c-format
 msgid "could not bind to local address \"%s\": %m"
 msgstr "ÎÞ·¨°ó¶¨µ½±¾µØµØÖ· \"%s\": %m"
 
-#: libpq/hba.c:1420
+#: libpq/hba.c:1393
 #, c-format
 msgid "could not connect to Ident server at address \"%s\", port %s: %m"
 msgstr "ÎÞ·¨Áª½Óµ½µØַΪ \"%s\", ¶Ë¿ÚΪ %s µÄ Ident ·þÎñÆ÷: %m"
 
-#: libpq/hba.c:1440
+#: libpq/hba.c:1413
 #, c-format
 msgid "could not send query to Ident server at address \"%s\", port %s: %m"
 msgstr "ÎÞ·¨·¢ËͲéѯµ½µØַΪ \"%s\", ¶Ë¿ÚΪ %s µÄ Ident ·þÎñÆ÷: %m"
 
-#: libpq/hba.c:1455
+#: libpq/hba.c:1428
 #, c-format
 msgid ""
 "could not receive response from Ident server at address \"%s\", port %s: %m"
 msgstr "ÎÞ·¨´ÓµØַΪ \"%s\", ¶Ë¿ÚΪ %s µÄ Ident ·þÎñÆ÷½ÓÊÕÓ¦´ð: %m"
 
-#: libpq/hba.c:1465
+#: libpq/hba.c:1438
 #, c-format
 msgid "invalidly formatted response from Ident server: \"%s\""
 msgstr "´Ó Ident ·þÎñÆ÷½ÓÊÕµÄÎÞЧ¸ñʽӦ´ð: \"%s\""
 
-#: libpq/hba.c:1500 libpq/hba.c:1531 libpq/hba.c:1599
+#: libpq/hba.c:1473 libpq/hba.c:1504 libpq/hba.c:1572
 #, c-format
 msgid "could not get peer credentials: %m"
 msgstr "ÎÞ·¨»ñµÃͬµÈ (peer) Ö¤Êé: %m"
 
-#: libpq/hba.c:1509 libpq/hba.c:1540 libpq/hba.c:1610
+#: libpq/hba.c:1482 libpq/hba.c:1513 libpq/hba.c:1583
 #, c-format
 msgid "local user with ID %d does not exist"
 msgstr "ID Îª %d µÄ±¾µØÓû§²»´æÔÚ"
 
-#: libpq/hba.c:1622
+#: libpq/hba.c:1595
 msgid ""
 "Ident authentication is not supported on local connections on this platform"
 msgstr "ÔÚ´Ëƽ̨Éϲ»Ö§³Ö±¾µØÁª½ÓµÄ Ident ÈÏÖ¤"
 
-#: libpq/hba.c:1665
+#: libpq/hba.c:1638
 #, c-format
-msgid "IDENT code identifies remote user as \"%s\""
+msgid "Ident protocol identifies remote user as \"%s\""
 msgstr ""
 
 #: libpq/be-fsstubs.c:132 libpq/be-fsstubs.c:170 libpq/be-fsstubs.c:194
@@ -1006,84 +989,103 @@ msgstr "
 msgid "could not write server file \"%s\": %m"
 msgstr "ÎÞ·¨Ð´Èë·þÎñÆ÷Îļþ \"%s\": %m"
 
-#: libpq/be-secure.c:274 libpq/be-secure.c:359
+#: libpq/be-secure.c:281 libpq/be-secure.c:374
 #, c-format
 msgid "SSL SYSCALL error: %m"
 msgstr "SSL SYSCALL ´íÎó: %m"
 
-#: libpq/be-secure.c:279 libpq/be-secure.c:364
+#: libpq/be-secure.c:286 libpq/be-secure.c:379
 msgid "SSL SYSCALL error: EOF detected"
 msgstr "SSL SYSCALL ´íÎó: ·¢ÏÖ EOF"
 
-#: libpq/be-secure.c:287 libpq/be-secure.c:372
+#: libpq/be-secure.c:294 libpq/be-secure.c:387
 #, c-format
 msgid "SSL error: %s"
 msgstr "SSL ´íÎó: %s"
 
-#: libpq/be-secure.c:296 libpq/be-secure.c:381
+#: libpq/be-secure.c:303 libpq/be-secure.c:396 libpq/be-secure.c:813
 #, c-format
-msgid "unrecognized SSL error code %d"
-msgstr "δ֪µÄ SSL ´íÎó´úÂë %d"
+msgid "unrecognized SSL error code: %d"
+msgstr "δ֪µÄ SSL ´íÎóÂë: %d"
 
-#: libpq/be-secure.c:327 libpq/be-secure.c:331 libpq/be-secure.c:341
+#: libpq/be-secure.c:336 libpq/be-secure.c:340 libpq/be-secure.c:350
 msgid "SSL renegotiation failure"
 msgstr "SSL Ð­ÉÌʧ°Ü"
 
-#: libpq/be-secure.c:335
+#: libpq/be-secure.c:344
 msgid "SSL failed to send renegotiation request"
 msgstr "·¢ËÍ SSL Ð­ÉÌÏìӦʧ°Ü"
 
-#: libpq/be-secure.c:634
+#: libpq/be-secure.c:649
 #, c-format
 msgid "could not create SSL context: %s"
 msgstr "ÎÞ·¨´´½¨ SSL »·¾³: %s"
 
-#: libpq/be-secure.c:644
+#: libpq/be-secure.c:659
 #, c-format
 msgid "could not load server certificate file \"%s\": %s"
 msgstr "ÎÞ·¨×°ÔØ·þÎñÆ÷ÈÏÖ¤Îļþ \"%s\": %s"
 
-#: libpq/be-secure.c:651
+#: libpq/be-secure.c:666
 #, c-format
 msgid "could not access private key file \"%s\": %m"
 msgstr "ÎÞ·¨´¦Àí˽ԿÎļþ \"%s\": %m"
 
-#: libpq/be-secure.c:667
+#: libpq/be-secure.c:682
 #, c-format
 msgid "unsafe permissions on private key file \"%s\""
 msgstr "˽ԿÎļþ \"%s\" È¨ÏÞ²»°²È«"
 
-#: libpq/be-secure.c:669
+#: libpq/be-secure.c:684
 msgid ""
 "File must be owned by the database user and must have no permissions for "
 "\"group\" or \"other\"."
 msgstr "ÎļþµÄÊôÖ÷±ØÐëÊÇÊý¾Ý¿âÓû§, ²¢ÇÒ¶Ô \"×é\" »ò \"ÆäËüÓû§\" Ã»ÓÐȨÏÞ."
 
-#: libpq/be-secure.c:674
+#: libpq/be-secure.c:689
 #, c-format
 msgid "could not load private key file \"%s\": %s"
 msgstr "ÎÞ·¨×°ÔØ˽ԿÎļþ \"%s\": %s"
 
-#: libpq/be-secure.c:679
+#: libpq/be-secure.c:694
 #, c-format
 msgid "check of private key failed: %s"
 msgstr "¼ì²é˽Կʧ°Ü: %s"
 
-#: libpq/be-secure.c:697
+#: libpq/be-secure.c:714
 #, c-format
 msgid "could not load root certificate file \"%s\": %s"
 msgstr "ÎÞ·¨×°Ôظù (root) ÈÏÖ¤Îļþ \"%s\": %s"
 
-#: libpq/be-secure.c:699
+#: libpq/be-secure.c:716
 msgid "Will not verify client certificates."
 msgstr "½«²»¼ìÑé¿Í»§¶ËµÄÈÏÖ¤Ö¤Êé."
 
-#: libpq/be-secure.c:737
+#: libpq/be-secure.c:759
 #, c-format
 msgid "could not initialize SSL connection: %s"
 msgstr "ÎÞ·¨³õʼ»¯ SSL Áª½Ó: %s"
 
-#: libpq/be-secure.c:761
+#: libpq/be-secure.c:768
+#, c-format
+msgid "could not set SSL socket: %s"
+msgstr "ÎÞ·¨´´½¨ SSL Ì×½Ó×Ö: %s"
+
+#: libpq/be-secure.c:793
+#, c-format
+msgid "could not accept SSL connection: %m"
+msgstr "ÎÞ·¨·ÃÎÊ SSL Áª½Ó: %m"
+
+#: libpq/be-secure.c:797 libpq/be-secure.c:808
+msgid "could not accept SSL connection: EOF detected"
+msgstr "ÎÞ·¨·ÃÎÊ SSL Áª½Ó: ·¢ÏÖ EOF"
+
+#: libpq/be-secure.c:802
+#, c-format
+msgid "could not accept SSL connection: %s"
+msgstr "ÎÞ·¨·ÃÎÊ SSL Áª½Ó: %s"
+
+#: libpq/be-secure.c:840
 #, c-format
 msgid "SSL connection from \"%s\""
 msgstr "À´×Ô \"%s\" µÄ SSL Áª½Ó"
@@ -1144,33 +1146,33 @@ msgstr "Kerberos 5 
 
 #: libpq/auth.c:366
 #, c-format
-msgid "Rejected host: authentication failed for user \"%s\""
-msgstr "¾Ü¾ø: Óû§ \"%s\" ÈÏ֤ʧ°Ü"
+msgid "authentication failed for user \"%s\": host rejected"
+msgstr "Óû§ \"%s\" ÈÏ֤ʧ°Ü: Ö÷»ú¾Ü¾ø"
 
 #: libpq/auth.c:369
 #, c-format
-msgid "Kerberos4 authentication failed for user \"%s\""
-msgstr "Óû§ \"%s\" ÈÏÖ¤ Kerberos4 Ê§°Ü"
+msgid "Kerberos 4 authentication failed for user \"%s\""
+msgstr "Óû§ \"%s\" Kerberos4 ÈÏ֤ʧ°Ü"
 
 #: libpq/auth.c:372
 #, c-format
-msgid "Kerberos5 authentication failed for user \"%s\""
-msgstr "ΪÓû§ \"%s\" ÈÏÖ¤ Kerberos5 Ê§°Ü"
+msgid "Kerberos 5 authentication failed for user \"%s\""
+msgstr "Óû§ \"%s\" Kerberos5 ÈÏ֤ʧ°Ü"
 
 #: libpq/auth.c:375
 #, c-format
-msgid "Trusted authentication failed for user \"%s\""
-msgstr "Óû§ \"%s\" ÈÏÖ¤ Trusted Ê§°Ü"
+msgid "\"trust\" authentication failed for user \"%s\""
+msgstr "Óû§ \"%s\" \"trust\" ÈÏ֤ʧ°Ü"
 
 #: libpq/auth.c:378
 #, c-format
-msgid "IDENT authentication failed for user \"%s\""
-msgstr "Óû§ \"%s\" ÈÏÖ¤ IDENT Ê§°Ü"
+msgid "Ident authentication failed for user \"%s\""
+msgstr "Óû§ \"%s\" Ident ÈÏ֤ʧ°Ü"
 
 #: libpq/auth.c:383
 #, c-format
-msgid "Password authentication failed for user \"%s\""
-msgstr "Óû§ \"%s\" ÈÏÖ¤ Password Ê§°Ü"
+msgid "password authentication failed for user \"%s\""
+msgstr "Óû§ \"%s\" Password ÈÏ֤ʧ°Ü"
 
 #: libpq/auth.c:387
 #, c-format
@@ -1179,8 +1181,8 @@ msgstr "
 
 #: libpq/auth.c:391
 #, c-format
-msgid "Unknown auth method: authentication failed for user \"%s\""
-msgstr "δ֪ÈÏÖ¤·½·¨: Óû§ \"%s\" ÈÏ֤ʧ°Ü"
+msgid "authentication failed for user \"%s\": invalid authentication method"
+msgstr "Óû§ \"%s\" ÈÏ֤ʧ°Ü: ÎÞЧµÄÈÏÖ¤·½Ê½"
 
 #: libpq/auth.c:420
 msgid "missing or erroneous pg_hba.conf file"
@@ -1275,56 +1277,56 @@ msgstr "
 msgid "received password packet"
 msgstr "½ÓÊÕµ½¿ÚÁî°ü"
 
-#: libpq/pqcomm.c:248
+#: libpq/pqcomm.c:271
 #, c-format
 msgid "could not translate host name \"%s\", service \"%s\" to address: %s"
 msgstr "ÎÞ·¨½âÎöÖ÷»úÃû \"%s\", ·þÎñ \"%s\" µ½µØÖ·: %s"
 
-#: libpq/pqcomm.c:252
+#: libpq/pqcomm.c:275
 #, c-format
 msgid "could not translate service \"%s\" to address: %s"
 msgstr "ÎÞ·¨½âÎö·þÎñ \"%s\" µ½µØÖ·: %s"
 
-#: libpq/pqcomm.c:286
+#: libpq/pqcomm.c:309
 msgid "IPv4"
 msgstr "IPv4"
 
-#: libpq/pqcomm.c:290
+#: libpq/pqcomm.c:313
 msgid "IPv6"
 msgstr "IPv6"
 
-#: libpq/pqcomm.c:295
+#: libpq/pqcomm.c:318
 msgid "Unix"
 msgstr "Unix"
 
-#: libpq/pqcomm.c:300
+#: libpq/pqcomm.c:323
 #, c-format
 msgid "unrecognized address family %d"
 msgstr "²»ÈϿɵĵØÖ·×å %d"
 
 #. translator: %s is IPv4, IPv6, or Unix
-#: libpq/pqcomm.c:311
+#: libpq/pqcomm.c:334
 #, c-format
 msgid "could not create %s socket: %m"
 msgstr "ÎÞ·¨´´½¨ %s Ì×½Ó×Ö: %m"
 
-#: libpq/pqcomm.c:323
+#: libpq/pqcomm.c:346
 #, c-format
 msgid "setsockopt(SO_REUSEADDR) failed: %m"
 msgstr "setsockopt(SO_REUSEADDR) Ê§°Ü: %m"
 
-#: libpq/pqcomm.c:337
+#: libpq/pqcomm.c:360
 #, c-format
 msgid "setsockopt(IPV6_V6ONLY) failed: %m"
 msgstr "setsockopt(IPV6_V6ONLY) Ê§°Ü: %m"
 
 #. translator: %s is IPv4, IPv6, or Unix
-#: libpq/pqcomm.c:356
+#: libpq/pqcomm.c:379
 #, c-format
 msgid "could not bind %s socket: %m"
 msgstr "ÎÞ·¨°ó¶¨ %s Ì×½Ó×Ö: %m"
 
-#: libpq/pqcomm.c:359
+#: libpq/pqcomm.c:382
 #, c-format
 msgid ""
 "Is another postmaster already running on port %d? If not, remove socket file "
@@ -1333,7 +1335,7 @@ msgstr ""
 "ÊÇ·ñÓÐÆäËü postmaster ÒѾ­Ôڶ˿ڠ%d ÉÏÔËÐÐÁË? Èç¹ûûÓÐ, É¾³ýÌ×½Ó×ÖÎļþ \"%s"
 "\" È»ºóÔÙÖØÊÔ."
 
-#: libpq/pqcomm.c:362
+#: libpq/pqcomm.c:385
 #, c-format
 msgid ""
 "Is another postmaster already running on port %d? If not, wait a few seconds "
@@ -1343,50 +1345,50 @@ msgstr ""
 "ÖØÊÔ."
 
 #. translator: %s is IPv4, IPv6, or Unix
-#: libpq/pqcomm.c:396
+#: libpq/pqcomm.c:419
 #, c-format
 msgid "could not listen on %s socket: %m"
 msgstr "ÎÞ·¨ÔÚ %s Ì×½Ó×ÖÉϼàÌý: %m"
 
-#: libpq/pqcomm.c:476 commands/user.c:1532 commands/user.c:1769
-#: commands/user.c:1804 catalog/aclchk.c:1229
+#: libpq/pqcomm.c:499 commands/user.c:1535 commands/user.c:1772
+#: commands/user.c:1807 catalog/aclchk.c:1229
 #, c-format
 msgid "group \"%s\" does not exist"
 msgstr "×é \"%s\" ²»´æÔÚ"
 
-#: libpq/pqcomm.c:486
+#: libpq/pqcomm.c:509
 #, c-format
 msgid "could not set group of file \"%s\": %m"
 msgstr "ÎÞ·¨ÉèÖÃÎļþ \"%s\" µÄ×é: %m"
 
-#: libpq/pqcomm.c:497
+#: libpq/pqcomm.c:520
 #, c-format
 msgid "could not set permissions of file \"%s\": %m"
 msgstr "ÎÞ·¨ÉèÖÃÎļþ \"%s\" µÄȨÏÞ: %m"
 
-#: libpq/pqcomm.c:527
+#: libpq/pqcomm.c:550
 #, c-format
 msgid "could not accept new connection: %m"
 msgstr "ÎÞ·¨·ÃÎÊÐÂÁª½Ó: %m"
 
-#: libpq/pqcomm.c:679
+#: libpq/pqcomm.c:702
 #, c-format
 msgid "could not receive data from client: %m"
 msgstr "ÎÞ·¨´Ó¿Í»§¶Ë»ñµÃÊý¾Ý: %m"
 
-#: libpq/pqcomm.c:842
+#: libpq/pqcomm.c:895
 msgid "unexpected EOF within message length word"
 msgstr "ÔÚÐÅÏ¢³¤¶È×ÖÀïÓÐÒâÍâµÄ EOF"
 
-#: libpq/pqcomm.c:854
+#: libpq/pqcomm.c:906
 msgid "invalid message length"
 msgstr "ÎÞЧµÄÐÅÏ¢³¤¶È"
 
-#: libpq/pqcomm.c:868
+#: libpq/pqcomm.c:928 libpq/pqcomm.c:938
 msgid "incomplete message from client"
 msgstr "´Ó¿Í»§¶Ë¹ýÀ´µÄ²»ÍêÕûÐÅÏ¢"
 
-#: libpq/pqcomm.c:947
+#: libpq/pqcomm.c:1048
 #, c-format
 msgid "could not send data to client: %m"
 msgstr "ÎÞ·¨·¢ËÍÊý¾Ý¸ø¿Í»§¶Ë: %m"
@@ -1396,7 +1398,7 @@ msgid "no data left in message"
 msgstr "ÐÅÏ¢ÖÐÒѾ­Ã»ÓÐÊý¾ÝÁË"
 
 #: libpq/pqformat.c:591 libpq/pqformat.c:609 libpq/pqformat.c:630
-#: utils/adt/arrayfuncs.c:1258 utils/adt/rowtypes.c:523
+#: utils/adt/arrayfuncs.c:1277 utils/adt/rowtypes.c:523
 msgid "insufficient data left in message"
 msgstr "ÐÅÏ¢ÖÐʣϵÄÊý¾Ý²»¹»"
 
@@ -1418,7 +1420,7 @@ msgstr "û
 msgid "no value found for parameter %d"
 msgstr "ûÓÐÕÒµ½²ÎÊý %d µÄÖµ"
 
-#: utils/mb/mbutils.c:188 commands/variable.c:591
+#: utils/mb/mbutils.c:188 commands/variable.c:593
 #, c-format
 msgid "conversion between %s and %s is not supported"
 msgstr "²»Ö§³Ö %s ºÍ %s Ö®¼äµÄ±àÂëת»»"
@@ -1491,19 +1493,44 @@ msgstr "
 msgid "invalid argument for power function"
 msgstr "power º¯ÊýµÄÎÞЧ²ÎÊý"
 
-#: utils/adt/numeric.c:1761 utils/adt/numeric.c:1829 utils/adt/numeric.c:1877
+#: utils/adt/numeric.c:1761
 msgid "cannot convert NaN to integer"
 msgstr "ÎÞ·¨×ª»¯ NaN ÎªÕûÊý"
 
-#: utils/adt/numeric.c:1785 utils/adt/numeric.c:1794 utils/adt/numeric.c:1838
-#: utils/adt/numeric.c:1886 utils/adt/numeric.c:1897 utils/adt/int.c:294
-#: utils/adt/float.c:1131 utils/adt/float.c:1150 utils/adt/float.c:1197
-#: utils/adt/float.c:1216 utils/adt/int8.c:111 utils/adt/int8.c:777
-#: utils/adt/int8.c:802 utils/adt/int8.c:840 utils/adt/int8.c:879
-#: utils/adt/varbit.c:1234 utils/adt/varbit.c:1313
+#: utils/adt/numeric.c:1785 utils/adt/numeric.c:1794 utils/adt/int.c:614
+#: utils/adt/int.c:642 utils/adt/int.c:662 utils/adt/int.c:691
+#: utils/adt/int.c:716 utils/adt/int.c:731 utils/adt/int.c:861
+#: utils/adt/int.c:881 utils/adt/int.c:907 utils/adt/int.c:941
+#: utils/adt/int.c:961 utils/adt/int.c:987 utils/adt/int.c:1012
+#: utils/adt/int.c:1091 utils/adt/float.c:1131 utils/adt/float.c:1197
+#: utils/adt/int8.c:947 utils/adt/varbit.c:1234
 msgid "integer out of range"
 msgstr "ÕûÊý³¬³ö·¶Î§"
 
+#: utils/adt/numeric.c:1829
+msgid "cannot convert NaN to bigint"
+msgstr "ÎÞ·¨×ª»» NaN Îª bigint"
+
+#: utils/adt/numeric.c:1838 utils/adt/int8.c:506 utils/adt/int8.c:534
+#: utils/adt/int8.c:554 utils/adt/int8.c:583 utils/adt/int8.c:608
+#: utils/adt/int8.c:626 utils/adt/int8.c:660 utils/adt/int8.c:705
+#: utils/adt/int8.c:725 utils/adt/int8.c:751 utils/adt/int8.c:776
+#: utils/adt/int8.c:796 utils/adt/int8.c:816 utils/adt/int8.c:842
+#: utils/adt/int8.c:1010 utils/adt/int8.c:1049 utils/adt/varbit.c:1313
+msgid "bigint out of range"
+msgstr "bigint ³¬³ö·¶Î§"
+
+#: utils/adt/numeric.c:1877
+msgid "cannot convert NaN to smallint"
+msgstr "ÎÞ·¨×ª»» NaN Îª smallint"
+
+#: utils/adt/numeric.c:1886 utils/adt/numeric.c:1897 utils/adt/int.c:297
+#: utils/adt/int.c:747 utils/adt/int.c:775 utils/adt/int.c:795
+#: utils/adt/int.c:815 utils/adt/int.c:841 utils/adt/int.c:1106
+#: utils/adt/float.c:1150 utils/adt/float.c:1216 utils/adt/int8.c:972
+msgid "smallint out of range"
+msgstr "smallint ³¬³ö·¶Î§"
+
 #: utils/adt/numeric.c:2720 utils/adt/numeric.c:2743 utils/adt/numeric.c:2767
 #: utils/adt/numeric.c:2774 utils/adt/numeric.c:2788
 #, c-format
@@ -1531,14 +1558,14 @@ msgstr ""
 msgid "invalid input syntax for type double precision: \"%s\""
 msgstr "ÎÞЧµÄË«¾«¶ÈÀàÐÍÊäÈëÓï·¨: \"%s\""
 
-#: utils/adt/numeric.c:3820 utils/adt/timestamp.c:2197 utils/adt/int.c:652
-#: utils/adt/int.c:717 utils/adt/int.c:758 utils/adt/int.c:799
-#: utils/adt/int.c:813 utils/adt/int.c:827 utils/adt/int.c:841
-#: utils/adt/int.c:855 utils/adt/float.c:795 utils/adt/float.c:859
+#: utils/adt/numeric.c:3820 utils/adt/timestamp.c:2196 utils/adt/int.c:705
+#: utils/adt/int.c:830 utils/adt/int.c:920 utils/adt/int.c:1001
+#: utils/adt/int.c:1025 utils/adt/int.c:1040 utils/adt/int.c:1055
+#: utils/adt/int.c:1070 utils/adt/float.c:795 utils/adt/float.c:859
 #: utils/adt/float.c:2117 utils/adt/float.c:2179 utils/adt/cash.c:496
 #: utils/adt/cash.c:548 utils/adt/cash.c:601 utils/adt/cash.c:653
-#: utils/adt/char.c:186 utils/adt/int8.c:537 utils/adt/int8.c:566
-#: utils/adt/int8.c:644 utils/adt/int8.c:685 utils/adt/geo_ops.c:3832
+#: utils/adt/int8.c:597 utils/adt/int8.c:642 utils/adt/int8.c:765
+#: utils/adt/int8.c:855 utils/adt/geo_ops.c:3832
 msgid "division by zero"
 msgstr "³ýÒÔÁã"
 
@@ -1566,114 +1593,114 @@ msgstr ""
 msgid "invalid Datum pointer"
 msgstr "ÎÞЧµÄ Datum Ö¸Õë"
 
-#: utils/adt/timestamp.c:98 utils/adt/timestamp.c:339
+#: utils/adt/timestamp.c:97 utils/adt/timestamp.c:338
 #, c-format
 msgid "timestamp out of range: \"%s\""
 msgstr "ʱ¼ä´Á³¬³ö·¶Î§: \"%s\""
 
-#: utils/adt/timestamp.c:116 utils/adt/timestamp.c:357
-#: utils/adt/timestamp.c:536
+#: utils/adt/timestamp.c:115 utils/adt/timestamp.c:356
+#: utils/adt/timestamp.c:535
 #, c-format
 msgid "date/time value \"%s\" is no longer supported"
 msgstr "ÈÕÆÚ/ʱ¼äÖµ \"%s\" ²»ÔÙ±»Ö§³Ö"
 
-#: utils/adt/timestamp.c:153 utils/adt/timestamp.c:187
-#: utils/adt/timestamp.c:395 utils/adt/timestamp.c:431
-#: utils/adt/timestamp.c:1929 utils/adt/timestamp.c:1950
-#: utils/adt/timestamp.c:2008 utils/adt/timestamp.c:2031
-#: utils/adt/timestamp.c:2413 utils/adt/timestamp.c:2524
-#: utils/adt/timestamp.c:2746 utils/adt/timestamp.c:2819
-#: utils/adt/timestamp.c:2865 utils/adt/timestamp.c:2949
-#: utils/adt/timestamp.c:3232 utils/adt/timestamp.c:3365
-#: utils/adt/timestamp.c:3372 utils/adt/timestamp.c:3385
-#: utils/adt/timestamp.c:3393 utils/adt/timestamp.c:3456
-#: utils/adt/timestamp.c:3587 utils/adt/timestamp.c:3595
-#: utils/adt/timestamp.c:3862 utils/adt/timestamp.c:3869
-#: utils/adt/timestamp.c:3897 utils/adt/timestamp.c:3901
+#: utils/adt/timestamp.c:152 utils/adt/timestamp.c:186
+#: utils/adt/timestamp.c:394 utils/adt/timestamp.c:430
+#: utils/adt/timestamp.c:1928 utils/adt/timestamp.c:1949
+#: utils/adt/timestamp.c:2007 utils/adt/timestamp.c:2030
+#: utils/adt/timestamp.c:2412 utils/adt/timestamp.c:2530
+#: utils/adt/timestamp.c:2752 utils/adt/timestamp.c:2825
+#: utils/adt/timestamp.c:2872 utils/adt/timestamp.c:2968
+#: utils/adt/timestamp.c:3251 utils/adt/timestamp.c:3384
+#: utils/adt/timestamp.c:3391 utils/adt/timestamp.c:3404
+#: utils/adt/timestamp.c:3412 utils/adt/timestamp.c:3475
+#: utils/adt/timestamp.c:3610 utils/adt/timestamp.c:3618
+#: utils/adt/timestamp.c:3885 utils/adt/timestamp.c:3892
+#: utils/adt/timestamp.c:3920 utils/adt/timestamp.c:3924
 #: utils/adt/nabstime.c:570 utils/adt/nabstime.c:613 utils/adt/nabstime.c:643
 #: utils/adt/nabstime.c:686 utils/adt/date.c:732 utils/adt/date.c:775
 #: utils/adt/date.c:1337 utils/adt/date.c:1374 utils/adt/date.c:2252
-#: utils/adt/formatting.c:2892 utils/adt/formatting.c:2917
-#: utils/adt/formatting.c:2976
+#: utils/adt/formatting.c:2895 utils/adt/formatting.c:2920
+#: utils/adt/formatting.c:2979
 msgid "timestamp out of range"
 msgstr "ʱ¼ä´Á³¬³ö·¶Î§"
 
-#: utils/adt/timestamp.c:271
+#: utils/adt/timestamp.c:270
 #, c-format
 msgid "timestamp(%d) precision must be between %d and %d"
 msgstr "timestamp(%d) µÄ¾«È·¶È±ØÐèÔÚ %d µ½ %d Ö®¼ä"
 
-#: utils/adt/timestamp.c:529 utils/adt/timestamp.c:2408
-#: utils/adt/timestamp.c:2519 utils/adt/timestamp.c:3041
+#: utils/adt/timestamp.c:528 utils/adt/timestamp.c:2407
+#: utils/adt/timestamp.c:2525 utils/adt/timestamp.c:3060
 msgid "interval out of range"
 msgstr "interval ³¬³ö·¶Î§"
 
-#: utils/adt/timestamp.c:882
+#: utils/adt/timestamp.c:881
 #, c-format
 msgid "interval(%d) precision must be between %d and %d"
 msgstr "interval(%d) µÄ¾«È·¶È±ØÐèÔÚ %d µ½ %d Ö®¼ä"
 
-#: utils/adt/timestamp.c:1882
+#: utils/adt/timestamp.c:1881
 msgid "cannot subtract infinite timestamps"
 msgstr ""
 
-#: utils/adt/timestamp.c:2579
+#: utils/adt/timestamp.c:2585
 #, c-format
 msgid "invalid input syntax for type timestamp: \"%s\""
 msgstr "ÎÞЧµÄ timestamp ÀàÐÍÊäÈëÓï·¨: \"%s\""
 
-#: utils/adt/timestamp.c:2639
+#: utils/adt/timestamp.c:2645
 #, c-format
 msgid "invalid input syntax for type timestamp with time zone: \"%s\""
 msgstr "ÎÞЧµÄ´øʱÇøµÄ timestamp ÀàÐÍÊäÈëÓï·¨: \"%s\""
 
-#: utils/adt/timestamp.c:2700
+#: utils/adt/timestamp.c:2706
 #, c-format
 msgid "invalid input syntax for type interval: \"%s\""
 msgstr "ÎÞЧµÄ interval ÀàÐÍÊäÈëÓï·¨: \"%s\""
 
-#: utils/adt/timestamp.c:2811 utils/adt/timestamp.c:3344
-#: utils/adt/timestamp.c:3401
+#: utils/adt/timestamp.c:2817 utils/adt/timestamp.c:3363
+#: utils/adt/timestamp.c:3420
 #, c-format
 msgid "timestamp units \"%s\" not supported"
 msgstr "²»Ö§³Öʱ¼ä´Áµ¥Î» \"%s\""
 
-#: utils/adt/timestamp.c:2825 utils/adt/timestamp.c:3411
+#: utils/adt/timestamp.c:2831 utils/adt/timestamp.c:3430
 #, c-format
 msgid "timestamp units \"%s\" not recognized"
 msgstr "ʱ¼ä´Áµ¥Î» \"%s\" ²»±»ÈÏ¿É"
 
-#: utils/adt/timestamp.c:2939 utils/adt/timestamp.c:3565
-#: utils/adt/timestamp.c:3603
+#: utils/adt/timestamp.c:2957 utils/adt/timestamp.c:3588
+#: utils/adt/timestamp.c:3626
 #, c-format
 msgid "timestamp with time zone units \"%s\" not supported"
 msgstr "²»Ö§³Ö´øʱÇøµÄʱ¼ä´Áµ¥Î» \"%s\""
 
-#: utils/adt/timestamp.c:2955 utils/adt/timestamp.c:3612
+#: utils/adt/timestamp.c:2974 utils/adt/timestamp.c:3635
 #, c-format
 msgid "timestamp with time zone units \"%s\" not recognized"
 msgstr "´øʱÇøµÄʱ¼ä´Áµ¥Î» \"%s\" ²»±»ÈÏ¿É"
 
-#: utils/adt/timestamp.c:3034 utils/adt/timestamp.c:3718
+#: utils/adt/timestamp.c:3053 utils/adt/timestamp.c:3741
 #, c-format
 msgid "interval units \"%s\" not supported"
 msgstr "²»Ö§³Ö \"%s\" µÄ interval µ¥Î»"
 
-#: utils/adt/timestamp.c:3050 utils/adt/timestamp.c:3748
+#: utils/adt/timestamp.c:3069 utils/adt/timestamp.c:3771
 #, c-format
 msgid "interval units \"%s\" not recognized"
 msgstr "interval µ¥Î» \"%s\" ²»±»ÈÏ¿É"
 
-#: utils/adt/timestamp.c:3074
+#: utils/adt/timestamp.c:3093
 msgid "cannot calculate week number without year information"
 msgstr "ûÓÐÄê·ÝÐÅÏ¢, ÎÞ·¨¼ÆËãÐÇÆÚ¸öÊý"
 
-#: utils/adt/timestamp.c:3793 utils/adt/timestamp.c:3942 utils/adt/date.c:2510
+#: utils/adt/timestamp.c:3816 utils/adt/timestamp.c:3965 utils/adt/date.c:2510
 #, c-format
 msgid "time zone \"%s\" not recognized"
 msgstr "ʱÇø \"%s\" ²»±»ÈÏ¿É"
 
-#: utils/adt/timestamp.c:3819 utils/adt/timestamp.c:3968
+#: utils/adt/timestamp.c:3842 utils/adt/timestamp.c:3991
 #, c-format
 msgid "interval time zone \"%s\" must not specify month"
 msgstr "ʱÇø \"%s\" ¼ä¸ô²»¿ÉÒÔÖ¸¶¨Ô·Ý"
@@ -1793,9 +1820,9 @@ msgstr "
 msgid "unrecognized privilege type: \"%s\""
 msgstr "δ֪µÄȨÏÞÀàÐÍ: \"%s\""
 
-#: utils/adt/acl.c:1661 utils/init/postinit.c:264 utils/init/postinit.c:276
-#: commands/comment.c:458 commands/dbcommands.c:521 commands/dbcommands.c:645
-#: commands/dbcommands.c:740 commands/dbcommands.c:814 catalog/aclchk.c:451
+#: utils/adt/acl.c:1661 utils/init/postinit.c:271 utils/init/postinit.c:283
+#: commands/comment.c:458 commands/dbcommands.c:550 commands/dbcommands.c:679
+#: commands/dbcommands.c:779 commands/dbcommands.c:866 catalog/aclchk.c:451
 #, c-format
 msgid "database \"%s\" does not exist"
 msgstr "Êý¾Ý¿â \"%s\" ²»´æÔÚ"
@@ -1812,35 +1839,35 @@ msgstr "
 msgid "language \"%s\" does not exist"
 msgstr "ÓïÑÔ \"%s\" ²»´æÔÚ"
 
-#: utils/adt/acl.c:2283 commands/comment.c:509 commands/schemacmds.c:210
-#: commands/schemacmds.c:272 commands/schemacmds.c:327 catalog/aclchk.c:921
+#: utils/adt/acl.c:2283 commands/comment.c:509 commands/schemacmds.c:181
+#: commands/schemacmds.c:243 commands/schemacmds.c:298 catalog/aclchk.c:921
 #: catalog/namespace.c:255 catalog/namespace.c:1229 catalog/namespace.c:1267
 #: catalog/namespace.c:1866
 #, c-format
 msgid "schema \"%s\" does not exist"
 msgstr "ģʽ \"%s\" ²»´æÔÚ"
 
-#: utils/adt/acl.c:2489 commands/tablespace.c:429 commands/tablespace.c:823
-#: commands/tablespace.c:890 commands/dbcommands.c:276
-#: commands/indexcmds.c:169 commands/tablecmds.c:325 commands/tablecmds.c:5310
-#: commands/schemacmds.c:117 catalog/aclchk.c:1080
+#: utils/adt/acl.c:2489 commands/tablespace.c:425 commands/tablespace.c:750
+#: commands/tablespace.c:817 commands/tablespace.c:896
+#: commands/dbcommands.c:277 commands/indexcmds.c:171 commands/tablecmds.c:324
+#: commands/tablecmds.c:5435 catalog/aclchk.c:1080
 #, c-format
 msgid "tablespace \"%s\" does not exist"
 msgstr "±í¿Õ¼ä \"%s\" ²»´æÔÚ"
 
-#: utils/adt/like_match.c:291 utils/adt/like.c:453 utils/adt/regexp.c:461
+#: utils/adt/like_match.c:291 utils/adt/like.c:453 utils/adt/regexp.c:480
 msgid "invalid escape string"
 msgstr "ÎÞЧµÄÌÓÒÝ×Ö·û´®"
 
-#: utils/adt/like_match.c:292 utils/adt/like.c:454 utils/adt/regexp.c:462
+#: utils/adt/like_match.c:292 utils/adt/like.c:454 utils/adt/regexp.c:481
 msgid "Escape string must be empty or one character."
 msgstr "ÌÓÒÝ×Ö·û´®±ØÐëΪ¿Õ»òÕßÒ»¸ö×Ö·û."
 
-#: utils/adt/int.c:134
+#: utils/adt/int.c:137
 msgid "int2vector has too many elements"
 msgstr "int2vector ÓÐÌ«¶àµÄÔªËØ"
 
-#: utils/adt/int.c:1063 utils/adt/int8.c:981
+#: utils/adt/int.c:1294 utils/adt/int8.c:1151
 msgid "step size may not equal zero"
 msgstr ""
 
@@ -1864,7 +1891,7 @@ msgstr "
 
 #: utils/adt/oid.c:46 utils/adt/float.c:281 utils/adt/float.c:458
 msgid "This input will be rejected in a future release of PostgreSQL."
-msgstr ""
+msgstr "´ËÊäÈëÔÚ½«À´µÄ PostgreSQL ·¢ÐÍ°æ±¾Öзϳý."
 
 #: utils/adt/oid.c:60 utils/adt/oid.c:66 utils/adt/oid.c:87
 #, c-format
@@ -1885,122 +1912,128 @@ msgstr "oidvector 
 msgid "invalid input syntax for type tid: \"%s\""
 msgstr "ÎÞЧµÄ tid ÀàÐÍÊäÈëÓï·¨: \"%s\""
 
-#: utils/adt/oracle_compat.c:99 utils/adt/oracle_compat.c:138
+#: utils/adt/oracle_compat.c:99 utils/adt/oracle_compat.c:139
 msgid "invalid multibyte character for locale"
 msgstr "ÎÞЧµÄ¶à×Ö½Ú×Ö·û, ¶ÔÓÚ locale"
 
-#: utils/adt/oracle_compat.c:410 utils/adt/oracle_compat.c:507
-#: utils/adt/oracle_compat.c:1131
+#: utils/adt/oracle_compat.c:100
+msgid ""
+"The server's LC_CTYPE locale is probably incompatible with the database "
+"encoding."
+msgstr "·þÎñÆ÷±¾µØ LC_CTYPE ¿ÉÄÜÓëÊý¾Ý¿â±àÂë²»¼æÈÝ."
+
+#: utils/adt/oracle_compat.c:411 utils/adt/oracle_compat.c:508
+#: utils/adt/oracle_compat.c:1132
 msgid "requested length too large"
 msgstr "ÇëÇ󳤶ÈÌ«´ó"
 
-#: utils/adt/ri_triggers.c:301 utils/adt/ri_triggers.c:363
-#: utils/adt/ri_triggers.c:542 utils/adt/ri_triggers.c:781
-#: utils/adt/ri_triggers.c:972 utils/adt/ri_triggers.c:1133
-#: utils/adt/ri_triggers.c:1317 utils/adt/ri_triggers.c:1486
-#: utils/adt/ri_triggers.c:1667 utils/adt/ri_triggers.c:1837
-#: utils/adt/ri_triggers.c:2055 utils/adt/ri_triggers.c:2235
-#: utils/adt/ri_triggers.c:2440 utils/adt/ri_triggers.c:2536
-#: utils/adt/ri_triggers.c:2659 gram.y:1887
+#: utils/adt/ri_triggers.c:302 utils/adt/ri_triggers.c:364
+#: utils/adt/ri_triggers.c:543 utils/adt/ri_triggers.c:782
+#: utils/adt/ri_triggers.c:973 utils/adt/ri_triggers.c:1134
+#: utils/adt/ri_triggers.c:1318 utils/adt/ri_triggers.c:1487
+#: utils/adt/ri_triggers.c:1668 utils/adt/ri_triggers.c:1838
+#: utils/adt/ri_triggers.c:2056 utils/adt/ri_triggers.c:2236
+#: utils/adt/ri_triggers.c:2441 utils/adt/ri_triggers.c:2537
+#: utils/adt/ri_triggers.c:2660 gram.y:1886
 msgid "MATCH PARTIAL not yet implemented"
 msgstr "MATCH PARTIAL ÈÔδʵÏÖ"
 
-#: utils/adt/ri_triggers.c:337 utils/adt/ri_triggers.c:2739
-#: utils/adt/ri_triggers.c:3236 utils/adt/ri_triggers.c:3273
+#: utils/adt/ri_triggers.c:338 utils/adt/ri_triggers.c:2744
+#: utils/adt/ri_triggers.c:3249 utils/adt/ri_triggers.c:3286
 #, c-format
 msgid "insert or update on table \"%s\" violates foreign key constraint \"%s\""
 msgstr "²åÈë»ò¸üбí \"%s\" Î¥·´Íâ¼üÔ¼Êø \"%s\""
 
-#: utils/adt/ri_triggers.c:340 utils/adt/ri_triggers.c:2742
+#: utils/adt/ri_triggers.c:341 utils/adt/ri_triggers.c:2747
 msgid "MATCH FULL does not allow mixing of null and nonnull key values."
 msgstr "MATCH FULL ²»ÔÊÐí¿ÕºÍ·Ç¿Õ¼üÖµµÄ»ìºÏ."
 
-#: utils/adt/ri_triggers.c:2482 utils/adt/ri_triggers.c:2967
+#: utils/adt/ri_triggers.c:2483 utils/adt/ri_triggers.c:2972
 #, c-format
 msgid "function \"%s\" called with wrong number of trigger arguments"
 msgstr "º¯Êý \"%s\" µ÷ÓÃÁË´íÎóµÄ´¥·¢Æ÷²ÎÊý¸öÊý"
 
-#: utils/adt/ri_triggers.c:2500 utils/adt/ri_triggers.c:2977
+#: utils/adt/ri_triggers.c:2501 utils/adt/ri_triggers.c:2982
 #, c-format
 msgid "no target table given for trigger \"%s\" on table \"%s\""
 msgstr "ûÓÐΪ±í \"%2$s\" ÉϵĴ¥·¢Æ÷ \"%1$s\" ÌṩĿ±ê±í"
 
-#: utils/adt/ri_triggers.c:2503 utils/adt/ri_triggers.c:2980
+#: utils/adt/ri_triggers.c:2504 utils/adt/ri_triggers.c:2985
 msgid ""
 "Remove this referential integrity trigger and its mates, then do ALTER TABLE "
 "ADD CONSTRAINT."
 msgstr ""
 
-#: utils/adt/ri_triggers.c:2887 utils/adt/ri_triggers.c:2897
-#: utils/adt/ri_triggers.c:3335
+#: utils/adt/ri_triggers.c:2892 utils/adt/ri_triggers.c:2902
+#: utils/adt/ri_triggers.c:3348
 #, c-format
 msgid ""
 "table \"%s\" does not have column \"%s\" referenced by constraint \"%s\""
 msgstr "±í \"%1$s\" Ã»ÓÐͨ¹ýÔ¼Êø \"%3$s\" µÄ×ֶΠ\"%2$s\" ¹ØÁª"
 
-#: utils/adt/ri_triggers.c:2917
+#: utils/adt/ri_triggers.c:2922
 #, c-format
 msgid "function \"%s\" was not called by trigger manager"
 msgstr "º¯Êý \"%s\" Ã»Óб»´¥·¢Æ÷¹ÜÀíÆ÷µ÷ÓÃ"
 
-#: utils/adt/ri_triggers.c:2926
+#: utils/adt/ri_triggers.c:2931
 #, c-format
 msgid "function \"%s\" must be fired AFTER ROW"
 msgstr ""
 
-#: utils/adt/ri_triggers.c:2934
+#: utils/adt/ri_triggers.c:2939
 #, c-format
 msgid "function \"%s\" must be fired for INSERT"
 msgstr ""
 
-#: utils/adt/ri_triggers.c:2940
+#: utils/adt/ri_triggers.c:2945
 #, c-format
 msgid "function \"%s\" must be fired for UPDATE"
 msgstr ""
 
-#: utils/adt/ri_triggers.c:2947
+#: utils/adt/ri_triggers.c:2952
 #, c-format
 msgid "function \"%s\" must be fired for INSERT or UPDATE"
 msgstr ""
 
-#: utils/adt/ri_triggers.c:2954
+#: utils/adt/ri_triggers.c:2959
 #, c-format
 msgid "function \"%s\" must be fired for DELETE"
 msgstr ""
 
-#: utils/adt/ri_triggers.c:3203
+#: utils/adt/ri_triggers.c:3216
 #, c-format
 msgid ""
 "referential integrity query on \"%s\" from constraint \"%s\" on \"%s\" gave "
 "unexpected result"
 msgstr ""
 
-#: utils/adt/ri_triggers.c:3207
+#: utils/adt/ri_triggers.c:3220
 msgid "This is most likely due to a rule having rewritten the query."
 msgstr ""
 
-#: utils/adt/ri_triggers.c:3238
+#: utils/adt/ri_triggers.c:3251
 #, c-format
 msgid "No rows were found in \"%s\"."
 msgstr "ÔÚ \"%s\" Ã»Óз¢ÏÖÐÐ."
 
-#: utils/adt/ri_triggers.c:3275
+#: utils/adt/ri_triggers.c:3288
 #, c-format
 msgid "Key (%s)=(%s) is not present in table \"%s\"."
 msgstr ""
 
-#: utils/adt/ri_triggers.c:3281
+#: utils/adt/ri_triggers.c:3294
 #, c-format
 msgid ""
 "update or delete on \"%s\" violates foreign key constraint \"%s\" on \"%s\""
 msgstr "ÔÚ \"%1$s\" Éϸüлòɾ³ýÎ¥·´ÁËÔÚ \"%3$s\" ÉϵÄÍâ¼üÔ¼Êø \"%2$s\""
 
-#: utils/adt/ri_triggers.c:3284
+#: utils/adt/ri_triggers.c:3297
 #, c-format
 msgid "Key (%s)=(%s) is still referenced from table \"%s\"."
 msgstr ""
 
-#: utils/adt/ri_triggers.c:3629 utils/adt/arrayfuncs.c:2562
+#: utils/adt/ri_triggers.c:3642 utils/adt/arrayfuncs.c:2581
 #: parser/parse_oper.c:185
 #, c-format
 msgid "could not identify an equality operator for type %s"
@@ -2016,18 +2049,18 @@ msgstr ""
 msgid "value too long for type character varying(%d)"
 msgstr ""
 
-#: utils/adt/ruleutils.c:1300 commands/comment.c:404 commands/tablecmds.c:3068
-#: commands/tablecmds.c:3161 commands/tablecmds.c:3213
-#: commands/tablecmds.c:3309 commands/tablecmds.c:3370
-#: commands/tablecmds.c:3436 commands/tablecmds.c:4562
-#: commands/tablecmds.c:4699 parser/parse_relation.c:1647
-#: parser/parse_relation.c:1705 parser/parse_relation.c:1919
+#: utils/adt/ruleutils.c:1257 commands/comment.c:404 commands/tablecmds.c:3100
+#: commands/tablecmds.c:3193 commands/tablecmds.c:3245
+#: commands/tablecmds.c:3341 commands/tablecmds.c:3402
+#: commands/tablecmds.c:3468 commands/tablecmds.c:4608
+#: commands/tablecmds.c:4745 parser/parse_relation.c:1641
+#: parser/parse_relation.c:1700 parser/parse_relation.c:1913
 #: parser/parse_type.c:94
 #, c-format
 msgid "column \"%s\" of relation \"%s\" does not exist"
 msgstr "¹Øϵ \"%2$s\" µÄ \"%1$s\" ×ֶβ»´æÔÚ"
 
-#: utils/adt/ruleutils.c:1719
+#: utils/adt/ruleutils.c:1615
 #, c-format
 msgid "rule \"%s\" has unsupported event type %d"
 msgstr "¹æÔò \"%s\" ²»Ö§³ÖʼþÀàÐÍ %d"
@@ -2063,42 +2096,43 @@ msgstr "
 msgid "invalid input syntax for type bytea"
 msgstr "ÎÞЧµÄ bytea ÀàÐÍÊäÈëÓï·¨"
 
-#: utils/adt/datetime.c:1313 utils/adt/datetime.c:2088 utils/adt/date.c:87
+#: utils/adt/datetime.c:1313 utils/adt/datetime.c:2078 utils/adt/date.c:87
 msgid "date/time value \"current\" is no longer supported"
 msgstr "ÈÕÆÚ/ʱ¼äÖµ \"current\" ²»ÔÙ±»Ö§³ÖÁË"
 
-#: utils/adt/datetime.c:1495 utils/adt/datetime.c:2370
-#: utils/adt/formatting.c:3178
+#: utils/adt/datetime.c:1495 utils/adt/datetime.c:2360
+#: utils/adt/formatting.c:3181
 #, c-format
 msgid "inconsistent use of year %04d and \"BC\""
 msgstr ""
 
-#: utils/adt/datetime.c:3315 utils/adt/datetime.c:3322
+#: utils/adt/datetime.c:3305 utils/adt/datetime.c:3312
 #, c-format
 msgid "date/time field value out of range: \"%s\""
 msgstr "ÈÕÆÚ/ʱ¼äÖµ³¬³ö·¶Î§: \"%s\""
 
-#: utils/adt/datetime.c:3324
+#: utils/adt/datetime.c:3314
 msgid "Perhaps you need a different \"datestyle\" setting."
 msgstr "Ò²ÐíÄãÐèÒª²»Í¬µÄ \"datesytle\" ÉèÖÃ."
 
-#: utils/adt/datetime.c:3329
+#: utils/adt/datetime.c:3319
 #, c-format
 msgid "interval field value out of range: \"%s\""
 msgstr ""
 
-#: utils/adt/datetime.c:3335
+#: utils/adt/datetime.c:3325
 #, c-format
 msgid "time zone displacement out of range: \"%s\""
 msgstr ""
 
 #. translator: first %s is inet or cidr
-#: utils/adt/datetime.c:3342 utils/adt/network.c:93
+#: utils/adt/datetime.c:3332 utils/adt/network.c:93
 #, c-format
 msgid "invalid input syntax for type %s: \"%s\""
 msgstr "ÎÞЧµÄÀàÐÍ %s ÊäÈëÓï·¨: \"%s\""
 
 #: utils/adt/numutils.c:74 utils/adt/numutils.c:84 utils/adt/numutils.c:97
+#: utils/adt/int8.c:101 utils/adt/int8.c:136
 #, c-format
 msgid "invalid input syntax for integer: \"%s\""
 msgstr "ÎÞЧµÄÕûÊýÀàÐÍÊäÈëÓï·¨: \"%s\""
@@ -2110,8 +2144,8 @@ msgstr "ֵ \"%s\" 
 
 #: utils/adt/numutils.c:117
 #, c-format
-msgid "value \"%s\" is out of range for type shortint"
-msgstr "Öµ \"%s\" ³¬³ö¶ÌÕûÊýÀàÐÍ·¶Î§"
+msgid "value \"%s\" is out of range for type smallint"
+msgstr "Öµ \"%s\" ³¬³ö smallint ÀàÐÍ·¶Î§"
 
 #: utils/adt/numutils.c:123
 #, c-format
@@ -2195,6 +2229,10 @@ msgstr "
 msgid "invalid input syntax for type boolean: \"%s\""
 msgstr "ÎÞЧµÄ²¼¶ûÀàÐÍÊäÈëÓï·¨: \"%s\""
 
+#: utils/adt/char.c:177
+msgid "\"char\" out of range"
+msgstr "\"char\" ³¬³ö·¶Î§"
+
 #: utils/adt/date.c:802
 msgid "cannot convert reserved abstime value to date"
 msgstr "²»ÄÜת»»±£Áô abstime ÖµÎª date"
@@ -2229,12 +2267,12 @@ msgstr "\"time with time zone\" 
 msgid "\"interval\" time zone \"%s\" not valid"
 msgstr ""
 
-#: utils/adt/int8.c:96 utils/adt/int8.c:127
+#: utils/adt/int8.c:117
 #, c-format
-msgid "invalid input syntax for type bigint: \"%s\""
-msgstr "ÎÞЧµÄ bigint ÀàÐÍÊäÈëÓï·¨: \"%s\""
+msgid "value \"%s\" is out of range for type bigint"
+msgstr "Öµ \"%s\" ³¬³ö bigint ÀàÐÍ·¶Î§"
 
-#: utils/adt/int8.c:896
+#: utils/adt/int8.c:1066
 msgid "OID out of range"
 msgstr "OID ³¬³ö·¶Î§"
 
@@ -2409,16 +2447,16 @@ msgstr "
 msgid "global tablespace never has databases"
 msgstr "È«¾Ö±í¿Õ¼äûÓÐÊý¾Ý¿â"
 
-#: utils/adt/misc.c:174 access/transam/slru.c:930 commands/tablespace.c:529
-#: commands/tablespace.c:694
+#: utils/adt/misc.c:174 access/transam/slru.c:930 commands/tablespace.c:525
+#: commands/tablespace.c:692 ../port/copydir.c:55
 #, c-format
 msgid "could not open directory \"%s\": %m"
 msgstr "ÎÞ·¨´ò¿ªÄ¿Â¼ \"%s\": %m"
 
 #: utils/adt/misc.c:177
 #, c-format
-msgid "%u is not a tablespace oid"
-msgstr "%u ²»ÊÇÒ»¸ö±í¿Õ¼ä oid"
+msgid "%u is not a tablespace OID"
+msgstr "%u ²»ÊÇÒ»¸ö±í¿Õ¼ä OID"
 
 #: utils/adt/network.c:105
 #, c-format
@@ -2460,11 +2498,11 @@ msgstr "
 msgid "invalid mask length: %d"
 msgstr "ÎÞЧÑÚÂ볤¶È: %d"
 
-#: utils/adt/selfuncs.c:3369 utils/adt/selfuncs.c:3756
+#: utils/adt/selfuncs.c:3370 utils/adt/selfuncs.c:3757
 msgid "case insensitive matching not supported on type bytea"
 msgstr ""
 
-#: utils/adt/selfuncs.c:3474 utils/adt/selfuncs.c:3917
+#: utils/adt/selfuncs.c:3475 utils/adt/selfuncs.c:3918
 msgid "regular-expression matching not supported on type bytea"
 msgstr "ÔÚ bytea ÀàÐÍÉϲ»Ö§³ÖÕýÔò±í´ïʽƥÅä"
 
@@ -2473,77 +2511,77 @@ msgstr "
 msgid "encoding conversion from %s to ASCII not supported"
 msgstr "±àÂëת»»²»Ö§³Ö´Ó %s µ½ ASCII µÄת»»"
 
-#: utils/adt/formatting.c:983
+#: utils/adt/formatting.c:986
 msgid "\"9\" must be ahead of \"PR\""
 msgstr "\"9\" ±ØÐëÔÚ \"PR\" Ö®Ç°"
 
-#: utils/adt/formatting.c:1002
+#: utils/adt/formatting.c:1005
 msgid "\"0\" must be ahead of \"PR\""
 msgstr "\"0\" ±ØÐëÔÚ \"PR\" Ö®Ç°"
 
-#: utils/adt/formatting.c:1031
+#: utils/adt/formatting.c:1034
 msgid "multiple decimal points"
 msgstr "¶à¸öСÊýµã"
 
-#: utils/adt/formatting.c:1038 utils/adt/formatting.c:1143
+#: utils/adt/formatting.c:1041 utils/adt/formatting.c:1146
 msgid "cannot use \"V\" and decimal point together"
 msgstr "²»ÄÜ \"V\" ºÍСÊýµãÒ»ÆðʹÓÃ"
 
-#: utils/adt/formatting.c:1053
+#: utils/adt/formatting.c:1056
 msgid "not unique \"S\""
 msgstr "²»ÊÇΨһµÄ \"S\""
 
-#: utils/adt/formatting.c:1060
+#: utils/adt/formatting.c:1063
 msgid "cannot use \"S\" and \"PL\"/\"MI\"/\"SG\"/\"PR\" together"
 msgstr "\"S\" ²»¿ÉÒԺ͠\"PL\"/\"MI\"/\"SG\"/\"PR\" Ò»ÆðʹÓÃ"
 
-#: utils/adt/formatting.c:1084
+#: utils/adt/formatting.c:1087
 msgid "cannot use \"S\" and \"MI\" together"
 msgstr "\"S\" ²»¿ÉÒԺ͠\"MI\" Ò»ÆðʹÓÃ"
 
-#: utils/adt/formatting.c:1097
+#: utils/adt/formatting.c:1100
 msgid "cannot use \"S\" and \"PL\" together"
 msgstr "\"S\" ²»¿ÉÒԺ͠\"PL\" Ò»ÆðʹÓÃ"
 
-#: utils/adt/formatting.c:1110
+#: utils/adt/formatting.c:1113
 msgid "cannot use \"S\" and \"SG\" together"
 msgstr "\"S\" ²»¿ÉÒԺ͠\"SG\" Ò»ÆðʹÓÃ"
 
-#: utils/adt/formatting.c:1122
+#: utils/adt/formatting.c:1125
 msgid "cannot use \"PR\" and \"S\"/\"PL\"/\"MI\"/\"SG\" together"
 msgstr "\"PR\" ²»¿ÉÒԺ͠\"S\"/\"PL\"/\"MI\"/\"SG\" Ò»ÆðʹÓÃ"
 
-#: utils/adt/formatting.c:1152
+#: utils/adt/formatting.c:1155
 msgid "\"E\" is not supported"
 msgstr "²»Ö§³Ö \"E\""
 
-#: utils/adt/formatting.c:1423
+#: utils/adt/formatting.c:1426
 #, c-format
 msgid "\"%s\" is not a number"
 msgstr "\"%s\" ²»ÊÇÒ»¸öÊý×Ö"
 
-#: utils/adt/formatting.c:1686
+#: utils/adt/formatting.c:1689
 msgid "invalid AM/PM string"
 msgstr "ÎÞЧµÄ AM/PM ×Ö·û´®"
 
-#: utils/adt/formatting.c:2032
+#: utils/adt/formatting.c:2035
 msgid "\"TZ\"/\"tz\" not supported"
 msgstr "²»Ö§³Ö \"TZ\"/\"tz\""
 
-#: utils/adt/formatting.c:2042
+#: utils/adt/formatting.c:2045
 #, c-format
 msgid "invalid value for %s"
 msgstr "%s µÄÎÞЧÊýÖµ"
 
-#: utils/adt/formatting.c:3139
+#: utils/adt/formatting.c:3142
 msgid "AM/PM hour must be between 1 and 12"
 msgstr "AM/PM Ð¡Ê±±ØÐèÔÚ 1 µ½ 12 Ö®¼ä"
 
-#: utils/adt/formatting.c:3213
+#: utils/adt/formatting.c:3216
 msgid "cannot calculate day of year without year information"
 msgstr "ûÓÐÄê·ÝÐÅÏ¢ÎÞ·¨¼ÆËãÄêµÄÌìÊý"
 
-#: utils/adt/formatting.c:3992
+#: utils/adt/formatting.c:4082
 msgid "\"RN\" not supported"
 msgstr "²»Ö§³Ö \"RN\""
 
@@ -2591,130 +2629,130 @@ msgstr ""
 msgid "invalid array element type OID: %u"
 msgstr "ÎÞЧµÄÊý×éÔªËØÀàÐÍ OID: %u"
 
-#: utils/adt/array_userfuncs.c:358 utils/adt/arrayfuncs.c:1130
-#: utils/adt/arrayfuncs.c:2398
+#: utils/adt/array_userfuncs.c:358 utils/adt/arrayfuncs.c:1149
+#: utils/adt/arrayfuncs.c:2417
 #, c-format
 msgid "invalid number of dimensions: %d"
 msgstr "ÎÞЧµÄ´óСֵ: %d"
 
-#: utils/adt/array_userfuncs.c:362 utils/adt/arrayfuncs.c:215
-#: utils/adt/arrayfuncs.c:470 utils/adt/arrayfuncs.c:1134
-#: utils/adt/arrayfuncs.c:2402 executor/execQual.c:257 executor/execQual.c:285
-#: executor/execQual.c:2030
+#: utils/adt/array_userfuncs.c:362 utils/adt/arrayfuncs.c:216
+#: utils/adt/arrayfuncs.c:472 utils/adt/arrayfuncs.c:1153
+#: utils/adt/arrayfuncs.c:2421 executor/execQual.c:257 executor/execQual.c:285
+#: executor/execQual.c:2065
 #, c-format
 msgid "number of array dimensions (%d) exceeds the maximum allowed (%d)"
 msgstr ""
 
-#: utils/adt/arrayfuncs.c:222 utils/adt/arrayfuncs.c:234
+#: utils/adt/arrayfuncs.c:223 utils/adt/arrayfuncs.c:235
 msgid "missing dimension value"
 msgstr "ȱÉÙ´óСֵ"
 
-#: utils/adt/arrayfuncs.c:244
+#: utils/adt/arrayfuncs.c:245
 msgid "missing \"]\" in array dimensions"
 msgstr "Êý×éÉùÃ÷ȱÉÙ ']'"
 
-#: utils/adt/arrayfuncs.c:252
+#: utils/adt/arrayfuncs.c:253
 msgid "upper bound cannot be less than lower bound"
 msgstr "ÉÏÏÞ²»ÄÜСÓÚµ×ÏÞ"
 
-#: utils/adt/arrayfuncs.c:264 utils/adt/arrayfuncs.c:290
+#: utils/adt/arrayfuncs.c:265 utils/adt/arrayfuncs.c:291
 msgid "array value must start with \"{\" or dimension information"
 msgstr "Êý×éÖµ±ØÐëÒÔ \"{\" ¿ªÊ¼»òÕßάÊýÐÅÏ¢"
 
-#: utils/adt/arrayfuncs.c:278
+#: utils/adt/arrayfuncs.c:279
 msgid "missing assignment operator"
 msgstr "ȱÉÙÖ¸¶¨µÄ²Ù×÷·û"
 
-#: utils/adt/arrayfuncs.c:295 utils/adt/arrayfuncs.c:301
+#: utils/adt/arrayfuncs.c:296 utils/adt/arrayfuncs.c:302
 msgid "array dimensions incompatible with array literal"
 msgstr ""
 
-#: utils/adt/arrayfuncs.c:327
+#: utils/adt/arrayfuncs.c:328
 msgid "missing left brace"
 msgstr "ȱÉÙ×ó±ßµÄ´óÀ¨ºÅ"
 
-#: utils/adt/arrayfuncs.c:407 utils/adt/arrayfuncs.c:422
-#: utils/adt/arrayfuncs.c:431 utils/adt/arrayfuncs.c:445
-#: utils/adt/arrayfuncs.c:465 utils/adt/arrayfuncs.c:493
-#: utils/adt/arrayfuncs.c:498 utils/adt/arrayfuncs.c:538
-#: utils/adt/arrayfuncs.c:559 utils/adt/arrayfuncs.c:578
-#: utils/adt/arrayfuncs.c:657 utils/adt/arrayfuncs.c:669
-#: utils/adt/arrayfuncs.c:698 utils/adt/arrayfuncs.c:713
-#: utils/adt/arrayfuncs.c:751
+#: utils/adt/arrayfuncs.c:409 utils/adt/arrayfuncs.c:424
+#: utils/adt/arrayfuncs.c:433 utils/adt/arrayfuncs.c:447
+#: utils/adt/arrayfuncs.c:467 utils/adt/arrayfuncs.c:495
+#: utils/adt/arrayfuncs.c:500 utils/adt/arrayfuncs.c:540
+#: utils/adt/arrayfuncs.c:561 utils/adt/arrayfuncs.c:580
+#: utils/adt/arrayfuncs.c:673 utils/adt/arrayfuncs.c:682
+#: utils/adt/arrayfuncs.c:710 utils/adt/arrayfuncs.c:725
+#: utils/adt/arrayfuncs.c:778
 #, c-format
 msgid "malformed array literal: \"%s\""
 msgstr ""
 
-#: utils/adt/arrayfuncs.c:505 executor/execQual.c:2050
+#: utils/adt/arrayfuncs.c:507 executor/execQual.c:2085
 msgid ""
 "multidimensional arrays must have array expressions with matching dimensions"
 msgstr ""
 
-#: utils/adt/arrayfuncs.c:1141
+#: utils/adt/arrayfuncs.c:1160
 msgid "invalid array flags"
 msgstr "ÎÞЧµÄÊý×é±ê¼Ç"
 
-#: utils/adt/arrayfuncs.c:1149
+#: utils/adt/arrayfuncs.c:1168
 msgid "wrong element type"
 msgstr "´íÎóµÄÔªËØÀàÐÍ"
 
-#: utils/adt/arrayfuncs.c:1192 utils/cache/lsyscache.c:1756
+#: utils/adt/arrayfuncs.c:1211 utils/cache/lsyscache.c:1764
 #, c-format
 msgid "no binary input function available for type %s"
 msgstr "ûÓÐÀàÐÍ %s µÄÓÐЧ¶þ½øÖÆÊäÈ뺯Êý"
 
-#: utils/adt/arrayfuncs.c:1285
+#: utils/adt/arrayfuncs.c:1304
 #, c-format
 msgid "improper binary format in array element %d"
 msgstr "Êý×éÔªËØ %d Îª²»ÕýÈ·µÄ¶þ½øÖƸñʽ"
 
-#: utils/adt/arrayfuncs.c:1364 utils/cache/lsyscache.c:1792
+#: utils/adt/arrayfuncs.c:1383 utils/cache/lsyscache.c:1800
 #, c-format
 msgid "no binary output function available for type %s"
 msgstr "ûÓÐÀàÐÍ %s µÄÓÐЧ¶þ½øÖÆÊä³öº¯Êý"
 
-#: utils/adt/arrayfuncs.c:1638
+#: utils/adt/arrayfuncs.c:1657
 msgid "slices of fixed-length arrays not implemented"
 msgstr ""
 
-#: utils/adt/arrayfuncs.c:1776 utils/adt/arrayfuncs.c:1781
-#: utils/adt/arrayfuncs.c:1821 utils/adt/arrayfuncs.c:1843
-#: utils/adt/arrayfuncs.c:1855 utils/adt/arrayfuncs.c:2016
-#: utils/adt/arrayfuncs.c:2033 utils/adt/arrayfuncs.c:2044
-#: utils/adt/arrayfuncs.c:2053 utils/adt/arrayfuncs.c:2064
+#: utils/adt/arrayfuncs.c:1795 utils/adt/arrayfuncs.c:1800
+#: utils/adt/arrayfuncs.c:1840 utils/adt/arrayfuncs.c:1862
+#: utils/adt/arrayfuncs.c:1874 utils/adt/arrayfuncs.c:2035
+#: utils/adt/arrayfuncs.c:2052 utils/adt/arrayfuncs.c:2063
+#: utils/adt/arrayfuncs.c:2072 utils/adt/arrayfuncs.c:2083
 msgid "invalid array subscripts"
 msgstr "ÎÞЧµÄÊý×éϱê"
 
-#: utils/adt/arrayfuncs.c:1972
+#: utils/adt/arrayfuncs.c:1991
 msgid "updates on slices of fixed-length arrays not implemented"
 msgstr ""
 
-#: utils/adt/arrayfuncs.c:2007 utils/adt/arrayfuncs.c:2076
+#: utils/adt/arrayfuncs.c:2026 utils/adt/arrayfuncs.c:2095
 msgid "source array too small"
 msgstr "Ô´Êý×é̫С"
 
-#: utils/adt/arrayfuncs.c:2300 utils/adt/arrayfuncs.c:3302
+#: utils/adt/arrayfuncs.c:2319 utils/adt/arrayfuncs.c:3321
 msgid "null array elements not supported"
 msgstr "²»Ö§³Ö¿ÕÊý×éÔªËØ"
 
-#: utils/adt/arrayfuncs.c:2540 utils/adt/arrayfuncs.c:2695
+#: utils/adt/arrayfuncs.c:2559 utils/adt/arrayfuncs.c:2714
 msgid "cannot compare arrays of different element types"
 msgstr "ÎÞ·¨±È½Ï²»Í¬ÔªËØÀàÐ͵ÄÊý×é"
 
-#: utils/adt/arrayfuncs.c:2712
+#: utils/adt/arrayfuncs.c:2731
 #, c-format
 msgid "could not identify a comparison function for type %s"
 msgstr "ÎÞ·¨ÎªÀàÐÍ %s È·ÈÏÒ»¸ö±È¶Ôº¯Êý"
 
-#: utils/adt/arrayfuncs.c:3111
+#: utils/adt/arrayfuncs.c:3130
 msgid "could not determine target array type"
 msgstr "ÎÞ·¨È·¶¨Ä¿±êÊý×éÀàÐÍ"
 
-#: utils/adt/arrayfuncs.c:3117
+#: utils/adt/arrayfuncs.c:3136
 msgid "target type is not an array"
 msgstr "Ä¿±êÀàÐͲ»ÊÇÒ»¸öÊý×é"
 
-#: utils/adt/arrayfuncs.c:3129
+#: utils/adt/arrayfuncs.c:3148
 msgid "array coercion to domain type elements not currently supported"
 msgstr ""
 
@@ -2799,13 +2837,12 @@ msgstr "
 msgid "improper binary format in record column %d"
 msgstr "ÔڼǼ×ֶΠ%d Îª²»ÕýÈ·µÄ¶þ½øÖƸñʽ"
 
-#: utils/adt/pgstatfuncs.c:191 utils/fmgr/funcapi.c:39 executor/execQual.c:866
-#: executor/execQual.c:910 executor/execQual.c:1086 executor/execQual.c:1184
-#: executor/execQual.c:3410 executor/functions.c:565 executor/functions.c:604
-msgid "set-valued function called in context that cannot accept a set"
-msgstr ""
+#: utils/adt/regexp.c:155 utils/adt/regexp.c:241
+#, c-format
+msgid "regular expression failed: %s"
+msgstr "ÕýÔò±í´ïʽʧ°Ü: %s"
 
-#: utils/adt/regexp.c:178
+#: utils/adt/regexp.c:187
 #, c-format
 msgid "invalid regular expression: %s"
 msgstr "ÎÞЧµÄÕýÔò±í´ïʽ: %s"
@@ -2826,11 +2863,11 @@ msgstr "
 msgid "more than one operator named %s"
 msgstr "¶à¸ö²Ù×÷·ûÃûΪ %s"
 
-#: utils/adt/regproc.c:639 gram.y:3502
+#: utils/adt/regproc.c:639 gram.y:3491
 msgid "missing argument"
 msgstr "ȱÉÙ²ÎÊý"
 
-#: utils/adt/regproc.c:640 gram.y:3503
+#: utils/adt/regproc.c:640 gram.y:3492
 msgid "Use NONE to denote the missing argument of a unary operator."
 msgstr "ʹÓàNONE ±íʾһԪ²Ù×÷·ûȱÉٵIJÎÊý."
 
@@ -2901,63 +2938,79 @@ msgstr "
 msgid "unrecognized API version %d reported by info function \"%s\""
 msgstr ""
 
-#: utils/fmgr/fmgr.c:764 utils/fmgr/fmgr.c:1628
+#: utils/fmgr/fmgr.c:760 utils/fmgr/fmgr.c:1635
 #, c-format
 msgid "function %u has too many arguments (%d, maximum is %d)"
 msgstr "º¯Êý %u ²ÎÊýÌ«¶à (%d, ×î´ó¸öÊýΪ %d)"
 
-#: utils/init/miscinit.c:309 utils/cache/lsyscache.c:2064
-#: commands/variable.c:662 commands/user.c:896 commands/user.c:1009
-#: commands/user.c:1101 commands/user.c:1230
+#: utils/fmgr/funcapi.c:39 executor/execQual.c:866 executor/execQual.c:910
+#: executor/execQual.c:1086 executor/execQual.c:1211 executor/execQual.c:3445
+#: executor/functions.c:666 executor/functions.c:705
+msgid "set-valued function called in context that cannot accept a set"
+msgstr ""
+
+#: utils/init/miscinit.c:335 utils/cache/lsyscache.c:2044
+#: commands/variable.c:664 commands/user.c:899 commands/user.c:1012
+#: commands/user.c:1104 commands/user.c:1233
 #, c-format
 msgid "user \"%s\" does not exist"
 msgstr "Óû§ \"%s\" ²»´æÔÚ"
 
-#: utils/init/miscinit.c:377
+#: utils/init/miscinit.c:403
 msgid "permission denied to set session authorization"
 msgstr "ÉèÖûỰÈÏ֤ȨÏÞ²»ÔÊÐí"
 
-#: utils/init/miscinit.c:403
+#: utils/init/miscinit.c:429
 #, c-format
 msgid "invalid user ID: %d"
 msgstr "·Ç·¨Óû§ ID: %d"
 
-#: utils/init/miscinit.c:493
+#: utils/init/miscinit.c:519
 #, c-format
 msgid "could not create lock file \"%s\": %m"
 msgstr "ÎÞ·¨´´½¨ËøÎļþ \"%s\": %m"
 
-#: utils/init/miscinit.c:507
+#: utils/init/miscinit.c:533
 #, c-format
 msgid "could not open lock file \"%s\": %m"
 msgstr "ÎÞ·¨´ò¿ªËøÎļþ \"%s\": %m"
 
-#: utils/init/miscinit.c:513
+#: utils/init/miscinit.c:539
 #, c-format
 msgid "could not read lock file \"%s\": %m"
 msgstr "ÎÞ·¨¶ÁÈ¡ËøÎļþ \"%s\": %m"
 
-#: utils/init/miscinit.c:544
+#: utils/init/miscinit.c:589
 #, c-format
 msgid "lock file \"%s\" already exists"
 msgstr "ËøÎļþ \"%s\" ÒѾ­´æÔÚ"
 
-#: utils/init/miscinit.c:547
+#: utils/init/miscinit.c:593
+#, c-format
+msgid "Is another postgres (PID %d) running in data directory \"%s\"?"
+msgstr "ÊÇ·ñÆäËü postgres (PID %d) ÔËÐÐÔÚÊý¾ÝĿ¼ \"%s\"?"
+
+#: utils/init/miscinit.c:595
 #, c-format
-msgid "Is another %s (PID %d) running in data directory \"%s\"?"
-msgstr "ÊÇ·ñÆäËü %s (PID %d) ÔËÐÐÔÚÊý¾ÝĿ¼ \"%s\"?"
+msgid "Is another postmaster (PID %d) running in data directory \"%s\"?"
+msgstr "ÊÇ·ñÆäËü postmaster (PID %d) ÔËÐÐÔÚÊý¾ÝĿ¼ \"%s\"?"
 
-#: utils/init/miscinit.c:550
+#: utils/init/miscinit.c:598
 #, c-format
-msgid "Is another %s (PID %d) using socket file \"%s\"?"
-msgstr "ÊÇ·ñÆäËü %s (PID %d) Ê¹ÓÃÌ×½Ó×ÖÎļþ \"%s\"?"
+msgid "Is another postgres (PID %d) using socket file \"%s\"?"
+msgstr "ÊÇ·ñÆäËü postgres (PID %d) Ê¹ÓÃÌ×½Ó×ÖÎļþ \"%s\"?"
 
-#: utils/init/miscinit.c:579
+#: utils/init/miscinit.c:600
+#, c-format
+msgid "Is another postmaster (PID %d) using socket file \"%s\"?"
+msgstr "ÊÇ·ñÆäËü postmaster (PID %d) Ê¹ÓÃÌ×½Ó×ÖÎļþ \"%s\"?"
+
+#: utils/init/miscinit.c:628
 #, c-format
 msgid "pre-existing shared memory block (key %lu, ID %lu) is still in use"
 msgstr "ÏÈÇ°´æÔڵĹ²ÏíÄÚ´æ¿é (key %lu, ID %lu) ÈÔÔÚʹÓÃÖÐ"
 
-#: utils/init/miscinit.c:582
+#: utils/init/miscinit.c:631
 #, c-format
 msgid ""
 "If you're sure there are no old server processes still running, remove the "
@@ -2967,81 +3020,81 @@ msgstr ""
 "Èç¹ûÄãÈ·ÈÏûÓоɵķþÎñÆ÷½ø³ÌÔÚÔËÐÐ, ÓÃÃüÁî \"ipcrm\" É¾³ý¹²ÏíÄÚ´æ¿é,»òÕßֻɾ"
 "³ýÎļþ \"%s\"."
 
-#: utils/init/miscinit.c:599
+#: utils/init/miscinit.c:648
 #, c-format
 msgid "could not remove old lock file \"%s\": %m"
 msgstr "ÎÞ·¨É¾³ý¾ÉµÄËøÎļþ \"%s\": %m"
 
-#: utils/init/miscinit.c:601
+#: utils/init/miscinit.c:650
 msgid ""
 "The file seems accidentally left over, but it could not be removed. Please "
 "remove the file by hand and try again."
 msgstr "ÎļþÏñÊÇÒâÍâÁôϵÄ, µ«ÊDz»ÄÜɾ³ýËü. ÇëÊÖ¹¤É¾³ý´ËÎļþ, È»ºóÔÙÖØÊÔÒ»´Î."
 
-#: utils/init/miscinit.c:623 utils/init/miscinit.c:633
+#: utils/init/miscinit.c:672 utils/init/miscinit.c:682
 #, c-format
 msgid "could not write lock file \"%s\": %m"
 msgstr "ÎÞ·¨Ð´ÈëËøÎļþ \"%s\": %m"
 
-#: utils/init/miscinit.c:743 utils/misc/guc.c:4891
+#: utils/init/miscinit.c:792 utils/misc/guc.c:4938
 #, c-format
 msgid "could not read from file \"%s\": %m"
 msgstr "ÎÞ·¨¶ÁÈ¡Îļþ \"%s\": %m"
 
-#: utils/init/miscinit.c:783 utils/init/miscinit.c:792 utils/misc/guc.c:4751
-#: utils/misc/guc.c:4815 access/transam/xlog.c:1556 access/transam/xlog.c:1681
-#: access/transam/xlog.c:2967 access/transam/xlog.c:3005
-#: commands/tablespace.c:668 commands/tablespace.c:674 commands/copy.c:1117
-#: postmaster/postmaster.c:3495
+#: utils/init/miscinit.c:832 utils/init/miscinit.c:841 utils/misc/guc.c:4798
+#: utils/misc/guc.c:4862 access/transam/xlog.c:1556 access/transam/xlog.c:1680
+#: access/transam/xlog.c:2975 access/transam/xlog.c:3013
+#: commands/tablespace.c:664 commands/tablespace.c:670 commands/copy.c:1117
+#: postmaster/postmaster.c:2917 postmaster/postmaster.c:2927
 #, c-format
 msgid "could not write to file \"%s\": %m"
 msgstr "ÎÞ·¨Ð´ÈëÎļþ \"%s\": %m"
 
-#: utils/init/miscinit.c:834 utils/init/miscinit.c:847
+#: utils/init/miscinit.c:883 utils/init/miscinit.c:896
 #, c-format
 msgid "\"%s\" is not a valid data directory"
 msgstr "\"%s\" ²»ÊÇÒ»¸öÓÐЧµÄÊý¾ÝĿ¼"
 
-#: utils/init/miscinit.c:836
+#: utils/init/miscinit.c:885
 #, c-format
 msgid "File \"%s\" is missing."
 msgstr "Îļþ \"%s\" ¶ªÊ§."
 
-#: utils/init/miscinit.c:849
+#: utils/init/miscinit.c:898
 #, c-format
 msgid "File \"%s\" does not contain valid data."
 msgstr "Îļþ \"%s\" Ã»Óаüº¬ÓÐЧÊý¾Ý."
 
-#: utils/init/miscinit.c:851
+#: utils/init/miscinit.c:900
 msgid "You may need to initdb."
 msgstr "ÄãÐèÒª³õʼ»¯Êý¾Ý¿â (initdb)."
 
-#: utils/init/miscinit.c:858 access/transam/xlog.c:3191
-#: access/transam/xlog.c:3221 access/transam/xlog.c:3228
-#: access/transam/xlog.c:3235 access/transam/xlog.c:3242
-#: access/transam/xlog.c:3249 access/transam/xlog.c:3256
-#: access/transam/xlog.c:3265 access/transam/xlog.c:3272
-#: access/transam/xlog.c:3280
+#: utils/init/miscinit.c:907 access/transam/xlog.c:3199
+#: access/transam/xlog.c:3229 access/transam/xlog.c:3236
+#: access/transam/xlog.c:3243 access/transam/xlog.c:3250
+#: access/transam/xlog.c:3257 access/transam/xlog.c:3264
+#: access/transam/xlog.c:3273 access/transam/xlog.c:3280
+#: access/transam/xlog.c:3288
 msgid "database files are incompatible with server"
 msgstr "Êý¾Ý¿âÎļþºÍ·þÎñÆ÷²»¼æÈÝ"
 
-#: utils/init/miscinit.c:859
+#: utils/init/miscinit.c:908
 #, c-format
 msgid ""
 "The data directory was initialized by PostgreSQL version %ld.%ld, which is "
 "not compatible with this version %s."
 msgstr "Êý¾ÝĿ¼ÊÇÒÔ PostgreSQL °æ±¾ %ld.%ld ³õʼ»¯µÄ, ËüÓÚµ±Ç°°æ±¾ %s ²»¼æÈÝ."
 
-#: utils/init/miscinit.c:901
+#: utils/init/miscinit.c:950
 msgid "invalid list syntax for parameter \"preload_libraries\""
 msgstr ""
 
-#: utils/init/miscinit.c:947
+#: utils/init/miscinit.c:996
 #, c-format
 msgid "preloaded library \"%s\" with initialization function \"%s\""
 msgstr "ԤװÈë´ø³õʼ»¯º¯Êý \"%s\" ¿â \"%s\""
 
-#: utils/init/miscinit.c:951
+#: utils/init/miscinit.c:1000
 #, c-format
 msgid "preloaded library \"%s\""
 msgstr "ԤװÈë¿â \"%s\""
@@ -3056,235 +3109,238 @@ msgstr "
 msgid "database \"%s\" is not currently accepting connections"
 msgstr "Êý¾Ý¿â \"%s\" µ±Ç°²»½ÓÊÜÁª½Ó"
 
-#: utils/init/postinit.c:278
+#: utils/init/postinit.c:285
 #, c-format
 msgid "The database subdirectory \"%s\" is missing."
 msgstr "Êý¾Ý¿â×ÓĿ¼ \"%s\" ¶ªÊ§."
 
-#: utils/init/postinit.c:283
+#: utils/init/postinit.c:290
 #, c-format
 msgid "could not access directory \"%s\": %m"
 msgstr "ÎÞ·¨·ÃÎÊĿ¼ \"%s\": %m"
 
-#: utils/init/postinit.c:292
+#: utils/init/postinit.c:299
 #, c-format
 msgid "could not change directory to \"%s\": %m"
 msgstr "ÎÞ·¨Ìøתµ½Ä¿Â¼ \"%s\" ÖÐ: %m"
 
-#: utils/init/postinit.c:375
+#: utils/init/postinit.c:382
 msgid "no users are defined in this database system"
 msgstr "µ±Ç°Êý¾Ý¿âϵͳÖÐûÓж¨ÒåÓû§"
 
-#: utils/init/postinit.c:376
+#: utils/init/postinit.c:383
 #, c-format
 msgid ""
 "You should immediately run CREATE USER \"%s\" WITH SYSID %d CREATEUSER;."
 msgstr "ÄãÓ¦¸ÃÁ¢¼´ÔËÐРCREATE USER \"%s\" WITH SYSID %d CREATEUSER;."
 
-#: utils/init/postinit.c:412
+#: utils/init/postinit.c:423
 msgid "connection limit exceeded for non-superusers"
 msgstr "³¬¹ýÁ˷dz¬¼¶Óû§µÄÁª½ÓÏÞÖÆ"
 
-#: guc-file.l:162
-#, c-format
-msgid "could not access configuration file \"%s\": %m"
-msgstr "ÎÞ·¨´¦ÀíÅäÖÃÎļþ \"%s\": %m"
-
-#: guc-file.l:306
+#: guc-file.l:272
 #, c-format
 msgid "syntax error in file \"%s\" line %u, near end of line"
 msgstr "ÔÚÎļþ \"%s\" µÚ %u ÐÐ, ÐÐβ¸½½üÓï·¨´íÎó"
 
-#: guc-file.l:311
+#: guc-file.l:277
 #, c-format
 msgid "syntax error in file \"%s\" line %u, near token \"%s\""
 msgstr "ÔÚÎļþ \"%s\" µÚ %u ÐÐ, ¼ÇºÅ \"%s\" ¸½½üÓï·¨´íÎó"
 
-#: utils/misc/guc.c:233
+#: utils/misc/guc.c:234
 msgid "Ungrouped"
 msgstr "È¡Ïû×é"
 
-#: utils/misc/guc.c:235
+#: utils/misc/guc.c:236
+msgid "File Locations"
+msgstr ""
+
+#: utils/misc/guc.c:238
 msgid "Connections and Authentication"
 msgstr "Áª½ÓºÍÈÏÖ¤"
 
-#: utils/misc/guc.c:237
+#: utils/misc/guc.c:240
 msgid "Connections and Authentication / Connection Settings"
 msgstr "Áª½ÓºÍÈÏÖ¤ / Áª½ÓÉèÖÃ"
 
-#: utils/misc/guc.c:239
+#: utils/misc/guc.c:242
 msgid "Connections and Authentication / Security and Authentication"
 msgstr "Áª½ÓºÍÈÏÖ¤ / °²È«ºÍÈÏÖ¤"
 
-#: utils/misc/guc.c:241
+#: utils/misc/guc.c:244
 msgid "Resource Usage"
 msgstr "×ÊԴʹÓÃ"
 
-#: utils/misc/guc.c:243
+#: utils/misc/guc.c:246
 msgid "Resource Usage / Memory"
 msgstr "×ÊԴʹÓà/ ÄÚ´æ"
 
-#: utils/misc/guc.c:245
+#: utils/misc/guc.c:248
 msgid "Resource Usage / Free Space Map"
 msgstr "×ÊԴʹÓà/ ¿ÕÏпռä"
 
-#: utils/misc/guc.c:247
+#: utils/misc/guc.c:250
 msgid "Resource Usage / Kernel Resources"
 msgstr "×ÊԴʹÓà/ ÄÚºË×ÊÔ´"
 
-#: utils/misc/guc.c:249
+#: utils/misc/guc.c:252
 msgid "Write-Ahead Log"
 msgstr "Write-Ahead ÈÕÖ¾"
 
-#: utils/misc/guc.c:251
+#: utils/misc/guc.c:254
 msgid "Write-Ahead Log / Settings"
 msgstr "Write-Ahead ÈÕÖ¾ / ÉèÖÃ"
 
-#: utils/misc/guc.c:253
+#: utils/misc/guc.c:256
 msgid "Write-Ahead Log / Checkpoints"
 msgstr "Write-Ahead ÈÕÖ¾ / Checkpoints"
 
-#: utils/misc/guc.c:255
+#: utils/misc/guc.c:258
 msgid "Query Tuning"
 msgstr "²éѯµ÷Õû"
 
-#: utils/misc/guc.c:257
+#: utils/misc/guc.c:260
 msgid "Query Tuning / Planner Method Configuration"
 msgstr "²éѯµ÷Õû / ¹æ»®Æ÷·½·¨ÅäÖÃ"
 
-#: utils/misc/guc.c:259
+#: utils/misc/guc.c:262
 msgid "Query Tuning / Planner Cost Constants"
 msgstr "²éѯµ÷Õû / Planner Cost Constants"
 
-#: utils/misc/guc.c:261
+#: utils/misc/guc.c:264
 msgid "Query Tuning / Genetic Query Optimizer"
 msgstr "²éѯµ÷Õû / »ùÒò²éѯÓÅ»¯"
 
-#: utils/misc/guc.c:263
+#: utils/misc/guc.c:266
 msgid "Query Tuning / Other Planner Options"
 msgstr "²éѯµ÷Õû / ÆäËü¹æ»®Æ÷Ñ¡Ïî"
 
-#: utils/misc/guc.c:265
+#: utils/misc/guc.c:268
 msgid "Reporting and Logging"
 msgstr "±¨¸æºÍÈÕÖ¾"
 
-#: utils/misc/guc.c:267
+#: utils/misc/guc.c:270
 msgid "Reporting and Logging / Where to Log"
 msgstr "±¨¸æºÍÈÕÖ¾ / ÈÕ־λÖÃ"
 
-#: utils/misc/guc.c:269
+#: utils/misc/guc.c:272
 msgid "Reporting and Logging / When to Log"
 msgstr "±¨¸æºÍÈÕÖ¾ / ÈÕ־ʱ¼ä"
 
-#: utils/misc/guc.c:271
+#: utils/misc/guc.c:274
 msgid "Reporting and Logging / What to Log"
 msgstr "±¨¸æºÍÈÕÖ¾ / ÈÕÖ¾ÄÚÈÝ"
 
-#: utils/misc/guc.c:273
+#: utils/misc/guc.c:276
 msgid "Statistics"
 msgstr "ͳ¼ÆÐÅÏ¢"
 
-#: utils/misc/guc.c:275
+#: utils/misc/guc.c:278
 msgid "Statistics / Monitoring"
 msgstr "ͳ¼ÆÐÅÏ¢ / ¼à¿Ø"
 
-#: utils/misc/guc.c:277
+#: utils/misc/guc.c:280
 msgid "Statistics / Query and Index Statistics Collector"
 msgstr "ͳ¼ÆÐÅÏ¢ / ²éѯºÍË÷Òýͳ¼ÆÊÕ¼¯Æ÷"
 
-#: utils/misc/guc.c:279
+#: utils/misc/guc.c:282
 msgid "Client Connection Defaults"
 msgstr "¿Í»§¶ËÁª½ÓĬÈÏ"
 
-#: utils/misc/guc.c:281
+#: utils/misc/guc.c:284
 msgid "Client Connection Defaults / Statement Behavior"
 msgstr "¿Í»§¶ËÁª½ÓĬÈÏ / Óï¾ä¶¯×÷"
 
-#: utils/misc/guc.c:283
+#: utils/misc/guc.c:286
 msgid "Client Connection Defaults / Locale and Formatting"
 msgstr "¿Í»§¶ËÁª½ÓĬÈÏ / ±¾µØ»¯ºÍ¸ñʽ»¯"
 
-#: utils/misc/guc.c:285
+#: utils/misc/guc.c:288
 msgid "Client Connection Defaults / Other Defaults"
 msgstr "¿Í»§¶ËÁª½ÓĬÈÏ / ÆäËüĬÈÏ"
 
-#: utils/misc/guc.c:287
+#: utils/misc/guc.c:290
 msgid "Lock Management"
 msgstr "Ëø¹ÜÀí"
 
-#: utils/misc/guc.c:289
+#: utils/misc/guc.c:292
 msgid "Version and Platform Compatibility"
 msgstr "°æ±¾ºÍƽ̨¼æÈÝÐÔ"
 
-#: utils/misc/guc.c:291
+#: utils/misc/guc.c:294
 msgid "Version and Platform Compatibility / Previous PostgreSQL Versions"
 msgstr "°æ±¾ºÍƽ̨¼æÈÝÐÔ / ÉÏÒ»¸ö PostgreSQL °æ±¾"
 
-#: utils/misc/guc.c:293
+#: utils/misc/guc.c:296
 msgid "Version and Platform Compatibility / Other Platforms and Clients"
 msgstr "°æ±¾ºÍƽ̨¼æÈÝÐÔ / ÆäËüƽ̨ºÍ¿Í»§¶Ë"
 
-#: utils/misc/guc.c:295
+#: utils/misc/guc.c:298
+msgid "Preset Options"
+msgstr "Ô¤ÖÃÑ¡Ïî"
+
+#: utils/misc/guc.c:300
+msgid "Customized Options"
+msgstr "¶¨ÖÆÑ¡Ïî"
+
+#: utils/misc/guc.c:302
 msgid "Developer Options"
 msgstr "¿ª·¢ÈËԱѡÏî"
 
-#: utils/misc/guc.c:297
-msgid "Compiled-in Options"
-msgstr "ÒѱàÒë½øµÄÑ¡Ïî"
-
-#: utils/misc/guc.c:352
+#: utils/misc/guc.c:357
 msgid "Enables the planner's use of sequential-scan plans."
 msgstr ""
 
-#: utils/misc/guc.c:360
+#: utils/misc/guc.c:365
 msgid "Enables the planner's use of index-scan plans."
 msgstr ""
 
-#: utils/misc/guc.c:368
+#: utils/misc/guc.c:373
 msgid "Enables the planner's use of TID scan plans."
 msgstr ""
 
-#: utils/misc/guc.c:376
+#: utils/misc/guc.c:381
 msgid "Enables the planner's use of explicit sort steps."
 msgstr ""
 
-#: utils/misc/guc.c:384
+#: utils/misc/guc.c:389
 msgid "Enables the planner's use of hashed aggregation plans."
 msgstr ""
 
-#: utils/misc/guc.c:392
+#: utils/misc/guc.c:397
 msgid "Enables the planner's use of nested-loop join plans."
 msgstr ""
 
-#: utils/misc/guc.c:400
+#: utils/misc/guc.c:405
 msgid "Enables the planner's use of merge join plans."
 msgstr ""
 
-#: utils/misc/guc.c:408
+#: utils/misc/guc.c:413
 msgid "Enables the planner's use of hash join plans."
 msgstr ""
 
-#: utils/misc/guc.c:416
+#: utils/misc/guc.c:421
 msgid "Enables genetic query optimization."
 msgstr "ÆôÓûùÒò²éѯÓÅ»¯."
 
-#: utils/misc/guc.c:417
+#: utils/misc/guc.c:422
 msgid "This algorithm attempts to do planning without exhaustive searching."
 msgstr ""
 
-#: utils/misc/guc.c:426
+#: utils/misc/guc.c:431
 msgid "Shows whether the current user is a superuser."
 msgstr "ÏÔʾµ±Ç°Óû§ÊÇ·ñÊdz¬¼¶Óû§."
 
-#: utils/misc/guc.c:435
+#: utils/misc/guc.c:440
 msgid "Enables SSL connections."
 msgstr "ÆôÓàSSL Áª½Ó."
 
-#: utils/misc/guc.c:443
+#: utils/misc/guc.c:448
 msgid "Forces synchronization of updates to disk."
 msgstr "Ç¿ÖƺʹÅÅÌͬ²½¸üÐÂ"
 
-#: utils/misc/guc.c:444
+#: utils/misc/guc.c:449
 msgid ""
 "The server will use the fsync() system call in several places to make sure "
 "that updates are physically written to disk. This insures that a database "
@@ -3292,11 +3348,11 @@ msgid ""
 "hardware crash."
 msgstr ""
 
-#: utils/misc/guc.c:454
+#: utils/misc/guc.c:459
 msgid "Continues processing past damaged page headers."
 msgstr ""
 
-#: utils/misc/guc.c:455
+#: utils/misc/guc.c:460
 msgid ""
 "Detection of a damaged page header normally causes PostgreSQL to report an "
 "error, aborting the current transaction. Setting zero_damaged_pages to true "
@@ -3305,113 +3361,113 @@ msgid ""
 "rows on the damaged page."
 msgstr ""
 
-#: utils/misc/guc.c:467
+#: utils/misc/guc.c:472
 msgid "Runs the server silently."
 msgstr "ÒÔ°²¾²Ä£Ê½ (silently) ÔËÐзþÎñÆ÷."
 
-#: utils/misc/guc.c:468
+#: utils/misc/guc.c:473
 msgid ""
 "If this parameter is set, the server will automatically run in the "
 "background and any controlling terminals are dissociated."
 msgstr "Èç¹û´Ë²ÎÊýÉèÖÃÁË, ·þÎñÆ÷½«×Ô¶¯ÔËÐÐÔÚºǫ́, ÓëÈκοØÖÆÖÕ¶ËÍÑÀë."
 
-#: utils/misc/guc.c:476
+#: utils/misc/guc.c:481
 msgid "Logs each successful connection."
 msgstr "¼Ç¼ÿһ¸ö³É¹¦µÄÁª½Ó."
 
-#: utils/misc/guc.c:484
-msgid "Logs end of a session, including duration"
+#: utils/misc/guc.c:489
+msgid "Logs end of a session, including duration."
 msgstr ""
 
-#: utils/misc/guc.c:494
+#: utils/misc/guc.c:499
 msgid "Turns on various assertion checks."
 msgstr "´ò¿ª¸÷ÖÖÅжϼì²é."
 
-#: utils/misc/guc.c:495
+#: utils/misc/guc.c:500
 msgid "This is a debugging aid."
 msgstr "ÕâÊÇÒ»¸ö³ö´í°ïÖú."
 
-#: utils/misc/guc.c:506 utils/misc/guc.c:588 utils/misc/guc.c:661
-#: utils/misc/guc.c:670 utils/misc/guc.c:679 utils/misc/guc.c:688
-#: utils/misc/guc.c:1073 utils/misc/guc.c:1082 utils/misc/guc.c:1142
+#: utils/misc/guc.c:511 utils/misc/guc.c:593 utils/misc/guc.c:666
+#: utils/misc/guc.c:675 utils/misc/guc.c:684 utils/misc/guc.c:693
+#: utils/misc/guc.c:1078 utils/misc/guc.c:1087 utils/misc/guc.c:1145
 msgid "no description available"
 msgstr "ûÓÐÓÐÓõÄÃèÊö"
 
-#: utils/misc/guc.c:515
-msgid "Logs the duration each completed SQL statement."
+#: utils/misc/guc.c:520
+msgid "Logs the duration of each completed SQL statement."
 msgstr "¼Ç¼ÿһÌõÍê³ÉÁ˵ĠSQL Óï¾ä¹ý³Ì."
 
-#: utils/misc/guc.c:523
+#: utils/misc/guc.c:528
 msgid "Prints the parse tree to the server log."
 msgstr "´òÓ¡·ÖÎöÊ÷µ½·þÎñÆ÷ÈÕÖ¾."
 
-#: utils/misc/guc.c:531
+#: utils/misc/guc.c:536
 msgid "Prints the parse tree after rewriting to server log."
 msgstr "ÖØд·þÎñÆ÷ÈÕÖ¾ºó´òÓ¡·ÖÎöÊ÷."
 
-#: utils/misc/guc.c:539
+#: utils/misc/guc.c:544
 msgid "Prints the execution plan to server log."
 msgstr "´òÓ¡Ö´Ðй滮µ½·þÎñÆ÷ÈÕÖ¾."
 
-#: utils/misc/guc.c:547
+#: utils/misc/guc.c:552
 msgid "Indents parse and plan tree displays."
 msgstr ""
 
-#: utils/misc/guc.c:555
+#: utils/misc/guc.c:560
 msgid "Writes parser performance statistics to the server log."
 msgstr "°Ñ·ÖÎöÆ÷ÐÔÄÜͳ¼ÆÐÅϢдÈëµ½·þÎñÆ÷ÈÕÖ¾ÖÐ."
 
-#: utils/misc/guc.c:563
+#: utils/misc/guc.c:568
 msgid "Writes planner performance statistics to the server log."
 msgstr "°Ñ¹æ»®Æ÷ÐÔÄÜͳ¼ÆÐÅϢдÈëµ½·þÎñÆ÷ÈÕÖ¾ÖÐ."
 
-#: utils/misc/guc.c:571
+#: utils/misc/guc.c:576
 msgid "Writes executor performance statistics to the server log."
 msgstr "°ÑÖ´ÐÐÆ÷ (executor) ÐÔÄÜͳ¼ÆÐÅϢдÈëµ½·þÎñÆ÷ÈÕÖ¾ÖÐ."
 
-#: utils/misc/guc.c:579
+#: utils/misc/guc.c:584
 msgid "Writes cumulative performance statistics to the server log."
 msgstr "°Ñ cumulative ÐÔÄÜͳ¼ÆÐÅϢдÈëµ½·þÎñÆ÷ÈÕÖ¾ÖÐ."
 
-#: utils/misc/guc.c:599
+#: utils/misc/guc.c:604
 msgid "Uses the indented output format for EXPLAIN VERBOSE."
 msgstr "EXPLAIN VERBOSE Ê¹ÓÃËõ½øÊä³ö¸ñʽ."
 
-#: utils/misc/guc.c:607
+#: utils/misc/guc.c:612
 msgid "Starts the server statistics-collection subprocess."
 msgstr "Æô¶¯·þÎñÆ÷ͳ¼ÆÊÕ¼¯Æ÷×Ó½ø³Ì."
 
-#: utils/misc/guc.c:615
+#: utils/misc/guc.c:620
 msgid "Zeroes collected statistics on server restart."
 msgstr "µ±·þÎñÆ÷ÖØÆô, Çå¿ÕÒÑÊÕ¼¯µÄͳ¼ÆÐÅÏ¢."
 
-#: utils/misc/guc.c:623
+#: utils/misc/guc.c:628
 msgid "Collects statistics about executing commands."
 msgstr "ÊÕ¼¯Ö´ÐÐÃüÁîµÄͳ¼ÆÐÅÏ¢."
 
-#: utils/misc/guc.c:624
+#: utils/misc/guc.c:629
 msgid ""
 "Enables the collection of statistics on the currently executing command of "
 "each session, along with the time at which that command began execution."
 msgstr ""
 
-#: utils/misc/guc.c:633
+#: utils/misc/guc.c:638
 msgid "Collects row-level statistics on database activity."
 msgstr "ÔÚʹÓÃÖеÄÊý¾Ý¿âÉÏÊÕ¼¯Ð춱ð (row-level) Í³¼ÆÐÅÏ¢."
 
-#: utils/misc/guc.c:641
+#: utils/misc/guc.c:646
 msgid "Collects block-level statistics on database activity."
 msgstr "ÔÚʹÓÃÖеÄÊý¾Ý¿âÉÏÊÕ¼¯¿é¼¶±ð (block-level) Í³¼ÆÐÅÏ¢."
 
-#: utils/misc/guc.c:650
+#: utils/misc/guc.c:655
 msgid "Generates debugging output for LISTEN and NOTIFY."
 msgstr "Ϊ LISTEN ºÍ NOTIFY Éú³É³ö´íÐÅÏ¢."
 
-#: utils/misc/guc.c:699
+#: utils/misc/guc.c:704
 msgid "Logs the host name in the connection logs."
 msgstr "ÔÚÁª½ÓÈÕÖ¾ÖмǼÖ÷»úÃû."
 
-#: utils/misc/guc.c:700
+#: utils/misc/guc.c:705
 msgid ""
 "By default, connection logs only show the IP address of the connecting host. "
 "If you want them to show the host name you can turn this on, but depending "
@@ -3419,25 +3475,25 @@ msgid ""
 "performance penalty."
 msgstr ""
 
-#: utils/misc/guc.c:710
+#: utils/misc/guc.c:715
 msgid "Causes subtables to be included by default in various commands."
 msgstr ""
 
-#: utils/misc/guc.c:718
+#: utils/misc/guc.c:723
 msgid "Interprets ACST, CST, EST, and SAT as Australian time zones."
 msgstr ""
 
-#: utils/misc/guc.c:719
+#: utils/misc/guc.c:724
 msgid ""
 "Otherwise they are interpreted as North/South American time zones and "
 "Saturday."
 msgstr ""
 
-#: utils/misc/guc.c:727
+#: utils/misc/guc.c:732
 msgid "Encrypt passwords."
 msgstr "¼ÓÃÜ¿ÚÁî."
 
-#: utils/misc/guc.c:728
+#: utils/misc/guc.c:733
 msgid ""
 "When a password is specified in CREATE USER or ALTER USER without writing "
 "either ENCRYPTED or UNENCRYPTED, this parameter determines whether the "
@@ -3446,11 +3502,11 @@ msgstr ""
 "µ±ÔÚ CREATE USER »òÕß ALTER USER Óï¾äÖÐÖ¸¶¨µÄ¿ÚÁîûÓÐÓàENCRYPTED »òÕß "
 "UNENCRYPTED, ´Ë²ÎÊýÈ·¶¨¿ÚÁîÊÇ·ñ¼ÓÃÜ."
 
-#: utils/misc/guc.c:737
+#: utils/misc/guc.c:742
 msgid "Treats \"expr=NULL\" as \"expr IS NULL\"."
 msgstr "\"expr=NULL\" ¿´×÷Ϊ \"expr IS NULL\"."
 
-#: utils/misc/guc.c:738
+#: utils/misc/guc.c:743
 msgid ""
 "When turned on, expressions of the form expr = NULL (or NULL = expr) are "
 "treated as expr IS NULL, that is, they return true if expr evaluates to the "
@@ -3458,131 +3514,131 @@ msgid ""
 "always return null (unknown)."
 msgstr ""
 
-#: utils/misc/guc.c:749
+#: utils/misc/guc.c:754
 msgid "Enables per-database user names."
 msgstr ""
 
-#: utils/misc/guc.c:758
+#: utils/misc/guc.c:763
 msgid "This parameter doesn't do anything."
 msgstr "Õâ¸ö²ÎÊý²»×öÈκÎÊÂÇé."
 
-#: utils/misc/guc.c:759
+#: utils/misc/guc.c:764
 msgid ""
 "It's just here so that we won't choke on SET AUTOCOMMIT TO ON from 7.3-"
 "vintage clients."
 msgstr ""
 
-#: utils/misc/guc.c:767
+#: utils/misc/guc.c:772
 msgid "Sets the default read-only status of new transactions."
 msgstr "ΪÐÂÊÂÎïÉèÖÃĬÈϵÄÖ»¶Á״̬."
 
-#: utils/misc/guc.c:775
+#: utils/misc/guc.c:780
 msgid "Sets the current transaction's read-only status."
 msgstr "ÉèÖõ±Ç°ÊÂÎñµÄÖ»¶Á״̬."
 
-#: utils/misc/guc.c:784
+#: utils/misc/guc.c:789
 msgid "Automatically adds missing table references to FROM clauses."
 msgstr ""
 
-#: utils/misc/guc.c:792
+#: utils/misc/guc.c:797
 msgid "Check function bodies during CREATE FUNCTION."
 msgstr "ÔÚ´´½¨º¯Êý¹ý³ÌÖмì²éº¯ÊýÌå."
 
-#: utils/misc/guc.c:800
-msgid "By default, newly-created tables should have OIDs"
-msgstr "ĬÈÏÇé¿öÏÂ, Ð´´½¨µÄ±í½«ÓРOID"
+#: utils/misc/guc.c:805
+msgid "By default, newly-created tables should have OIDs."
+msgstr "ĬÈÏÇé¿öÏÂ, Ð´´½¨µÄ±í½«ÓРOID."
 
-#: utils/misc/guc.c:808
-msgid "Start a subprocess to capture stderr output into log files"
-msgstr ""
+#: utils/misc/guc.c:813
+msgid "Start a subprocess to capture stderr output into log files."
+msgstr "Æô¶¯Ò»¸ö×Ó½ø³ÌÓÃÀ´²¶»ñ stderr Êä³öµ½ÈÕÖ¾ÎļþÖÐ."
 
-#: utils/misc/guc.c:816
-msgid "Truncate existing log files of same name during log rotation"
+#: utils/misc/guc.c:821
+msgid "Truncate existing log files of same name during log rotation."
 msgstr ""
 
-#: utils/misc/guc.c:826
+#: utils/misc/guc.c:831
 msgid "Emit WAL-related debugging output."
 msgstr ""
 
-#: utils/misc/guc.c:837
+#: utils/misc/guc.c:842
 msgid "Datetimes are integer based"
 msgstr ""
 
-#: utils/misc/guc.c:860
+#: utils/misc/guc.c:865
 msgid "Sets the default statistics target."
 msgstr "ÉèÖÃĬÈÏͳ¼Æ¶ÔÏó."
 
-#: utils/misc/guc.c:861
+#: utils/misc/guc.c:866
 msgid ""
 "This applies to table columns that have not had a column-specific target set "
 "via ALTER TABLE SET STATISTICS."
 msgstr ""
 
-#: utils/misc/guc.c:869
+#: utils/misc/guc.c:874
 msgid "Sets the FROM-list size beyond which subqueries are not collapsed."
 msgstr ""
 
-#: utils/misc/guc.c:871
+#: utils/misc/guc.c:876
 msgid ""
 "The planner will merge subqueries into upper queries if the resulting FROM "
 "list would have no more than this many items."
 msgstr ""
 
-#: utils/misc/guc.c:880
+#: utils/misc/guc.c:885
 msgid "Sets the FROM-list size beyond which JOIN constructs are not flattened."
 msgstr ""
 
-#: utils/misc/guc.c:882
+#: utils/misc/guc.c:887
 msgid ""
 "The planner will flatten explicit inner JOIN constructs into lists of FROM "
 "items whenever a list of no more than this many items would result."
 msgstr ""
 
-#: utils/misc/guc.c:891
+#: utils/misc/guc.c:896
 msgid "Sets the threshold of FROM items beyond which GEQO is used."
 msgstr ""
 
-#: utils/misc/guc.c:899
+#: utils/misc/guc.c:904
 msgid "GEQO: effort is used to set the default for other GEQO parameters."
 msgstr ""
 
-#: utils/misc/guc.c:907
+#: utils/misc/guc.c:912
 msgid "GEQO: number of individuals in the population."
 msgstr "GEQO: ÈËȺ (population) ¸öÌå (individual) Êý"
 
-#: utils/misc/guc.c:908 utils/misc/guc.c:916
+#: utils/misc/guc.c:913 utils/misc/guc.c:921
 msgid "Zero selects a suitable default value."
 msgstr ""
 
-#: utils/misc/guc.c:915
+#: utils/misc/guc.c:920
 msgid "GEQO: number of iterations of the algorithm."
 msgstr "GEQO: Ëã·¨µÄµü´ú´ÎÊý"
 
-#: utils/misc/guc.c:924
+#: utils/misc/guc.c:929
 msgid "The time in milliseconds to wait on lock before checking for deadlock."
 msgstr ""
 
-#: utils/misc/guc.c:940
+#: utils/misc/guc.c:945
 msgid "Sets the maximum number of concurrent connections."
 msgstr "ÉèÖò¢·¢Áª½ÓµÄ×î´ó¸öÊý."
 
-#: utils/misc/guc.c:949
+#: utils/misc/guc.c:954
 msgid "Sets the number of connection slots reserved for superusers."
 msgstr "ÉèÖÃΪ³¬¼¶Óû§±£ÁôµÄÁª½ÓÊý."
 
-#: utils/misc/guc.c:958
+#: utils/misc/guc.c:963
 msgid "Sets the number of shared memory buffers used by the server."
 msgstr "ÉèÖ÷þÎñÆ÷ʹÓõĹ²ÏíÄڴ滺³åÇøµÄÊýÁ¿."
 
-#: utils/misc/guc.c:967
+#: utils/misc/guc.c:972
 msgid "Sets the TCP port the server listens on."
 msgstr "ÉèÖ÷þÎñÆ÷¼àÌýµÄ TCP ¶Ë¿ÚºÅ."
 
-#: utils/misc/guc.c:976
+#: utils/misc/guc.c:981
 msgid "Sets the access permissions of the Unix-domain socket."
 msgstr "ÉèÖàUnix-domain Ì×½Ó×ֵķÃÎÊȨÏÞ."
 
-#: utils/misc/guc.c:977
+#: utils/misc/guc.c:982
 msgid ""
 "Unix-domain sockets use the usual Unix file system permission set. The "
 "parameter value is expected to be an numeric mode specification in the form "
@@ -3590,317 +3646,325 @@ msgid ""
 "format the number must start with a 0 (zero).)"
 msgstr ""
 
-#: utils/misc/guc.c:989
+#: utils/misc/guc.c:994
 msgid "Sets the maximum memory to be used for query workspaces."
 msgstr "ÉèÖòéѯ¹¤×÷¿Õ¼äʹÓõÄ×î´óÄÚ´æÊý."
 
-#: utils/misc/guc.c:990
+#: utils/misc/guc.c:995
 msgid ""
 "This much memory may be used by each internal sort operation and hash table "
 "before switching to temporary disk files."
 msgstr "ÕâЩÄڴ潫¿ÉÄÜÓÃÓÚÄÚ²¿ÅÅÐò²Ù×÷ºÍת»¯µ½ÁÙʱ´ÅÅÌÎļþ֮ǰµÄÉ¢Áбí"
 
-#: utils/misc/guc.c:1000
+#: utils/misc/guc.c:1005
 msgid "Sets the maximum memory to be used for maintenance operations."
 msgstr "ÉèÖÃά»¤²Ù×÷ʹÓõÄ×î´óÄÚ´æÊý."
 
-#: utils/misc/guc.c:1001
+#: utils/misc/guc.c:1006
 msgid "This includes operations such as VACUUM and CREATE INDEX."
 msgstr ""
 
-#: utils/misc/guc.c:1009
+#: utils/misc/guc.c:1014
 msgid "Sets the maximum stack depth, in kilobytes."
 msgstr ""
 
-#: utils/misc/guc.c:1018
+#: utils/misc/guc.c:1023
 msgid "Vacuum cost for a page found in the buffer cache."
 msgstr ""
 
-#: utils/misc/guc.c:1027
+#: utils/misc/guc.c:1032
 msgid "Vacuum cost for a page not found in the buffer cache."
 msgstr ""
 
-#: utils/misc/guc.c:1036
+#: utils/misc/guc.c:1041
 msgid "Vacuum cost for a page dirtied by vacuum."
 msgstr ""
 
-#: utils/misc/guc.c:1045
+#: utils/misc/guc.c:1050
 msgid "Vacuum cost amount available before napping."
 msgstr ""
 
-#: utils/misc/guc.c:1054
+#: utils/misc/guc.c:1059
 msgid "Vacuum cost delay in milliseconds."
 msgstr ""
 
-#: utils/misc/guc.c:1063
+#: utils/misc/guc.c:1068
 msgid ""
 "Sets the maximum number of simultaneously open files for each server process."
 msgstr "ÉèÖÃÿһ¸ö·þÎñÆ÷½ø³Ìͬʱ´ò¿ªÎļþµÄ×î´ó¸öÊý."
 
-#: utils/misc/guc.c:1093
+#: utils/misc/guc.c:1098
 msgid "Sets the maximum allowed duration (in milliseconds) of any statement."
 msgstr "ÉèÖÃÈκÎÓï¾äÖ´ÐÐʱ¼äµÄ×î´óÖµ (µ¥Î»ºÁÃë)."
 
-#: utils/misc/guc.c:1094
+#: utils/misc/guc.c:1099
 msgid "A value of 0 turns off the timeout."
 msgstr "ֵΪ 0 µÄʱºò¹Ø±Õ³¬Ê±."
 
-#: utils/misc/guc.c:1102
+#: utils/misc/guc.c:1107
 msgid ""
 "Sets the maximum number of tables and indexes for which free space is "
 "tracked."
 msgstr ""
 
-#: utils/misc/guc.c:1111
+#: utils/misc/guc.c:1115
 msgid "Sets the maximum number of disk pages for which free space is tracked."
 msgstr ""
 
-#: utils/misc/guc.c:1121
+#: utils/misc/guc.c:1124
 msgid "Sets the maximum number of locks per transaction."
 msgstr "ÉèÖÃÿһ¸öÊÂÎïËøµÄ×î´ó¸öÊý."
 
-#: utils/misc/guc.c:1122
+#: utils/misc/guc.c:1125
 msgid ""
 "The shared lock table is sized on the assumption that at most "
 "max_locks_per_transaction * max_connections distinct objects will need to be "
 "locked at any one time."
 msgstr ""
 
-#: utils/misc/guc.c:1132
+#: utils/misc/guc.c:1135
 msgid "Sets the maximum time in seconds to complete client authentication."
 msgstr "ÉèÖÃÍê³É¿Í»§¶ËÈÏÖ¤µÄ×î´óÃëÊý."
 
-#: utils/misc/guc.c:1152
+#: utils/misc/guc.c:1155
 msgid ""
 "Sets the maximum distance in log segments between automatic WAL checkpoints."
 msgstr ""
 
-#: utils/misc/guc.c:1161
+#: utils/misc/guc.c:1164
 msgid "Sets the maximum time in seconds between automatic WAL checkpoints."
 msgstr ""
 
-#: utils/misc/guc.c:1170
+#: utils/misc/guc.c:1173
 msgid ""
 "Logs if filling of checkpoint segments happens more frequently than this (in "
 "seconds)."
 msgstr ""
 
-#: utils/misc/guc.c:1172
+#: utils/misc/guc.c:1175
 msgid ""
 "Write a message to the server log if checkpoints caused by the filling of "
 "checkpoint segment files happens more frequently than this number of "
 "seconds. Zero turns off the warning."
 msgstr ""
 
-#: utils/misc/guc.c:1182
+#: utils/misc/guc.c:1185
 msgid "Sets the number of disk-page buffers in shared memory for WAL."
 msgstr ""
 
-#: utils/misc/guc.c:1191
+#: utils/misc/guc.c:1194
 msgid ""
 "Sets the delay in microseconds between transaction commit and flushing WAL "
 "to disk."
 msgstr ""
 
-#: utils/misc/guc.c:1201
+#: utils/misc/guc.c:1204
 msgid ""
 "Sets the minimum concurrent open transactions before performing commit_delay."
 msgstr ""
 
-#: utils/misc/guc.c:1211
+#: utils/misc/guc.c:1214
 msgid "Sets the number of digits displayed for floating-point values."
 msgstr "ÉèÖø¡µãÊýÏÔʾµÄλÊý."
 
-#: utils/misc/guc.c:1212
+#: utils/misc/guc.c:1215
 msgid ""
 "This affects real, double precision, and geometric data types. The parameter "
 "value is added to the standard number of digits (FLT_DIG or DBL_DIG as "
 "appropriate)."
 msgstr ""
 
-#: utils/misc/guc.c:1222
+#: utils/misc/guc.c:1225
 msgid ""
 "Sets the minimum execution time in milliseconds above which statements will "
 "be logged."
 msgstr ""
 
-#: utils/misc/guc.c:1224
+#: utils/misc/guc.c:1227
 msgid "Zero prints all queries. The default is -1 (turning this feature off)."
 msgstr "Áã´òÓ¡ËùÓвéѯ. Ä¬ÈÏֵΪ -1 (¹Ø±Õ´Ë¹¦ÄÜ)."
 
-#: utils/misc/guc.c:1232
+#: utils/misc/guc.c:1235
 msgid "Interval to report shared buffer status in seconds"
 msgstr ""
 
-#: utils/misc/guc.c:1241
+#: utils/misc/guc.c:1244
 msgid "Background writer sleep time between rounds in milliseconds"
 msgstr "ºǫ́дÈëÆ÷ (Background writer) Á½´ÎÖ®¼äµÄÐÝÃßʱ¼ä, ºÁÃ뼶"
 
-#: utils/misc/guc.c:1250
+#: utils/misc/guc.c:1253
 msgid "Background writer percentage of dirty buffers to flush per round"
 msgstr "ºǫ́дÈëÆ÷ (Background writer) Ã¿´ÎˢеÄÔ໺³åÇø±ÈÂÊ"
 
-#: utils/misc/guc.c:1259
+#: utils/misc/guc.c:1262
 msgid "Background writer maximum number of pages to flush per round"
 msgstr "ºǫ́дÈëÆ÷ (Background writer) Ã¿´Î×î´óË¢ÐÂÒ³Êý"
 
-#: utils/misc/guc.c:1268
-msgid "Automatic logfile rotation will occur after N minutes"
+#: utils/misc/guc.c:1271
+msgid "Automatic log file rotation will occur after N minutes"
 msgstr ""
 
-#: utils/misc/guc.c:1277
-msgid "Automatic logfile rotation will occur after N kilobytes"
+#: utils/misc/guc.c:1280
+msgid "Automatic log file rotation will occur after N kilobytes"
 msgstr ""
 
-#: utils/misc/guc.c:1286
-msgid "Shows the maximum number of function arguments"
-msgstr "ÏÔʾº¯Êý²ÎÊýµÄ×î´ó¸öÊý"
+#: utils/misc/guc.c:1289
+msgid "Shows the maximum number of function arguments."
+msgstr "ÏÔʾº¯Êý²ÎÊýµÄ×î´ó¸öÊý."
 
-#: utils/misc/guc.c:1296
-msgid "Shows the maximum number of index keys"
-msgstr "ÏÔʾË÷Òý¼üÖµµÄ×î´ó¸öÊý"
+#: utils/misc/guc.c:1299
+msgid "Shows the maximum number of index keys."
+msgstr "ÏÔʾË÷Òý¼üÖµµÄ×î´ó¸öÊý."
 
-#: utils/misc/guc.c:1306
+#: utils/misc/guc.c:1309
 msgid "Shows the maximum identifier length"
 msgstr "ÏÔʾ±êʶ·û×î´ó³¤¶È"
 
-#: utils/misc/guc.c:1316
+#: utils/misc/guc.c:1319
 msgid "Shows size of a disk block"
 msgstr "ÏÔʾһ¸ö´ÅÅÌ¿éµÄ³ß´ç"
 
-#: utils/misc/guc.c:1335
+#: utils/misc/guc.c:1338
 msgid "Sets the planner's assumption about size of the disk cache."
 msgstr ""
 
-#: utils/misc/guc.c:1336
+#: utils/misc/guc.c:1339
 msgid ""
 "That is, the portion of the kernel's disk cache that will be used for "
 "PostgreSQL data files. This is measured in disk pages, which are normally 8 "
 "kB each."
 msgstr ""
 
-#: utils/misc/guc.c:1345
+#: utils/misc/guc.c:1348
 msgid ""
 "Sets the planner's estimate of the cost of a nonsequentially fetched disk "
 "page."
 msgstr ""
 
-#: utils/misc/guc.c:1347
+#: utils/misc/guc.c:1350
 msgid ""
 "This is measured as a multiple of the cost of a sequential page fetch. A "
 "higher value makes it more likely a sequential scan will be used, a lower "
 "value makes it more likely an index scan will be used."
 msgstr ""
 
-#: utils/misc/guc.c:1357
+#: utils/misc/guc.c:1360
 msgid "Sets the planner's estimate of the cost of processing each tuple (row)."
 msgstr ""
 
-#: utils/misc/guc.c:1358 utils/misc/guc.c:1368 utils/misc/guc.c:1377
+#: utils/misc/guc.c:1361 utils/misc/guc.c:1371 utils/misc/guc.c:1380
 msgid "This is measured as a fraction of the cost of a sequential page fetch."
 msgstr ""
 
-#: utils/misc/guc.c:1366
+#: utils/misc/guc.c:1369
 msgid ""
 "Sets the planner's estimate of processing cost for each index tuple (row) "
 "during index scan."
 msgstr ""
 
-#: utils/misc/guc.c:1376
+#: utils/misc/guc.c:1379
 msgid ""
 "Sets the planner's estimate of processing cost of each operator in WHERE."
 msgstr ""
 
-#: utils/misc/guc.c:1386
+#: utils/misc/guc.c:1389
 msgid "GEQO: selective pressure within the population."
 msgstr ""
 
-#: utils/misc/guc.c:1396
+#: utils/misc/guc.c:1399
 msgid "Sets the seed for random-number generation."
 msgstr "ÉèÖÃÉú³ÉËæ»úÊýµÄÖÖ×Ó."
 
-#: utils/misc/guc.c:1415
+#: utils/misc/guc.c:1418
 msgid "WAL archiving command."
 msgstr ""
 
-#: utils/misc/guc.c:1416
+#: utils/misc/guc.c:1419
 msgid "The shell command that will be called to archive a WAL file."
 msgstr ""
 
-#: utils/misc/guc.c:1424
+#: utils/misc/guc.c:1427
 msgid "Sets the client's character set encoding."
 msgstr "ÉèÖÿͻ§¶Ë±àÂë"
 
-#: utils/misc/guc.c:1434
+#: utils/misc/guc.c:1437
 msgid "Sets the message levels that are sent to the client."
 msgstr "ÉèÖ÷¢Ë͵½¿Í»§¶ËµÄÐÅÏ¢¼¶±ð."
 
-#: utils/misc/guc.c:1435
+#: utils/misc/guc.c:1438
 msgid ""
 "Valid values are DEBUG5, DEBUG4, DEBUG3, DEBUG2, DEBUG1, LOG, NOTICE, "
 "WARNING, and ERROR. Each level includes all the levels that follow it. The "
 "later the level, the fewer messages are sent."
 msgstr ""
 
-#: utils/misc/guc.c:1446
+#: utils/misc/guc.c:1449
 msgid "Sets the message levels that are logged."
 msgstr "ÉèÖÃÈÕÖ¾¼Ç¼µÄÐÅÏ¢¼¶±ð."
 
-#: utils/misc/guc.c:1447
+#: utils/misc/guc.c:1450
 msgid ""
 "Valid values are DEBUG5, DEBUG4, DEBUG3, DEBUG2, DEBUG1, INFO, NOTICE, "
 "WARNING, ERROR, LOG, FATAL, and PANIC. Each level includes all the levels "
 "that follow it."
 msgstr ""
 
-#: utils/misc/guc.c:1457
+#: utils/misc/guc.c:1460
 msgid "Sets the verbosity of logged messages."
 msgstr "ÉèÖÃÈÕÖ¾ÐÅÏ¢µÄÈß³¤."
 
-#: utils/misc/guc.c:1458
+#: utils/misc/guc.c:1461
 msgid "Valid values are \"terse\", \"default\", and \"verbose\"."
 msgstr "ÓÐЧֵΪ \"terse\", \"default\", ºÍ \"verbose\"."
 
-#: utils/misc/guc.c:1465
+#: utils/misc/guc.c:1468
 msgid "Sets the type of statements logged."
 msgstr "ÉèÖüǼÓï¾äµÄÀàÐÍ."
 
-#: utils/misc/guc.c:1466
-msgid "Valid values are \"none\", \"mod\", \"ddl\", and \"all\"."
-msgstr "ÓÐЧֵΪ \"none\", \"mod\", \"ddl\", ºÍ \"all\"."
+#: utils/misc/guc.c:1469
+msgid "Valid values are \"none\", \"ddl\", \"mod\", and \"all\"."
+msgstr "ÓÐЧֵΪ \"none\", \"ddl\", \"mod\", ºÍ \"all\"."
 
-#: utils/misc/guc.c:1474
+#: utils/misc/guc.c:1477
 msgid ""
 "Causes all statements generating error at or above this level to be logged."
 msgstr ""
 
-#: utils/misc/guc.c:1475
+#: utils/misc/guc.c:1478
 msgid ""
 "All SQL statements that cause an error of the specified level or a higher "
 "level are logged."
 msgstr ""
 
-#: utils/misc/guc.c:1484
+#: utils/misc/guc.c:1487
 msgid "Controls information prefixed to each log line"
 msgstr ""
 
-#: utils/misc/guc.c:1485
+#: utils/misc/guc.c:1488
 msgid "if blank no prefix is used"
 msgstr ""
 
-#: utils/misc/guc.c:1494
+#: utils/misc/guc.c:1497
 msgid "Sets the display format for date and time values."
 msgstr "ÉèÖÃÈÕÆÚºÍʱ¼äÖµµÄÏÔʾ¸ñʽ."
 
-#: utils/misc/guc.c:1495
+#: utils/misc/guc.c:1498
 msgid "Also controls interpretation of ambiguous date inputs."
 msgstr ""
 
-#: utils/misc/guc.c:1505
+#: utils/misc/guc.c:1508
+msgid "Sets the default tablespace to create tables and indexes in."
+msgstr ""
+
+#: utils/misc/guc.c:1509
+msgid "An empty string selects the database's default tablespace."
+msgstr ""
+
+#: utils/misc/guc.c:1517
 msgid "Sets the transaction isolation level of each new transaction."
 msgstr "ÉèÖÃÿһ¸öÐÂÊÂÎïµÄ¸ôÀë (isolation) ¼¶±ð."
 
-#: utils/misc/guc.c:1506
+#: utils/misc/guc.c:1518
 msgid ""
 "Each SQL transaction has an isolation level, which can be either \"read "
 "uncommitted\", \"read committed\", \"repeatable read\", or \"serializable\"."
@@ -3908,11 +3972,11 @@ msgstr ""
 "ÿһ¸ö SQL ÊÂÎﶼÓÐÒ»¸ö¸ôÀ뼶±ð, ¼¶±ð¿ÉÒÔÊÇ \"read uncommitted\", \"read "
 "committed\", \"repeatable read\", »òÕß \"serializable\"."
 
-#: utils/misc/guc.c:1515
+#: utils/misc/guc.c:1527
 msgid "Sets the path for dynamically loadable modules."
 msgstr "ÉèÖö¯Ì¬¼ÓÔØÃþ×éµÄ·¾¶."
 
-#: utils/misc/guc.c:1516
+#: utils/misc/guc.c:1528
 msgid ""
 "If a dynamically loadable module needs to be opened and the specified name "
 "does not have a directory component (i.e., the name does not contain a "
@@ -3921,286 +3985,330 @@ msgstr ""
 "Èç¹ûÒ»¸ö¶¯Ì¬¼ÓÔØÄ£¿éÐèÒª´ò¿ª²¢ÇÒÖ¸¶¨Ãû×ÖûÓз¾¶ (ÀýÈç, Ãû×ÖÖÐû°üº¬Ð±¸Ü), Ïµ"
 "ͳ½«ÔÚ´Ë·¾¶ÖвéÕÒÖ¸¶¨µÄÎļþ."
 
-#: utils/misc/guc.c:1527
+#: utils/misc/guc.c:1540
 msgid "Sets the location of the Kerberos server key file."
 msgstr "ÉèÖàKerberos ·þÎñÆ÷ÃÜÔ¿ÎļþλÖÃ."
 
-#: utils/misc/guc.c:1536
+#: utils/misc/guc.c:1550
 msgid "Sets the Rendezvous broadcast service name."
 msgstr ""
 
-#: utils/misc/guc.c:1547
+#: utils/misc/guc.c:1561
 msgid "Shows the collation order locale."
 msgstr ""
 
-#: utils/misc/guc.c:1557
+#: utils/misc/guc.c:1571
 msgid "Shows the character classification and case conversion locale."
 msgstr ""
 
-#: utils/misc/guc.c:1567
+#: utils/misc/guc.c:1581
 msgid "Sets the language in which messages are displayed."
 msgstr "ÉèÖÃÐÅÏ¢ÏÔʾÓïÑÔ."
 
-#: utils/misc/guc.c:1576
+#: utils/misc/guc.c:1590
 msgid "Sets the locale for formatting monetary amounts."
 msgstr "Ϊ»õ±ÒÊýÁ¿¸ñʽÉèÖàlocale."
 
-#: utils/misc/guc.c:1585
+#: utils/misc/guc.c:1599
 msgid "Sets the locale for formatting numbers."
 msgstr "ΪÊý×Ö¸ñʽÉèÖàlocale"
 
-#: utils/misc/guc.c:1594
+#: utils/misc/guc.c:1608
 msgid "Sets the locale for formatting date and time values."
 msgstr "ΪÈÕÆÚºÍʱ¼äÖµ¸ñʽÉèÖàlocale"
 
-#: utils/misc/guc.c:1603
+#: utils/misc/guc.c:1617
 msgid "Lists shared libraries to preload into server."
 msgstr "ÁгöԤװÈë·þÎñÆ÷µÄ¹²Ïí¿â."
 
-#: utils/misc/guc.c:1613
+#: utils/misc/guc.c:1627
 msgid "Sets the regular expression \"flavor\"."
 msgstr "ÉèÖÃÕýÔò±í´ïʽ \"flavor\"."
 
-#: utils/misc/guc.c:1614
+#: utils/misc/guc.c:1628
 msgid "This can be set to advanced, extended, or basic."
 msgstr "Õâ¸ö¿ÉÒÔÉèÖÃΪ advanced, extended, »òÕß basic."
 
-#: utils/misc/guc.c:1622
+#: utils/misc/guc.c:1636
 msgid "Sets the schema search order for names that are not schema-qualified."
 msgstr ""
 
-#: utils/misc/guc.c:1633
+#: utils/misc/guc.c:1647
 msgid "Sets the server (database) character set encoding."
 msgstr "ÉèÖ÷þÎñÆ÷ (Êý¾Ý¿â) ×Ö·û±àÂë."
 
-#: utils/misc/guc.c:1644
+#: utils/misc/guc.c:1658
 msgid "Shows the server version."
 msgstr "ÏÔʾ·þÎñÆ÷°æ±¾ÐÅÏ¢."
 
-#: utils/misc/guc.c:1655
+#: utils/misc/guc.c:1669
 msgid "Sets the session user name."
 msgstr "ÉèÖûỰÓû§Ãû³Æ."
 
-#: utils/misc/guc.c:1665
+#: utils/misc/guc.c:1679
 msgid "Sets the destination for server log output."
 msgstr "ÉèÖ÷þÎñÆ÷ÈÕÖ¾Êä³öÄ¿±ê."
 
-#: utils/misc/guc.c:1666
+#: utils/misc/guc.c:1680
 msgid ""
-"Valid values are combinations of stderr, syslog and eventlog, depending on "
-"platform."
-msgstr "ÓÐЧֵΪ stderr, syslog ºÍ eventlog µÄ×éºÏ, ÒÀÀµ²»Í¬Æ½Ì¨."
+"Valid values are combinations of \"stderr\", \"syslog\", and \"eventlog\", "
+"depending on the platform."
+msgstr "ÓÐЧֵΪ \"stderr\", \"syslog\" ºÍ \"eventlog\" µÄ×éºÏ, ÒÀÀµ²»Í¬Æ½Ì¨."
 
-#: utils/misc/guc.c:1675
+#: utils/misc/guc.c:1689
 msgid "Sets the destination directory for log files."
 msgstr "ÉèÖÃÈÕÖ¾ÎļþÄ¿µÄĿ¼."
 
-#: utils/misc/guc.c:1676
-msgid ""
-"May be specified as relative to the cluster directory or as absolute path."
+#: utils/misc/guc.c:1690
+msgid "May be specified as relative to the data directory or as absolute path."
 msgstr ""
 
-#: utils/misc/guc.c:1684
+#: utils/misc/guc.c:1699
 msgid "Sets the file name pattern for log files."
 msgstr "ÉèÖÃÈÕÖ¾ÎļþµÄÎļþÃû×Öģʽ."
 
-#: utils/misc/guc.c:1694
+#: utils/misc/guc.c:1710
 msgid "Sets the syslog \"facility\" to be used when syslog enabled."
 msgstr "µ±ÆôÓÃϵͳÈÕÖ¾ (syslog), ÉèÖÃϵͳÈÕ־ʹÓà\"facility\"."
 
-#: utils/misc/guc.c:1695
+#: utils/misc/guc.c:1711
 msgid ""
 "Valid values are LOCAL0, LOCAL1, LOCAL2, LOCAL3, LOCAL4, LOCAL5, LOCAL6, "
 "LOCAL7."
 msgstr ""
 "ÓÐЧֵΪ LOCAL0, LOCAL1, LOCAL2, LOCAL3, LOCAL4, LOCAL5, LOCAL6, LOCAL7."
 
-#: utils/misc/guc.c:1703
+#: utils/misc/guc.c:1719
 msgid "Sets the program name used to identify PostgreSQL messages in syslog."
 msgstr "ÉèÖÃÔÚϵͳÈÕÖ¾ (syslog) ÖÐÈ·ÈÏ PostgreSQL ÐÅÏ¢µÄ³ÌÐòÃû."
 
-#: utils/misc/guc.c:1714
+#: utils/misc/guc.c:1730
 msgid "Sets the time zone for displaying and interpreting time stamps."
 msgstr "ÉèÖÃÏÔʾºÍ½âÊÍʱ¼ä´ÁµÄʱÇø."
 
-#: utils/misc/guc.c:1723
+#: utils/misc/guc.c:1739
 msgid "Sets the current transaction's isolation level."
 msgstr "ÉèÖõ±Ç°ÊÂÎïµÄ¸ôÀ뼶±ð."
 
-#: utils/misc/guc.c:1733
+#: utils/misc/guc.c:1749
 msgid "Sets the owning group of the Unix-domain socket."
 msgstr "ÉèÖàUnix-domain Ì×½Ó×ÖµÄÊô×é."
 
-#: utils/misc/guc.c:1734
+#: utils/misc/guc.c:1750
 msgid ""
 "(The owning user of the socket is always the user that starts the server.)"
 msgstr "(Ì×½Ó×ÖµÄÊôÖ÷Óû§Í¨³£Ò²ÊÇÆ𶯷þÎñµÄÓû§.)"
 
-#: utils/misc/guc.c:1743
+#: utils/misc/guc.c:1759
 msgid "Sets the directory where the Unix-domain socket will be created."
 msgstr "ÉèÖô´½¨ Unix-domain Ì×½Ó×ÖµÄĿ¼."
 
-#: utils/misc/guc.c:1752
+#: utils/misc/guc.c:1769
 msgid "Sets the host name or IP address(es) to listen to."
 msgstr "ÉèÖüàÌýµÄÖ÷»úÃû»ò IP µØÖ·."
 
-#: utils/misc/guc.c:1762
+#: utils/misc/guc.c:1779
 msgid "Selects the method used for forcing WAL updates out to disk."
 msgstr ""
 
-#: utils/misc/guc.c:1771
-msgid "Sets the list of known custom variable classes"
+#: utils/misc/guc.c:1788
+msgid "Sets the list of known custom variable classes."
 msgstr ""
 
-#: utils/misc/guc.c:1780
-msgid "Sets the location of the data directory"
-msgstr "ÉèÖÃÊý¾ÝĿ¼µÄλÖÃ"
+#: utils/misc/guc.c:1798
+msgid "Sets the server's data directory."
+msgstr "ÉèÖ÷þÎñÆ÷µÄÊý¾ÝĿ¼"
+
+#: utils/misc/guc.c:1808
+msgid "Sets the server's main configuration file."
+msgstr "ÉèÖ÷þÎñÆ÷µÄÖ÷ÅäÖÃÎļþ"
 
-#: utils/misc/guc.c:1786
-msgid "Sets the location of the \"hba\" configuration file"
-msgstr "ÉèÖà\"hba\" ÅäÖÃÎļþλÖÃ"
+#: utils/misc/guc.c:1818
+msgid "Sets the server's \"hba\" configuration file"
+msgstr "ÉèÖ÷þÎñÆ÷µÄ \"hba\" ÅäÖÃÎļþ"
 
-#: utils/misc/guc.c:1792
-msgid "Sets the location of the \"ident\" configuration file"
-msgstr "ÉèÖà\"ident\" ÅäÖÃÎļþλÖÃ"
+#: utils/misc/guc.c:1828
+msgid "Sets the server's \"ident\" configuration file"
+msgstr "ÉèÖ÷þÎñÆ÷µÄ \"ident\" ÅäÖÃÎļþ"
 
-#: utils/misc/guc.c:1798
-msgid "Writes the postmaster PID to the specified file"
-msgstr "°Ñ postmaster PID Ð´µ½Ö¸¶¨Îļþ"
+#: utils/misc/guc.c:1838
+msgid "Writes the postmaster PID to the specified file."
+msgstr "°Ñ postmaster PID Ð´µ½Ö¸¶¨Îļþ."
+
+#: utils/misc/guc.c:2477
+#, c-format
+msgid ""
+"%s does not know where to find the server configuration file.\n"
+"You must specify the --config-file or -D invocation option or set the PGDATA "
+"environment variable.\n"
+msgstr ""
+"%s ²»ÖªµÀÔÚÄÄÀï¿ÉÒÔÕÒµ½Êý¾Ý¿âϵͳÅäÖÃÎļþ.\n"
+"Äã±ØÐëͨ¹ý --config-file »ò -D Ñ¡ÏîÖ¸¶¨»òÕßͨ¹ýÉèÖàPGDATA »·¾³±äÁ¿.\n"
+
+#: utils/misc/guc.c:2502
+#, c-format
+msgid "%s cannot access the server configuration file \"%s\": %s\n"
+msgstr "%s ÎÞ·¨´¦Àí·þÎñÆ÷µÄÅäÖÃÎļþ \"%s\": %s\n"
+
+#: utils/misc/guc.c:2522
+#, c-format
+msgid ""
+"%s does not know where to find the database system data.\n"
+"This can be specified as \"data_directory\" in \"%s\", or by the -D "
+"invocation option, or by the PGDATA environment variable.\n"
+msgstr ""
+"%s ²»ÖªµÀÔÚÄÄÀï¿ÉÒÔÕÒµ½Êý¾Ý¿âϵͳÊý¾Ý.\n"
+"¿ÉÒÔÔÚ \"%s\" ÖÐÖ¸¶¨ \"data_directory\", »òÕßͨ¹ý -D Ñ¡ÏîÖ¸¶¨»òÕßͨ¹ýÉèÖà"
+"PGDATA »·¾³±äÁ¿.\n"
+
+#: utils/misc/guc.c:2545
+#, c-format
+msgid ""
+"%s does not know where to find the \"hba\" configuration file.\n"
+"This can be specified as \"hba_file\" in \"%s\", or by the -D invocation "
+"option, or by the PGDATA environment variable.\n"
+msgstr ""
+"%s ²»ÖªµÀÔÚÄÄÀï¿ÉÒÔÕÒµ½ \"hba\" ÅäÖÃÎļþ.\n"
+"¿ÉÒÔÔÚ \"%s\" ÖÐÖ¸¶¨ \"hba_file\", »òÕßͨ¹ý -D Ñ¡ÏîÖ¸¶¨»òÕßͨ¹ýÉèÖÃPGDATA »·"
+"¾³±äÁ¿.\n"
+
+#: utils/misc/guc.c:2568
+#, c-format
+msgid ""
+"%s does not know where to find the \"ident\" configuration file.\n"
+"This can be specified as \"ident_file\" in \"%s\", or by the -D invocation "
+"option, or by the PGDATA environment variable.\n"
+msgstr ""
+"%s ²»ÖªµÀÔÚÄÄÀï¿ÉÒÔÕÒµ½ \"ident\" ÅäÖÃÎļþ.\n"
+"¿ÉÒÔÔÚ \"%s\" ÖÐÖ¸¶¨ \"ident_file\", »òÕßͨ¹ý -D Ñ¡ÏîÖ¸¶¨»òÕßͨ¹ýÉèÖÃPGDATA "
+"»·¾³±äÁ¿.\n"
 
-#: utils/misc/guc.c:3098 utils/misc/guc.c:3787 utils/misc/guc.c:3823
-#: utils/misc/guc.c:3879 utils/misc/guc.c:4216 utils/misc/guc.c:4365
+#: utils/misc/guc.c:3274 utils/misc/guc.c:3800 utils/misc/guc.c:3840
+#: utils/misc/guc.c:3915 utils/misc/guc.c:4251 utils/misc/guc.c:4402
 #, c-format
 msgid "unrecognized configuration parameter \"%s\""
 msgstr "δÈϿɵÄÅäÖòÎÊý \"%s\""
 
-#: utils/misc/guc.c:3117
+#: utils/misc/guc.c:3293
 #, c-format
 msgid "parameter \"%s\" cannot be changed"
 msgstr "²ÎÊý \"%s\" ²»¿ÉÒԸıä"
 
-#: utils/misc/guc.c:3129
+#: utils/misc/guc.c:3305
 #, c-format
 msgid "parameter \"%s\" cannot be changed after server start"
 msgstr "·þÎñÆ÷Æô¶¯ºó, ²ÎÊý \"%s\" ²»Äܸıä"
 
-#: utils/misc/guc.c:3139
+#: utils/misc/guc.c:3315
 #, c-format
 msgid "parameter \"%s\" cannot be changed now"
 msgstr "²ÎÊý \"%s\" ÏÖÔÚ²»Äܸıä"
 
-#: utils/misc/guc.c:3169
+#: utils/misc/guc.c:3345
 #, c-format
 msgid "parameter \"%s\" cannot be set after connection start"
 msgstr "Áª½ÓÆô¶¯ºó, ²ÎÊý \"%s\" ²»ÄÜÉèÖÃ"
 
-#: utils/misc/guc.c:3179 utils/misc/guc.c:3713
+#: utils/misc/guc.c:3355
 #, c-format
 msgid "permission denied to set parameter \"%s\""
 msgstr "ÉèÖòÎÊý \"%s\" È¨ÏÞ²»ÔÊÐí"
 
-#: utils/misc/guc.c:3236
+#: utils/misc/guc.c:3406
 #, c-format
 msgid "parameter \"%s\" requires a Boolean value"
 msgstr "²ÎÊý \"%s\" ÐèÒªÒ»¸ö²¼¶ûÖµ"
 
-#: utils/misc/guc.c:3268 utils/misc/guc.c:3376
+#: utils/misc/guc.c:3422 utils/misc/guc.c:3506
 #, c-format
 msgid "invalid value for parameter \"%s\": %d"
 msgstr "²ÎÊý \"%s\" µÄÖµÎÞЧ: %d"
 
-#: utils/misc/guc.c:3328
+#: utils/misc/guc.c:3482
 #, c-format
 msgid "parameter \"%s\" requires an integer value"
 msgstr "²ÎÊý \"%s\" ÐèÒªÒ»¸öÕûÊýÖµ"
 
-#: utils/misc/guc.c:3336
+#: utils/misc/guc.c:3490
 #, c-format
 msgid "%d is outside the valid range for parameter \"%s\" (%d .. %d)"
 msgstr "%d ³¬³öÁ˲ÎÊý \"%s\" (%d .. %d) µÄÓÐЧ·¶Î§"
 
-#: utils/misc/guc.c:3436
+#: utils/misc/guc.c:3566
 #, c-format
 msgid "parameter \"%s\" requires a numeric value"
 msgstr "²ÎÊý \"%s\" ÐèÒªÒ»¸öÊý×ÖÖµ"
 
-#: utils/misc/guc.c:3444
+#: utils/misc/guc.c:3574
 #, c-format
 msgid "%g is outside the valid range for parameter \"%s\" (%g .. %g)"
 msgstr "%g ³¬³öÁ˲ÎÊý \"%s\" (%g .. %g) µÄÓÐЧ·¶Î§"
 
-#: utils/misc/guc.c:3477
+#: utils/misc/guc.c:3590
 #, c-format
 msgid "invalid value for parameter \"%s\": %g"
 msgstr "²ÎÊý \"%s\" µÄÖµÎÞЧ: %g"
 
-#: utils/misc/guc.c:3609
+#: utils/misc/guc.c:3688
 #, c-format
 msgid "invalid value for parameter \"%s\": \"%s\""
 msgstr "²ÎÊý \"%s\" µÄÖµÎÞЧ: \"%s\""
 
-#: utils/misc/guc.c:3716
-msgid "Must be superuser to change this value to false."
-msgstr "±ØÐëΪ³¬¼¶Óû§²Å¿ÉÒԸıä´ËֵΪ false"
-
-#: utils/misc/guc.c:3718
-msgid "Must be superuser to increase this value or turn it off."
-msgstr "Ö»Óг¬¼¶Óû§ÄÜÔö¼Ó´ËÖµ»ò¹Ø±ÕËü."
-
-#: utils/misc/guc.c:3719
-msgid "Must be superuser to increase this value."
-msgstr "Ö»Óг¬¼¶Óû§ÄÜÔö¼ÓÕâ¸öÖµ."
+#: utils/misc/guc.c:3804 utils/misc/guc.c:3844 utils/misc/guc.c:4406
+#, c-format
+msgid "must be superuser to examine \"%s\""
+msgstr "¼ì²é \"%s\" ±ØÐëΪ³¬¼¶Óû§"
 
-#: utils/misc/guc.c:3888
+#: utils/misc/guc.c:3924
 #, c-format
 msgid "SET %s takes only one argument"
 msgstr "SET %s Ö»ÄÜ´øÒ»¸ö²ÎÊý"
 
-#: utils/misc/guc.c:3992
+#: utils/misc/guc.c:4028
 msgid "SET requires parameter name"
 msgstr "SET ÐèÒª²ÎÊýÃû×Ö"
 
-#: utils/misc/guc.c:4056
+#: utils/misc/guc.c:4092
 #, c-format
 msgid "attempt to redefine parameter \"%s\""
 msgstr "³¢ÊÔÖØж¨Òå²ÎÊý \"%s\""
 
-#: utils/misc/guc.c:5002
+#: utils/misc/guc.c:5049
 #, c-format
 msgid "could not parse setting for parameter \"%s\""
 msgstr "ÎÞ·¨·ÖÎö²ÎÊý \"%s\" µÄÉèÖÃ"
 
-#: utils/misc/guc.c:5200
+#: utils/misc/guc.c:5247
 msgid "invalid list syntax for parameter \"log_destination\""
 msgstr "ÎÞЧµÄ \"log_destination\" ²ÎÊýÁбíÓï·¨"
 
-#: utils/misc/guc.c:5223
+#: utils/misc/guc.c:5270
 #, c-format
-msgid "unrecognised \"log_destination\" key word: \"%s\""
+msgid "unrecognized \"log_destination\" key word: \"%s\""
 msgstr "²»ÈϿɵĠ\"log_destination\" ¹Ø¼ü×Ö: \"%s\""
 
-#: utils/misc/guc.c:5457
+#: utils/misc/guc.c:5498
 msgid "SET AUTOCOMMIT TO OFF is no longer supported"
 msgstr "SET AUTOCOMMIT TO OFF ²»ÔÙ±»Ö§³Ö"
 
-#: utils/misc/guc.c:5505
+#: utils/misc/guc.c:5546
 #, c-format
-msgid "invalid syntax for custom_variable_classes: \"%s\""
-msgstr "²»ºÏ·¨µÄ custom_variable_classes Óï·¨: \"%s\""
+msgid "invalid syntax for \"custom_variable_classes\": \"%s\""
+msgstr "²»ºÏ·¨µÄ \"custom_variable_classes\" Óï·¨: \"%s\""
 
-#: utils/misc/guc.c:5534
+#: utils/misc/guc.c:5575
 msgid "cannot enable parameter when \"log_statement_stats\" is true"
 msgstr "µ± \"log_statement_stats\" Îª true Ê±, ²»ÄÜÆô¶¯²ÎÊý."
 
-#: utils/misc/guc.c:5550
+#: utils/misc/guc.c:5592
 msgid ""
 "cannot enable \"log_statement_stats\" when \"log_parser_stats\", "
 "\"log_planner_stats\", or \"log_executor_stats\" is true"
 msgstr ""
-"µ± \"log_parser_stats\", \"log_planner_stats\", »òÕß "
-"\"log_executor_stats\" Îª true Ê±, ²»ÄÜÆô¶¯ \"log_statement_stats\"."
+"µ± \"log_parser_stats\", \"log_planner_stats\", »òÕß \"log_executor_stats\" "
+"Ϊ true Ê±, ²»ÄÜÆô¶¯ \"log_statement_stats\"."
 
-#: utils/misc/guc.c:5568
+#: utils/misc/guc.c:5611
 msgid "cannot set transaction read-write mode inside a read-only transaction"
 msgstr "²»ÄÜÔÚÒ»¸öÖ»¶ÁÊÂÎïÀïÃæÉèÖöÁдģʽ"
 
@@ -4208,22 +4316,22 @@ msgstr "
 msgid "internal error: unrecognized run-time parameter type\n"
 msgstr "ÄÚ²¿´íÎó: Î´ÖªµÄÔËÐÐʱ²ÎÊýÀàÐÍ\n"
 
-#: utils/mmgr/aset.c:336
+#: utils/mmgr/aset.c:338
 #, c-format
 msgid "Failed while creating memory context \"%s\"."
 msgstr "´´½¨ÄÚ´æÉÏÏÂÎÄ \"%s\" Ê§°Ü."
 
-#: utils/mmgr/aset.c:502 utils/mmgr/aset.c:699 utils/mmgr/aset.c:892
+#: utils/mmgr/aset.c:504 utils/mmgr/aset.c:701 utils/mmgr/aset.c:894
 #, c-format
 msgid "Failed on request of size %lu."
 msgstr "·ÖÅäÄÚ´æ %lu ´óСʧ°Ü."
 
-#: utils/mmgr/portalmem.c:170
+#: utils/mmgr/portalmem.c:173
 #, c-format
 msgid "cursor \"%s\" already exists"
 msgstr "Óαê \"%s\" ÒѾ­´æÔÚ"
 
-#: utils/mmgr/portalmem.c:174
+#: utils/mmgr/portalmem.c:177
 #, c-format
 msgid "closing existing cursor \"%s\""
 msgstr "¹Ø±ÕÒÑ´æÔÚµÄÓαê \"%s\""
@@ -4255,7 +4363,7 @@ msgstr "
 msgid "type \"%s\" is only a shell"
 msgstr "ÀàÐÍ \"%s\" Ö»ÊÇÒ»¸ö shell"
 
-#: utils/cache/typcache.c:369 commands/indexcmds.c:680
+#: utils/cache/typcache.c:369 commands/indexcmds.c:694
 #, c-format
 msgid "there are multiple default operator classes for data type %s"
 msgstr "Êý¾ÝÀàÐÍ %s Óжà¸öĬÈϵIJÙ×÷·û±í"
@@ -4269,28 +4377,28 @@ msgstr "
 msgid "record type has not been registered"
 msgstr "¼Ç¼ÀàÐÍûÓÐ×¢²á"
 
-#: utils/cache/lsyscache.c:1679 utils/cache/lsyscache.c:1715
-#: utils/cache/lsyscache.c:1751 utils/cache/lsyscache.c:1787
+#: utils/cache/lsyscache.c:1687 utils/cache/lsyscache.c:1723
+#: utils/cache/lsyscache.c:1759 utils/cache/lsyscache.c:1795
 #, c-format
 msgid "type %s is only a shell"
 msgstr "ÀàÐÍ %s Ö»ÊÇÒ»¸ö shell"
 
-#: utils/cache/lsyscache.c:1684
+#: utils/cache/lsyscache.c:1692
 #, c-format
 msgid "no input function available for type %s"
 msgstr "ûÓÐÓÐЧµÄ %s ÀàÐÍÊäÈ뺯Êý"
 
-#: utils/cache/lsyscache.c:1720
+#: utils/cache/lsyscache.c:1728
 #, c-format
 msgid "no output function available for type %s"
 msgstr "ûÓÐÓÐЧµÄ %s ÀàÐÍÊä³öº¯Êý"
 
-#: utils/cache/relcache.c:3264
+#: utils/cache/relcache.c:3293
 #, c-format
 msgid "could not create relation-cache initialization file \"%s\": %m"
 msgstr "ÎÞ·¨´´½¨ relation-cache ³õʼ»¯Îļþ \"%s\": %m"
 
-#: utils/cache/relcache.c:3266
+#: utils/cache/relcache.c:3295
 msgid "Continuing anyway, but there's something wrong."
 msgstr "ÈÔ¼ÌÐø, µ«¿Ï¶¨ÓÐЩ´íÎó´æÔÚ."
 
@@ -4308,80 +4416,80 @@ msgstr "
 msgid "[unknown]"
 msgstr "[δ֪]"
 
-#: utils/error/elog.c:1474 utils/error/elog.c:1667 utils/error/elog.c:1743
+#: utils/error/elog.c:1488 utils/error/elog.c:1681 utils/error/elog.c:1757
 msgid "missing error text"
 msgstr "ȱÉÙ´íÎóÐÅÏ¢"
 
-#: utils/error/elog.c:1477 utils/error/elog.c:1480 utils/error/elog.c:1746
-#: utils/error/elog.c:1749
+#: utils/error/elog.c:1491 utils/error/elog.c:1494 utils/error/elog.c:1760
+#: utils/error/elog.c:1763
 #, c-format
 msgid " at character %d"
 msgstr " µÚ %d ¸ö×Ö·û´¦"
 
-#: utils/error/elog.c:1490
+#: utils/error/elog.c:1504
 msgid "DETAIL:  "
 msgstr "ÏêϸÐÅÏ¢:  "
 
-#: utils/error/elog.c:1497
+#: utils/error/elog.c:1511
 msgid "HINT:  "
 msgstr "Ìáʾ:  "
 
-#: utils/error/elog.c:1504
+#: utils/error/elog.c:1518
 msgid "QUERY:  "
 msgstr "²éѯ:  "
 
-#: utils/error/elog.c:1511
+#: utils/error/elog.c:1525
 msgid "CONTEXT:  "
 msgstr "ÉÏÏÂÎÄ:  "
 
-#: utils/error/elog.c:1521
+#: utils/error/elog.c:1535
 #, c-format
 msgid "LOCATION:  %s, %s:%d\n"
 msgstr "λÖÃ:  %s, %s:%d\n"
 
-#: utils/error/elog.c:1528
+#: utils/error/elog.c:1542
 #, c-format
 msgid "LOCATION:  %s:%d\n"
 msgstr "λÖÃ:  %s:%d\n"
 
-#: utils/error/elog.c:1541
+#: utils/error/elog.c:1555
 msgid "STATEMENT:  "
 msgstr "Óï¾ä:  "
 
-#: utils/error/elog.c:1859
+#: utils/error/elog.c:1873
 #, c-format
 msgid "operating system error %d"
 msgstr "²Ù×÷ϵͳ´íÎó %d"
 
-#: utils/error/elog.c:1882
+#: utils/error/elog.c:1896
 msgid "DEBUG"
 msgstr "µ÷ÊÔ"
 
-#: utils/error/elog.c:1886
+#: utils/error/elog.c:1900
 msgid "LOG"
 msgstr "ÈÕÖ¾"
 
-#: utils/error/elog.c:1889
+#: utils/error/elog.c:1903
 msgid "INFO"
 msgstr "ÐÅÏ¢"
 
-#: utils/error/elog.c:1892
+#: utils/error/elog.c:1906
 msgid "NOTICE"
 msgstr "×¢Òâ"
 
-#: utils/error/elog.c:1895
+#: utils/error/elog.c:1909
 msgid "WARNING"
 msgstr "¾¯¸æ"
 
-#: utils/error/elog.c:1898
+#: utils/error/elog.c:1912
 msgid "ERROR"
 msgstr "´íÎó"
 
-#: utils/error/elog.c:1901
+#: utils/error/elog.c:1915
 msgid "FATAL"
 msgstr "ÖÂÃü´íÎó"
 
-#: utils/error/elog.c:1904
+#: utils/error/elog.c:1918
 msgid "PANIC"
 msgstr "±ÈÖÂÃü´íÎó»¹¹ý·ÖµÄ´íÎó"
 
@@ -4431,18 +4539,23 @@ msgstr "
 msgid "row is too big: size %lu, maximum size %lu"
 msgstr "ÐÐÌ«´ó: ³ß´ç %lu, ×î´óÖµ %lu"
 
-#: access/heap/heapam.c:608 access/heap/heapam.c:643 access/heap/heapam.c:678
+#: access/heap/heapam.c:487
+#, c-format
+msgid "could not obtain lock on relation \"%s\""
+msgstr "ÎÞ·¨ÔÚ¹Øϵ \"%s\" ÉÏ»ñµÃËø"
+
+#: access/heap/heapam.c:610 access/heap/heapam.c:645 access/heap/heapam.c:680
 #: catalog/aclchk.c:286
 #, c-format
 msgid "\"%s\" is an index"
 msgstr "\"%s\" ÊÇÒ»¸öË÷Òý"
 
-#: access/heap/heapam.c:613 access/heap/heapam.c:648 access/heap/heapam.c:683
+#: access/heap/heapam.c:615 access/heap/heapam.c:650 access/heap/heapam.c:685
 #, c-format
 msgid "\"%s\" is a special relation"
 msgstr "\"%s\" ÎªÌرð¹Øϵ"
 
-#: access/heap/heapam.c:618 access/heap/heapam.c:653 access/heap/heapam.c:688
+#: access/heap/heapam.c:620 access/heap/heapam.c:655 access/heap/heapam.c:690
 #: catalog/aclchk.c:293
 #, c-format
 msgid "\"%s\" is a composite type"
@@ -4503,9 +4616,9 @@ msgid "could not access status of transaction %u"
 msgstr "ÎÞ·¨´¦ÀíÊÂÎï %u µÄ״̬"
 
 #: access/transam/slru.c:645 access/transam/xlog.c:1527
-#: access/transam/xlog.c:1648 access/transam/xlog.c:2914
-#: access/transam/xlog.c:5311 access/transam/xlog.c:5429
-#: postmaster/postmaster.c:3431
+#: access/transam/xlog.c:1647 access/transam/xlog.c:2922
+#: access/transam/xlog.c:5340 access/transam/xlog.c:5458
+#: postmaster/postmaster.c:2907
 #, c-format
 msgid "could not create file \"%s\": %m"
 msgstr "ÎÞ·¨´´½¨Îļþ \"%s\": %m"
@@ -4526,13 +4639,13 @@ msgid "could not write to file \"%s\" at offset %u: %m"
 msgstr "ÎÞ·¨ÍùÎļþ \"%s\" Æ«ÒÆÁ¿ %u Ð´Èë: %m"
 
 #: access/transam/slru.c:673 access/transam/xlog.c:1563
-#: access/transam/xlog.c:1688 access/transam/xlog.c:3011
+#: access/transam/xlog.c:1687 access/transam/xlog.c:3019
 #, c-format
 msgid "could not fsync file \"%s\": %m"
 msgstr "ÎÞ·¨ fsync Îļþ \"%s\": %m"
 
 #: access/transam/slru.c:680 access/transam/xlog.c:1568
-#: access/transam/xlog.c:1693 access/transam/xlog.c:3016
+#: access/transam/xlog.c:1692 access/transam/xlog.c:3024
 #, c-format
 msgid "could not close file \"%s\": %m"
 msgstr "ÎÞ·¨¹Ø±ÕÎļþ \"%s\": %m"
@@ -4547,250 +4660,254 @@ msgstr ""
 msgid "removing file \"%s\""
 msgstr "ɾ³ýÎļþ \"%s\""
 
-#: access/transam/slru.c:967 commands/tablespace.c:577
-#: commands/tablespace.c:721
+#: access/transam/slru.c:967 commands/tablespace.c:573
+#: commands/tablespace.c:719
 #, c-format
 msgid "could not read directory \"%s\": %m"
 msgstr "ÎÞ·¨¶ÁȡĿ¼ \"%s\": %m"
 
-#: access/transam/xact.c:402
+#: access/transam/xact.c:510
 msgid "cannot have more than 2^32-1 commands in a transaction"
 msgstr "ÔÚÒ»¸öÊÂÎïÖв»¿ÉÒÔ³¬¹ý 2^32-1 ¸öÃüÁî"
 
 #. translator: %s represents an SQL statement name
-#: access/transam/xact.c:1996
+#: access/transam/xact.c:2178
 #, c-format
 msgid "%s cannot run inside a transaction block"
 msgstr "%s ÎÞ·¨ÔÚÊÂÎï¿éÖÐÔËÐÐ"
 
 #. translator: %s represents an SQL statement name
-#: access/transam/xact.c:2006
+#: access/transam/xact.c:2188
 #, c-format
 msgid "%s cannot run inside a subtransaction"
 msgstr "%s ÎÞ·¨ÔÚÒ»¸ö×ÓÊÂÎïÖÐÔËÐÐ"
 
 #. translator: %s represents an SQL statement name
-#: access/transam/xact.c:2018
+#: access/transam/xact.c:2200
 #, c-format
 msgid "%s cannot be executed from a function"
 msgstr "À´×ÔÒ»¸öº¯ÊýµÄ %s ²»Äܱ»Ö´ÐÐ"
 
 #. translator: %s represents an SQL statement name
-#: access/transam/xact.c:2069
+#: access/transam/xact.c:2251
 #, c-format
 msgid "%s may only be used in transaction blocks"
 msgstr "%s Ö»¿ÉÒÔÔÚÊÂÎï¿éÖÐʹÓÃ"
 
-#: access/transam/xact.c:2197
+#: access/transam/xact.c:2434
 msgid "there is already a transaction in progress"
 msgstr "ÒѾ­ÓÐÒ»¸öÊÂÎïÔÚÔËÐÐÖÐ"
 
-#: access/transam/xact.c:2290 access/transam/xact.c:2377
+#: access/transam/xact.c:2549 access/transam/xact.c:2640
 msgid "there is no transaction in progress"
 msgstr "ûÓÐÊÂÎïÔÚÔËÐÐÖÐ"
 
-#: access/transam/xact.c:2467 access/transam/xact.c:2514
-#: access/transam/xact.c:2520 access/transam/xact.c:2562
-#: access/transam/xact.c:2613 access/transam/xact.c:2619
+#: access/transam/xact.c:2732 access/transam/xact.c:2781
+#: access/transam/xact.c:2787 access/transam/xact.c:2831
+#: access/transam/xact.c:2878 access/transam/xact.c:2884
 msgid "no such savepoint"
 msgstr ""
 
-#: access/transam/xlog.c:906
+#: access/transam/xact.c:3522
+msgid "cannot have more than 2^32-1 subtransactions in a transaction"
+msgstr "ÔÚÒ»¸öÊÂÎïÖв»¿ÉÒÔ³¬¹ýÓР2^32-1 ¸ö×ÓÊÂÎï"
+
+#: access/transam/xlog.c:907
 #, c-format
 msgid "could not create archive status file \"%s\": %m"
 msgstr "ÎÞ·¨´´½¨¹éµµ×´Ì¬Îļþ \"%s\": %m"
 
-#: access/transam/xlog.c:914
+#: access/transam/xlog.c:915
 #, c-format
 msgid "could not write archive status file \"%s\": %m"
 msgstr "ÎÞ·¨Ð´Èë¹éµµ×´Ì¬Îļþ \"%s\": %m"
 
-#: access/transam/xlog.c:1179 access/transam/xlog.c:1303
-#: access/transam/xlog.c:5171
+#: access/transam/xlog.c:1180 access/transam/xlog.c:1304
+#: access/transam/xlog.c:5192
 #, c-format
 msgid "could not close log file %u, segment %u: %m"
 msgstr "ÎÞ·¨¹Ø±ÕÈÕÖ¾Îļþ %u, ¶Î %u: %m"
 
-#: access/transam/xlog.c:1237 access/transam/xlog.c:2407
+#: access/transam/xlog.c:1238 access/transam/xlog.c:2416
 #, c-format
 msgid "could not seek in log file %u, segment %u to offset %u: %m"
 msgstr "ÎÞ·¨ÔÚÈÕÖ¾Îļþ %u ÖвéÕÒ, ¶Î %u Æ«ÒÆÁ¿ %u: %m"
 
-#: access/transam/xlog.c:1251
+#: access/transam/xlog.c:1252
 #, c-format
 msgid "could not write to log file %u, segment %u at offset %u: %m"
 msgstr "ÎÞ·¨Ð´ÈëÈÕÖ¾Îļþ %u, ¶Î %u Æ«ÒÆÁ¿ %u: %m"
 
-#: access/transam/xlog.c:1503 access/transam/xlog.c:1595
-#: access/transam/xlog.c:1809 access/transam/xlog.c:1863
-#: access/transam/xlog.c:1872
+#: access/transam/xlog.c:1504 access/transam/xlog.c:1595
+#: access/transam/xlog.c:1808 access/transam/xlog.c:1862
+#: access/transam/xlog.c:1871
 #, c-format
 msgid "could not open file \"%s\" (log file %u, segment %u): %m"
 msgstr "ÎÞ·¨´ò¿ªÎļþ \"%s\" (ÈÕÖ¾Îļþ %u, ¶Î %u): %m"
 
-#: access/transam/xlog.c:1661 access/transam/xlog.c:2945
-#: access/transam/xlog.c:5400 access/transam/xlog.c:5451
-#: access/transam/xlog.c:5523 access/transam/xlog.c:5548
-#: access/transam/xlog.c:5586
+#: access/transam/xlog.c:1660 access/transam/xlog.c:2953
+#: access/transam/xlog.c:5429 access/transam/xlog.c:5480
+#: access/transam/xlog.c:5552 access/transam/xlog.c:5577
+#: access/transam/xlog.c:5615
 #, c-format
 msgid "could not read file \"%s\": %m"
 msgstr "ÎÞ·¨¶ÁÈ¡Îļþ \"%s\": %m"
 
-#: access/transam/xlog.c:1664
+#: access/transam/xlog.c:1663
 #, c-format
-msgid "insufficient data in file \"%s\""
+msgid "not enough data in file \"%s\""
 msgstr "Îļþ \"%s\" ÖеÄÊý¾Ý²»×ã"
 
-#: access/transam/xlog.c:1776
+#: access/transam/xlog.c:1775
 #, c-format
 msgid ""
 "could not link file \"%s\" to \"%s\" (initialization of log file %u, segment "
 "%u): %m"
 msgstr "ÎÞ·¨Á´½ÓÎļþ \"%s\" µ½ \"%s\" (ÈÕÖ¾Îļþ %u µÄ³õʼ»¯, ¶Î %u): %m"
 
-#: access/transam/xlog.c:1783
+#: access/transam/xlog.c:1782
 #, c-format
 msgid ""
 "could not rename file \"%s\" to \"%s\" (initialization of log file %u, "
 "segment %u): %m"
 msgstr "ÎÞ·¨ÖØÃüÃûÎļþ \"%s\" Îª \"%s\" (ÈÕÖ¾Îļþ %u µÄ³õʼ»¯, ¶Î %u): %m"
 
-#: access/transam/xlog.c:1938 access/transam/xlog.c:2040
-#: access/transam/xlog.c:5294
+#: access/transam/xlog.c:1937 access/transam/xlog.c:2039
+#: access/transam/xlog.c:5323
 #, c-format
-msgid "could not stat \"%s\": %m"
-msgstr "ÎÞ·¨È¡ \"%s\" µÄ״̬: %m"
+msgid "could not stat file \"%s\": %m"
+msgstr "ÎÞ·¨È¡Îļþ \"%s\" µÄ״̬: %m"
 
-#: access/transam/xlog.c:1946 access/transam/xlog.c:5456
-#: access/transam/xlog.c:5610 postmaster/postmaster.c:3569
+#: access/transam/xlog.c:1945 access/transam/xlog.c:5485
+#: access/transam/xlog.c:5639 commands/tablespace.c:589
 #, c-format
 msgid "could not remove file \"%s\": %m"
 msgstr "ÎÞ·¨É¾³ýÎļþ \"%s\": %m"
 
-#: access/transam/xlog.c:2021
+#: access/transam/xlog.c:2020
 #, c-format
 msgid "archive file \"%s\" has wrong size: %lu instead of %lu"
 msgstr ""
 
-#: access/transam/xlog.c:2028
+#: access/transam/xlog.c:2027
 #, c-format
 msgid "restored log file \"%s\" from archive"
 msgstr "´Ó¹éµµÖлָ´ÈÕÖ¾Îļþ \"%s\""
 
-#: access/transam/xlog.c:2053
+#: access/transam/xlog.c:2052
 #, c-format
-msgid "could not restore \"%s\" from archive: return code %d"
-msgstr "ÎÞ·¨´Ó¹éµµÖлָ´ \"%s\": ·µ»ØÂëΪ %d"
+msgid "could not restore file \"%s\" from archive: return code %d"
+msgstr "ÎÞ·¨´Ó¹éµµÖлָ´Îļþ \"%s\": ·µ»ØÂëΪ %d"
 
-#: access/transam/xlog.c:2113
+#: access/transam/xlog.c:2120
 #, c-format
 msgid "could not open transaction log directory \"%s\": %m"
 msgstr "ÎÞ·¨´ò¿ªÊÂÎñÈÕ־Ŀ¼ \"%s\": %m"
 
-#: access/transam/xlog.c:2158
+#: access/transam/xlog.c:2165
 #, c-format
 msgid "recycled transaction log file \"%s\""
 msgstr "»ØÊÕÊÂÎñÈÕÖ¾Îļþ \"%s\""
 
-#: access/transam/xlog.c:2165
+#: access/transam/xlog.c:2173
 #, c-format
 msgid "removing transaction log file \"%s\""
 msgstr "ɾ³ýÊÂÎñÈÕÖ¾Îļþ \"%s\""
 
-#: access/transam/xlog.c:2187
+#: access/transam/xlog.c:2196
 #, c-format
 msgid "could not read transaction log directory \"%s\": %m"
 msgstr "ÎÞ·¨¶ÁÈ¡ÊÂÎñÈÕ־Ŀ¼ \"%s\": %m"
 
-#: access/transam/xlog.c:2271
+#: access/transam/xlog.c:2280
 #, c-format
 msgid "incorrect resource manager data checksum in record at %X/%X"
 msgstr "ÔڼǼµÄ %X/%X ÖеIJ»ÕýÈ·×ÊÔ´¹ÜÀíÊý¾ÝУÑéÖµ"
 
-#: access/transam/xlog.c:2294
+#: access/transam/xlog.c:2303
 #, c-format
 msgid "incorrect checksum of backup block %d in record at %X/%X"
 msgstr "¼Ç¼λÖà%2$X/%3$X µÄ±¸·Ý (backup) ¿é %1$d Ð£ÑéÖµ²»ÕýÈ·"
 
-#: access/transam/xlog.c:2367 access/transam/xlog.c:2437
+#: access/transam/xlog.c:2376 access/transam/xlog.c:2446
 #, c-format
 msgid "invalid record offset at %X/%X"
 msgstr "ÎÞЧµÄ¼Ç¼ƫÒÆÁ¿ %X/%X"
 
-#: access/transam/xlog.c:2415
+#: access/transam/xlog.c:2424
 #, c-format
 msgid "could not read from log file %u, segment %u at offset %u: %m"
 msgstr "ÎÞ·¨´ÓÈÕÖ¾Îļþ %u ¶ÁÈ¡, ¶Î %u Æ«ÒÆÁ¿ %u: %m"
 
-#: access/transam/xlog.c:2445
+#: access/transam/xlog.c:2454
 #, c-format
 msgid "contrecord is requested by %X/%X"
 msgstr "%X/%X ÐèÒª contrecord"
 
-#: access/transam/xlog.c:2460
+#: access/transam/xlog.c:2469
 #, c-format
 msgid "record with zero length at %X/%X"
 msgstr "ÔÚ %X/%X Î»ÖÃÓÐÁ㳤¶ÈµÄ¼Ç¼"
 
-#: access/transam/xlog.c:2467
+#: access/transam/xlog.c:2476
 #, c-format
 msgid "invalid resource manager ID %u at %X/%X"
 msgstr "ÔÚ %2$X/%3$X Î»ÖÃ, ÎªÎÞЧµÄ×ÊÔ´¹ÜÀí ID %1$u"
 
-#: access/transam/xlog.c:2505
+#: access/transam/xlog.c:2514
 #, c-format
 msgid "record length %u at %X/%X too long"
 msgstr "ÔÚ %2$X/%3$X, ¼Ç¼³¤¶È %1$u Ì«³¤"
 
-#: access/transam/xlog.c:2541
+#: access/transam/xlog.c:2550
 #, c-format
 msgid "could not read from log file %u, segment %u, offset %u: %m"
 msgstr "ÎÞ·¨´ÓÈÕÖ¾Îļþ %u ¶ÁÈ¡, ¶Î %u, Æ«ÒÆÁ¿ %u: %m"
 
-#: access/transam/xlog.c:2550
+#: access/transam/xlog.c:2559
 #, c-format
 msgid "there is no contrecord flag in log file %u, segment %u, offset %u"
 msgstr "ÈÕÖ¾Îļþ %u, ¶Î %u, Æ«ÒÆÁ¿ %u ÖÐûÓРcontrecord ±êÖ¾"
 
-#: access/transam/xlog.c:2560
+#: access/transam/xlog.c:2569
 #, c-format
 msgid "invalid contrecord length %u in log file %u, segment %u, offset %u"
 msgstr "ÈÕÖ¾Îļþ %2$u ÖÐÎÞЧµÄ contrecord ³¤¶È %1$u, ¶Î %3$u, Æ«ÒÆÁ¿ %4$u"
 
-#: access/transam/xlog.c:2627
+#: access/transam/xlog.c:2636
 #, c-format
 msgid "invalid magic number %04X in log file %u, segment %u, offset %u"
 msgstr "ÈÕÖ¾Îļþ %2$u, ¶Î %3$u, Æ«ÒÆÁ¿ %4$u ÖÐÎÞЧµÄ magic Êý×Ö %1$04X"
 
-#: access/transam/xlog.c:2634
+#: access/transam/xlog.c:2643
 #, c-format
 msgid "invalid info bits %04X in log file %u, segment %u, offset %u"
 msgstr "ÈÕÖ¾Îļþ %2$u ÖÐÎÞЧµÄÐÅÏ¢ (info) Î» %1$04X, ¶Î %3$u, Æ«ÒÆÁ¿ %4$u"
 
-#: access/transam/xlog.c:2656 access/transam/xlog.c:2664
+#: access/transam/xlog.c:2665 access/transam/xlog.c:2673
 msgid "WAL file is from different system"
 msgstr "WAL ÎļþÀ´×Ô²»Í¬µÄϵͳ"
 
-#: access/transam/xlog.c:2657
+#: access/transam/xlog.c:2666
 #, c-format
 msgid "WAL file SYSID is %s, pg_control SYSID is %s"
 msgstr "WAL ÎļþµÄ SYSID ÊÇ %s, pg_control µÄ SYSID ÊÇ %s"
 
-#: access/transam/xlog.c:2665
+#: access/transam/xlog.c:2674
 msgid "Incorrect XLOG_SEG_SIZE in page header."
 msgstr "ҳͷÖв»ÕýÈ·µÄ XLOG_SEG_SIZE."
 
-#: access/transam/xlog.c:2674
+#: access/transam/xlog.c:2683
 #, c-format
 msgid "unexpected pageaddr %X/%X in log file %u, segment %u, offset %u"
 msgstr "ÈÕÖ¾Îļþ %3$u ÖÐÒâÍâµÄÒ³µØÖ· %1$X/%2$X, ¶Î %4$u, Æ«ÒÆÁ¿ %5$u"
 
-#: access/transam/xlog.c:2686
+#: access/transam/xlog.c:2695
 #, c-format
 msgid "unexpected timeline ID %u in log file %u, segment %u, offset %u"
 msgstr "ÈÕÖ¾Îļþ %2$u ÖÐÒâÍâµÄ timeline ID %1$u, ¶Î %3$u, Æ«ÒÆÁ¿ %4$u"
 
-#: access/transam/xlog.c:2704
+#: access/transam/xlog.c:2713
 #, c-format
 msgid ""
 "out-of-sequence timeline ID %u (after %u) in log file %u, segment %u, offset "
@@ -4798,94 +4915,88 @@ msgid ""
 msgstr ""
 "ÈÕÖ¾Îļþ %3$u Öг¬³öÐòÁеĠtimeline ID %1$u (%2$u Ö®ºó), ¶Î %4$u, Æ«ÒÆÁ¿ %5$u"
 
-#: access/transam/xlog.c:2744 access/transam/xlog.c:2834
-#: access/transam/xlog.c:2933
-#, c-format
-msgid "could not open \"%s\": %m"
-msgstr "ÎÞ·¨´ò¿ª \"%s\": %m"
-
-#: access/transam/xlog.c:2773
+#: access/transam/xlog.c:2782
 #, c-format
 msgid "syntax error in history file: %s"
 msgstr "ÀúÊ·ÎļþÖеÄÓï·¨´íÎó: %s"
 
-#: access/transam/xlog.c:2774
+#: access/transam/xlog.c:2783
 msgid "Expected a numeric timeline ID."
 msgstr "ÆÚÍûÒ»¸öÊý×Ö timeline ID."
 
-#: access/transam/xlog.c:2779
+#: access/transam/xlog.c:2788
 #, c-format
 msgid "invalid data in history file: %s"
 msgstr "ÀúÊ·ÎļþÖеÄÎÞЧÊý¾Ý: %s"
 
-#: access/transam/xlog.c:2780
+#: access/transam/xlog.c:2789
 msgid "Timeline IDs must be in increasing sequence."
 msgstr "TimeLine ID ±ØÐëΪµÝÔöÐòÁÐ."
 
-#: access/transam/xlog.c:2793
+#: access/transam/xlog.c:2802
 #, c-format
 msgid "invalid data in history file \"%s\""
 msgstr "ÀúÊ·Îļþ \"%s\" ÖдæÔÚÎÞЧÊý¾Ý"
 
-#: access/transam/xlog.c:2794
+#: access/transam/xlog.c:2803
 msgid "Timeline IDs must be less than child timeline's ID."
 msgstr "Timeline ID ±ØÐëСÓÚ×Ó timeline µÄ ID."
 
-#: access/transam/xlog.c:3033
+#: access/transam/xlog.c:3041
 #, c-format
 msgid "could not link file \"%s\" to \"%s\": %m"
 msgstr "ÎÞ·¨°ÑÎļþ \"%s\" Á´½Óµ½ \"%s\": %m"
 
-#: access/transam/xlog.c:3040 access/transam/xlog.c:3822
-#: access/transam/xlog.c:3865 commands/user.c:280 commands/user.c:410
-#: postmaster/pgarch.c:597
+#: access/transam/xlog.c:3048 access/transam/xlog.c:3830
+#: access/transam/xlog.c:3873 commands/user.c:282 commands/user.c:412
+#: postmaster/pgarch.c:596
 #, c-format
 msgid "could not rename file \"%s\" to \"%s\": %m"
 msgstr "ÎÞ·¨°ÑÎļþ \"%s\" ÖØÃüÃûΪ \"%s\": %m"
 
-#: access/transam/xlog.c:3101
+#: access/transam/xlog.c:3109
 msgid "invalid LC_COLLATE setting"
 msgstr "ÎÞЧµÄ LC_COLLATE ÉèÖÃ"
 
-#: access/transam/xlog.c:3106
+#: access/transam/xlog.c:3114
 msgid "invalid LC_CTYPE setting"
 msgstr "ÎÞЧµÄ LC_CTYPE ÉèÖÃ"
 
-#: access/transam/xlog.c:3125
+#: access/transam/xlog.c:3133
 msgid "sizeof(ControlFileData) is larger than BLCKSZ; fix either one"
 msgstr "sizeof(ControlFileData) ±È BLCKSZ ´ó; ÐÞ¸´ÆäÖÐÒ»¸ö"
 
-#: access/transam/xlog.c:3135
+#: access/transam/xlog.c:3143
 #, c-format
 msgid "could not create control file \"%s\": %m"
 msgstr "ÎÞ·¨´´½¨¿ØÖÆÎļþ \"%s\": %m"
 
-#: access/transam/xlog.c:3146 access/transam/xlog.c:3333
+#: access/transam/xlog.c:3154 access/transam/xlog.c:3341
 #, c-format
 msgid "could not write to control file: %m"
 msgstr "ÎÞ·¨Ð´Èë¿ØÖÆÎļþ: %m"
 
-#: access/transam/xlog.c:3152 access/transam/xlog.c:3339
+#: access/transam/xlog.c:3160 access/transam/xlog.c:3347
 #, c-format
 msgid "could not fsync control file: %m"
 msgstr "ÎÞ·¨ fsync ¿ØÖÆÎļþ: %m"
 
-#: access/transam/xlog.c:3157 access/transam/xlog.c:3344
+#: access/transam/xlog.c:3165 access/transam/xlog.c:3352
 #, c-format
 msgid "could not close control file: %m"
 msgstr "ÎÞ·¨¹Ø±Õ¿ØÖÆÎļþ: %m"
 
-#: access/transam/xlog.c:3173 access/transam/xlog.c:3322
+#: access/transam/xlog.c:3181 access/transam/xlog.c:3330
 #, c-format
 msgid "could not open control file \"%s\": %m"
 msgstr "ÎÞ·¨´ò¿ª¿ØÖÆÎļþ \"%s\": %m"
 
-#: access/transam/xlog.c:3179
+#: access/transam/xlog.c:3187
 #, c-format
 msgid "could not read from control file: %m"
 msgstr "ÎÞ·¨¶ÁÈ¡¿ØÖÆÎļþ: %m"
 
-#: access/transam/xlog.c:3192
+#: access/transam/xlog.c:3200
 #, c-format
 msgid ""
 "The database cluster was initialized with PG_CONTROL_VERSION %d, but the "
@@ -4894,15 +5005,15 @@ msgstr ""
 "Êý¾Ý¿â´ØÊÇÒÔ PG_CONTROL_VERSION %d ³õʼ»¯µÄ, µ«ÊÇ ·þÎñÆ÷ÊÇÒÔ "
 "PG_CONTROL_VERSION %d ±àÒëµÄ."
 
-#: access/transam/xlog.c:3195 access/transam/xlog.c:3225
+#: access/transam/xlog.c:3203 access/transam/xlog.c:3233
 msgid "It looks like you need to initdb."
 msgstr "¿´ÉÏÈ¥, ÄãÐèÒª³õʼ»¯Êý¾Ý¿â."
 
-#: access/transam/xlog.c:3205
+#: access/transam/xlog.c:3213
 msgid "incorrect checksum in control file"
 msgstr "¿ØÖÆÎļþµÄУÑéÖµ²»ÕýÈ·"
 
-#: access/transam/xlog.c:3222
+#: access/transam/xlog.c:3230
 #, c-format
 msgid ""
 "The database cluster was initialized with CATALOG_VERSION_NO %d, but the "
@@ -4911,21 +5022,21 @@ msgstr ""
 "Êý¾Ý¿â´ØÊÇÒÔ CATALOG_VERSION_NO %d ³õʼ»¯µÄ, µ«ÊÇ ·þÎñÆ÷ÊÇÒÔ "
 "CATALOG_VERSION_NO %d ±àÒëµÄ."
 
-#: access/transam/xlog.c:3229
+#: access/transam/xlog.c:3237
 #, c-format
 msgid ""
 "The database cluster was initialized with BLCKSZ %d, but the server was "
 "compiled with BLCKSZ %d."
 msgstr "Êý¾Ý¿â´ØÊÇÒÔ BLCKSZ %d ³õʼ»¯µÄ, µ«ÊÇ ·þÎñÆ÷ÊÇÒÔ BLCKSZ %d ±àÒëµÄ."
 
-#: access/transam/xlog.c:3232 access/transam/xlog.c:3239
-#: access/transam/xlog.c:3246 access/transam/xlog.c:3253
-#: access/transam/xlog.c:3260 access/transam/xlog.c:3268
-#: access/transam/xlog.c:3275 access/transam/xlog.c:3284
+#: access/transam/xlog.c:3240 access/transam/xlog.c:3247
+#: access/transam/xlog.c:3254 access/transam/xlog.c:3261
+#: access/transam/xlog.c:3268 access/transam/xlog.c:3276
+#: access/transam/xlog.c:3283 access/transam/xlog.c:3292
 msgid "It looks like you need to recompile or initdb."
 msgstr "¿´ÉÏÈ¥, ÄãÐèÒªÖØбàÒë»ò³õʼ»¯Êý¾Ý¿â."
 
-#: access/transam/xlog.c:3236
+#: access/transam/xlog.c:3244
 #, c-format
 msgid ""
 "The database cluster was initialized with RELSEG_SIZE %d, but the server was "
@@ -4933,7 +5044,7 @@ msgid ""
 msgstr ""
 "Êý¾Ý¿â´ØÊÇÒÔ RELSEG_SIZE %d ³õʼ»¯µÄ, µ«ÊÇ ·þÎñÆ÷ÊÇÒÔ RELSEG_SIZE %d ±àÒëµÄ."
 
-#: access/transam/xlog.c:3243
+#: access/transam/xlog.c:3251
 #, c-format
 msgid ""
 "The database cluster was initialized with XLOG_SEG_SIZE %d, but the server "
@@ -4942,7 +5053,7 @@ msgstr ""
 "Êý¾Ý¿â´ØÊÇÒÔ XLOG_SEG_SIZE %d ³õʼ»¯µÄ, µ«ÊÇ ·þÎñÆ÷ÊÇÒÔ XLOG_SEG_SIZE %d ±àÒë"
 "µÄ."
 
-#: access/transam/xlog.c:3250
+#: access/transam/xlog.c:3258
 #, c-format
 msgid ""
 "The database cluster was initialized with NAMEDATALEN %d, but the server was "
@@ -4950,7 +5061,7 @@ msgid ""
 msgstr ""
 "Êý¾Ý¿â´ØÊÇÒÔ NAMEDATALEN %d ³õʼ»¯µÄ, µ«ÊÇ ·þÎñÆ÷ÊÇÒÔ NAMEDATALEN %d ±àÒëµÄ."
 
-#: access/transam/xlog.c:3257
+#: access/transam/xlog.c:3265
 #, c-format
 msgid ""
 "The database cluster was initialized with FUNC_MAX_ARGS %d, but the server "
@@ -4959,7 +5070,7 @@ msgstr ""
 "Êý¾Ý¿â´ØÊÇÒÔ FUNC_MAX_ARGS %d ³õʼ»¯µÄ, µ«ÊÇ ·þÎñÆ÷ÊÇÒÔ FUNC_MAX_ARGS %d ±àÒë"
 "µÄ."
 
-#: access/transam/xlog.c:3266
+#: access/transam/xlog.c:3274
 msgid ""
 "The database cluster was initialized without HAVE_INT64_TIMESTAMP but the "
 "server was compiled with HAVE_INT64_TIMESTAMP."
@@ -4967,7 +5078,7 @@ msgstr ""
 "Êý¾Ý¿â´Ø³õʼ»¯Ê±Ã»Óж¨Òå HAVE_INT64_TIMESTAMP, µ«ÊÇ ·þÎñÆ÷±àÒëʱ¶¨ÒåÁË "
 "HAVE_INT64_TIMESTAMP."
 
-#: access/transam/xlog.c:3273
+#: access/transam/xlog.c:3281
 msgid ""
 "The database cluster was initialized with HAVE_INT64_TIMESTAMP but the "
 "server was compiled without HAVE_INT64_TIMESTAMP."
@@ -4975,7 +5086,7 @@ msgstr ""
 "Êý¾Ý¿â´Ø³õʼ»¯Ê±¶¨ÒåÁË HAVE_INT64_TIMESTAMP, µ«ÊÇ ·þÎñÆ÷±àÒëʱûÓж¨Òå "
 "HAVE_INT64_TIMESTAMP."
 
-#: access/transam/xlog.c:3281
+#: access/transam/xlog.c:3289
 #, c-format
 msgid ""
 "The database cluster was initialized with LOCALE_NAME_BUFLEN %d, but the "
@@ -4984,11 +5095,11 @@ msgstr ""
 "Êý¾Ý¿â´Ø³õʼ»¯Ê±¶¨Òå LOCALE_NAME_BUFLEN Îª %d, µ«ÊÇ ·þÎñÆ÷±àÒëʱ¶¨Òå "
 "LOCALE_NAME_BUFLEN Ϊ %d."
 
-#: access/transam/xlog.c:3287 access/transam/xlog.c:3294
+#: access/transam/xlog.c:3295 access/transam/xlog.c:3302
 msgid "database files are incompatible with operating system"
 msgstr "Êý¾Ý¿âÎļþºÍ²Ù×÷ϵͳ²»¼æÈÝ"
 
-#: access/transam/xlog.c:3288
+#: access/transam/xlog.c:3296
 #, c-format
 msgid ""
 "The database cluster was initialized with LC_COLLATE \"%s\", which is not "
@@ -4997,11 +5108,11 @@ msgstr ""
 "Êý¾Ý¿â´ØÊÇ´ø LC_COLLATE \"%s\" ³õʼ»¯µÄ, µ«´Ë LC_COLLATE ÊDz»±» setlocale() "
 "ÈϿɵÄ."
 
-#: access/transam/xlog.c:3291 access/transam/xlog.c:3298
+#: access/transam/xlog.c:3299 access/transam/xlog.c:3306
 msgid "It looks like you need to initdb or install locale support."
 msgstr "¿´ÉÏÈ¥, ÄãºÃÏñÐèÒª³õʼ»¯Êý¾Ý¿â (initdb) »òÕß°²×°±¾µØ»¯ (locale) Ö§³Ö."
 
-#: access/transam/xlog.c:3295
+#: access/transam/xlog.c:3303
 #, c-format
 msgid ""
 "The database cluster was initialized with LC_CTYPE \"%s\", which is not "
@@ -5010,371 +5121,393 @@ msgstr ""
 "Êý¾Ý¿â´ØÊÇ´ø LC_CTYPE \"%s\" ³õʼ»¯µÄ, µ«´Ë LC_CTYPE ÊDz»±» setlocale() ÈÏ¿É"
 "µÄ."
 
-#: access/transam/xlog.c:3521
+#: access/transam/xlog.c:3529
 #, c-format
 msgid "could not write bootstrap transaction log file: %m"
 msgstr "ÎÞ·¨Ð´Èë bootstrap ÊÂÎñÈÕÖ¾Îļþ: %m"
 
-#: access/transam/xlog.c:3527
+#: access/transam/xlog.c:3535
 #, c-format
 msgid "could not fsync bootstrap transaction log file: %m"
 msgstr "ÎÞ·¨Í¬²½ (fsync) ÊÂÎñÈÕÖ¾Îļþ: %m"
 
-#: access/transam/xlog.c:3532
+#: access/transam/xlog.c:3540
 #, c-format
 msgid "could not close bootstrap transaction log file: %m"
 msgstr "ÎÞ·¨¹Ø±Õ bootstrap ÊÂÎñÈÕÖ¾Îļþ: %m"
 
-#: access/transam/xlog.c:3594
+#: access/transam/xlog.c:3602
 #, c-format
 msgid "could not open recovery command file \"%s\": %m"
 msgstr "ÎÞ·¨´ò¿ª»Ö¸´ÃüÁîÎļþ \"%s\": %m"
 
-#: access/transam/xlog.c:3599
+#: access/transam/xlog.c:3607
 msgid "starting archive recovery"
 msgstr "¿ªÊ¼¹éµµ»Ö¸´"
 
-#: access/transam/xlog.c:3644
+#: access/transam/xlog.c:3652
 #, c-format
 msgid "restore_command = \"%s\""
 msgstr "restore_command = \"%s\""
 
-#: access/transam/xlog.c:3658
+#: access/transam/xlog.c:3666
 #, c-format
 msgid "recovery_target_timeline is not a valid number: \"%s\""
 msgstr "recovery_target_timeline ²»ÊÇÒ»¸öÓÐЧµÄÊý×Ö: \"%s\""
 
-#: access/transam/xlog.c:3663
+#: access/transam/xlog.c:3671
 #, c-format
 msgid "recovery_target_timeline = %u"
 msgstr "recovery_target_timeline = %u"
 
-#: access/transam/xlog.c:3666
+#: access/transam/xlog.c:3674
 msgid "recovery_target_timeline = latest"
 msgstr "recovery_target_timeline = latest"
 
-#: access/transam/xlog.c:3674
+#: access/transam/xlog.c:3682
 #, c-format
 msgid "recovery_target_xid is not a valid number: \"%s\""
 msgstr "recovery_target_xid ²»ÊÇÒ»¸öÓÐЧµÄÊý×Ö: \"%s\""
 
-#: access/transam/xlog.c:3677
+#: access/transam/xlog.c:3685
 #, c-format
 msgid "recovery_target_xid = %u"
 msgstr "recovery_target_xid = %u"
 
-#: access/transam/xlog.c:3702
+#: access/transam/xlog.c:3710
 #, c-format
 msgid "recovery_target_time = %s"
 msgstr "recovery_target_time = %s"
 
-#: access/transam/xlog.c:3719
+#: access/transam/xlog.c:3727
 #, c-format
 msgid "recovery_target_inclusive = %s"
 msgstr "recovery_target_inclusive = %s"
 
-#: access/transam/xlog.c:3723
+#: access/transam/xlog.c:3731
 #, c-format
 msgid "unrecognized recovery parameter \"%s\""
 msgstr "δÈϿɵĻָ´²ÎÊý \"%s\""
 
-#: access/transam/xlog.c:3731
+#: access/transam/xlog.c:3739
 #, c-format
 msgid "syntax error in recovery command file: %s"
 msgstr "»Ö¸´ÃüÁîÎļþÓï·¨´íÎó: %s"
 
-#: access/transam/xlog.c:3733
+#: access/transam/xlog.c:3741
 msgid "Lines should have the format parameter = 'value'."
 msgstr "ÐиñʽΪ ²ÎÊý = 'Öµ'."
 
-#: access/transam/xlog.c:3738
+#: access/transam/xlog.c:3746
 #, c-format
 msgid "recovery command file \"%s\" did not specify restore_command"
 msgstr "»Ö¸´ÃüÁîÎļþ \"%s\" Ã»ÓÐÖ¸¶¨ restore_command"
 
-#: access/transam/xlog.c:3757
+#: access/transam/xlog.c:3765
 #, c-format
 msgid "recovery_target_timeline %u does not exist"
 msgstr "recovery_target_timeline %u ²»´æÔÚ"
 
-#: access/transam/xlog.c:3869
+#: access/transam/xlog.c:3877
 msgid "archive recovery complete"
 msgstr "¹éµµ»Ö¸´Íê±Ï"
 
-#: access/transam/xlog.c:3953
+#: access/transam/xlog.c:3961
 #, c-format
 msgid "recovery stopping after commit of transaction %u, time %s"
 msgstr "»Ö¸´Í£Ö¹ÔÚÊÂÎï %u Ìá½»Ö®ºó, Ê±¼ä %s"
 
-#: access/transam/xlog.c:3957
+#: access/transam/xlog.c:3965
 #, c-format
 msgid "recovery stopping before commit of transaction %u, time %s"
 msgstr "»Ö¸´Í£Ö¹ÔÚÊÂÎï %u Ìύ֮ǰ, Ê±¼ä %s"
 
-#: access/transam/xlog.c:3964
+#: access/transam/xlog.c:3972
 #, c-format
 msgid "recovery stopping after abort of transaction %u, time %s"
 msgstr "»Ö¸´Í£Ö¹ÔÚÊÂÎï %u ÖжÏÖ®ºó, Ê±¼ä %s"
 
-#: access/transam/xlog.c:3968
+#: access/transam/xlog.c:3976
 #, c-format
 msgid "recovery stopping before abort of transaction %u, time %s"
 msgstr "»Ö¸´Í£Ö¹ÔÚÊÂÎï %u ÖжÏ֮ǰ, Ê±¼ä %s"
 
-#: access/transam/xlog.c:4010
+#: access/transam/xlog.c:4018
 msgid "control file contains invalid data"
 msgstr "¿ØÖÆÎļþ°üº¬ÎÞЧµÄÊý¾Ý"
 
-#: access/transam/xlog.c:4014
+#: access/transam/xlog.c:4022
 #, c-format
 msgid "database system was shut down at %s"
 msgstr "Êý¾Ý¿âÉϴιرÕʱ¼äΪ %s"
 
-#: access/transam/xlog.c:4018
+#: access/transam/xlog.c:4026
 #, c-format
 msgid "database system shutdown was interrupted at %s"
 msgstr "Êý¾Ý¿âϵͳÔÚ %s ±»ÖжϹرÕ"
 
-#: access/transam/xlog.c:4022
+#: access/transam/xlog.c:4030
 #, c-format
 msgid "database system was interrupted while in recovery at %s"
 msgstr "»Ö¸´Ê±, Êý¾Ý¿âϵͳÔÚ %s ±»ÖжÏ"
 
-#: access/transam/xlog.c:4024
+#: access/transam/xlog.c:4032
 msgid ""
 "This probably means that some data is corrupted and you will have to use the "
 "last backup for recovery."
 msgstr "ÕâÒâζ×ÅһЩÊý¾Ý±»»Ù»µ, Ä㽫²»µÃ²»Ê¹ÓÃ×îеı¸·Ý»Ö¸´."
 
-#: access/transam/xlog.c:4028
+#: access/transam/xlog.c:4036
 #, c-format
 msgid "database system was interrupted at %s"
 msgstr "Êý¾Ý¿âϵͳÔÚ %s ±»ÖжÏ"
 
-#: access/transam/xlog.c:4060
+#: access/transam/xlog.c:4068
 #, c-format
 msgid "requested timeline %u is not a child of database system timeline %u"
 msgstr ""
 
-#: access/transam/xlog.c:4075 access/transam/xlog.c:4097
+#: access/transam/xlog.c:4083 access/transam/xlog.c:4105
 #, c-format
 msgid "checkpoint record is at %X/%X"
 msgstr "checkpoint ¼Ç¼λÖÃÔÚ %X/%X"
 
-#: access/transam/xlog.c:4082
+#: access/transam/xlog.c:4090
 msgid "could not locate required checkpoint record"
 msgstr "ÎÞ·¨ÕÒµ½ÐèÒªµÄ checkpoint ¼Ç¼"
 
-#: access/transam/xlog.c:4083
+#: access/transam/xlog.c:4091
+#, c-format
 msgid ""
-"If you are not restoring from a backup, try removing $PGDATA/backup_label."
-msgstr "Èç¹ûÄã²»ÊÇ´Ó±¸·Ý»Ö¸´, Çëɾ³ý $PGDATA/backup_label."
+"If you are not restoring from a backup, try removing the file \"%s/"
+"backup_label\"."
+msgstr "Èç¹ûÄã²»ÊÇ´Ó±¸·Ý»Ö¸´, Çëɾ³ý \"%s/backup_label\"."
 
-#: access/transam/xlog.c:4107
+#: access/transam/xlog.c:4115
 #, c-format
 msgid "using previous checkpoint record at %X/%X"
 msgstr "ʹÓÃÔÚ %X/%X µÄÇ°Ò»¸ö checkpoint ¼Ç¼"
 
-#: access/transam/xlog.c:4114
+#: access/transam/xlog.c:4122
 msgid "could not locate a valid checkpoint record"
 msgstr "ÎÞ·¨ÕÒµ½Ò»¸öÓÐЧµÄ checkpoint ¼Ç¼"
 
-#: access/transam/xlog.c:4123
+#: access/transam/xlog.c:4131
 #, c-format
 msgid "redo record is at %X/%X; undo record is at %X/%X; shutdown %s"
 msgstr ""
 
-#: access/transam/xlog.c:4128
+#: access/transam/xlog.c:4136
 #, c-format
 msgid "next transaction ID: %u; next OID: %u"
 msgstr "ÏÂÒ»¸öÊÂÎï ID: %u; ÏÂÒ»¸ö OID: %u"
 
-#: access/transam/xlog.c:4132
+#: access/transam/xlog.c:4140
 msgid "invalid next transaction ID"
 msgstr "ÎÞЧµÄÏÂÒ»¸öÊÂÎñ ID"
 
-#: access/transam/xlog.c:4149
+#: access/transam/xlog.c:4157
 msgid "invalid redo in checkpoint record"
 msgstr ""
 
-#: access/transam/xlog.c:4163
+#: access/transam/xlog.c:4171
 msgid "invalid redo/undo record in shutdown checkpoint"
 msgstr ""
 
-#: access/transam/xlog.c:4181
+#: access/transam/xlog.c:4189
 msgid "automatic recovery in progress"
 msgstr ""
 
-#: access/transam/xlog.c:4184
+#: access/transam/xlog.c:4192
 msgid ""
 "database system was not properly shut down; automatic recovery in progress"
 msgstr "Êý¾Ý¿âϵͳûÓÐÕýÈ·µÄ¹Ø±Õ; ×Ô¶¯»Ö¸´"
 
-#: access/transam/xlog.c:4221
+#: access/transam/xlog.c:4229
 #, c-format
 msgid "redo starts at %X/%X"
 msgstr "redo ÔÚ %X/%X ¿ªÊ¼"
 
-#: access/transam/xlog.c:4279
+#: access/transam/xlog.c:4287
 #, c-format
 msgid "redo done at %X/%X"
 msgstr "redo ÔÚ %X/%X Íê³É"
 
-#: access/transam/xlog.c:4287
+#: access/transam/xlog.c:4295
 msgid "redo is not required"
 msgstr "²»ÐèÒª redo"
 
-#: access/transam/xlog.c:4307
+#: access/transam/xlog.c:4315
 msgid "requested recovery stop point is before end time of backup dump"
 msgstr ""
 
-#: access/transam/xlog.c:4311
+#: access/transam/xlog.c:4319
 msgid "WAL ends before end time of backup dump"
 msgstr ""
 
-#: access/transam/xlog.c:4326
+#: access/transam/xlog.c:4334
 #, c-format
 msgid "selected new timeline ID: %u"
 msgstr ""
 
-#: access/transam/xlog.c:4408
+#: access/transam/xlog.c:4416
 #, c-format
 msgid "undo starts at %X/%X"
 msgstr "undo ÔÚ %X/%X ¿ªÊ¼"
 
-#: access/transam/xlog.c:4419
+#: access/transam/xlog.c:4427
 #, c-format
 msgid "undo done at %X/%X"
 msgstr "undo ÔÚ %X/%X Íê³É"
 
-#: access/transam/xlog.c:4424
+#: access/transam/xlog.c:4432
 msgid "undo is not required"
 msgstr "²»ÐèÒª undo"
 
-#: access/transam/xlog.c:4492
+#: access/transam/xlog.c:4500
 msgid "database system is ready"
 msgstr "Êý¾Ý¿âϵͳ׼±¸¾ÍÐ÷"
 
-#: access/transam/xlog.c:4531
+#: access/transam/xlog.c:4539
 msgid "invalid primary checkpoint link in control file"
 msgstr "ÔÚ¿ØÖÆÎļþÖÐÎÞЧµÄÖ÷ checkpoint Á´½Ó"
 
-#: access/transam/xlog.c:4535
+#: access/transam/xlog.c:4543
 msgid "invalid secondary checkpoint link in control file"
 msgstr "ÔÚ¿ØÖÆÎļþÖÐÎÞЧµÄ´Î checkpoint Á´½Ó"
 
-#: access/transam/xlog.c:4539
+#: access/transam/xlog.c:4547
 msgid "invalid checkpoint link in backup_label file"
 msgstr "ÔÚ backup_label ÎļþÖÐÎÞЧµÄ checkpoint Á´½Ó"
 
-#: access/transam/xlog.c:4553
+#: access/transam/xlog.c:4561
 msgid "invalid primary checkpoint record"
 msgstr "ÎÞЧµÄÖ÷ checkpoint ¼Ç¼"
 
-#: access/transam/xlog.c:4557
+#: access/transam/xlog.c:4565
 msgid "invalid secondary checkpoint record"
 msgstr "ÎÞЧµÄ´Î checkpoint ¼Ç¼"
 
-#: access/transam/xlog.c:4561
+#: access/transam/xlog.c:4569
 msgid "invalid checkpoint record"
 msgstr "ÎÞЧµÄ checkpoint ¼Ç¼"
 
-#: access/transam/xlog.c:4572
+#: access/transam/xlog.c:4580
 msgid "invalid resource manager ID in primary checkpoint record"
 msgstr "ÔÚÖ÷ checkpoint ¼Ç¼ÖеÄÎÞЧ×ÊÔ´¹ÜÀíÆ÷ ID"
 
-#: access/transam/xlog.c:4576
+#: access/transam/xlog.c:4584
 msgid "invalid resource manager ID in secondary checkpoint record"
 msgstr "ÔڴΠcheckpoint ¼Ç¼ÖеÄÎÞЧ×ÊÔ´¹ÜÀíÆ÷ ID"
 
-#: access/transam/xlog.c:4580
+#: access/transam/xlog.c:4588
 msgid "invalid resource manager ID in checkpoint record"
 msgstr "ÔÚ checkpoint ¼Ç¼ÖеÄÎÞЧ×ÊÔ´¹ÜÀíÆ÷ ID"
 
-#: access/transam/xlog.c:4592
+#: access/transam/xlog.c:4600
 msgid "invalid xl_info in primary checkpoint record"
 msgstr "ÔÚÖ÷ checkpoint ¼Ç¼ÖÐÎÞЧµÄ xl_info"
 
-#: access/transam/xlog.c:4596
+#: access/transam/xlog.c:4604
 msgid "invalid xl_info in secondary checkpoint record"
 msgstr "ÔڴΠcheckpoint ¼Ç¼ÖÐÎÞЧµÄ xl_info"
 
-#: access/transam/xlog.c:4600
+#: access/transam/xlog.c:4608
 msgid "invalid xl_info in checkpoint record"
 msgstr "ÔÚ checkpoint ¼Ç¼ÖÐÎÞЧµÄ xl_info"
 
-#: access/transam/xlog.c:4611
+#: access/transam/xlog.c:4619
 msgid "invalid length of primary checkpoint record"
 msgstr "ÎÞЧµÄÖ÷ checkpoint ¼Ç¼³¤¶È"
 
-#: access/transam/xlog.c:4615
+#: access/transam/xlog.c:4623
 msgid "invalid length of secondary checkpoint record"
 msgstr "ÎÞЧµÄ´Î checkpoint ¼Ç¼³¤¶È"
 
-#: access/transam/xlog.c:4619
+#: access/transam/xlog.c:4627
 msgid "invalid length of checkpoint record"
 msgstr "ÎÞЧµÄ checkpoint ¼Ç¼³¤¶È"
 
-#: access/transam/xlog.c:4672
+#: access/transam/xlog.c:4680
 msgid "shutting down"
 msgstr "ÕýÔڹرÕ"
 
-#: access/transam/xlog.c:4681
+#: access/transam/xlog.c:4689
 msgid "database system is shut down"
 msgstr "Êý¾Ý¿âϵͳÒѹرÕ"
 
-#: access/transam/xlog.c:4894
+#: access/transam/xlog.c:4880
+msgid "checkpoint starting"
+msgstr "¼ì²éµã¿ªÊ¼"
+
+#: access/transam/xlog.c:4909
 msgid ""
 "concurrent transaction log activity while database system is shutting down"
 msgstr "µ±Êý¾Ý¿âÕýÔڹرÕʱ, ÈÔÓлîÔ¾µÄ²¢·¢ÊÂÎïÈÕÖ¾"
 
-#: access/transam/xlog.c:5020
+#: access/transam/xlog.c:4981
+#, c-format
+msgid ""
+"checkpoint complete; %d transaction log file(s) added, %d removed, %d "
+"recycled"
+msgstr ""
+
+#: access/transam/xlog.c:5041
 #, c-format
 msgid "unexpected timeline ID %u (after %u) in checkpoint record"
 msgstr ""
 
-#: access/transam/xlog.c:5043
+#: access/transam/xlog.c:5064
 #, c-format
 msgid "unexpected timeline ID %u (should be %u) in checkpoint record"
 msgstr ""
 
-#: access/transam/xlog.c:5164 access/transam/xlog.c:5196
+#: access/transam/xlog.c:5185 access/transam/xlog.c:5217
 #, c-format
 msgid "could not fsync log file %u, segment %u: %m"
 msgstr "ÎÞ·¨Í¬²½ (fsync) ÈÕÖ¾Îļþ %u, ¶Î %u: %m"
 
-#: access/transam/xlog.c:5204
+#: access/transam/xlog.c:5225
 #, c-format
 msgid "could not fdatasync log file %u, segment %u: %m"
 msgstr "ÎÞ·¨Í¬²½ (fdatasync) ÈÕÖ¾Îļþ %u, ¶Î %u: %m"
 
-#: access/transam/xlog.c:5247 access/transam/xlog.c:5366
+#: access/transam/xlog.c:5268 access/transam/xlog.c:5395
 msgid "must be superuser to run a backup"
 msgstr "ÔËÐб¸·Ý±ØÐëΪ³¬¼¶Óû§"
 
-#: access/transam/xlog.c:5300
+#: access/transam/xlog.c:5273
+msgid "WAL archiving is not active"
+msgstr ""
+
+#: access/transam/xlog.c:5274
+msgid ""
+"archive_command must be defined before online backups can be made safely."
+msgstr ""
+
+#: access/transam/xlog.c:5329
 msgid "a backup is already in progress"
 msgstr "Ò»¸ö±¸·ÝÒѾ­ÔÚÔËÐÐÖÐ"
 
-#: access/transam/xlog.c:5301
+#: access/transam/xlog.c:5330
 #, c-format
 msgid ""
 "If you're sure there is no backup in progress, remove file \"%s\" and try "
 "again."
 msgstr "Èç¹ûÄãÈ·ÈÏûÓÐÆäËû±¸·Ý½ø³ÌÔÚÔËÐÐ, É¾³ýÎļþ \"%s\", È»ºóÖØÊÔ."
 
-#: access/transam/xlog.c:5322 access/transam/xlog.c:5442
+#: access/transam/xlog.c:5351 access/transam/xlog.c:5471
 #, c-format
 msgid "could not write file \"%s\": %m"
 msgstr "ÎÞ·¨Ð´ÈëÎļþ \"%s\": %m"
 
-#: access/transam/xlog.c:5404
+#: access/transam/xlog.c:5433
 msgid "a backup is not in progress"
 msgstr "ûÓб¸·ÝÔÚÔËÐÐÖÐ"
 
-#: access/transam/xlog.c:5417 access/transam/xlog.c:5538
-#: access/transam/xlog.c:5544 access/transam/xlog.c:5575
-#: access/transam/xlog.c:5581
+#: access/transam/xlog.c:5446 access/transam/xlog.c:5567
+#: access/transam/xlog.c:5573 access/transam/xlog.c:5604
+#: access/transam/xlog.c:5610
 #, c-format
 msgid "invalid data in file \"%s\""
 msgstr "Îļþ \"%s\" ÖдæÔÚÎÞЧÊý¾Ý"
@@ -5384,7 +5517,7 @@ msgstr "
 msgid "duplicate key violates unique constraint \"%s\""
 msgstr "Öظ´¼üÎ¥·´Î¨Ò»Ô¼Êø \"%s\""
 
-#: access/nbtree/nbtinsert.c:404 access/nbtree/nbtsort.c:499
+#: access/nbtree/nbtinsert.c:398 access/nbtree/nbtsort.c:499
 #, c-format
 msgid "index row size %lu exceeds btree maximum, %lu"
 msgstr "Ë÷ÒýÐдóС %lu ³¬³ö btree µÄ×î´óÖµ, %lu"
@@ -5399,18 +5532,18 @@ msgstr "
 msgid "version mismatch in index \"%s\": file version %d, code version %d"
 msgstr "ÔÚË÷Òý \"%s\" Öа汾²»Æ¥Åä: Îļþ°æ±¾ %d, ´úÂë°æ±¾ %d"
 
-#: storage/ipc/sinval.c:105 storage/lmgr/proc.c:231
-#: postmaster/postmaster.c:1581
+#: storage/ipc/sinval.c:105 storage/lmgr/proc.c:246
+#: postmaster/postmaster.c:1564
 msgid "sorry, too many clients already"
 msgstr "¶Ô²»Æð, ÒѾ­ÓÐÌ«¶àµÄ¿Í»§"
 
-#: storage/ipc/shmem.c:185 storage/ipc/shmem.c:246 storage/ipc/shmem.c:377
-#: storage/lmgr/lock.c:561 storage/lmgr/lock.c:624 storage/lmgr/proc.c:166
+#: storage/ipc/shmem.c:185 storage/ipc/shmem.c:246 storage/ipc/shmem.c:386
+#: storage/lmgr/lock.c:558 storage/lmgr/lock.c:621 storage/lmgr/proc.c:179
 #: storage/buffer/buf_table.c:93 storage/freespace/freespace.c:1014
 msgid "out of shared memory"
 msgstr "¹²ÏíÄÚ´æÓþ¡"
 
-#: storage/ipc/shmem.c:411
+#: storage/ipc/shmem.c:420
 #, c-format
 msgid "could not allocate shared memory segment \"%s\""
 msgstr "ÎÞ·¨·ÖÅä¹²ÏíÄÚ´æ¶Î \"%s\""
@@ -5429,7 +5562,7 @@ msgstr "ϵͳ
 msgid "out of file descriptors: %m; release and retry"
 msgstr "³¬³öÎļþÃèÊö·û: %m; ÊÍ·ÅÔÙÖØÊÔ"
 
-#: storage/lmgr/lock.c:562 storage/lmgr/lock.c:625
+#: storage/lmgr/lock.c:559 storage/lmgr/lock.c:622
 msgid "You may need to increase max_locks_per_transaction."
 msgstr "ÄãÒ²ÐíÐèÒªÔö¼Ó max_locks_per_transaction."
 
@@ -5469,17 +5602,17 @@ msgstr ""
 msgid "corrupted item pointer: offset = %u, size = %u"
 msgstr ""
 
-#: storage/smgr/md.c:367
+#: storage/smgr/md.c:363
 #, c-format
 msgid "could not open relation %u/%u/%u: %m"
 msgstr "ÎÞ·¨´ò¿ª¹Øϵ %u/%u/%u: %m"
 
-#: storage/smgr/md.c:769
+#: storage/smgr/md.c:765
 #, c-format
 msgid "could not fsync segment %u of relation %u/%u/%u: %m"
 msgstr "ÎÞ·¨Í¬²½¹Øϵ %2$u/%3$u/%4$u µÄ %1$u ¶Î: %m"
 
-#: storage/smgr/md.c:959
+#: storage/smgr/md.c:955
 #, c-format
 msgid "could not open segment %u of relation %u/%u/%u (target block %u): %m"
 msgstr "ÎÞ·¨´ò¿ª¹Øϵ %2$u/%3$u/%4$u µÄ %1$u ¶Î (Ä¿±ê¿é %5$u): %m"
@@ -5496,8 +5629,8 @@ msgstr "
 
 #: storage/smgr/smgr.c:457
 #, c-format
-msgid "could not unlink relation %u/%u/%u: %m"
-msgstr "ÎÞ·¨É¾³ý (unlink) ¹Øϵ %u/%u/%u: %m"
+msgid "could not remove relation %u/%u/%u: %m"
+msgstr "ÎÞ·¨É¾³ý¹Øϵ %u/%u/%u: %m"
 
 #: storage/smgr/smgr.c:478
 #, c-format
@@ -5537,26 +5670,26 @@ msgstr "
 msgid "no empty local buffer available"
 msgstr ""
 
-#: storage/buffer/bufmgr.c:210
+#: storage/buffer/bufmgr.c:217
 #, c-format
 msgid "invalid page header in block %u of relation \"%s\"; zeroing out page"
 msgstr ""
 
-#: storage/buffer/bufmgr.c:217
+#: storage/buffer/bufmgr.c:224
 #, c-format
 msgid "invalid page header in block %u of relation \"%s\""
 msgstr "¹Øϵ \"%2$s\" ÖеĿé %1$u ÎÞЧµÄҳͷ"
 
-#: storage/buffer/bufmgr.c:1958
+#: storage/buffer/bufmgr.c:1991
 #, c-format
 msgid "could not write block %u of %u/%u/%u"
 msgstr "ÎÞ·¨Ð´Èë %2$u/%3$u/%4$u µÄ¿é %1$u"
 
-#: storage/buffer/bufmgr.c:1963
+#: storage/buffer/bufmgr.c:1996
 msgid "Multiple failures --- write error may be permanent."
 msgstr ""
 
-#: storage/buffer/bufmgr.c:1981
+#: storage/buffer/bufmgr.c:2014
 #, c-format
 msgid "writing block %u of relation %u/%u/%u"
 msgstr "дÈë¹Øϵ %2$u/%3$u/%4$u µÄ¿é %1$u"
@@ -5591,138 +5724,133 @@ msgstr "
 msgid "large object %u does not exist"
 msgstr "´ó¶ÔÏó %u ²»´æÔÚ"
 
-#: commands/tablespace.c:154 commands/tablespace.c:162
-#: commands/tablespace.c:168
+#: commands/tablespace.c:150 commands/tablespace.c:158
+#: commands/tablespace.c:164 ../port/copydir.c:47
 #, c-format
 msgid "could not create directory \"%s\": %m"
 msgstr "ÎÞ·¨´´½¨Ä¿Â¼ \"%s\": %m"
 
-#: commands/tablespace.c:181
+#: commands/tablespace.c:177
 #, c-format
 msgid "could not stat directory \"%s\": %m"
 msgstr "ÎÞ·¨È¡Ä¿Â¼ \"%s\" ×´Ì¬: %m"
 
-#: commands/tablespace.c:190
+#: commands/tablespace.c:186
 #, c-format
 msgid "\"%s\" exists but is not a directory"
 msgstr "\"%s\" ´æÔÚ, µ«²»ÊÇÒ»¸öĿ¼"
 
-#: commands/tablespace.c:227
+#: commands/tablespace.c:223
 #, c-format
 msgid "permission denied to create tablespace \"%s\""
 msgstr "´´½¨±í¿Õ¼ä \"%s\" È¨ÏÞ²»¹»"
 
-#: commands/tablespace.c:229
+#: commands/tablespace.c:225
 msgid "Must be superuser to create a tablespace."
 msgstr "Ö»Óг¬¼¶Óû§ÄÜ´´½¨±í¿Õ¼ä"
 
-#: commands/tablespace.c:248
+#: commands/tablespace.c:244
 msgid "tablespace location may not contain single quotes"
 msgstr "±í¿Õ¼ä·¾¶²»ÄÜ°üº¬µ¥ÒýºÅ"
 
-#: commands/tablespace.c:258
+#: commands/tablespace.c:254
 msgid "tablespace location must be an absolute path"
 msgstr "±í¿Õ¼ä·¾¶±ØÐëΪ¾ø¶Ô·¾¶"
 
-#: commands/tablespace.c:268
+#: commands/tablespace.c:264
 #, c-format
 msgid "tablespace location \"%s\" is too long"
 msgstr "±í¿Õ¼ä·¾¶ \"%s\" Ì«³¤"
 
-#: commands/tablespace.c:278 commands/tablespace.c:839
+#: commands/tablespace.c:274 commands/tablespace.c:766
 #, c-format
 msgid "unacceptable tablespace name \"%s\""
 msgstr "²»¿É·ÃÎʵıí¿Õ¼äÃû×Ö \"%s\""
 
-#: commands/tablespace.c:280 commands/tablespace.c:840
+#: commands/tablespace.c:276 commands/tablespace.c:767
 msgid "The prefix \"pg_\" is reserved for system tablespaces."
 msgstr "ǰ׺ \"pg_\" ÊDZ£Áô¸øϵͳ±í¿Õ¼äµÄ."
 
-#: commands/tablespace.c:290 commands/tablespace.c:852
+#: commands/tablespace.c:286 commands/tablespace.c:779
 #, c-format
 msgid "tablespace \"%s\" already exists"
 msgstr "±í¿Õ¼ä \"%s\" ÒѾ­´æÔÚ"
 
-#: commands/tablespace.c:325 commands/tablespace.c:969
+#: commands/tablespace.c:321 commands/tablespace.c:1033
 #, c-format
 msgid "could not set permissions on directory \"%s\": %m"
 msgstr "ÎÞ·¨ÎªÄ¿Â¼ \"%s\" µÄÉèÖÃȨÏÞ: %m"
 
-#: commands/tablespace.c:334
+#: commands/tablespace.c:330
 #, c-format
 msgid "directory \"%s\" is not empty"
 msgstr "Ŀ¼ \"%s\" ²»ÊÇ¿ÕµÄ"
 
-#: commands/tablespace.c:355 commands/tablespace.c:984
+#: commands/tablespace.c:351 commands/tablespace.c:1048
 #, c-format
 msgid "could not create symbolic link \"%s\": %m"
 msgstr "ÎÞ·¨´´½¨·ûºÅÁ´½Ó \"%s\": %m"
 
-#: commands/tablespace.c:386 commands/tablespace.c:483
+#: commands/tablespace.c:382 commands/tablespace.c:479
 msgid "tablespaces are not supported on this platform"
 msgstr "ÔÚ´Ëƽ̨Éϲ»Ö§³Ö±í¿Õ¼ä"
 
-#: commands/tablespace.c:460
+#: commands/tablespace.c:456
 #, c-format
 msgid "tablespace \"%s\" is not empty"
 msgstr "±í¿Õ¼ä \"%s\" ²»ÊÇ¿ÕµÄ"
 
-#: commands/tablespace.c:559
+#: commands/tablespace.c:555
 #, c-format
 msgid "could not delete directory \"%s\": %m"
 msgstr "ÎÞ·¨É¾³ýĿ¼ \"%s\": %m"
 
-#: commands/tablespace.c:593
-#, c-format
-msgid "could not unlink file \"%s\": %m"
-msgstr "ÎÞ·¨É¾³ý (unlink) Îļþ \"%s\": %m"
-
-#: commands/tablespace.c:610
+#: commands/tablespace.c:606
 #, c-format
 msgid "could not remove directory \"%s\": %m"
 msgstr "ÎÞ·¨É¾³ýĿ¼ \"%s\": %m"
 
-#: commands/tablespace.c:618
+#: commands/tablespace.c:614
 #, c-format
-msgid "could not unlink symbolic link \"%s\": %m"
-msgstr "ÎÞ·¨É¾³ý (unlink) ·ûºÅÁ´½Ó \"%s\": %m"
+msgid "could not remove symbolic link \"%s\": %m"
+msgstr "ÎÞ·¨É¾³ý·ûºÅÁ´½Ó \"%s\": %m"
 
-#: commands/tablespace.c:912 commands/functioncmds.c:773
-#: commands/dbcommands.c:838 commands/conversioncmds.c:213
+#: commands/tablespace.c:839 commands/functioncmds.c:773
+#: commands/dbcommands.c:890 commands/conversioncmds.c:213
 #: commands/typecmds.c:2103 commands/opclasscmds.c:954
-#: commands/operatorcmds.c:303 commands/tablecmds.c:5173
-#: commands/aggregatecmds.c:335 commands/schemacmds.c:348
+#: commands/operatorcmds.c:303 commands/tablecmds.c:5228
+#: commands/aggregatecmds.c:335 commands/schemacmds.c:319
 msgid "must be superuser to change owner"
 msgstr "Ö»Óг¬¼¶Óû§¿ÉÒÔ¸ü¸ÄÊôÖ÷"
 
-#: commands/tablespace.c:997
+#: commands/tablespace.c:1061
 #, c-format
 msgid "tablespace %u is not empty"
 msgstr "±í¿Õ¼ä %u ²»ÊÇ¿ÕµÄ"
 
-#: commands/portalcmds.c:54 commands/portalcmds.c:174
-#: commands/portalcmds.c:219
+#: commands/portalcmds.c:54 commands/portalcmds.c:183
+#: commands/portalcmds.c:228
 msgid "invalid cursor name: must not be empty"
 msgstr "ÎÞЧµÄÓαêÃû³Æ: ²»ÄÜΪ¿Õ"
 
-#: commands/portalcmds.c:80
+#: commands/portalcmds.c:89
 msgid "DECLARE CURSOR may not specify INTO"
 msgstr "DECLARE CURSOR Ò²ÐíûÓÐÖ¸¶¨ INTO"
 
-#: commands/portalcmds.c:84
+#: commands/portalcmds.c:93
 msgid "DECLARE CURSOR ... FOR UPDATE is not supported"
 msgstr "DECLARE CURSOR ... FOR UPDATE ²»±»Ö§³Ö"
 
-#: commands/portalcmds.c:85
+#: commands/portalcmds.c:94
 msgid "Cursors must be READ ONLY."
 msgstr "Óαê±ØÐëΪֻ¶Á."
 
-#: commands/portalcmds.c:182 commands/portalcmds.c:229
+#: commands/portalcmds.c:191 commands/portalcmds.c:238
 #, c-format
 msgid "cursor \"%s\" does not exist"
 msgstr "Óαê \"%s\" ²»´æÔÚ"
 
-#: commands/portalcmds.c:395
+#: commands/portalcmds.c:404
 msgid "could not reposition held cursor"
 msgstr "ÎÞ·¨¶¨Î»Óαê"
 
@@ -5761,7 +5889,7 @@ msgstr "PostgreSQL 
 msgid "SET TRANSACTION ISOLATION LEVEL must be called before any query"
 msgstr "SET TRANSACTION ISOLATION LEVEL ±ØÐëÔÚÈκβéѯ֮ǰµ÷ÓÃ"
 
-#: commands/variable.c:492
+#: commands/variable.c:493
 msgid "SET TRANSACTION ISOLATION LEVEL must not be called in a subtransaction"
 msgstr "SET TRANSACTION ISOLATION LEVEL ²»ÄÜÔÚ×ÓÊÂÎïÖе÷ÓÃ"
 
@@ -5807,25 +5935,25 @@ msgstr "
 msgid "trigger function %u returned null value"
 msgstr "´¥·¢Æ÷º¯Êý %u ·µ»ØÁË¿ÕÖµ"
 
-#: commands/trigger.c:1212 commands/trigger.c:1325 commands/trigger.c:1454
+#: commands/trigger.c:1214 commands/trigger.c:1331 commands/trigger.c:1464
 msgid "BEFORE STATEMENT trigger cannot return a value"
 msgstr "BEFORE STATEMENT ´¥·¢Æ÷²»ÄÜ·µ»ØÒ»¸öÖµ"
 
-#: commands/trigger.c:1581 executor/execMain.c:1176 executor/execMain.c:1477
-#: executor/execMain.c:1613
+#: commands/trigger.c:1593 executor/execMain.c:1151 executor/execMain.c:1457
+#: executor/execMain.c:1598
 msgid "could not serialize access due to concurrent update"
 msgstr ""
 
-#: commands/trigger.c:2708
+#: commands/trigger.c:2723
 msgid "unnamed constraints cannot be set explicitly"
 msgstr ""
 
-#: commands/trigger.c:2741
+#: commands/trigger.c:2762
 #, c-format
 msgid "constraint \"%s\" is not deferrable"
 msgstr "Ô¼Êø \"%s\" ²»¿ÉÕ¹»º"
 
-#: commands/trigger.c:2756 commands/tablecmds.c:4528
+#: commands/trigger.c:2777 commands/tablecmds.c:4574
 #, c-format
 msgid "constraint \"%s\" does not exist"
 msgstr "Ô¼Êø \"%s\" ²»´æÔÚ"
@@ -5838,7 +5966,7 @@ msgstr "
 msgid "database comments may only be applied to the current database"
 msgstr "Êý¾Ý¿â×¢ÊÍÖ»ÄÜÊÊÓõ±Ç°Êý¾Ý¿â"
 
-#: commands/comment.c:500 commands/schemacmds.c:201
+#: commands/comment.c:500 commands/schemacmds.c:172
 msgid "schema name may not be qualified"
 msgstr "ģʽÃû³ÆÒ²Ðí²»·ûºÏÌõ¼þ"
 
@@ -5883,7 +6011,7 @@ msgstr "
 
 #: commands/comment.c:1048 commands/opclasscmds.c:108
 #: commands/opclasscmds.c:648 commands/opclasscmds.c:800
-#: commands/opclasscmds.c:900 commands/indexcmds.c:216
+#: commands/opclasscmds.c:900 commands/indexcmds.c:230
 #, c-format
 msgid "access method \"%s\" does not exist"
 msgstr "·ÃÎÊ·½Ê½ \"%s\" ²»´æÔÚ"
@@ -5891,8 +6019,8 @@ msgstr "
 #: commands/comment.c:1077 commands/comment.c:1087 commands/opclasscmds.c:677
 #: commands/opclasscmds.c:687 commands/opclasscmds.c:822
 #: commands/opclasscmds.c:833 commands/opclasscmds.c:922
-#: commands/opclasscmds.c:932 commands/indexcmds.c:600
-#: commands/indexcmds.c:610
+#: commands/opclasscmds.c:932 commands/indexcmds.c:614
+#: commands/indexcmds.c:624
 #, c-format
 msgid "operator class \"%s\" does not exist for access method \"%s\""
 msgstr "´¦Àí·½·¨ \"%s\" µÄ²Ù×÷·ûÀà \"%s\" ²»´æÔÚ"
@@ -5939,7 +6067,7 @@ msgstr "
 msgid "Creating a shell type definition."
 msgstr "´´½¨Ò»¸ö shell ÀàÐͶ¨Òå."
 
-#: commands/functioncmds.c:154 parser/parse_func.c:1388 catalog/pg_proc.c:103
+#: commands/functioncmds.c:154 parser/parse_func.c:1388 catalog/pg_proc.c:100
 #, c-format
 msgid "functions cannot have more than %d arguments"
 msgstr "º¯Êý²»Äܳ¬¹ý %d ¸ö²ÎÊý"
@@ -5965,18 +6093,18 @@ msgstr "
 
 #: commands/functioncmds.c:228 commands/functioncmds.c:236
 #: commands/functioncmds.c:244 commands/functioncmds.c:252
-#: commands/functioncmds.c:260 commands/dbcommands.c:107
-#: commands/dbcommands.c:115 commands/dbcommands.c:123
-#: commands/dbcommands.c:131 commands/copy.c:720 commands/copy.c:728
+#: commands/functioncmds.c:260 commands/dbcommands.c:108
+#: commands/dbcommands.c:116 commands/dbcommands.c:124
+#: commands/dbcommands.c:132 commands/copy.c:720 commands/copy.c:728
 #: commands/copy.c:736 commands/copy.c:744 commands/copy.c:752
 #: commands/copy.c:760 commands/copy.c:768 commands/copy.c:776
-#: commands/copy.c:784 commands/user.c:573 commands/user.c:585
-#: commands/user.c:593 commands/user.c:601 commands/user.c:609
-#: commands/user.c:617 commands/user.c:823 commands/user.c:835
-#: commands/user.c:843 commands/user.c:851 commands/user.c:1353
-#: commands/user.c:1361 commands/sequence.c:877 commands/sequence.c:890
-#: commands/sequence.c:898 commands/sequence.c:906 commands/sequence.c:914
-#: commands/sequence.c:922
+#: commands/copy.c:784 commands/user.c:576 commands/user.c:588
+#: commands/user.c:596 commands/user.c:604 commands/user.c:612
+#: commands/user.c:620 commands/user.c:826 commands/user.c:838
+#: commands/user.c:846 commands/user.c:854 commands/user.c:1356
+#: commands/user.c:1364 commands/sequence.c:896 commands/sequence.c:909
+#: commands/sequence.c:917 commands/sequence.c:925 commands/sequence.c:933
+#: commands/sequence.c:941
 msgid "conflicting or redundant options"
 msgstr "Ñ¡Ïî³åÍ»»ò¹ý¶à"
 
@@ -6099,101 +6227,113 @@ msgstr "Դ
 msgid "cast from type %s to type %s already exists"
 msgstr "ÀàÐÍ %s µ½ %s µÄת»»ÒѾ­´æÔÚ"
 
-#: commands/dbcommands.c:138
+#: commands/dbcommands.c:139
 msgid "LOCATION is not supported anymore"
 msgstr "²»ÔÙÖ§³Ö LOCATION"
 
-#: commands/dbcommands.c:139
+#: commands/dbcommands.c:140
 msgid "Consider using tablespaces instead."
 msgstr "¿¼ÂÇʹÓñí¿Õ¼ä´úÌæ."
 
-#: commands/dbcommands.c:162
+#: commands/dbcommands.c:163
 #, c-format
 msgid "%d is not a valid encoding code"
 msgstr "%d ÊÇÒ»¸öÎÞЧ±àÂë"
 
-#: commands/dbcommands.c:171
+#: commands/dbcommands.c:172
 #, c-format
 msgid "%s is not a valid encoding name"
 msgstr "%s ÊÇÒ»¸öÎÞЧ±àÂëÃû×Ö"
 
-#: commands/dbcommands.c:192
+#: commands/dbcommands.c:193
 msgid "permission denied to create database"
 msgstr "´´½¨Êý¾Ý¿âȨÏÞ²»¹»"
 
-#: commands/dbcommands.c:201
+#: commands/dbcommands.c:202
 msgid "must be superuser to create database for another user"
 msgstr "ÆäËûÓû§±ØÐë³ÉΪ³¬¼¶Óû§²ÅÄÜ´´½¨Êý¾Ý¿â"
 
-#: commands/dbcommands.c:215 commands/dbcommands.c:429
-#: commands/dbcommands.c:678
+#: commands/dbcommands.c:216 commands/dbcommands.c:458
+#: commands/dbcommands.c:712
 #, c-format
 msgid "database \"%s\" already exists"
 msgstr "Êý¾Ý¿â \"%s\" ÒѾ­´æÔÚ"
 
-#: commands/dbcommands.c:228
+#: commands/dbcommands.c:229
 #, c-format
 msgid "template database \"%s\" does not exist"
 msgstr "template Êý¾Ý¿â \"%s\" ²»´æÔÚ"
 
-#: commands/dbcommands.c:239
+#: commands/dbcommands.c:240
 #, c-format
 msgid "permission denied to copy database \"%s\""
 msgstr "¿½±´Êý¾Ý¿â \"%s\" È¨ÏÞ²»¹»"
 
-#: commands/dbcommands.c:252
+#: commands/dbcommands.c:253
 #, c-format
 msgid "source database \"%s\" is being accessed by other users"
 msgstr "ÆäËûÓû§ÕýÔÚʹÓÃÔ´Êý¾Ý¿â \"%s\""
 
-#: commands/dbcommands.c:263
+#: commands/dbcommands.c:264
 #, c-format
 msgid "invalid server encoding %d"
 msgstr "ÎÞЧ·þÎñÆ÷±àÂë %d"
 
-#: commands/dbcommands.c:354 commands/dbcommands.c:375
-#: commands/dbcommands.c:385 commands/dbcommands.c:1161
-#: commands/dbcommands.c:1169
+#: commands/dbcommands.c:310
+#, c-format
+msgid "cannot assign new default tablespace \"%s\""
+msgstr "ÎÞ·¨·ÖÅäеÄĬÈϱí¿Õ¼ä \"%s\""
+
+#: commands/dbcommands.c:312
+#, c-format
+msgid ""
+"There is a conflict because database \"%s\" already has some tables in this "
+"tablespace."
+msgstr "´Ë´¦ÓгåÍ», ÒòΪÊý¾Ý¿â \"%s\" ÒѾ­ÓÐһЩ±íÔڴ˱í¿Õ¼äÖÐ."
+
+#: commands/dbcommands.c:382 commands/dbcommands.c:404
+#: commands/dbcommands.c:414 commands/dbcommands.c:1226
+#: commands/dbcommands.c:1234
 msgid "could not initialize database directory"
 msgstr "ÎÞ·¨³õʼ»¯Êý¾Ý¿âĿ¼"
 
-#: commands/dbcommands.c:355
+#: commands/dbcommands.c:383
 #, c-format
 msgid "Directory \"%s\" already exists."
 msgstr "Ŀ¼ \"%s\" ÒѾ­´æÔÚ"
 
-#: commands/dbcommands.c:376 commands/dbcommands.c:1162
+#: commands/dbcommands.c:405 commands/dbcommands.c:1227
 #, c-format
 msgid "Failing system command was: %s"
 msgstr "ʧ°Ü, ÏµÍ³ÃüÁîÊÇ: %s"
 
-#: commands/dbcommands.c:377 commands/dbcommands.c:1163
+#: commands/dbcommands.c:406 commands/dbcommands.c:1228
 msgid "Look in the postmaster's stderr log for more information."
 msgstr "»ñµÃ¸ü¶àÐÅÏ¢Çë²é¿´ postmaster µÄ±ê×¼´íÎóÉϵÄÈÕÖ¾"
 
-#: commands/dbcommands.c:504
+#: commands/dbcommands.c:533
 msgid "cannot drop the currently open database"
 msgstr "ÎÞ·¨É¾³ýµ±Ç°Ê¹ÓõÄÊý¾Ý¿â"
 
-#: commands/dbcommands.c:535
+#: commands/dbcommands.c:564
 msgid "cannot drop a template database"
 msgstr "ÎÞ·¨É¾³ýÄ£°åÊý¾Ý¿â"
 
-#: commands/dbcommands.c:543 commands/dbcommands.c:665
+#: commands/dbcommands.c:572 commands/dbcommands.c:699
 #, c-format
 msgid "database \"%s\" is being accessed by other users"
 msgstr "ÆäËûÓû§ÕýÔÚʹÓÃÊý¾Ý¿â \"%s\""
 
-#: commands/dbcommands.c:656
+#: commands/dbcommands.c:690
 msgid "current database may not be renamed"
 msgstr "µ±Ç°Êý¾Ý¿âÒ²ÐíûÓб»ÖØÃüÃû"
 
-#: commands/dbcommands.c:690
+#: commands/dbcommands.c:724
 msgid "permission denied to rename database"
 msgstr "ÖØÃüÃûÊý¾Ý¿âȨÏÞ²»¹»"
 
-#: commands/dbcommands.c:998 commands/dbcommands.c:1135
-#: commands/dbcommands.c:1185
+#: commands/dbcommands.c:1063 commands/dbcommands.c:1200
+#: commands/dbcommands.c:1250
 #, c-format
 msgid "could not remove database directory \"%s\""
 msgstr "ÎÞ·¨É¾³ýÊý¾Ý¿âĿ¼ \"%s\""
@@ -6221,16 +6361,16 @@ msgstr "
 msgid "utility statements cannot be prepared"
 msgstr "²»ÄÜ×¼±¸ºÃ¹¤¾ßÓï¾ä"
 
-#: commands/prepare.c:168 commands/prepare.c:173 commands/prepare.c:538
+#: commands/prepare.c:168 commands/prepare.c:173 commands/prepare.c:535
 msgid "prepared statement is not a SELECT"
 msgstr "×¼±¸ºÃµÄÓï¾ä²»ÊÇÒ»¸ö SELECT"
 
-#: commands/prepare.c:310
+#: commands/prepare.c:307
 #, c-format
 msgid "prepared statement \"%s\" already exists"
 msgstr "×¼±¸ºÃµÄÓï¾ä \"%s\" ÒѾ­´æÔÚ"
 
-#: commands/prepare.c:390
+#: commands/prepare.c:387
 #, c-format
 msgid "prepared statement \"%s\" does not exist"
 msgstr "×¼±¸ºÃµÄÓï¾ä \"%s\" ²»´æÔÚ"
@@ -6391,130 +6531,130 @@ msgstr "COPY 
 msgid "could not open file \"%s\" for writing: %m"
 msgstr "ΪÁËдÈë, ÎÞ·¨´ò¿ªÎļþ \"%s\": %m"
 
-#: commands/copy.c:1389
+#: commands/copy.c:1386
 #, c-format
 msgid "COPY %s, line %d, column %s"
 msgstr "COPY %s, ÐР%d, ÁР%s"
 
-#: commands/copy.c:1392
+#: commands/copy.c:1389 commands/copy.c:1422
 #, c-format
 msgid "COPY %s, line %d"
 msgstr "COPY %s, ÐР%d"
 
-#: commands/copy.c:1400
+#: commands/copy.c:1397
 #, c-format
 msgid "COPY %s, line %d, column %s: \"%s\""
 msgstr "COPY %s, ÐР%d, ÁР%s: \"%s\""
 
-#: commands/copy.c:1427
+#: commands/copy.c:1408
 #, c-format
 msgid "COPY %s, line %d: \"%s\""
 msgstr "COPY %s, ÐР%d: \"%s\""
 
-#: commands/copy.c:1640
+#: commands/copy.c:1634
 msgid "COPY file signature not recognized"
 msgstr "ÎļþÇ©×Ö²»±»ÈÏ¿É"
 
-#: commands/copy.c:1646
+#: commands/copy.c:1640
 msgid "invalid COPY file header (missing flags)"
 msgstr "ÎÞЧµÄ COPY ÎļþÍ· (ȱÉÙ±êÖ¾)"
 
-#: commands/copy.c:1652
+#: commands/copy.c:1646
 msgid "unrecognized critical flags in COPY file header"
 msgstr "ÔÚ COPY ÎļþÍ·Óв»ÈϿɵÄΣÏÕ±êÖ¾"
 
-#: commands/copy.c:1658
+#: commands/copy.c:1652
 msgid "invalid COPY file header (missing length)"
 msgstr "ÎÞЧµÄ COPY ÎļþÍ· (ȱÉÙ³¤¶È)"
 
-#: commands/copy.c:1666
+#: commands/copy.c:1660
 msgid "invalid COPY file header (wrong length)"
 msgstr "ÎÞЧµÄ COPY ÎļþÍ· (´íÎ󳤶È)"
 
-#: commands/copy.c:1745
+#: commands/copy.c:1739
 msgid "null OID in COPY data"
 msgstr "ÔÚ COPY Êý¾ÝÖÐûÓРOID"
 
-#: commands/copy.c:1754 commands/copy.c:1851
+#: commands/copy.c:1748 commands/copy.c:1845
 msgid "invalid OID in COPY data"
 msgstr "ÔÚ COPY Êý¾ÝÖÐÎÞЧµÄ OID"
 
-#: commands/copy.c:1774
+#: commands/copy.c:1768
 #, c-format
 msgid "missing data for column \"%s\""
 msgstr "×ֶΠ\"%s\" È±ÉÙÊý¾Ý"
 
-#: commands/copy.c:1784
+#: commands/copy.c:1778
 msgid "unterminated CSV quoted field"
 msgstr "CSV ÒýºÅÓòûÓнáÊø"
 
-#: commands/copy.c:1819
+#: commands/copy.c:1813
 msgid "extra data after last expected column"
 msgstr "×îºóÆÚÍû×ֶκóÓжîÍâÊý¾Ý"
 
-#: commands/copy.c:1837
+#: commands/copy.c:1831
 #, c-format
 msgid "row field count is %d, expected %d"
 msgstr "Ôª×é×ֶμÆÊýÊÇ %d, ÆÚÍû¼ÆÊýÊÇ %d"
 
-#: commands/copy.c:2059 commands/copy.c:2077
+#: commands/copy.c:2053 commands/copy.c:2071
 msgid "literal carriage return found in data"
 msgstr ""
 
-#: commands/copy.c:2060 commands/copy.c:2078
+#: commands/copy.c:2054 commands/copy.c:2072
 msgid "Use \"\\r\" to represent carriage return."
 msgstr ""
 
-#: commands/copy.c:2095
+#: commands/copy.c:2089
 msgid "literal newline found in data"
 msgstr ""
 
-#: commands/copy.c:2096
+#: commands/copy.c:2090
 msgid "Use \"\\n\" to represent newline."
 msgstr "ʹÓà\"\\n\" ±íʾÐÂÐÐ."
 
-#: commands/copy.c:2116 commands/copy.c:2132
+#: commands/copy.c:2110 commands/copy.c:2126
 msgid "end-of-copy marker does not match previous newline style"
 msgstr ""
 
-#: commands/copy.c:2120 commands/copy.c:2126
+#: commands/copy.c:2114 commands/copy.c:2120
 msgid "end-of-copy marker corrupt"
 msgstr ""
 
-#: commands/copy.c:2497 commands/copy.c:2519
+#: commands/copy.c:2485 commands/copy.c:2507
 msgid "unexpected EOF in COPY data"
 msgstr "ÔÚ COPY Êý¾ÝÖÐÒâÍâµÄ EOF"
 
-#: commands/copy.c:2506
+#: commands/copy.c:2494
 msgid "invalid field size"
 msgstr "ÎÞЧ×ֶγߴç"
 
-#: commands/copy.c:2533
+#: commands/copy.c:2521
 msgid "incorrect binary data format"
 msgstr "²»ÕýÈ·µÄ¶þ½øÖÆÊý¾Ý¸ñʽ"
 
-#: commands/copy.c:2719 parser/parse_target.c:649 parser/parse_target.c:659
+#: commands/copy.c:2707 parser/parse_target.c:650 parser/parse_target.c:660
 #, c-format
 msgid "column \"%s\" specified more than once"
 msgstr "×ֶΠ\"%s\" ±»Ö¸¶¨¶à´Î"
 
-#: commands/vacuumlazy.c:205 commands/vacuum.c:1160
+#: commands/vacuumlazy.c:221 commands/vacuum.c:1160
 #, c-format
 msgid "vacuuming \"%s.%s\""
 msgstr "ÕýÔÚÇåÀí (vacuum)  \"%s.%s\""
 
-#: commands/vacuumlazy.c:263 commands/vacuum.c:1202
+#: commands/vacuumlazy.c:293 commands/vacuum.c:1208
 #, c-format
 msgid "relation \"%s\" page %u is uninitialized --- fixing"
 msgstr "¹Øϵ \"%s\" Ò³ %u Ã»Óгõʼ»¯ --- ÐÞ¸´"
 
-#: commands/vacuumlazy.c:428 commands/vacuum.c:1499
+#: commands/vacuumlazy.c:456 commands/vacuum.c:1498
 #, c-format
 msgid ""
 "\"%s\": found %.0f removable, %.0f nonremovable row versions in %u pages"
 msgstr ""
 
-#: commands/vacuumlazy.c:431
+#: commands/vacuumlazy.c:459
 #, c-format
 msgid ""
 "%.0f dead row versions cannot be removed yet.\n"
@@ -6523,25 +6663,25 @@ msgid ""
 "%s"
 msgstr ""
 
-#: commands/vacuumlazy.c:486
+#: commands/vacuumlazy.c:514
 #, c-format
 msgid "\"%s\": removed %d row versions in %d pages"
 msgstr ""
 
-#: commands/vacuumlazy.c:597 commands/vacuumlazy.c:657 commands/vacuum.c:2860
-#: commands/vacuum.c:2927
+#: commands/vacuumlazy.c:630 commands/vacuumlazy.c:705 commands/vacuum.c:2859
+#: commands/vacuum.c:2926
 #, c-format
 msgid "index \"%s\" now contains %.0f row versions in %u pages"
 msgstr ""
 
-#: commands/vacuumlazy.c:601 commands/vacuum.c:2864
+#: commands/vacuumlazy.c:634 commands/vacuum.c:2863
 #, c-format
 msgid ""
 "%u index pages have been deleted, %u are currently reusable.\n"
 "%s"
 msgstr ""
 
-#: commands/vacuumlazy.c:661 commands/vacuum.c:2931
+#: commands/vacuumlazy.c:709 commands/vacuum.c:2930
 #, c-format
 msgid ""
 "%.0f index row versions were removed.\n"
@@ -6549,7 +6689,7 @@ msgid ""
 "%s"
 msgstr ""
 
-#: commands/vacuumlazy.c:767 commands/vacuum.c:2770
+#: commands/vacuumlazy.c:817 commands/vacuum.c:2769
 #, c-format
 msgid "\"%s\": truncated %u to %u pages"
 msgstr ""
@@ -6739,7 +6879,7 @@ msgstr "
 msgid "cannot use table references in domain check constraint"
 msgstr "ÔÚÓò¼ì²éÔ¼ÊøÖв»¿ÉÒÔʹÓñí¹ØÁª"
 
-#: commands/typecmds.c:1872 catalog/heap.c:1610
+#: commands/typecmds.c:1872 catalog/heap.c:1595
 msgid "cannot use subquery in check constraint"
 msgstr "ÔÚ¼ì²éÔ¼ÊøÖв»¿ÉÒÔʹÓÃ×Ó²éѯ"
 
@@ -6850,7 +6990,7 @@ msgstr "
 msgid "there is no previously clustered index for table \"%s\""
 msgstr "ÔÚ±í \"%s\" ÖÐδÕÒµ½ÏÈÇ°½¨´ØµÄË÷Òý"
 
-#: commands/cluster.c:147 commands/tablecmds.c:5252
+#: commands/cluster.c:147 commands/tablecmds.c:5377
 #, c-format
 msgid "index \"%s\" for table \"%s\" does not exist"
 msgstr "±í \"%2$s\" µÄ \"%1$s\" Ë÷Òý²»´æÔÚ"
@@ -6888,449 +7028,450 @@ msgstr "\"%s\" 
 msgid "cannot cluster temporary tables of other sessions"
 msgstr "ÎÞ·¨ÎªÆäËü»á»°µÄÁÙʱ±í½¨´Ø"
 
-#: commands/indexcmds.c:119
+#: commands/indexcmds.c:120
 msgid "must specify at least one column"
 msgstr "±ØÐèÖÁÉÙÖ¸¶¨Ò»¸ö×Ö¶Î"
 
-#: commands/indexcmds.c:123
+#: commands/indexcmds.c:124
 #, c-format
 msgid "cannot use more than %d columns in an index"
 msgstr "ÔÚÒ»¸öË÷ÒýÖв»ÄÜʹÓó¬¹ý %d ¸ö×Ö¶Î"
 
-#: commands/indexcmds.c:224
+#: commands/indexcmds.c:238
 #, c-format
 msgid "access method \"%s\" does not support unique indexes"
 msgstr "´æÈ¡·½·¨ \"%s\" ²»Ö§³ÖΨһË÷Òý"
 
-#: commands/indexcmds.c:229
+#: commands/indexcmds.c:243
 #, c-format
 msgid "access method \"%s\" does not support multicolumn indexes"
 msgstr "´æÈ¡·½·¨ \"%s\" ²»Ö§³Ö¶à×Ö¶ÎË÷Òý"
 
-#: commands/indexcmds.c:243
+#: commands/indexcmds.c:257
 msgid ""
 "index expressions and predicates may refer only to the table being indexed"
 msgstr "Ë÷Òý±í´ïʽºÍÉùÃ÷Ö»ÄÜÖ¸ÏòÒª½¨Ë÷ÒýµÄ±í"
 
-#: commands/indexcmds.c:271 parser/analyze.c:1185
+#: commands/indexcmds.c:285 parser/analyze.c:1197
 #, c-format
 msgid "multiple primary keys for table \"%s\" are not allowed"
 msgstr "¶Ô±í \"%s\" Ö¸¶¨¶à¸öÖ÷¼üÊDz»ÔÊÐíµÄ"
 
-#: commands/indexcmds.c:288
+#: commands/indexcmds.c:302
 msgid "primary keys cannot be expressions"
 msgstr "Ö÷¼ü²»ÄÜÊDZí´ïʽ"
 
-#: commands/indexcmds.c:318 commands/indexcmds.c:456 parser/analyze.c:1299
+#: commands/indexcmds.c:332 commands/indexcmds.c:470 parser/analyze.c:1311
 #, c-format
 msgid "column \"%s\" named in key does not exist"
 msgstr "ÔÚ¼ü×ÖÖÐÃüÃûµÄ×ֶΠ\"%s\" ²»´æÔÚ"
 
-#: commands/indexcmds.c:363
+#: commands/indexcmds.c:377
 #, c-format
 msgid "%s %s will create implicit index \"%s\" for table \"%s\""
 msgstr "%1$s %2$s ½«ÒªÎª±í \"%4$s\" ´´½¨Òþº¬Ë÷Òý \"%3$s\""
 
-#: commands/indexcmds.c:406
+#: commands/indexcmds.c:420
 msgid "cannot use subquery in index predicate"
 msgstr "Ë÷ÒýÉùÃ÷Öв»ÄÜʹÓÃ×Ó²éѯ"
 
-#: commands/indexcmds.c:410
+#: commands/indexcmds.c:424
 msgid "cannot use aggregate in index predicate"
 msgstr "Ë÷ÒýÉùÃ÷Öв»ÄÜʹÓþۼ¯º¯Êý"
 
-#: commands/indexcmds.c:419
+#: commands/indexcmds.c:433
 msgid "functions in index predicate must be marked IMMUTABLE"
 msgstr "Ë÷ÒýÉùÃ÷Öк¯Êý±ØÐè±ê¼ÇΪ IMMUTABLE"
 
-#: commands/indexcmds.c:461 commands/tablecmds.c:1297 parser/parse_expr.c:1084
+#: commands/indexcmds.c:475 commands/tablecmds.c:1329 parser/parse_expr.c:1084
 #, c-format
 msgid "column \"%s\" does not exist"
 msgstr "×ֶΠ\"%s\" ²»´æÔÚ"
 
-#: commands/indexcmds.c:494
+#: commands/indexcmds.c:508
 msgid "cannot use subquery in index expression"
 msgstr "Ë÷Òý±í´ïʽÖв»ÄÜʹÓÃ×Ó²éѯ"
 
-#: commands/indexcmds.c:498
+#: commands/indexcmds.c:512
 msgid "cannot use aggregate function in index expression"
 msgstr "Ë÷Òý±í´ïʽÖв»ÄÜʹÓþۼ¯º¯Êý"
 
-#: commands/indexcmds.c:509
+#: commands/indexcmds.c:523
 msgid "functions in index expression must be marked IMMUTABLE"
 msgstr "Ë÷Òý±í´ïʽÖк¯Êý±ØÐè±ê¼ÇΪ IMMUTABLE"
 
-#: commands/indexcmds.c:568
+#: commands/indexcmds.c:582
 #, c-format
 msgid "data type %s has no default operator class for access method \"%s\""
 msgstr "¶Ô·ÃÎÊ·½·¨ \"%2$s\" Êý¾ÝÀàÐÍ %1$s Ã»ÓÐĬÈϵIJÙ×÷·û±í"
 
-#: commands/indexcmds.c:570
+#: commands/indexcmds.c:584
 msgid ""
 "You must specify an operator class for the index or define a default "
 "operator class for the data type."
 msgstr "Äã±ØÐëÖ¸¶¨Ò»¸ö²Ù×÷·û±í¸øË÷Òý»ò¶¨ÒåÒ»¸öĬÈϵIJÙ×÷·û±í¸øÊý¾ÝÀàÐÍ."
 
-#: commands/indexcmds.c:623
+#: commands/indexcmds.c:637
 #, c-format
 msgid "operator class \"%s\" does not accept data type %s"
 msgstr "²Ù×÷·û±í \"%s\" ²»ÄÜ´¦ÀíÊý¾ÝÀàÐÍ %s"
 
-#: commands/indexcmds.c:949
+#: commands/indexcmds.c:963
 #, c-format
 msgid "shared table \"%s\" can only be reindexed in stand-alone mode"
 msgstr "¹²Ïí±í \"%s\" Ö»ÄÜÔÚ¶ÀÁ¢ÔËÐÐģʽÖÐÖؽ¨Ë÷Òý"
 
-#: commands/indexcmds.c:956
+#: commands/indexcmds.c:970
 #, c-format
 msgid "table \"%s\" has no indexes"
 msgstr "±í \"%s\" Ã»ÓÐË÷Òý"
 
-#: commands/indexcmds.c:984
+#: commands/indexcmds.c:998
 msgid "can only reindex the currently open database"
 msgstr "Ö»ÄÜÔÚµ±Ç°´ò¿ªµÄÊý¾Ý¿âÉÏÖؽ¨Ë÷Òý"
 
-#: commands/indexcmds.c:1067
+#: commands/indexcmds.c:1081
 #, c-format
 msgid "table \"%s\" was reindexed"
 msgstr "±í \"%s\" Òѱ»ÖØÐÂË÷Òý"
 
-#: commands/tablecmds.c:292
+#: commands/tablecmds.c:294
 msgid "ON COMMIT can only be used on temporary tables"
 msgstr "ON COMMIT Ö»Äܱ»ÓÃÓÚÁÙʱ±í"
 
-#: commands/tablecmds.c:394
+#: commands/tablecmds.c:399
 #, c-format
 msgid "duplicate check constraint name \"%s\""
 msgstr "Óжà¸öÃûΪ \"%s\" µÄÔ¼Êø"
 
-#: commands/tablecmds.c:561
+#: commands/tablecmds.c:566
 #, c-format
 msgid "cannot truncate system relation \"%s\""
 msgstr "²»ÄܽضÏϵͳ¹Øϵ \"%s\""
 
-#: commands/tablecmds.c:571
+#: commands/tablecmds.c:576
 msgid "cannot truncate temporary tables of other sessions"
 msgstr "²»ÄÜËõ¶ÌÆäËû»á»°µÄÁÙʱ±í"
 
-#: commands/tablecmds.c:697
+#: commands/tablecmds.c:697 commands/tablecmds.c:1007
+#: commands/tablecmds.c:2927 catalog/heap.c:382
+#, c-format
+msgid "tables can have at most %d columns"
+msgstr "±í×î¶à¿ÉÒÔÓР%d ¸ö×Ö¶Î"
+
+#: commands/tablecmds.c:719
 #, c-format
 msgid "column \"%s\" duplicated"
 msgstr "ÊôÐÔ \"%s\" ±»¸´ÖÆ"
 
-#: commands/tablecmds.c:722 parser/analyze.c:1055 parser/analyze.c:1261
+#: commands/tablecmds.c:744 parser/analyze.c:1067 parser/analyze.c:1273
 #, c-format
 msgid "inherited relation \"%s\" is not a table"
 msgstr "¼Ì³Ð¹Øϵ \"%s\" ²»ÊÇÒ»¸ö±í"
 
-#: commands/tablecmds.c:728
+#: commands/tablecmds.c:750
 #, c-format
 msgid "cannot inherit from temporary relation \"%s\""
 msgstr "²»ÄÜ´ÓÁÙʱ¹Øϵ \"%s\" ¼Ì³Ð"
 
-#: commands/tablecmds.c:745
+#: commands/tablecmds.c:767
 #, c-format
 msgid "inherited relation \"%s\" duplicated"
 msgstr "¼Ì³Ð¹Øϵ \"%s\" ±»¸´ÖÆ"
 
-#: commands/tablecmds.c:799
+#: commands/tablecmds.c:821
 #, c-format
 msgid "merging multiple inherited definitions of column \"%s\""
 msgstr "ºÏ²¢ÊôÐÔ \"%s\" µÄ¶à¸ö¼Ì³Ð¶¨Òå"
 
-#: commands/tablecmds.c:806
+#: commands/tablecmds.c:828
 #, c-format
 msgid "inherited column \"%s\" has a type conflict"
 msgstr "¼Ì³ÐÊôÐÔ \"%s\" ÀàÐͳåÍ»"
 
-#: commands/tablecmds.c:808 commands/tablecmds.c:953 parser/parse_coerce.c:239
-#: parser/parse_coerce.c:1110 parser/parse_coerce.c:1127
-#: parser/parse_coerce.c:1173
+#: commands/tablecmds.c:830 commands/tablecmds.c:975 parser/parse_coerce.c:239
+#: parser/parse_coerce.c:1125 parser/parse_coerce.c:1142
+#: parser/parse_coerce.c:1188
 #, c-format
 msgid "%s versus %s"
 msgstr "%s ¶Ô %s"
 
-#: commands/tablecmds.c:944
+#: commands/tablecmds.c:966
 #, c-format
 msgid "merging column \"%s\" with inherited definition"
 msgstr "ºÏ²¢ÊôÐÔ \"%s\" Á¬Í¬¼Ì³Ð¶¨Òå"
 
-#: commands/tablecmds.c:951
+#: commands/tablecmds.c:973
 #, c-format
 msgid "column \"%s\" has a type conflict"
 msgstr "ÊôÐÔ \"%s\" ÀàÐͳåÍ»"
 
-#: commands/tablecmds.c:992
+#: commands/tablecmds.c:1024
 #, c-format
 msgid "column \"%s\" inherits conflicting default values"
 msgstr "ÊôÐÔ \"%s\" ¼Ì³ÐÓëĬÈÏÖµ³åÍ»"
 
-#: commands/tablecmds.c:994
+#: commands/tablecmds.c:1026
 msgid "To resolve the conflict, specify a default explicitly."
 msgstr "Òª½â¾ö³åÍ», Ö¸¶¨Ã÷È·µÄĬÈÏÖµ"
 
-#: commands/tablecmds.c:1287
+#: commands/tablecmds.c:1319
 #, c-format
 msgid "inherited column \"%s\" must be renamed in child tables too"
 msgstr "ÔÚ×Ó±íÖм̳ÐÊôÐÔ \"%s\" Ò²±ØÐèÖØÃüÃû"
 
-#: commands/tablecmds.c:1305
+#: commands/tablecmds.c:1337
 #, c-format
 msgid "cannot rename system column \"%s\""
 msgstr "²»ÄܶÔϵͳ×ֶΠ\"%s\" ÖØÃüÃû"
 
-#: commands/tablecmds.c:1315
+#: commands/tablecmds.c:1347
 #, c-format
 msgid "cannot rename inherited column \"%s\""
 msgstr "²»ÄܶԼ̳Ð×ֶΠ\"%s\" ÖØÃüÃû"
 
-#: commands/tablecmds.c:1326 commands/tablecmds.c:2887
+#: commands/tablecmds.c:1358 commands/tablecmds.c:2919
 #, c-format
 msgid "column \"%s\" of relation \"%s\" already exists"
 msgstr "¹Øϵ \"%s\" µÄÊôÐÔ \"%s\" ÒѾ­´æÔÚ"
 
-#: commands/tablecmds.c:1469 catalog/heap.c:747 catalog/index.c:527
+#: commands/tablecmds.c:1501 catalog/heap.c:732 catalog/index.c:514
 #, c-format
 msgid "relation \"%s\" already exists"
 msgstr "¹Øϵ \"%s\" ÒѾ­´æÔÚ"
 
-#: commands/tablecmds.c:2187
+#: commands/tablecmds.c:2219
 #, c-format
 msgid "cannot rewrite system relation \"%s\""
 msgstr "²»ÄܸÄдϵͳ¹Øϵ \"%s\""
 
-#: commands/tablecmds.c:2197
+#: commands/tablecmds.c:2229
 msgid "cannot rewrite temporary tables of other sessions"
 msgstr "²»ÄܸÄдÆäËû»á»°µÄÁÙʱ±í"
 
-#: commands/tablecmds.c:2488
+#: commands/tablecmds.c:2520
 #, c-format
 msgid "check constraint \"%s\" is violated by some row"
 msgstr "һЩÐÐÎ¥·´Á˼ì²éÔ¼Êø \"%s\""
 
-#: commands/tablecmds.c:2501
+#: commands/tablecmds.c:2533
 #, c-format
 msgid "column \"%s\" contains null values"
 msgstr "×ֶΠ\"%s\" °üº¬¿ÕÖµ"
 
-#: commands/tablecmds.c:2586
+#: commands/tablecmds.c:2618
 #, c-format
 msgid "\"%s\" is not a table or view"
 msgstr "\"%s\" ²»ÊÇÒ»¸öÊÓͼ»òÊÓͼ"
 
-#: commands/tablecmds.c:2739
+#: commands/tablecmds.c:2771
 #, c-format
 msgid "cannot alter table \"%s\" because column \"%s\".\"%s\" uses its rowtype"
 msgstr ""
 
-#: commands/tablecmds.c:2805
+#: commands/tablecmds.c:2837
 msgid "column must be added to child tables too"
 msgstr "ÊôÐÔÒ²±ØÐè¼ÓÈëµ½×Ó±íÖÐ"
 
-#: commands/tablecmds.c:2848
+#: commands/tablecmds.c:2880
 #, c-format
 msgid "child table \"%s\" has different type for column \"%s\""
 msgstr "×Ó±í \"%s\" µÄ×ֶΠ\"%s\" Óв»Í¬µÄÀàÐÍ"
 
-#: commands/tablecmds.c:2860
+#: commands/tablecmds.c:2892
 #, c-format
 msgid "merging definition of column \"%s\" for child \"%s\""
 msgstr "ºÏ²¢×Ó±í \"%2$s\" µÄ×ֶΠ\"%1$s\" ¶¨Òå"
 
-#: commands/tablecmds.c:2895 catalog/heap.c:382
-#, c-format
-msgid "tables can have at most %d columns"
-msgstr "±í×î¶à¿ÉÒÔÓР%d ¸ö×Ö¶Î"
-
-#: commands/tablecmds.c:3077 commands/tablecmds.c:3170
-#: commands/tablecmds.c:3220 commands/tablecmds.c:3316
-#: commands/tablecmds.c:3377 commands/tablecmds.c:4571
+#: commands/tablecmds.c:3109 commands/tablecmds.c:3202
+#: commands/tablecmds.c:3252 commands/tablecmds.c:3348
+#: commands/tablecmds.c:3409 commands/tablecmds.c:4617
 #, c-format
 msgid "cannot alter system column \"%s\""
 msgstr "²»Äܸü¸Äϵͳ×ֶΠ\"%s\""
 
-#: commands/tablecmds.c:3113
+#: commands/tablecmds.c:3145
 #, c-format
 msgid "column \"%s\" is in a primary key"
 msgstr "×ֶΠ\"%s\" ÊÇÒ»¸öÖ÷¼ü"
 
-#: commands/tablecmds.c:3263 commands/tablecmds.c:5291
+#: commands/tablecmds.c:3295 commands/tablecmds.c:5416
 #, c-format
 msgid "\"%s\" is not a table or index"
 msgstr "\"%s\" ²»ÊÇÒ»¸ö±í»òË÷Òý"
 
-#: commands/tablecmds.c:3290
+#: commands/tablecmds.c:3322
 #, c-format
 msgid "statistics target %d is too low"
 msgstr "Ä¿±êͳ¼Æ %d Ì«µÍ"
 
-#: commands/tablecmds.c:3298
+#: commands/tablecmds.c:3330
 #, c-format
 msgid "lowering statistics target to %d"
 msgstr "½µµÍÄ¿±êͳ¼Æµ½ %d"
 
-#: commands/tablecmds.c:3358
+#: commands/tablecmds.c:3390
 #, c-format
 msgid "invalid storage type \"%s\""
 msgstr "ÎÞЧ´æ´¢ÀàÐÍ \"%s\""
 
-#: commands/tablecmds.c:3389
+#: commands/tablecmds.c:3421
 #, c-format
 msgid "column data type %s can only have storage PLAIN"
 msgstr "×Ö¶ÎÊý¾ÝÀàÐÍ %s Ö»Äܴ洢ΪÃ÷ÎÄ (PLAIN)"
 
-#: commands/tablecmds.c:3446
+#: commands/tablecmds.c:3478
 #, c-format
 msgid "cannot drop system column \"%s\""
 msgstr "²»ÄÜɾ³ýϵͳ×ֶΠ\"%s\""
 
-#: commands/tablecmds.c:3453
+#: commands/tablecmds.c:3485
 #, c-format
 msgid "cannot drop inherited column \"%s\""
 msgstr "²»ÄÜɾ³ý¼Ì³Ð×ֶΠ\"%s\""
 
-#: commands/tablecmds.c:3690 catalog/heap.c:1631
+#: commands/tablecmds.c:3722 catalog/heap.c:1616
 #, c-format
 msgid "constraint \"%s\" for relation \"%s\" already exists"
 msgstr "¹Øϵ \"%2$s\" µÄÔ¼Êø \"%1$s\" ÒѾ­´æÔÚ"
 
-#: commands/tablecmds.c:3754
+#: commands/tablecmds.c:3786
 #, c-format
 msgid "referenced relation \"%s\" is not a table"
 msgstr "¹ØÁªµÄ¹Øϵ \"%s\" ²»ÊÇÒ»¸ö±í"
 
-#: commands/tablecmds.c:3788
+#: commands/tablecmds.c:3820
 msgid "cannot reference temporary table from permanent table constraint"
 msgstr "²»¿ÉÒԴӹ̶¨±íÔ¼Êø¹ØÁªÁÙʱ±í"
 
-#: commands/tablecmds.c:3795
+#: commands/tablecmds.c:3827
 msgid "cannot reference permanent table from temporary table constraint"
 msgstr "²»¿ÉÒÔ´ÓÁÙʱ±íÔ¼Êø¹ØÁª¹Ì¶¨±í"
 
-#: commands/tablecmds.c:3840 commands/tablecmds.c:4328
+#: commands/tablecmds.c:3872 commands/tablecmds.c:4362
 msgid "number of referencing and referenced columns for foreign key disagree"
 msgstr "Íâ¼üµÄ¹ØÁªÊýºÍ¹ØÁª×ֶβ»Ò»ÖÂ"
 
-#: commands/tablecmds.c:3861
+#: commands/tablecmds.c:3893
 #, c-format
 msgid "foreign key constraint \"%s\" cannot be implemented"
 msgstr "ÎÞ·¨ÊµÏÖÍâ¼üÔ¼Êø \"%s\""
 
-#: commands/tablecmds.c:3864
+#: commands/tablecmds.c:3896
 #, c-format
 msgid "Key columns \"%s\" and \"%s\" are of incompatible types: %s and %s."
 msgstr "¹Ø¼ü×ֶΠ\"%s\" ºÍ \"%s\" Îª»ìºÍÀàÐÍ: %s ºÍ %s."
 
-#: commands/tablecmds.c:3878
+#: commands/tablecmds.c:3910
 #, c-format
 msgid "foreign key constraint \"%s\" will require costly sequential scans"
 msgstr ""
 
-#: commands/tablecmds.c:3881
+#: commands/tablecmds.c:3913
 #, c-format
 msgid "Key columns \"%s\" and \"%s\" are of different types: %s and %s."
 msgstr "¹Ø¼ü×ֶΠ\"%s\" ºÍ \"%s\" Îª²»Í¬µÄÀàÐÍ: %s ºÍ %s."
 
-#: commands/tablecmds.c:3966
+#: commands/tablecmds.c:3998
 #, c-format
 msgid "column \"%s\" referenced in foreign key constraint does not exist"
 msgstr "ÔÚÍâ¼üÔ¼ÊøÖеĹØÁª×ֶΠ\"%s\" ²»´æÔÚ"
 
-#: commands/tablecmds.c:3971
+#: commands/tablecmds.c:4003
 #, c-format
 msgid "cannot have more than %d keys in a foreign key"
 msgstr "ÔÚÒ»¸öÍâ¼üÖв»Äܳ¬¹ý %d ¸ö¼ü"
 
-#: commands/tablecmds.c:4040
+#: commands/tablecmds.c:4072
 #, c-format
 msgid "there is no primary key for referenced table \"%s\""
 msgstr "¹ØÁª±í \"%s\" Ã»ÓÐÖ÷¼ü"
 
-#: commands/tablecmds.c:4158
+#: commands/tablecmds.c:4190
 #, c-format
 msgid ""
 "there is no unique constraint matching given keys for referenced table \"%s\""
 msgstr "ûÓÐΨһԼÊøÓë¹ØÁª±í \"%s\" ¸ø¶¨µÄ¼üֵƥÅä"
 
-#: commands/tablecmds.c:4533
+#: commands/tablecmds.c:4579
 #, c-format
 msgid "multiple constraints named \"%s\" were dropped"
 msgstr "Óжà¸öÃûΪ \"%s\" µÄÔ¼Êø±»É¾³ýÁË"
 
-#: commands/tablecmds.c:4578
+#: commands/tablecmds.c:4624
 #, c-format
 msgid "cannot alter inherited column \"%s\""
 msgstr "²»ÄÜÐ޸ļ̳Ð×ֶΠ\"%s\""
 
-#: commands/tablecmds.c:4618
+#: commands/tablecmds.c:4664
 msgid "transform expression must not return a set"
 msgstr "ת»»±í´ïʽ²»ÄÜ·µ»ØÒ»¸ö×éºÏ"
 
-#: commands/tablecmds.c:4624
+#: commands/tablecmds.c:4670
 msgid "cannot use subquery in transform expression"
 msgstr "ÔÚת»»±í´ïʽÖв»ÄÜʹÓÃ×Ó²éѯ"
 
-#: commands/tablecmds.c:4628
+#: commands/tablecmds.c:4674
 msgid "cannot use aggregate function in transform expression"
 msgstr "ת»»±í´ïʽÖв»ÄÜʹÓþۼ¯º¯Êý"
 
-#: commands/tablecmds.c:4645
+#: commands/tablecmds.c:4691
 #, c-format
 msgid "column \"%s\" cannot be cast to type \"%s\""
 msgstr "×ֶΠ\"%s\" ²»ÄÜת»»³ÉÀàÐÍ \"%s\""
 
-#: commands/tablecmds.c:4671
+#: commands/tablecmds.c:4717
 #, c-format
 msgid "type of inherited column \"%s\" must be changed in child tables too"
 msgstr "ÔÚ×Ó±íÖм̳Ð×ֶΠ\"%s\" µÄÀàÐÍÒ²±ØÐè¸Ä±ä"
 
-#: commands/tablecmds.c:4709
+#: commands/tablecmds.c:4755
 #, c-format
 msgid "cannot alter type of column \"%s\" twice"
 msgstr "²»Äܸü¸Ä×ֶΠ\"%s\" µÄÀàÐÍÁ½±é"
 
-#: commands/tablecmds.c:4736
+#: commands/tablecmds.c:4789
 #, c-format
 msgid "default for column \"%s\" cannot be cast to type \"%s\""
 msgstr "×ֶΠ\"%s\" µÄĬÈÏÖµ²»ÄÜת»»³ÉÀàÐÍ \"%s\""
 
-#: commands/tablecmds.c:4836
+#: commands/tablecmds.c:4889
 msgid "cannot alter type of a column used by a view or rule"
 msgstr "²»ÄÜʹÓÃÊÓͼ»ò¹æÔò¸Ä±äÒ»¸ö×ֶεÄÀàÐÍ"
 
-#: commands/tablecmds.c:4837
+#: commands/tablecmds.c:4890
 #, c-format
 msgid "%s depends on column \"%s\""
 msgstr "%s ÒÐÀµÓÚ×ֶΠ\"%s\""
 
-#: commands/tablecmds.c:5151
+#: commands/tablecmds.c:5206
 #, c-format
 msgid "\"%s\" is not a table, TOAST table, index, view, or sequence"
 msgstr "\"%s\" ²»ÊÇÒ»¸ö±í, TOAST ±í, Ë÷Òý, ÊÓͼ, »òÕßÐòÁÐ"
 
-#: commands/tablecmds.c:5321
-msgid "multiple SET TABLESPACE subcommands are not valid"
+#: commands/tablecmds.c:5446
+msgid "cannot have multiple SET TABLESPACE subcommands"
 msgstr ""
 
-#: commands/tablecmds.c:5351
+#: commands/tablecmds.c:5476
 #, c-format
 msgid "cannot move system relation \"%s\""
 msgstr "²»ÄÜɾ³ýϵͳ¹Øϵ \"%s\""
 
-#: commands/tablecmds.c:5361
+#: commands/tablecmds.c:5486
 msgid "cannot move temporary tables of other sessions"
 msgstr "²»ÄÜÔÚÆäËû»á»°ÖÐɾ³ýÁÙʱ±í"
 
-#: commands/tablecmds.c:5571
+#: commands/tablecmds.c:5696
 msgid "shared tables cannot be toasted after initdb"
 msgstr "ÔÚ initdb Ö®ºó, ²»¿ÉÒÔ toasted ¹²Ïí±í"
 
-#: commands/tablecmds.c:5586
+#: commands/tablecmds.c:5711
 #, c-format
 msgid "table \"%s\" already has a TOAST table"
 msgstr "±í \"%s\" ÒѾ­ÊÇÒ»¸ö TOAST ±í"
 
-#: commands/tablecmds.c:5603
+#: commands/tablecmds.c:5728
 #, c-format
 msgid "table \"%s\" does not need a TOAST table"
 msgstr "±í \"%s\" ²»ÐèÒªÒ»¸ö TOAST ±í"
@@ -7351,152 +7492,152 @@ msgstr "
 msgid "analyzing \"%s.%s\""
 msgstr "ÕýÔÚ·ÖÎö \"%s.%s\""
 
-#: commands/analyze.c:916
+#: commands/analyze.c:912
 #, c-format
 msgid ""
 "\"%s\": scanned %d of %u pages, containing %.0f live rows and %.0f dead "
 "rows; %d rows in sample, %.0f estimated total rows"
 msgstr ""
 
-#: commands/user.c:172 commands/user.c:270 commands/user.c:319
-#: commands/user.c:400
+#: commands/user.c:174 commands/user.c:272 commands/user.c:321
+#: commands/user.c:402
 #, c-format
 msgid "could not write to temporary file \"%s\": %m"
 msgstr "ÎÞ·¨ÍùÁÙʱÎļþ \"%s\" Ð´Èë: %m"
 
-#: commands/user.c:207
+#: commands/user.c:209
 #, c-format
 msgid "invalid group name \"%s\""
 msgstr "ÎÞЧ×éÃû \"%s\""
 
-#: commands/user.c:238 commands/user.c:369
+#: commands/user.c:240 commands/user.c:371
 #, c-format
 msgid "invalid user name \"%s\""
 msgstr "ÎÞЧÓû§Ãû \"%s\""
 
-#: commands/user.c:376
+#: commands/user.c:378
 #, c-format
 msgid "invalid user password \"%s\""
 msgstr "ÎÞЧÓû§¿ÚÁî \"%s\""
 
-#: commands/user.c:635
+#: commands/user.c:638
 msgid "user ID must be positive"
 msgstr "Óû§ ID ±ØÐèΪÕýÊý"
 
-#: commands/user.c:652
+#: commands/user.c:655
 msgid "must be superuser to create users"
 msgstr "Ö»Óг¬¼¶Óû§ÄÜ´´½¨Óû§"
 
-#: commands/user.c:657
+#: commands/user.c:660
 #, c-format
 msgid "user name \"%s\" is reserved"
 msgstr "Óû§Ãû \"%s\" ±»±£ÁôÁË"
 
-#: commands/user.c:694 commands/user.c:1249
+#: commands/user.c:697 commands/user.c:1252
 #, c-format
 msgid "user \"%s\" already exists"
 msgstr "Óû§ \"%s\" ÒѾ­´æÔÚ"
 
-#: commands/user.c:699
+#: commands/user.c:702
 #, c-format
 msgid "user ID %d is already assigned"
 msgstr "Óû§ ID %d ÒѾ­±»¸³Öµ"
 
-#: commands/user.c:880 commands/user.c:1015 commands/schemacmds.c:86
+#: commands/user.c:883 commands/user.c:1018 commands/schemacmds.c:84
 msgid "permission denied"
 msgstr "ȨÏÞ²»¹»"
 
-#: commands/user.c:1074
+#: commands/user.c:1077
 msgid "must be superuser to drop users"
 msgstr "Ö»Óг¬¼¶Óû§¿ÉÒÔɾ³ýÓû§"
 
-#: commands/user.c:1108
+#: commands/user.c:1111
 msgid "current user cannot be dropped"
 msgstr "µ±Ç°Óû§²»Äܱ»É¾³ý"
 
-#: commands/user.c:1112
+#: commands/user.c:1115
 msgid "session user cannot be dropped"
 msgstr "»á»°Óû§²»Äܱ»É¾³ý"
 
-#: commands/user.c:1139
+#: commands/user.c:1142
 #, c-format
 msgid "user \"%s\" cannot be dropped"
 msgstr "Óû§ \"%s\" ²»Äܱ»É¾³ý"
 
-#: commands/user.c:1140
+#: commands/user.c:1143
 #, c-format
 msgid "The user owns database \"%s\"."
 msgstr "Óû§ÊÇÊý¾Ý¿â \"%s\" µÄÊôÖ÷."
 
-#: commands/user.c:1241
+#: commands/user.c:1244
 msgid "session user may not be renamed"
 msgstr "»á»°Óû§²»Äܱ»ÖØÃüÃû"
 
-#: commands/user.c:1255
+#: commands/user.c:1258
 msgid "must be superuser to rename users"
 msgstr "Ö»Óг¬¼¶Óû§¿ÉÒÔ¶ÔÓû§ÖØÃüÃû"
 
-#: commands/user.c:1274
+#: commands/user.c:1277
 msgid "MD5 password cleared because of user rename"
 msgstr "ÓÉÓÚÓû§ÖØÃüÃû, Çå³ý MD5 ¿ÚÁî"
 
-#: commands/user.c:1308
+#: commands/user.c:1311
 #, c-format
 msgid "before using passwords you must revoke privileges on %s"
 msgstr ""
 
-#: commands/user.c:1310
+#: commands/user.c:1313
 msgid ""
 "This restriction is to prevent unprivileged users from reading the passwords."
 msgstr ""
 
-#: commands/user.c:1311
+#: commands/user.c:1314
 #, c-format
 msgid "Try REVOKE ALL ON \"%s\" FROM PUBLIC."
 msgstr "ÊÔÊÔ REVOKE ALL ON \"%s\" FROM PUBLIC."
 
-#: commands/user.c:1375
+#: commands/user.c:1378
 msgid "group ID must be positive"
 msgstr "×é ID ±ØÐèΪÕýÊý"
 
-#: commands/user.c:1388
+#: commands/user.c:1391
 msgid "must be superuser to create groups"
 msgstr "Ö»Óг¬¼¶Óû§ÄÜ´´½¨×é"
 
-#: commands/user.c:1393
+#: commands/user.c:1396
 #, c-format
 msgid "group name \"%s\" is reserved"
 msgstr "×éÃû \"%s\" ±»±£ÁôÁË"
 
-#: commands/user.c:1430 commands/user.c:1812
+#: commands/user.c:1433 commands/user.c:1815
 #, c-format
 msgid "group \"%s\" already exists"
 msgstr "×é \"%s\" ÒѾ­´æÔÚ"
 
-#: commands/user.c:1435
+#: commands/user.c:1438
 #, c-format
 msgid "group ID %d is already assigned"
 msgstr "×é ID %d ÒѾ­±»¸³Öµ"
 
-#: commands/user.c:1515
+#: commands/user.c:1518
 msgid "must be superuser to alter groups"
 msgstr "Ö»Óг¬¼¶Óû§¿ÉÒÔ¸ü¸Ä×é"
 
-#: commands/user.c:1594
+#: commands/user.c:1597
 #, c-format
 msgid "group \"%s\" does not have any members"
 msgstr "×é \"%s\" Ã»ÓÐÈκγÉÔ±"
 
-#: commands/user.c:1622
+#: commands/user.c:1625
 #, c-format
 msgid "user \"%s\" is not in group \"%s\""
 msgstr "Óû§ \"%s\" ²»ÔÚ×é \"%s\" ÖÐ"
 
-#: commands/user.c:1754
+#: commands/user.c:1757
 msgid "must be superuser to drop groups"
 msgstr "Ö»Óг¬¼¶Óû§¿ÉÒÔɾ³ý×é"
 
-#: commands/user.c:1818
+#: commands/user.c:1821
 msgid "must be superuser to rename groups"
 msgstr "Ö»Óг¬¼¶Óû§¶Ô×éÖØÃüÃû"
 
@@ -7593,21 +7734,21 @@ msgid ""
 "skipping \"%s\" --- cannot vacuum indexes, views, or special system tables"
 msgstr "ºöÂÔ \"%s\" --- ÎÞ·¨ÇåÀí (vacuum) Ë÷Òý, ÊÓͼ»òÌØÊâµÄϵͳ±í"
 
-#: commands/vacuum.c:1328
+#: commands/vacuum.c:1331
 #, c-format
 msgid ""
 "relation \"%s\" TID %u/%u: InsertTransactionInProgress %u --- can't shrink "
 "relation"
 msgstr ""
 
-#: commands/vacuum.c:1341
+#: commands/vacuum.c:1344
 #, c-format
 msgid ""
 "relation \"%s\" TID %u/%u: DeleteTransactionInProgress %u --- can't shrink "
 "relation"
 msgstr ""
 
-#: commands/vacuum.c:1502
+#: commands/vacuum.c:1501
 #, c-format
 msgid ""
 "%.0f dead row versions cannot be removed yet.\n"
@@ -7619,66 +7760,66 @@ msgid ""
 "%s"
 msgstr ""
 
-#: commands/vacuum.c:2255
+#: commands/vacuum.c:2254
 #, c-format
 msgid "\"%s\": moved %u row versions, truncated %u to %u pages"
 msgstr ""
 
-#: commands/vacuum.c:2878 commands/vacuum.c:2947
+#: commands/vacuum.c:2877 commands/vacuum.c:2946
 #, c-format
 msgid ""
 "index \"%s\" contains %.0f row versions, but table contains %.0f row versions"
 msgstr ""
 
-#: commands/vacuum.c:2881 commands/vacuum.c:2950
+#: commands/vacuum.c:2880 commands/vacuum.c:2949
 msgid "Rebuild the index with REINDEX."
 msgstr "ʹÓàREINDEX Öؽ¨Ë÷Òý."
 
-#: commands/sequence.c:401 commands/sequence.c:593 commands/sequence.c:636
+#: commands/sequence.c:399 commands/sequence.c:591 commands/sequence.c:634
 #, c-format
 msgid "permission denied for sequence %s"
 msgstr "¶ÔÓÚÐòÁР%s, È¨ÏÞ²»¹»"
 
-#: commands/sequence.c:478
+#: commands/sequence.c:476
 #, c-format
 msgid "nextval: reached maximum value of sequence \"%s\" (%s)"
 msgstr "nextval: ´ïµ½ÐòÁР\"%s\" µÄ×î´óÖµÁË (%s)"
 
-#: commands/sequence.c:501
+#: commands/sequence.c:499
 #, c-format
 msgid "nextval: reached minimum value of sequence \"%s\" (%s)"
 msgstr "nextval: ´ïµ½ÐòÁР\"%s\" µÄ×îСֵÁË (%s)"
 
-#: commands/sequence.c:599
+#: commands/sequence.c:597
 #, c-format
 msgid "currval of sequence \"%s\" is not yet defined in this session"
 msgstr "Ôڴ˻ỰÖÐÐòÁР\"%s\" µÄ currval ÈÔû±»¶¨Òå"
 
-#: commands/sequence.c:653
+#: commands/sequence.c:651
 #, c-format
 msgid "setval: value %s is out of bounds for sequence \"%s\" (%s..%s)"
 msgstr "setval: Öµ %s ³¬³öÐòÁР\"%s\" µÄ·¶Î§ (%s..%s)"
 
-#: commands/sequence.c:937
+#: commands/sequence.c:956
 msgid "INCREMENT must not be zero"
 msgstr "INCREMENT ²»±ØΪÁã"
 
-#: commands/sequence.c:983
+#: commands/sequence.c:1002
 #, c-format
 msgid "MINVALUE (%s) must be less than MAXVALUE (%s)"
 msgstr "MINVALUE (%s) ±ØÐèСÓÚ MAXVALUE (%s)"
 
-#: commands/sequence.c:1014
+#: commands/sequence.c:1033
 #, c-format
 msgid "START value (%s) can't be less than MINVALUE (%s)"
 msgstr "START Öµ (%s) ²»ÄÜСÓÚ MINVALUE (%s)"
 
-#: commands/sequence.c:1026
+#: commands/sequence.c:1045
 #, c-format
 msgid "START value (%s) can't be greater than MAXVALUE (%s)"
 msgstr "START Öµ (%s) ²»ÄÜ´óÓÚ MAXVALUE (%s)"
 
-#: commands/sequence.c:1041
+#: commands/sequence.c:1060
 #, c-format
 msgid "CACHE (%s) must be greater than zero"
 msgstr "CACHE (%s) ±ØÐë´óÓÚÁã"
@@ -7710,21 +7851,21 @@ msgstr "
 msgid "function %s(*) already exists in schema \"%s\""
 msgstr "ÔÚģʽ \"%2$s\" Öк¯Êý %1$s(*) ÒѾ­´æÔÚ"
 
-#: commands/schemacmds.c:87
+#: commands/schemacmds.c:85
 #, c-format
 msgid "\"%s\" is not a superuser, so cannot create a schema for \"%s\""
 msgstr "\"%s\" ²»Êdz¬¼¶Óû§, Òò´Ë²»ÄÜΪ \"%s\" ´´½¨Ä£Ê½"
 
-#: commands/schemacmds.c:102 commands/schemacmds.c:297
+#: commands/schemacmds.c:100 commands/schemacmds.c:268
 #, c-format
 msgid "unacceptable schema name \"%s\""
 msgstr "²»¿É·ÃÎʵÄģʽÃû×Ö \"%s\""
 
-#: commands/schemacmds.c:103 commands/schemacmds.c:298
+#: commands/schemacmds.c:101 commands/schemacmds.c:269
 msgid "The prefix \"pg_\" is reserved for system schemas."
 msgstr "ǰ׺ \"pg_\" ÊDZ£Áô¸øϵͳģʽµÄ."
 
-#: commands/schemacmds.c:281 catalog/pg_namespace.c:51
+#: commands/schemacmds.c:252 catalog/pg_namespace.c:51
 #, c-format
 msgid "schema \"%s\" already exists"
 msgstr "ģʽ \"%s\" ÒѾ­´æÔÚ"
@@ -7734,7 +7875,7 @@ msgstr "ģʽ \"%s\" 
 msgid "JOIN/ON clause refers to \"%s\", which is not part of JOIN"
 msgstr ""
 
-#: parser/parse_clause.c:423 gram.y:5172
+#: parser/parse_clause.c:423 gram.y:5161
 msgid "subquery in FROM must have an alias"
 msgstr "FROM ÖеÄ×Ó²éѯ±ØÐëÓÐÒ»¸ö±ðÃû"
 
@@ -7746,90 +7887,90 @@ msgstr "FROM 
 msgid "subquery in FROM may not refer to other relations of same query level"
 msgstr ""
 
-#: parser/parse_clause.c:523
+#: parser/parse_clause.c:527
 msgid ""
 "function expression in FROM may not refer to other relations of same query "
 "level"
 msgstr ""
 
-#: parser/parse_clause.c:535
+#: parser/parse_clause.c:539
 msgid "cannot use aggregate function in function expression in FROM"
 msgstr "²»ÄÜÔÚ FROM Öеĺ¯Êý±í´ïʽÖÐʹÓþۼ¯º¯Êý"
 
-#: parser/parse_clause.c:755
+#: parser/parse_clause.c:759
 #, c-format
 msgid "column name \"%s\" appears more than once in USING clause"
 msgstr "ÔÚ USING ×Ó¾äÖÐ×Ö¶ÎÃû \"%s\" ³öÏÖ¶à´Î"
 
-#: parser/parse_clause.c:770
+#: parser/parse_clause.c:774
 #, c-format
 msgid "common column name \"%s\" appears more than once in left table"
 msgstr "¹²Í¬µÄ×Ö¶ÎÃû \"%s\" ÔÚ×ó±ßµÄ±íÖгöÏÖÁ˶à´Î"
 
-#: parser/parse_clause.c:779
+#: parser/parse_clause.c:783
 #, c-format
 msgid "column \"%s\" specified in USING clause does not exist in left table"
 msgstr "USING ×Ó¾äÖÐÖ¸¶¨µÄ×ֶΠ\"%s\" ÔÚ×ó±ßµÄ±íÖв»´æÔÚ"
 
-#: parser/parse_clause.c:793
+#: parser/parse_clause.c:797
 #, c-format
 msgid "common column name \"%s\" appears more than once in right table"
 msgstr "¹²Í¬µÄ×Ö¶ÎÃû \"%s\" ÔÚÓұߵıíÖгöÏÖÁ˶à´Î"
 
-#: parser/parse_clause.c:802
+#: parser/parse_clause.c:806
 #, c-format
 msgid "column \"%s\" specified in USING clause does not exist in right table"
 msgstr "USING ×Ó¾äÖÐÖ¸¶¨µÄ×ֶΠ\"%s\" ÔÚÓұߵıíÖв»´æÔÚ"
 
-#: parser/parse_clause.c:854
+#: parser/parse_clause.c:858
 #, c-format
 msgid "column alias list for \"%s\" has too many entries"
 msgstr "\"%s\" µÄ×ֶαðÃûÁбíÓÐÌ«¶à¼Ç¼"
 
 #. translator: %s is name of a SQL construct, eg LIMIT
-#: parser/parse_clause.c:1047
+#: parser/parse_clause.c:1051
 #, c-format
 msgid "argument of %s must not contain variables"
 msgstr "%s µÄ²ÎÊý²»ÄÜ°üº¬±äÁ¿"
 
 #. translator: %s is name of a SQL construct, eg LIMIT
-#: parser/parse_clause.c:1055
+#: parser/parse_clause.c:1059
 #, c-format
 msgid "argument of %s must not contain aggregates"
 msgstr "%s µÄ²ÎÊýÒ»¶¨²»ÄÜ°üº¬¾Û¼¯º¯Êý"
 
 #. translator: %s is name of a SQL construct, eg LIMIT
-#: parser/parse_clause.c:1063
+#: parser/parse_clause.c:1067
 #, c-format
 msgid "argument of %s must not contain subqueries"
 msgstr "%s µÄ²ÎÊýÒ»¶¨²»ÄÜ°üº¬×Ó²éѯ"
 
-#: parser/parse_clause.c:1175
+#: parser/parse_clause.c:1179
 #, c-format
 msgid "%s \"%s\" is ambiguous"
 msgstr "%s \"%s\" ÊDz»Ã÷È·µÄ"
 
 #. translator: %s is name of a SQL construct, eg ORDER BY
-#: parser/parse_clause.c:1197
+#: parser/parse_clause.c:1201
 #, c-format
 msgid "non-integer constant in %s"
 msgstr "ÔÚ %s ÖеķÇÕûÊý³£Á¿"
 
 #. translator: %s is name of a SQL construct, eg ORDER BY
-#: parser/parse_clause.c:1214
+#: parser/parse_clause.c:1218
 #, c-format
 msgid "%s position %d is not in select list"
 msgstr ""
 
-#: parser/parse_clause.c:1407
+#: parser/parse_clause.c:1411
 msgid "for SELECT DISTINCT, ORDER BY expressions must appear in select list"
 msgstr ""
 
-#: parser/parse_clause.c:1447
+#: parser/parse_clause.c:1451
 msgid "SELECT DISTINCT ON expressions must match initial ORDER BY expressions"
 msgstr ""
 
-#: parser/parse_agg.c:74 optimizer/util/clauses.c:426 executor/execQual.c:2769
+#: parser/parse_agg.c:74 optimizer/util/clauses.c:428 executor/execQual.c:2804
 msgid "aggregate function calls may not be nested"
 msgstr "¾Û¼¯º¯Êýµ÷Óò»ÔÊÐíǶÌ×"
 
@@ -7896,41 +8037,37 @@ msgstr "һ
 msgid "a column definition list is required for functions returning \"record\""
 msgstr "Ò»¸ö×ֶζ¨ÒåÁбíÐèÒª·µ»Ø \"record\" µÄº¯Êý"
 
-#: parser/parse_relation.c:1052
+#: parser/parse_relation.c:1047
 #, c-format
 msgid "too many column aliases specified for function %s"
 msgstr "Ϊº¯Êý %s Ö¸¶¨ÁËÌ«¶àµÄ×ֶαðÃû"
 
-#: parser/parse_relation.c:1076
+#: parser/parse_relation.c:1071
 #, c-format
-msgid "function \"%s\" in FROM has unsupported return type"
-msgstr "FROM Öеĺ¯Êý \"%s\" ²»Ö§³Ö·µ»ØÀàÐÍ"
-
-#: parser/parse_relation.c:1394 parser/parse_relation.c:1730
-msgid "function in FROM has unsupported return type"
-msgstr "FROM Öеĺ¯Êý²»Ö§³Ö·µ»ØÀàÐÍ"
+msgid "function \"%s\" in FROM has unsupported return type %s"
+msgstr "FROM Öеĺ¯Êý \"%s\" ²»Ö§³Ö·µ»ØÀàÐÍ %s"
 
-#: parser/parse_relation.c:2009
+#: parser/parse_relation.c:2003
 #, c-format
 msgid "missing FROM-clause entry in subquery for table \"%s\""
 msgstr ""
 
-#: parser/parse_relation.c:2014
+#: parser/parse_relation.c:2008
 #, c-format
 msgid "missing FROM-clause entry for table \"%s\""
 msgstr ""
 
-#: parser/parse_relation.c:2033
+#: parser/parse_relation.c:2027
 #, c-format
 msgid "adding missing FROM-clause entry in subquery for table \"%s\""
 msgstr ""
 
-#: parser/parse_relation.c:2038
+#: parser/parse_relation.c:2032
 #, c-format
 msgid "adding missing FROM-clause entry for table \"%s\""
 msgstr ""
 
-#: parser/parse_coerce.c:221 parser/analyze.c:3136 parser/parse_expr.c:116
+#: parser/parse_coerce.c:221 parser/analyze.c:3144 parser/parse_expr.c:116
 #: parser/parse_expr.c:122
 #, c-format
 msgid "there is no parameter $%d"
@@ -7941,296 +8078,296 @@ msgstr "û
 msgid "inconsistent types deduced for parameter $%d"
 msgstr ""
 
-#: parser/parse_coerce.c:676 parser/parse_coerce.c:703
-#: parser/parse_coerce.c:719 parser/parse_coerce.c:733
+#: parser/parse_coerce.c:691 parser/parse_coerce.c:718
+#: parser/parse_coerce.c:734 parser/parse_coerce.c:748
 #: parser/parse_expr.c:1654
 #, c-format
 msgid "cannot cast type %s to %s"
 msgstr "ÎÞ·¨°ÑÀàÐÍ %s ×ª»»Îª %s"
 
-#: parser/parse_coerce.c:706
+#: parser/parse_coerce.c:721
 msgid "Input has too few columns."
 msgstr "ÊäÈë×Ö¶ÎÌ«ÉÙ"
 
-#: parser/parse_coerce.c:722
+#: parser/parse_coerce.c:737
 #, c-format
 msgid "Cannot cast type %s to %s in column %d."
 msgstr "²»Äܰѵڠ%3$d ¸ö×ֶεÄÀàÐÍ %1$s ×ª»»Îª %2$s."
 
-#: parser/parse_coerce.c:736
+#: parser/parse_coerce.c:751
 msgid "Input has too many columns."
 msgstr "ÊäÈë×Ö¶ÎÌ«¶à"
 
 #. translator: first %s is name of a SQL construct, eg WHERE
-#: parser/parse_coerce.c:770
+#: parser/parse_coerce.c:785
 #, c-format
 msgid "argument of %s must be type boolean, not type %s"
 msgstr "%s µÄ²ÎÊý±ØÐèÊDz¼¶ûÀàÐÍ, ¶ø²»ÊÇ %s ÀàÐÍ"
 
 #. translator: %s is name of a SQL construct, eg WHERE
 #. translator: %s is name of a SQL construct, eg LIMIT
-#: parser/parse_coerce.c:778 parser/parse_coerce.c:817
+#: parser/parse_coerce.c:793 parser/parse_coerce.c:832
 #, c-format
 msgid "argument of %s must not return a set"
 msgstr "%s µÄ²ÎÊý²»ÄÜ·µ»ØÒ»¸ö×éºÏ"
 
 #. translator: first %s is name of a SQL construct, eg LIMIT
-#: parser/parse_coerce.c:809
+#: parser/parse_coerce.c:824
 #, c-format
 msgid "argument of %s must be type integer, not type %s"
 msgstr "%s µÄ²ÎÊý±ØÐèÊÇÕûÊýÀàÐÍ, ¶ø²»ÊÇ %s ÀàÐÍ"
 
-#: parser/parse_coerce.c:871
+#: parser/parse_coerce.c:886
 #, c-format
 msgid "%s types %s and %s cannot be matched"
 msgstr "%s µÄÀàÐÍ %s ºÍ %s ²»Æ¥Åä"
 
 #. translator: first %s is name of a SQL construct, eg CASE
-#: parser/parse_coerce.c:933
+#: parser/parse_coerce.c:948
 #, c-format
 msgid "%s could not convert type %s to %s"
 msgstr "%s ÎÞ·¨×ª»»ÀàÐÍ %s Îª %s"
 
-#: parser/parse_coerce.c:1109
+#: parser/parse_coerce.c:1124
 msgid "arguments declared \"anyelement\" are not all alike"
 msgstr "²ÎÊýÉùÃ÷µÄ \"anyelement\" ²»È«Ïàͬ"
 
-#: parser/parse_coerce.c:1126
+#: parser/parse_coerce.c:1141
 msgid "arguments declared \"anyarray\" are not all alike"
 msgstr "²ÎÊýÉùÃ÷µÄ \"anyarray\" ²»È«Ïàͬ"
 
-#: parser/parse_coerce.c:1155 parser/parse_coerce.c:1267
-#: parser/parse_coerce.c:1294
+#: parser/parse_coerce.c:1170 parser/parse_coerce.c:1282
+#: parser/parse_coerce.c:1309
 #, c-format
 msgid "argument declared \"anyarray\" is not an array but type %s"
 msgstr "²ÎÊýÉùÃ÷µÄ \"anyarray\" ²»ÊÇÒ»¸öÊý×é, µ«ÊÇÀàÐÍΪ %s"
 
-#: parser/parse_coerce.c:1172
+#: parser/parse_coerce.c:1187
 msgid ""
 "argument declared \"anyarray\" is not consistent with argument declared "
 "\"anyelement\""
 msgstr "²ÎÊýÉùÃ÷µÄ \"anyarray\" ºÍ²ÎÊýÉùÃ÷µÄ \"anyelement\" ²»Ò»ÖÂ"
 
-#: parser/parse_coerce.c:1183
+#: parser/parse_coerce.c:1198
 msgid ""
 "could not determine anyarray/anyelement type because input has type \"unknown"
 "\""
 msgstr "ÎÞ·¨È·¶¨ anyarray/anyelement ÀàÐÍ, ÒòΪÊäÈëÀàÐÍΪ \"unknown\""
 
-#: parser/parse_coerce.c:1208 parser/parse_coerce.c:1225
-#: parser/parse_coerce.c:1279 parser/parse_expr.c:794 parser/parse_expr.c:1350
+#: parser/parse_coerce.c:1223 parser/parse_coerce.c:1240
+#: parser/parse_coerce.c:1294 parser/parse_expr.c:794 parser/parse_expr.c:1350
 #: parser/parse_expr.c:1389 parser/parse_oper.c:920
 #, c-format
 msgid "could not find array type for data type %s"
 msgstr "ÎÞ·¨ÎªÊý¾ÝÀàÐÍ %s ÕÒµ½Êý×éÀàÐÍ"
 
-#: y.tab.c:9592
+#: y.tab.c:9501
 msgid "syntax error: cannot back up"
 msgstr "Óï·¨´íÎó: ÎÞ·¨Ö§³Ö/µ¹ÍË"
 
-#: gram.y:990 gram.y:1016
+#: gram.y:989 gram.y:1015
 msgid "time zone interval must be HOUR or HOUR TO MINUTE"
 msgstr "ʱÇø¼ä¸ô±ØÐëΪ HOUR »òÕß HOUR TO MINUTE"
 
-#: gram.y:1001 gram.y:5497 gram.y:7560
+#: gram.y:1000 gram.y:5469 gram.y:7540
 #, c-format
 msgid "INTERVAL(%d) precision must not be negative"
 msgstr "INTERVAL(%d) µÄ¾«È·¶È²»ÄÜΪ¸ºÊý"
 
-#: gram.y:1007 gram.y:5503 gram.y:7566
+#: gram.y:1006 gram.y:5475 gram.y:7546
 #, c-format
 msgid "INTERVAL(%d) precision reduced to maximum allowed, %d"
 msgstr ""
 
-#: gram.y:1977
+#: gram.y:1976
 msgid "CREATE TABLE AS may not specify INTO"
 msgstr "CREATE TABLE AS ²»¿ÉÒÔÖ¸¶¨ INTO"
 
-#: gram.y:2369 gram.y:2384 parser/analyze.c:2898 parser/analyze.c:2922
+#: gram.y:2368 gram.y:2383 parser/analyze.c:2906 parser/analyze.c:2930
 msgid "constraint declared INITIALLY DEFERRED must be DEFERRABLE"
 msgstr "Ô¼ÊøÉùÃ÷ INITIALLY DEFERRED ±ØÐëΪ DEFERRABLE"
 
-#: gram.y:2436
+#: gram.y:2435
 msgid "CREATE ASSERTION is not yet implemented"
 msgstr "CREATE ASSERTION ÈÔδʵÏÖ"
 
-#: gram.y:2452
+#: gram.y:2451
 msgid "DROP ASSERTION is not yet implemented"
 msgstr "DROP ASSERTION ÈÔδʵÏÖ"
 
-#: gram.y:2516 gram.y:7445 parser/parse_expr.c:1183 parser/parse_target.c:735
+#: gram.y:2515 gram.y:7425 parser/parse_expr.c:1183 parser/parse_target.c:736
 #: catalog/namespace.c:1201
 #, c-format
 msgid "improper qualified name (too many dotted names): %s"
 msgstr "²»ºÏÊʵÄÌõ¼þÃû³Æ (Ãû×ÖÖÐÌ«¶àµÄµã·ûºÅ): %s"
 
-#: gram.y:3334
+#: gram.y:3323
 msgid "CREATE FUNCTION / OUT parameters are not implemented"
 msgstr "CREATE FUNCTION / OUT ²ÎÊýδʵÏÖ"
 
-#: gram.y:3341
+#: gram.y:3330
 msgid "CREATE FUNCTION / INOUT parameters are not implemented"
 msgstr "CREATE FUNCTION / INOUT ²ÎÊýδʵÏÖ"
 
-#: gram.y:4551
+#: gram.y:4540
 msgid "column name list not allowed in CREATE TABLE / AS EXECUTE"
 msgstr "×Ö¶ÎÃûÁÐ±í²»ÔÊÐíÔÚ CREATE TABLE / AS EXECUTE ÖÐ"
 
-#: gram.y:5022
+#: gram.y:5011
 msgid "LIMIT #,# syntax is not supported"
 msgstr "²»Ö§³Ö LIMIT #,# Óï·¨"
 
-#: gram.y:5023
+#: gram.y:5012
 msgid "Use separate LIMIT and OFFSET clauses."
 msgstr ""
 
-#: gram.y:5173
+#: gram.y:5162
 msgid "For example, FROM (SELECT ...) [AS] foo."
 msgstr "ÀýÈç, FROM (SELECT ...) [AS] foo."
 
-#: gram.y:5600
+#: gram.y:5572
 msgid "precision for type float must be at least 1 bit"
 msgstr "¸¡µãÀàÐ͵ľ«È·¶È±ØÐëÖÁÉÙ 1 Î»"
 
-#: gram.y:5608
+#: gram.y:5580
 msgid "precision for type float must be less than 54 bits"
 msgstr "¸¡µãÀàÐ͵ľ«È·¶È±ØÐëСÓÚ 54 Î»"
 
-#: gram.y:5622 gram.y:5637
+#: gram.y:5594 gram.y:5609
 #, c-format
 msgid "NUMERIC precision %d must be between 1 and %d"
 msgstr "NUMERIC %d µÄ¾«¶È±ØÐëÔÚ 1 ºÍ %d Ö®¼ä"
 
-#: gram.y:5627
+#: gram.y:5599
 #, c-format
 msgid "NUMERIC scale %d must be between 0 and precision %d"
 msgstr "NUMERIC ÊýÖµ·¶Î§ %d ±ØÐëÔÚ 0 ºÍ¾«¶È %d Ö®¼ä"
 
-#: gram.y:5655 gram.y:5670
+#: gram.y:5627 gram.y:5642
 #, c-format
 msgid "DECIMAL precision %d must be between 1 and %d"
 msgstr "DECIMAL %d µÄ¾«¶È±ØÐëÔÚ 1 ºÍ %d Ö®¼ä"
 
-#: gram.y:5660
+#: gram.y:5632
 #, c-format
 msgid "DECIMAL scale %d must be between 0 and precision %d"
 msgstr "DECIMAL ÊýÖµ·¶Î§ %d ±ØÐëÔÚ 0 ºÍ¾«¶È %d Ö®¼ä"
 
-#: gram.y:5720 gram.y:5798
+#: gram.y:5692 gram.y:5770
 #, c-format
 msgid "length for type %s must be at least 1"
 msgstr "ÀàÐÍ %s µÄ³¤¶ÈÖÁÉÙΪ 1"
 
-#: gram.y:5725 gram.y:5803
+#: gram.y:5697 gram.y:5775
 #, c-format
 msgid "length for type %s cannot exceed %d"
 msgstr "ÀàÐÍ %s µÄ³¤¶È²»Äܳ¬¹ý %d"
 
-#: gram.y:5876
+#: gram.y:5848
 #, c-format
 msgid "TIMESTAMP(%d)%s precision must not be negative"
 msgstr "TIMESTAMP(%d)%s ¾«È·¶È²»ÄÜΪ¸ºÊý"
 
-#: gram.y:5882
+#: gram.y:5854
 #, c-format
 msgid "TIMESTAMP(%d)%s precision reduced to maximum allowed, %d"
 msgstr ""
 
-#: gram.y:5917
+#: gram.y:5889
 #, c-format
 msgid "TIME(%d)%s precision must not be negative"
 msgstr "TIME(%d)%s ¾«È·¶È²»ÄÜΪ¸ºÊý"
 
-#: gram.y:5923
+#: gram.y:5895
 #, c-format
 msgid "TIME(%d)%s precision reduced to maximum allowed, %d"
 msgstr ""
 
-#: gram.y:6377
+#: gram.y:6349
 msgid "UNIQUE predicate is not yet implemented"
 msgstr ""
 
-#: gram.y:6612
+#: gram.y:6632
 #, c-format
 msgid "CURRENT_TIME(%d) precision must not be negative"
 msgstr "CURRENT_TIME(%d) ¾«È·¶È²»ÄÜΪ¸ºÊý"
 
-#: gram.y:6618
+#: gram.y:6638
 #, c-format
 msgid "CURRENT_TIME(%d) precision reduced to maximum allowed, %d"
 msgstr ""
 
-#: gram.y:6666
+#: gram.y:6686
 #, c-format
 msgid "CURRENT_TIMESTAMP(%d) precision must not be negative"
 msgstr "CURRENT_TIMESTAMP(%d) ¾«È·¶È²»ÄÜΪ¸ºÊý"
 
-#: gram.y:6672
+#: gram.y:6692
 #, c-format
 msgid "CURRENT_TIMESTAMP(%d) precision reduced to maximum allowed, %d"
 msgstr ""
 
-#: gram.y:6719
+#: gram.y:6739
 #, c-format
 msgid "LOCALTIME(%d) precision must not be negative"
 msgstr "LOCALTIME(%d) ¾«È·¶È²»ÄÜΪ¸ºÊý"
 
-#: gram.y:6725
+#: gram.y:6745
 #, c-format
 msgid "LOCALTIME(%d) precision reduced to maximum allowed, %d"
 msgstr ""
 
-#: gram.y:6773
+#: gram.y:6793
 #, c-format
 msgid "LOCALTIMESTAMP(%d) precision must not be negative"
 msgstr "LOCALTIMESTAMP(%d) ¾«È·¶È²»ÄÜΪ¸ºÊý"
 
-#: gram.y:6779
+#: gram.y:6799
 #, c-format
 msgid "LOCALTIMESTAMP(%d) precision reduced to maximum allowed, %d"
 msgstr ""
 
-#: gram.y:8007
+#: gram.y:7987
 msgid "OLD used in query that is not in a rule"
 msgstr "²éѯÖÐʹÓõĠOLD ²»ÔÚÒ»¸ö¹æÔòÖÐ"
 
-#: gram.y:8016
+#: gram.y:7996
 msgid "NEW used in query that is not in a rule"
 msgstr "²éѯÖÐʹÓõĠNEW ²»ÔÚÒ»¸ö¹æÔòÖÐ"
 
-#: y.tab.c:19192
+#: y.tab.c:19080
 msgid "syntax error; also virtual memory exhausted"
 msgstr "Óï·¨´íÎó; ²¢ÇÒÐéÄâÄÚ´æºÄ¾¡"
 
-#: y.tab.c:19196 gram.y:8241 gram.y:8243
+#: y.tab.c:19084 gram.y:8221 gram.y:8223 gram.y:8240 gram.y:8242
 msgid "syntax error"
 msgstr "Óï·¨´íÎó"
 
-#: y.tab.c:19295
+#: y.tab.c:19183
 msgid "parser stack overflow"
 msgstr "Óï·¨·ÖÎöÆ÷Õ»Òç³ö"
 
-#: gram.y:8215
+#: gram.y:8195
 msgid "wrong number of parameters on left side of OVERLAPS expression"
 msgstr "OVERLAPS ±í´ïʽ×ó±ßµÄ²ÎÊý¸öÊý²»¶Ô"
 
-#: gram.y:8221
+#: gram.y:8201
 msgid "wrong number of parameters on right side of OVERLAPS expression"
 msgstr "OVERLAPS ±í´ïʽÓұߵIJÎÊý¸öÊý²»¶Ô"
 
-#: gram.y:8300
+#: gram.y:8299
 msgid "multiple ORDER BY clauses not allowed"
 msgstr "²»ÔÊÐí¶à¸ö ORDER BY ×Ó¾ä"
 
-#: gram.y:8308
+#: gram.y:8307
 msgid "multiple FOR UPDATE clauses not allowed"
 msgstr "²»ÔÊÐí¶à¸ö FOR UPDATE ×Ó¾ä"
 
-#: gram.y:8316
+#: gram.y:8315
 msgid "multiple OFFSET clauses not allowed"
 msgstr "²»ÔÊÐí¶à¸ö OFFSET ×Ó¾ä"
 
-#: gram.y:8324
+#: gram.y:8323
 msgid "multiple LIMIT clauses not allowed"
 msgstr "²»ÔÊÐí¶à¸ö LIMIT ×Ó¾ä"
 
@@ -8274,193 +8411,198 @@ msgstr "%s 
 msgid "%s at or near \"%s\""
 msgstr "%s ÔÚ \"%s\" »ò¸½½üµÄ"
 
-#: parser/analyze.c:446
+#: parser/analyze.c:408
+#, c-format
+msgid "target lists can have at most %d entries"
+msgstr "Ä¿±êÁбí×î¶à¿ÉÒÔÓР%d ¸ö×Ö¶Î"
+
+#: parser/analyze.c:458
 msgid "CREATE VIEW specifies more column names than columns"
 msgstr "CREATE VIEW Ö¸¶¨µÄ×Ö¶ÎÃû±Èʵ¼Ê×ֶζà"
 
-#: parser/analyze.c:583
+#: parser/analyze.c:595
 msgid "INSERT ... SELECT may not specify INTO"
 msgstr "INSERT ... SELECT ²»±ØÖ¸¶¨ INTO"
 
-#: parser/analyze.c:671
+#: parser/analyze.c:683
 msgid "INSERT has more expressions than target columns"
 msgstr "INSERT µÄ±í´ïʽ¶àÓÚÖ¸¶¨µÄ×Ö¶ÎÊý"
 
-#: parser/analyze.c:692
+#: parser/analyze.c:704
 msgid "INSERT has more target columns than expressions"
 msgstr "INSERT µÄÖ¸¶¨×Ö¶ÎÊý¶àÓÚ±í´ïʽ"
 
-#: parser/analyze.c:865
+#: parser/analyze.c:877
 #, c-format
 msgid "%s will create implicit sequence \"%s\" for serial column \"%s.%s\""
 msgstr "%1$s ½«Îª serial ×ֶΠ\"%3$s.%4$s\" ´´½¨Òþº¬ÐòÁР\"%2$s\""
 
-#: parser/analyze.c:948 parser/analyze.c:958
+#: parser/analyze.c:960 parser/analyze.c:970
 #, c-format
 msgid ""
 "conflicting NULL/NOT NULL declarations for column \"%s\" of table \"%s\""
 msgstr "±í \"%2$s\" µÄ×ֶΠ\"%1$s\" ÉùÃ÷ NULL/NOT NULL ³åÍ»"
 
-#: parser/analyze.c:968
+#: parser/analyze.c:980
 #, c-format
 msgid "multiple default values specified for column \"%s\" of table \"%s\""
 msgstr "¶Ô±í \"%2$s\" µÄ×ֶΠ\"%1$s\" Ö¸¶¨Á˶à±éĬÈÏÖµ"
 
-#: parser/analyze.c:1311
+#: parser/analyze.c:1323
 #, c-format
 msgid "column \"%s\" appears twice in primary key constraint"
 msgstr "ÔÚÖ÷¼üÔ¼ÊøÖÐ×ֶΠ\"%s\" ³öÏÖÁËÁ½´Î"
 
-#: parser/analyze.c:1316
+#: parser/analyze.c:1328
 #, c-format
 msgid "column \"%s\" appears twice in unique constraint"
 msgstr "×ֶΠ\"%s\" ÔÚΨһԼÊøÖгöÏÖÁ½´Î"
 
-#: parser/analyze.c:1499
+#: parser/analyze.c:1511
 msgid "index expression may not return a set"
 msgstr "Ë÷Òý±í´ïʽ²»ÄÜ·µ»ØÒ»¸ö×éºÏ"
 
-#: parser/analyze.c:1591
+#: parser/analyze.c:1603
 msgid "rule WHERE condition may not contain references to other relations"
 msgstr "¹æÔò WHERE Ìõ¼þ²»ÄÜ°üº¬ÆäËü¹ØϵµÄ¹ØÁª"
 
-#: parser/analyze.c:1597
+#: parser/analyze.c:1609
 msgid "rule WHERE condition may not contain aggregate functions"
 msgstr "¹æÔò WHERE Ìõ¼þ²»ÄÜ°üº¬¾Û¼¯º¯Êý"
 
-#: parser/analyze.c:1668
+#: parser/analyze.c:1680
 msgid ""
 "rules with WHERE conditions may only have SELECT, INSERT, UPDATE, or DELETE "
 "actions"
 msgstr "´ø WHERE Ìõ¼þµÄ¹æÔòÖ»ÔÊÐíÓРSELECT, INSERT, UPDATE, »òÕß DELETE ¶¯×÷"
 
-#: parser/analyze.c:1705
+#: parser/analyze.c:1717
 msgid "ON SELECT rule may not use OLD"
 msgstr "ON SELECT ¹æÔò²»¿ÉÒÔʹÓàOLD"
 
-#: parser/analyze.c:1709
+#: parser/analyze.c:1721
 msgid "ON SELECT rule may not use NEW"
 msgstr "ON SELECT ¹æÔò²»¿ÉÒÔʹÓàNEW"
 
-#: parser/analyze.c:1718
+#: parser/analyze.c:1730
 msgid "ON INSERT rule may not use OLD"
 msgstr "ON INSERT ¹æÔò²»¿ÉÒÔʹÓàOLD"
 
-#: parser/analyze.c:1724
+#: parser/analyze.c:1736
 msgid "ON DELETE rule may not use NEW"
 msgstr "ON DELETE ¹æÔò²»¿ÉÒÔʹÓàNEW"
 
-#: parser/analyze.c:1933 parser/analyze.c:2099 parser/analyze.c:2710
-#: optimizer/plan/planner.c:625
+#: parser/analyze.c:1945 parser/analyze.c:2111 parser/analyze.c:2718
+#: optimizer/plan/planner.c:641
 msgid "SELECT FOR UPDATE is not allowed with UNION/INTERSECT/EXCEPT"
 msgstr "SELECT FOR UPDATE ²»ÔÊÐí´ø UNION/INTERSECT/EXCEPT"
 
-#: parser/analyze.c:2056
+#: parser/analyze.c:2068
 msgid ""
 "ORDER BY on a UNION/INTERSECT/EXCEPT result must be on one of the result "
 "columns"
 msgstr "ÔÚ UNION/INTERSECT/EXCEPT ½á¹ûÉϵĠORDER BY ±ØÐëÊǽá¹ûÖеÄÒ»¸ö×Ö¶Î"
 
-#: parser/analyze.c:2094
+#: parser/analyze.c:2106
 msgid "INTO is only allowed on first SELECT of UNION/INTERSECT/EXCEPT"
 msgstr "INTO Ö»ÔÊÐíÔÚ UNION/INTERSECT/EXCEPT µÄµÚÒ»¸ö SELECT ÉÏʹÓÃ"
 
-#: parser/analyze.c:2155
+#: parser/analyze.c:2167
 msgid ""
 "UNION/INTERSECT/EXCEPT member statement may not refer to other relations of "
 "same query level"
 msgstr ""
 
-#: parser/analyze.c:2210
+#: parser/analyze.c:2222
 #, c-format
 msgid "each %s query must have the same number of columns"
 msgstr "ÿһ¸ö %s ²éѯ±ØÐëÓÐÏàͬµÄ×ֶθöÊý"
 
-#: parser/analyze.c:2282
+#: parser/analyze.c:2294
 msgid "CREATE TABLE AS specifies too many column names"
 msgstr "CREATE TABLE AS Ö¸¶¨ÁËÌ«¶àµÄ×Ö¶ÎÃû×Ö"
 
-#: parser/analyze.c:2569
+#: parser/analyze.c:2577
 msgid "cannot specify both SCROLL and NO SCROLL"
 msgstr "²»¿Éͬʱָ¶¨ SCROLL ºÍ NO SCROLL"
 
-#: parser/analyze.c:2656
+#: parser/analyze.c:2664
 #, c-format
 msgid "wrong number of parameters for prepared statement \"%s\""
 msgstr "×¼±¸ºÃµÄÓï¾ä \"%s\" ²ÎÊý¸öÊý´íÎó"
 
-#: parser/analyze.c:2658
+#: parser/analyze.c:2666
 #, c-format
 msgid "Expected %d parameters but got %d."
 msgstr "Ô¤¼Æ %d ¸ö²ÎÊý, µ«µÃµ½ÁË %d ¸ö."
 
-#: parser/analyze.c:2673
+#: parser/analyze.c:2681
 msgid "cannot use subquery in EXECUTE parameter"
 msgstr "ÔÚ EXECUTE ²ÎÊýÖв»¿ÉÒÔʹÓÃ×Ó²éѯ"
 
-#: parser/analyze.c:2677
+#: parser/analyze.c:2685
 msgid "cannot use aggregate function in EXECUTE parameter"
 msgstr "ÔÚ EXECUTE ²ÎÊýÖв»¿ÉÒÔʹÓþۼ¯º¯Êý"
 
-#: parser/analyze.c:2689
+#: parser/analyze.c:2697
 #, c-format
 msgid "parameter $%d of type %s cannot be coerced to the expected type %s"
 msgstr "ÀàÐÍ %2$s µÄ²ÎÊý $%1$d ²»ÄÜÇ¿ÖƵ½Ô¤¼Æ (expected) ÀàÐÍ %3$s"
 
-#: parser/analyze.c:2714
+#: parser/analyze.c:2722
 msgid "SELECT FOR UPDATE is not allowed with DISTINCT clause"
 msgstr "SELECT FOR UPDATE ²»ÔÊÐí´ø DISTINCT ×Ó¾ä"
 
-#: parser/analyze.c:2718
+#: parser/analyze.c:2726
 msgid "SELECT FOR UPDATE is not allowed with GROUP BY clause"
 msgstr "SELECT FOR UPDATE ²»ÔÊÐí´ø GROUP BY ×Ó¾ä"
 
-#: parser/analyze.c:2722
+#: parser/analyze.c:2730
 msgid "SELECT FOR UPDATE is not allowed with aggregate functions"
 msgstr "SELECT FOR UPDATE ²»ÔÊÐí´ø¾Û¼¯º¯Êý"
 
-#: parser/analyze.c:2804
+#: parser/analyze.c:2812
 msgid "SELECT FOR UPDATE cannot be applied to a join"
 msgstr "SELECT FOR UPDATE ²»ÄÜÊÊÓÃÓÚÒ»¸öÁªºÏ (join)"
 
-#: parser/analyze.c:2809
+#: parser/analyze.c:2817
 msgid "SELECT FOR UPDATE cannot be applied to NEW or OLD"
 msgstr "SELECT FOR UPDATE ²»ÊÊÓÃÓÚ NEW »ò OLD"
 
-#: parser/analyze.c:2814
+#: parser/analyze.c:2822
 msgid "SELECT FOR UPDATE cannot be applied to a function"
 msgstr "SELECT FOR UPDATE ²»ÊÊÓÃÓÚÒ»¸öº¯Êý"
 
-#: parser/analyze.c:2827
+#: parser/analyze.c:2835
 #, c-format
 msgid "relation \"%s\" in FOR UPDATE clause not found in FROM clause"
-msgstr ""
+msgstr "ÔÚ FROM ×Ó¾äÖеĠFOR UPDATE ×Ó¾äÖÐûÓÐÕÒµ½¹Øϵ \"%s\""
 
-#: parser/analyze.c:2874
+#: parser/analyze.c:2882
 msgid "misplaced DEFERRABLE clause"
 msgstr "DEFERRABLE ×Ó¾äλÖôíÎó"
 
-#: parser/analyze.c:2878 parser/analyze.c:2891
+#: parser/analyze.c:2886 parser/analyze.c:2899
 msgid "multiple DEFERRABLE/NOT DEFERRABLE clauses not allowed"
 msgstr "²»ÔÊÐí¶à¸ö DEFERRABLE/NOT DEFERRABLE ×Ó¾ä"
 
-#: parser/analyze.c:2887
+#: parser/analyze.c:2895
 msgid "misplaced NOT DEFERRABLE clause"
 msgstr "NOT DEFERRABLE ×Ó¾äλÖôíÎó"
 
-#: parser/analyze.c:2905
+#: parser/analyze.c:2913
 msgid "misplaced INITIALLY DEFERRED clause"
 msgstr "INITIALLY DEFERRED ×Ó¾äλÖôíÎó"
 
-#: parser/analyze.c:2909 parser/analyze.c:2933
+#: parser/analyze.c:2917 parser/analyze.c:2941
 msgid "multiple INITIALLY IMMEDIATE/DEFERRED clauses not allowed"
 msgstr "²»ÔÊÐí¶à¸ö INITIALLY IMMEDIATE/DEFERRED ×Ó¾ä"
 
-#: parser/analyze.c:2929
+#: parser/analyze.c:2937
 msgid "misplaced INITIALLY IMMEDIATE clause"
 msgstr "INITIALLY IMMEDIATE ×Ó¾äλÖôíÎó"
 
-#: parser/analyze.c:2982
+#: parser/analyze.c:2990
 #, c-format
 msgid ""
 "CREATE specifies a schema (%s) different from the one being created (%s)"
@@ -8506,7 +8648,7 @@ msgstr "
 msgid "subquery has too few columns"
 msgstr "×Ó²éѯ×Ö¶ÎÌ«ÉÙ"
 
-#: parser/parse_expr.c:1157 parser/parse_target.c:726 catalog/namespace.c:1195
+#: parser/parse_expr.c:1157 parser/parse_target.c:727 catalog/namespace.c:1195
 #, c-format
 msgid "cross-database references are not implemented: %s"
 msgstr "δʵÏÖ¿çÊý¾Ý¿â¹ØÁª: %s"
@@ -8565,7 +8707,7 @@ msgstr "
 msgid "column %s.%s does not exist"
 msgstr "×ֶΠ%s.%s ²»´æÔÚ"
 
-#: parser/parse_func.c:1219 parser/parse_target.c:497
+#: parser/parse_func.c:1219
 #, c-format
 msgid "column \"%s\" not found in data type %s"
 msgstr "ÔÚÊý¾ÝÀàÐÍ %2$s ÖÐδÕÒµ½×ֶΠ\"%1$s\""
@@ -8652,41 +8794,51 @@ msgstr ""
 msgid "op ANY/ALL (array) requires operator not to return a set"
 msgstr ""
 
-#: parser/parse_target.c:269 parser/parse_target.c:502
+#: parser/parse_target.c:268 parser/parse_target.c:503
 #, c-format
 msgid "cannot assign to system column \"%s\""
 msgstr "²»ÄÜÖ¸¶¨ÏµÍ³×Ö¶ÎÃû \"%s\""
 
-#: parser/parse_target.c:293
+#: parser/parse_target.c:292
 msgid "cannot set an array element to DEFAULT"
 msgstr "²»ÄÜÉèÖÃÒ»¸öÊý×éÔªËØΪ DEFAULT"
 
-#: parser/parse_target.c:297
+#: parser/parse_target.c:296
 msgid "cannot set a subfield to DEFAULT"
 msgstr "²»ÄÜÉèÖÃ×Ó×Ö¶ÎΪ DEFAULT"
 
-#: parser/parse_target.c:358
+#: parser/parse_target.c:357
 #, c-format
 msgid "column \"%s\" is of type %s but expression is of type %s"
 msgstr "×ֶΠ\"%s\" µÄÀàÐÍΪ %s, µ«±í´ïʽµÄÀàÐÍΪ %s"
 
-#: parser/parse_target.c:490
+#: parser/parse_target.c:489
+#, c-format
+msgid ""
+"cannot assign to field \"%s\" of column \"%s\" because its type %s is not a "
+"composite type"
+msgstr ""
+"ÎÞ·¨Ö¸¶¨ÁР\"%2$s\" µÄ×ֶΠ\"%1$s\", ÒòΪËüµÄÀàÐÍ %3$s ²»ÊÇÒ»¸ö¸´ºÏÀàÐÍ"
+
+#: parser/parse_target.c:497
 #, c-format
-msgid "cannot assign to a column of type %s because it is not a composite type"
-msgstr "ÎÞ·¨Ö¸¶¨×Ö¶ÎÀàÐÍ %s, ÒòΪËü²»ÊÇÒ»¸ö¸´ºÏÀàÐÍ"
+msgid ""
+"cannot assign to field \"%s\" of column \"%s\" because there is no such "
+"column in data type %s"
+msgstr "ÎÞ·¨¸ø×ֶΠ\"%2$s\" µÄÊý¾ÝÓò \"%1$s\" ¸³Öµ, ÒòΪÔÚÊý¾ÝÀàÐÍ %3$s ÖÐûÓдËÁÐ"
 
-#: parser/parse_target.c:566
+#: parser/parse_target.c:567
 #, c-format
 msgid ""
 "array assignment to \"%s\" requires type %s but expression is of type %s"
 msgstr ""
 
-#: parser/parse_target.c:575
+#: parser/parse_target.c:576
 #, c-format
 msgid "subfield \"%s\" is of type %s but expression is of type %s"
 msgstr "×Ó×ֶΠ\"%s\" µÄÀàÐÍΪ %s, µ«±í´ïʽµÄÀàÐÍΪ %s"
 
-#: parser/parse_target.c:804
+#: parser/parse_target.c:805
 msgid "SELECT * with no tables specified is not valid"
 msgstr "SELECT * Ã»ÓÐÖ¸¶¨±íÊÇÎÞЧµÄ"
 
@@ -8710,7 +8862,7 @@ msgstr "
 msgid "invalid type name \"%s\""
 msgstr "ÎÞЧµÄÀàÐÍÃû×Ö \"%s\""
 
-#: optimizer/path/allpaths.c:224
+#: optimizer/path/allpaths.c:223
 msgid "SELECT FOR UPDATE is not supported for inheritance queries"
 msgstr "SELECT FOR UPDATE ²»Ö§³Ö¼Ì³Ð²éѯ"
 
@@ -8738,148 +8890,210 @@ msgid ""
 "equality operator for types %s and %s should be merge-joinable, but isn't"
 msgstr "ÀàÐÍ %s ºÍ %s µÄµÈºÅ²Ù×÷·ûÓ¦¸ÃΪ¿ÉºÏ²¢ÁªºÏµÄ, µ«Õâ¸ö²»ÊÇ"
 
-#: optimizer/plan/planner.c:682
+#: optimizer/plan/planner.c:698
 msgid "SELECT FOR UPDATE is not allowed in subqueries"
 msgstr "SELECT FOR UPDATE ²»ÔÊÐíÔÚ×Ó²éѯÖÐ"
 
-#: optimizer/util/clauses.c:2295
+#: optimizer/util/clauses.c:2348
 #, c-format
 msgid "SQL function \"%s\" during inlining"
-msgstr ""
+msgstr "SQL º¯Êý \"%s\" ÔÚÄÚÁª (inlining) ÆÚ¼ä"
 
 #: executor/execQual.c:811
 msgid "functions and operators can take at most one set argument"
 msgstr "º¯ÊýºÍ²Ù×÷·û×î¶à´øÒ»×é²ÎÊý"
 
-#: executor/execQual.c:1288
-msgid "function returning row cannot return null value"
-msgstr "º¯Êý·µ»ØÐв»ÄÜ·µ»Ø¿ÕÖµ"
+#: executor/execQual.c:1293
+msgid "function returning set of rows cannot return null value"
+msgstr "º¯Êý·µ»ØֵΪ¶àÁÐʱ²»ÄÜ·µ»Ø¿ÕÖµ"
 
-#: executor/execQual.c:1371
+#: executor/execQual.c:1377
 msgid "table-function protocol for materialize mode was not followed"
 msgstr ""
 
-#: executor/execQual.c:1378
+#: executor/execQual.c:1384
 #, c-format
 msgid "unrecognized table-function returnMode: %d"
 msgstr "δÈÏ¿ÉµÄ±íº¯Êý·µ»Øģʽ (returnMode): %d"
 
-#: executor/execQual.c:1495
+#: executor/execQual.c:1530
 msgid "IS DISTINCT FROM does not support set arguments"
 msgstr "IS DISTINCT FROM ²»Ö§³ÖÒ»×é²ÎÊý"
 
-#: executor/execQual.c:1569
+#: executor/execQual.c:1604
 msgid "op ANY/ALL (array) does not support set arguments"
-msgstr ""
+msgstr "²Ù×÷·û ANY/ALL (Êý×é) ²»Ö§³ÖÉèÖòÎÊý"
 
-#: executor/execQual.c:2016
+#: executor/execQual.c:2051
 msgid "cannot merge incompatible arrays"
 msgstr "ÎÞ·¨ºÏ²¢²»¼æÈݵÄÅÅÁÐ"
 
-#: executor/execQual.c:2017
+#: executor/execQual.c:2052
 #, c-format
 msgid ""
 "Array with element type %s cannot be included in ARRAY construct with "
 "element type %s."
-msgstr ""
+msgstr "ÔªËØÀàÐÍΪ %s µÄ ARRAY ½á¹¹Öв»ÄÜ°üº¬´øÓÐÔªËØÀàÐÍΪ %s µÄÊý×é."
 
-#: executor/execQual.c:2216
+#: executor/execQual.c:2251
 msgid "NULLIF does not support set arguments"
 msgstr "NULLIF ²»Ö§³ÖÒ»×é²ÎÊý"
 
-#: executor/execQual.c:2397
+#: executor/execQual.c:2432
 #, c-format
 msgid "domain %s does not allow null values"
 msgstr "Óò %s ²»ÔÊÐí¿ÕÖµ"
 
-#: executor/execQual.c:2427
+#: executor/execQual.c:2462
 #, c-format
 msgid "value for domain %s violates check constraint \"%s\""
 msgstr "Óò %s µÄֵΥ·´Á˼ì²éÔ¼Êø \"%s\""
 
-#: executor/execQual.c:3031
+#: executor/execQual.c:3066
 #, c-format
 msgid "ROW() column has type %s instead of type %s"
-msgstr ""
+msgstr "ROW() ÁÐÀàÐÍ %s Ì滻Ϊ %s"
 
-#: executor/nodeHashjoin.c:562 executor/nodeHashjoin.c:572
+#: executor/nodeHashjoin.c:571 executor/nodeHashjoin.c:581
 #, c-format
 msgid "could not read from hash-join temporary file: %m"
 msgstr "ÎÞ·¨´ÓÉ¢ÁÐÁª½Ó (hash-join) ÁÙʱÎļþ¶ÁÈ¡: %m"
 
-#: executor/nodeHashjoin.c:630 executor/nodeHashjoin.c:637
+#: executor/nodeHashjoin.c:641 executor/nodeHashjoin.c:648
 #, c-format
 msgid "could not rewind hash-join temporary file: %m"
 msgstr "ÎÞ·¨¾í»Ø (rewind) É¢ÁÐÁª½Ó (hash-join) ÁÙʱÎļþ: %m"
 
-#: executor/nodeHashjoin.c:688 executor/nodeHashjoin.c:693
+#: executor/nodeHashjoin.c:699 executor/nodeHashjoin.c:704
 #, c-format
 msgid "could not write to hash-join temporary file: %m"
 msgstr "ÎÞ·¨Ð´ÈëÉ¢ÁÐÁª½Ó (hash-join) ÁÙʱÎļþ: %m"
 
-#: executor/spi.c:185
+#: executor/spi.c:190
 msgid "transaction left non-empty SPI stack"
 msgstr "ÊÂÎïʣϷǿյĠSPI Õ»"
 
-#: executor/spi.c:186 executor/spi.c:237
-msgid "Check for missing \"SPI_finish\" calls"
-msgstr ""
+#: executor/spi.c:191 executor/spi.c:255
+msgid "Check for missing \"SPI_finish\" calls."
+msgstr "¼ì²éÊÇ·ñȱÉÙ \"SPI_finish\" µ÷ÓÃ."
 
-#: executor/spi.c:236
+#: executor/spi.c:254
 msgid "subtransaction left non-empty SPI stack"
 msgstr "×ÓÊÂÎïʣϷǿյĠSPI Õ»"
 
-#: executor/spi.c:775
+#: executor/spi.c:839
 msgid "cannot open multi-query plan as cursor"
 msgstr "ÎÞ·¨×÷ΪÓαê´ò¿ª¶àÌõ²éѯ¹æ»®"
 
-#: executor/spi.c:782
+#: executor/spi.c:846
 msgid "cannot open non-SELECT query as cursor"
 msgstr "ÎÞ·¨×÷ΪÓαê´ò¿ª·Ç SELECT ²éѯ"
 
-#: executor/spi.c:786
+#: executor/spi.c:850
 msgid "cannot open SELECT INTO query as cursor"
 msgstr "ÎÞ·¨×÷ΪÓαê´ò¿ª SELECT INTO ²éѯ"
 
-#: executor/spi.c:1503
+#. translator: %s is a SQL statement name
+#: executor/spi.c:1404 executor/functions.c:124
 #, c-format
-msgid "SQL query \"%s\""
-msgstr "SQL ²éѯ \"%s\""
+msgid "%s is not allowed in a non-volatile function"
+msgstr "%s ÔÚÒ»¸ö non-valatile º¯ÊýÖÐÊDz»ÔÊÐíµÄ"
 
-#: executor/functions.c:169
+#: executor/spi.c:1582
+#, c-format
+msgid "SQL statement \"%s\""
+msgstr "SQL Óï¾ä \"%s\""
+
+#. translator: %s is a SQL statement name
+#: executor/functions.c:117
+#, c-format
+msgid "%s is not allowed in a SQL function"
+msgstr "%s ²»ÔÊÐíÔÚÒ»¸ö SQL º¯ÊýÖÐ"
+
+#: executor/functions.c:190
 #, c-format
 msgid ""
 "could not determine actual result type for function declared to return type %"
 "s"
 msgstr "ÎÞ·¨È·¶¨Êµ¼Ê½á¹ûÀàÐÍΪº¯ÊýÉùÃ÷·µ»ØÀàÐÍ %s"
 
-#: executor/functions.c:219
+#: executor/functions.c:244
 #, c-format
 msgid "could not determine actual type of argument declared %s"
-msgstr ""
-
-#: executor/functions.c:296
-msgid "cannot begin/end transactions in SQL functions"
-msgstr ""
+msgstr "ÎÞ·¨È·¶¨ÉùÃ÷Ϊ %s µÄ²ÎÊýµÄʵ¼ÊÀàÐÍ"
 
-#: executor/functions.c:689
+#: executor/functions.c:790
 #, c-format
 msgid "SQL function \"%s\" statement %d"
 msgstr "SQL º¯Êý \"%s\" Óï¾ä %d"
 
-#: executor/functions.c:702 catalog/pg_proc.c:813
+#: executor/functions.c:803 catalog/pg_proc.c:574
 #, c-format
 msgid "SQL function \"%s\""
 msgstr "SQL º¯Êý \"%s\""
 
-#: executor/functions.c:708
+#: executor/functions.c:809
 #, c-format
 msgid "SQL function \"%s\" during startup"
 msgstr "SQL º¯Êý \"%s\" ÔÚÆô¶¯µÄʱºò"
 
+#: executor/functions.c:889 executor/functions.c:910 executor/functions.c:920
+#: executor/functions.c:944 executor/functions.c:952 executor/functions.c:1004
+#: executor/functions.c:1016 executor/functions.c:1036
+#, c-format
+msgid "return type mismatch in function declared to return %s"
+msgstr "º¯Êý·µ»ØÀàÐͺÍÉùÃ÷ÀàÐÍ %s ²»Æ¥Åä"
+
+#: executor/functions.c:891 executor/functions.c:922
+msgid "Function's final statement must be a SELECT."
+msgstr "º¯ÊýµÄ×îºóÓï¾ä±ØÐëÊÇÒ»¸ö SELECT"
+
+#: executor/functions.c:912
+msgid "Function's final statement must not be a SELECT."
+msgstr "º¯ÊýµÄ×îºóÓï¾ä±ØÐë²»ÊÇÒ»¸ö SELECT"
+
+#: executor/functions.c:946
+msgid "Final SELECT must return exactly one column."
+msgstr "×îºó SELECT ±ØÐë·µ»ØÒ»ÁÐ."
+
+#: executor/functions.c:954
+#, c-format
+msgid "Actual return type is %s."
+msgstr "ʵ¼Ê·µ»ØÀàÐÍÊÇ %s."
+
+#: executor/functions.c:1006
+msgid "Final SELECT returns too many columns."
+msgstr "×îºó SELECT ·µ»ØÁËÌ«¶àÁÐ."
+
+#: executor/functions.c:1018
+#, c-format
+msgid "Final SELECT returns %s instead of %s at column %d."
+msgstr "×îºó SELECT ÔÚ×ֶΠ%3$d ·µ»Ø %1$s Ìæ´ú %2$s"
+
+#: executor/functions.c:1038
+msgid "Final SELECT returns too few columns."
+msgstr "×îºó SELECT ·µ»ØÁËÌ«ÉÙÁÐ."
+
+#: executor/functions.c:1082 catalog/pg_aggregate.c:165 catalog/pg_proc.c:124
+msgid "cannot determine result data type"
+msgstr "ÎÞ·¨È·¶¨½á¹¹Êý¾ÝÀàÐÍ"
+
+#: executor/functions.c:1083 catalog/pg_proc.c:125
+msgid ""
+"A function returning \"anyarray\" or \"anyelement\" must have at least one "
+"argument of either type."
+msgstr ""
+"·µ»Ø \"anyarray\" »òÕß \"anyelement\" µÄº¯Êý±ØÐëÖÁÉÙÓÐÒ»¸ö²ÎÊýµÄÀàÐÍÊÇÒÔÉÏÁ½"
+"ÖÖ"
+
+#: executor/functions.c:1088
+#, c-format
+msgid "return type %s is not supported for SQL functions"
+msgstr "SQL º¯Êý²»Ö§³Ö·µ»ØÀàÐÍ %s"
+
 #: executor/nodeMergejoin.c:1474
 msgid "RIGHT JOIN is only supported with merge-joinable join conditions"
-msgstr ""
+msgstr "RIGHT JOIN Ö»Ö§³Ö¿ÉºÏ²¢Áª½áÌõ¼þ"
 
 #: executor/nodeFunctionscan.c:93
 msgid "query-specified return row and actual function return row do not match"
@@ -8888,29 +9102,29 @@ msgstr "ָ
 #: executor/nodeSubplan.c:294 executor/nodeSubplan.c:336
 #: executor/nodeSubplan.c:972
 msgid "more than one row returned by a subquery used as an expression"
-msgstr ""
+msgstr "×÷Ϊһ¸ö±í´ïʽʹÓõÄ×Ó²éѯ·µ»ØÁ˶àÁÐ"
 
-#: executor/execMain.c:839
+#: executor/execMain.c:814
 #, c-format
 msgid "cannot change sequence \"%s\""
 msgstr "²»¿ÉÒԸıäÐòÁР\"%s\""
 
-#: executor/execMain.c:845
+#: executor/execMain.c:820
 #, c-format
 msgid "cannot change TOAST relation \"%s\""
 msgstr "²»¿ÉÒԸıä TOAST ¹Øϵ \"%s\""
 
-#: executor/execMain.c:851
+#: executor/execMain.c:826
 #, c-format
 msgid "cannot change view \"%s\""
 msgstr "²»¿ÉÒԸıäÊÓͼ \"%s\""
 
-#: executor/execMain.c:1746
+#: executor/execMain.c:1731
 #, c-format
 msgid "null value in column \"%s\" violates not-null constraint"
 msgstr "ÔÚ×ֶΠ\"%s\" ÖпÕֵΥ·´ÁË·Ç¿ÕÔ¼Êø"
 
-#: executor/execMain.c:1758
+#: executor/execMain.c:1743
 #, c-format
 msgid "new row for relation \"%s\" violates check constraint \"%s\""
 msgstr "¹Øϵ \"%s\" µÄÐÂÁÐÎ¥·´Á˼ì²éÔ¼Êø \"%s\""
@@ -8941,7 +9155,7 @@ msgstr "
 
 #: catalog/pg_operator.c:420
 msgid "only binary operators can have commutators"
-msgstr ""
+msgstr "Ö»Óжþ½øÖƲÙ×÷·ûÄÜÓн»»» (commutators)"
 
 #: catalog/pg_operator.c:424
 msgid "only binary operators can have join selectivity"
@@ -8962,7 +9176,7 @@ msgstr "
 
 #: catalog/pg_operator.c:726
 msgid "operator cannot be its own negator or sort operator"
-msgstr ""
+msgstr "²Ù×÷·û²»ÄÜ·ñ¶¨×Ô¼º»òÕßÅÅÐò·ÖÀà²Ù×÷·û"
 
 #: catalog/dependency.c:152
 #, c-format
@@ -8996,7 +9210,7 @@ msgstr "
 #: catalog/dependency.c:521 catalog/dependency.c:674 catalog/dependency.c:702
 #, c-format
 msgid "drop auto-cascades to %s"
-msgstr ""
+msgstr "×Ô¶¯µÝ¹éɾ³ý %s"
 
 #: catalog/dependency.c:526 catalog/dependency.c:679
 #, c-format
@@ -9060,8 +9274,8 @@ msgstr "
 
 #: catalog/dependency.c:1626
 #, c-format
-msgid "operator class %s for %s"
-msgstr "%2$s µÄ²Ù×÷·ûÀà %1$s"
+msgid "operator class %s for access method %s"
+msgstr "´¦Àí·½·¨ %s µÄ²Ù×÷·ûÀà %s"
 
 #: catalog/dependency.c:1662
 #, c-format
@@ -9106,7 +9320,7 @@ msgstr "δ
 #: catalog/dependency.c:1778
 #, c-format
 msgid "toast table %s"
-msgstr ""
+msgstr "toast ±í %s"
 
 #: catalog/dependency.c:1782
 #, c-format
@@ -9174,7 +9388,7 @@ msgstr "
 
 #: catalog/aclchk.c:765
 msgid "Only superusers may use untrusted languages."
-msgstr ""
+msgstr "Ö»Óг¬¼¶Óû§¿ÉÒÔʹÓ÷ÇÐÅÈÎÓïÑÔ."
 
 #: catalog/aclchk.c:889
 #, c-format
@@ -9369,41 +9583,41 @@ msgstr "
 msgid "column \"%s\" has pseudo-type %s"
 msgstr "×ֶΠ\"%s\" ÓÐαÀàÐÍ %s"
 
-#: catalog/heap.c:1601
+#: catalog/heap.c:1586
 #, c-format
 msgid "only table \"%s\" can be referenced in check constraint"
 msgstr "ÔÚ¼ì²éÔ¼ÊøÖÐÖ»Óбí \"%s\" Äܱ»¹ØÁªµÄ"
 
-#: catalog/heap.c:1614
+#: catalog/heap.c:1599
 msgid "cannot use aggregate function in check constraint"
 msgstr "ÔÚ¼ì²éÔ¼ÊøÖв»ÄÜʹÓþۼ¯º¯Êý"
 
-#: catalog/heap.c:1640
+#: catalog/heap.c:1625
 #, c-format
 msgid "check constraint \"%s\" already exists"
 msgstr "¼ì²éÔ¼Êø \"%s\" ÒѾ­´æÔÚ"
 
-#: catalog/heap.c:1789
+#: catalog/heap.c:1774
 msgid "cannot use column references in default expression"
 msgstr "ÔÚĬÈϵıí´ïʽÖв»ÄÜʹÓÃ×ֶιØÁª"
 
-#: catalog/heap.c:1797
+#: catalog/heap.c:1782
 msgid "default expression must not return a set"
 msgstr "ĬÈϱí´ïʽ²»ÄÜ·µ»ØÒ»¸ö×éºÏ"
 
-#: catalog/heap.c:1805
+#: catalog/heap.c:1790
 msgid "cannot use subquery in default expression"
 msgstr "ÔÚĬÈϵıí´ïʽÖв»ÄÜʹÓÃ×Ó²éѯ"
 
-#: catalog/heap.c:1809
+#: catalog/heap.c:1794
 msgid "cannot use aggregate function in default expression"
 msgstr "ÔÚĬÈϵıí´ïʽÖв»ÄÜʹÓþۼ¯º¯Êý"
 
-#: catalog/heap.c:2093
+#: catalog/heap.c:2078
 msgid "cannot truncate a table referenced in a foreign key constraint"
 msgstr "ÔÚÒ»¸öÍâ¼üÔ¼ÊøÖÐÎÞ·¨É¾³ý (truncate) Ò»¸ö±íµÄ¹ØÁª"
 
-#: catalog/heap.c:2094
+#: catalog/heap.c:2079
 #, c-format
 msgid "Table \"%s\" references \"%s\" via foreign key constraint \"%s\"."
 msgstr "ͨ¹ýÍâ¼üÔ¼Êø \"%3$s\", ±í \"%1$s\" ¹ØÁª \"%2$s\"."
@@ -9431,10 +9645,6 @@ msgid ""
 "transition type is not compatible with input type"
 msgstr ""
 
-#: catalog/pg_aggregate.c:165 catalog/pg_proc.c:127 catalog/pg_proc.c:576
-msgid "cannot determine result data type"
-msgstr "ÎÞ·¨È·¶¨½á¹¹Êý¾ÝÀàÐÍ"
-
 #: catalog/pg_aggregate.c:166
 msgid ""
 "An aggregate returning \"anyarray\" or \"anyelement\" must have one of them "
@@ -9480,108 +9690,58 @@ msgstr "
 msgid "permission denied to create temporary tables in database \"%s\""
 msgstr "²»ÔÊÐíÔÚÊý¾Ý¿â \"%s\" Öд´½¨ÁÙʱ±í"
 
-#: catalog/pg_proc.c:128 catalog/pg_proc.c:577
-msgid ""
-"A function returning \"anyarray\" or \"anyelement\" must have at least one "
-"argument of either type."
-msgstr ""
-"·µ»Ø \"anyarray\" »òÕß \"anyelement\" µÄº¯Êý±ØÐëÖÁÉÙÓÐÒ»¸ö²ÎÊýµÄÀàÐÍÊÇÒÔÉÏÁ½"
-"ÖÖ"
-
-#: catalog/pg_proc.c:148
+#: catalog/pg_proc.c:145
 #, c-format
 msgid "\"%s\" is already an attribute of type %s"
 msgstr "\"%s\" ÒѾ­ÊÇÀàÐÍ %s µÄÒ»¸öÊôÐÔ"
 
-#: catalog/pg_proc.c:203
+#: catalog/pg_proc.c:200
 #, c-format
 msgid "function \"%s\" already exists with same argument types"
 msgstr "´øÏàͬ²ÎÊýÀàÐ͵ĺ¯Êý \"%s\" ÒѾ­´æÔÚ"
 
-#: catalog/pg_proc.c:217
+#: catalog/pg_proc.c:214
 msgid "cannot change return type of existing function"
 msgstr "²»ÄܸıäÒѾ­´æÔڵĺ¯ÊýµÄ·µ»ØÖµÀàÐÍ"
 
-#: catalog/pg_proc.c:218
+#: catalog/pg_proc.c:215
 msgid "Use DROP FUNCTION first."
 msgstr "ÇëÏÈʹÓàDROP FUNCTION."
 
-#: catalog/pg_proc.c:226
+#: catalog/pg_proc.c:223
 #, c-format
 msgid "function \"%s\" is an aggregate"
 msgstr "º¯Êý \"%s\" ÊÇÒ»¸ö¾Û¼¯º¯Êý"
 
-#: catalog/pg_proc.c:231
+#: catalog/pg_proc.c:228
 #, c-format
 msgid "function \"%s\" is not an aggregate"
 msgstr "º¯Êý \"%s\" ²»ÊÇÒ»¸ö¾Û¼¯º¯Êý"
 
-#: catalog/pg_proc.c:392 catalog/pg_proc.c:413 catalog/pg_proc.c:423
-#: catalog/pg_proc.c:447 catalog/pg_proc.c:455 catalog/pg_proc.c:507
-#: catalog/pg_proc.c:519 catalog/pg_proc.c:539
-#, c-format
-msgid "return type mismatch in function declared to return %s"
-msgstr "º¯Êý·µ»ØÀàÐͺÍÉùÃ÷ÀàÐÍ %s ²»Æ¥Åä"
-
-#: catalog/pg_proc.c:394 catalog/pg_proc.c:425
-msgid "Function's final statement must be a SELECT."
-msgstr "º¯ÊýµÄ×îºóÓï¾ä±ØÐëÊÇÒ»¸ö SELECT"
-
-#: catalog/pg_proc.c:415
-msgid "Function's final statement must not be a SELECT."
-msgstr "º¯ÊýµÄ×îºóÓï¾ä±ØÐë²»ÊÇÒ»¸ö SELECT"
-
-#: catalog/pg_proc.c:449
-msgid "Final SELECT must return exactly one column."
-msgstr "×îºó SELECT ±ØÐë·µ»ØÒ»ÁÐ."
-
-#: catalog/pg_proc.c:457
-#, c-format
-msgid "Actual return type is %s."
-msgstr "ʵ¼Ê·µ»ØÀàÐÍÊÇ %s."
-
-#: catalog/pg_proc.c:509
-msgid "Final SELECT returns too many columns."
-msgstr "×îºó SELECT ·µ»ØÁËÌ«¶àÁÐ."
-
-#: catalog/pg_proc.c:521
-#, c-format
-msgid "Final SELECT returns %s instead of %s at column %d."
-msgstr "×îºó SELECT ÔÚ×ֶΠ%3$d ·µ»Ø %1$s Ìæ´ú %2$s"
-
-#: catalog/pg_proc.c:541
-msgid "Final SELECT returns too few columns."
-msgstr "×îºó SELECT ·µ»ØÁËÌ«ÉÙÁÐ."
-
-#: catalog/pg_proc.c:582
-#, c-format
-msgid "return type %s is not supported for SQL functions"
-msgstr "SQL º¯Êý²»Ö§³Ö·µ»ØÀàÐÍ %s"
-
-#: catalog/pg_proc.c:626
+#: catalog/pg_proc.c:387
 #, c-format
 msgid "there is no built-in function named \"%s\""
 msgstr "ûÓÐÃûΪ \"%s\" µÄÄÚ½¨º¯Êý"
 
-#: catalog/pg_proc.c:726
+#: catalog/pg_proc.c:487
 #, c-format
 msgid "SQL functions cannot return type %s"
 msgstr "SQL º¯ÊýÎÞ·¨·µ»Ø %s ÀàÐÍ"
 
-#: catalog/pg_proc.c:742
+#: catalog/pg_proc.c:503
 #, c-format
 msgid "SQL functions cannot have arguments of type %s"
 msgstr "SQL º¯Êý²»ÄÜÓР%s ÀàÐ͵IJÎÊý"
 
-#: catalog/index.c:508
+#: catalog/index.c:495
 msgid "user-defined indexes on system catalog tables are not supported"
 msgstr "ÔÚϵͳ±íÉÏÓû§¶¨ÒåµÄË÷ÒýÊDz»±»Ö§³ÖµÄ"
 
-#: catalog/index.c:522
+#: catalog/index.c:509
 msgid "shared indexes cannot be created after initdb"
 msgstr "ÔÚ initdb Ö®ºó, ²»ÄÜ´´½¨¹²ÏíË÷Òý"
 
-#: catalog/index.c:1692
+#: catalog/index.c:1638
 #, c-format
 msgid "shared index \"%s\" can only be reindexed in stand-alone mode"
 msgstr "¹²ÏíË÷Òý \"%s\" Ö»ÄÜÔÚ¶ÀÁ¢ÔËÐÐģʽÖÐÖؽ¨Ë÷Òý"
@@ -9594,7 +9754,7 @@ msgstr "
 #: catalog/pg_type.c:204
 #, c-format
 msgid "internal size %d is invalid for passed-by-value type"
-msgstr ""
+msgstr "internal ´óС %d ¶ÔÓÚ passed-by-value ÀàÐÍÊÇÎÞЧµÄ"
 
 #: catalog/pg_type.c:211
 msgid "fixed-size types must have storage PLAIN"
@@ -9608,119 +9768,112 @@ msgstr "
 #: postmaster/pgarch.c:164
 #, c-format
 msgid "could not fork archiver: %m"
-msgstr ""
+msgstr "ÎÞ·¨ fork archiver: %m"
 
-#: postmaster/pgarch.c:392
+#: postmaster/pgarch.c:391
 #, c-format
-msgid "transaction log file \"%s\" could not be archived"
-msgstr "ÊÂÎñÈÕÖ¾Îļþ \"%s\" ²»Äܱ»¹éµµ"
+msgid "transaction log file \"%s\" could not be archived: too many failures"
+msgstr "ÊÂÎñÈÕÖ¾Îļþ \"%s\" ²»Äܱ»¹éµµ: Ì«¶àµÄʧ°Ü"
 
-#: postmaster/pgarch.c:475
+#: postmaster/pgarch.c:474
 #, c-format
 msgid "archive command \"%s\" failed: return code %d"
 msgstr "¹éµµÃüÁî \"%s\" Ê§°Ü: ·µ»ØÂëΪ %d"
 
-#: postmaster/pgarch.c:480
+#: postmaster/pgarch.c:479
 #, c-format
 msgid "archived transaction log file \"%s\""
 msgstr "¹éµµÊÂÎñÈÕÖ¾Îļþ \"%s\""
 
-#: postmaster/pgarch.c:526
+#: postmaster/pgarch.c:525
 #, c-format
 msgid "could not open archive status directory \"%s\": %m"
 msgstr "ÎÞ·¨´ò¿ª¹éµµ×´Ì¬Ä¿Â¼ \"%s\": %m"
 
-#: postmaster/pgarch.c:565
+#: postmaster/pgarch.c:564
 #, c-format
 msgid "could not read archive status directory \"%s\": %m"
 msgstr "ÎÞ·¨¶ÁÈ¡¹éµµ×´Ì¬Ä¿Â¼ \"%s\": %m"
 
-#: postmaster/postmaster.c:390
+#: postmaster/postmaster.c:450
 #, c-format
 msgid "%s: assert checking is not compiled in\n"
 msgstr "%s: Ã»ÓаѶÏÑÔ (assert) ¼ì²é±àÒë½øÀ´\n"
 
-#: postmaster/postmaster.c:515 postmaster/postmaster.c:528
+#: postmaster/postmaster.c:566 postmaster/postmaster.c:579
 #, c-format
 msgid "Try \"%s --help\" for more information.\n"
 msgstr "ÇëÓà\"%s --help\" »ñÈ¡¸ü¶àµÄÐÅÏ¢.\n"
 
-#: postmaster/postmaster.c:526
+#: postmaster/postmaster.c:577
 #, c-format
 msgid "%s: invalid argument: \"%s\"\n"
 msgstr "%s: ÎÞЧ²ÎÊý: \"%s\"\n"
 
-#: postmaster/postmaster.c:550
-#, c-format
-msgid ""
-"%s does not know where to find the database system data.\n"
-"This should be specified as \"pgdata\" in %s%s.\n"
-msgstr ""
-
-#: postmaster/postmaster.c:582
-#, c-format
-msgid "%s could not write to external pid file %s\n"
-msgstr ""
-
-#: postmaster/postmaster.c:603
+#: postmaster/postmaster.c:604
 #, c-format
 msgid ""
 "%s: the number of buffers (-B) must be at least twice the number of allowed "
 "connections (-N) and at least 16\n"
 msgstr "%s: »º³åÇøµÄÊýÁ¿ (-B) ±ØÐëÖÁÉÙÊÇÔÊÐíÁª½ÓÊýµÄÁ½±¶ (-N)²¢ÇÒÖÁÉÙΪ 16\n"
 
-#: postmaster/postmaster.c:609
+#: postmaster/postmaster.c:610
 #, c-format
 msgid "%s: superuser_reserved_connections must be less than max_connections\n"
 msgstr "%s: ³¬¼¶Óû§±£ÁôÁª½ÓÊý±ØÐëСÓÚ×î´óÁª½ÓÊý\n"
 
-#: postmaster/postmaster.c:618
+#: postmaster/postmaster.c:619
 #, c-format
 msgid "%s: invalid datetoken tables, please fix\n"
 msgstr "%s: ÎÞЧµÄ datetoken ±í, ÇëÐÞ¸´\n"
 
-#: postmaster/postmaster.c:652
+#: postmaster/postmaster.c:653
 #, c-format
 msgid "%s: could not locate matching postgres executable"
-msgstr ""
+msgstr "%s: ÎÞ·¨ÕÒµ½Æ¥ÅäµÄ postgres Ö´ÐÐÎļþ"
 
-#: postmaster/postmaster.c:719
+#: postmaster/postmaster.c:720
 msgid "invalid list syntax for \"listen_addresses\""
-msgstr ""
+msgstr "ÎÞЧµÄ \"listen_addresses\" Óï·¨"
 
-#: postmaster/postmaster.c:738
+#: postmaster/postmaster.c:739
 #, c-format
 msgid "could not create listen socket for \"%s\""
 msgstr "ÎÞ·¨Îª \"%s\" ´´½¨¼àÌýÌ×½Ó×Ö"
 
-#: postmaster/postmaster.c:767
+#: postmaster/postmaster.c:768
 msgid "could not create Unix-domain socket"
 msgstr "ÎÞ·¨´´½¨ Unix-domain Ì×½Ó×Ö"
 
-#: postmaster/postmaster.c:775
+#: postmaster/postmaster.c:776
 msgid "no socket created for listening"
 msgstr "ûÓÐΪ¼àÌý´´½¨Ì×½Ó×Ö"
 
-#: postmaster/postmaster.c:963
+#: postmaster/postmaster.c:853
+#, c-format
+msgid "%s: could not write external PID file \"%s\": %s\n"
+msgstr "%s: ÎÞ·¨Ð´ÈëÍⲿ PID Îļþ \"%s\": %s\n"
+
+#: postmaster/postmaster.c:946
 #, c-format
 msgid "data directory \"%s\" does not exist"
 msgstr "Êý¾ÝĿ¼ \"%s\" ²»´æÔÚ"
 
-#: postmaster/postmaster.c:968
+#: postmaster/postmaster.c:951
 #, c-format
 msgid "could not read permissions of directory \"%s\": %m"
 msgstr "ûÓжÁȡĿ¼ \"%s\" µÄȨÏÞ: %m"
 
-#: postmaster/postmaster.c:983
+#: postmaster/postmaster.c:966
 #, c-format
 msgid "data directory \"%s\" has group or world access"
 msgstr "×é»òÆäËûÓû§¶¼¿ÉÒÔ·ÃÎÊÊý¾ÝĿ¼ \"%s\""
 
-#: postmaster/postmaster.c:985
+#: postmaster/postmaster.c:968
 msgid "Permissions should be u=rwx (0700)."
 msgstr "ȨÏÞÓ¦¸ÃΪ u=rwx (0700)."
 
-#: postmaster/postmaster.c:996
+#: postmaster/postmaster.c:979
 #, c-format
 msgid ""
 "%s: could not find the database system\n"
@@ -9731,17 +9884,17 @@ msgstr ""
 "Ô¤ÆÚÔÚĿ¼ \"%s\" ÕÒµ½,\n"
 "µ«ÊÇÎÞ·¨´ò¿ªÎļþ \"%s\": %s\n"
 
-#: postmaster/postmaster.c:1041
+#: postmaster/postmaster.c:1024
 #, c-format
 msgid "%s: could not fork background process: %s\n"
 msgstr "%s: ÎÞ·¨ fork ºǫ́½ø³Ì: %s\n"
 
-#: postmaster/postmaster.c:1063
+#: postmaster/postmaster.c:1046
 #, c-format
 msgid "%s: could not dissociate from controlling TTY: %s\n"
 msgstr "%s: ÎÞ·¨Óë¿ØÖÆ TTY ¶Ï¿ªÁªÏµ: %s\n"
 
-#: postmaster/postmaster.c:1086
+#: postmaster/postmaster.c:1069
 #, c-format
 msgid ""
 "%s is the PostgreSQL server.\n"
@@ -9750,7 +9903,7 @@ msgstr ""
 "%s ÊÇ PostgreSQL ·þÎñÆ÷.\n"
 "\n"
 
-#: postmaster/postmaster.c:1087
+#: postmaster/postmaster.c:1070
 #, c-format
 msgid ""
 "Usage:\n"
@@ -9761,64 +9914,64 @@ msgstr ""
 "  %s [Ñ¡Ïî]...\n"
 "\n"
 
-#: postmaster/postmaster.c:1094
+#: postmaster/postmaster.c:1077
 #, c-format
 msgid "  -d 1-5          debugging level\n"
 msgstr "  -d 1-5          µ÷ÊÔ¼¶±ð\n"
 
-#: postmaster/postmaster.c:1097
+#: postmaster/postmaster.c:1080
 #, c-format
 msgid "  -h HOSTNAME     host name or IP address to listen on\n"
 msgstr "  -h Ö÷»úÃû       ÕìÌýµÄÖ÷»úÃû»òÕß IP µØÖ·\n"
 
-#: postmaster/postmaster.c:1098
+#: postmaster/postmaster.c:1081
 #, c-format
 msgid "  -i              enable TCP/IP connections\n"
 msgstr "  -i              ´ò¿ª TCP/IP Áª½Ó\n"
 
-#: postmaster/postmaster.c:1099
+#: postmaster/postmaster.c:1082
 #, c-format
 msgid "  -k DIRECTORY    Unix-domain socket location\n"
 msgstr "  -k Ä¿Â¼         Unix ÓòÌ×½Ó×ÖµÄλÖÃ\n"
 
-#: postmaster/postmaster.c:1101
+#: postmaster/postmaster.c:1084
 #, c-format
 msgid "  -l              enable SSL connections\n"
 msgstr "  -l              ´ò¿ª SSL Áª½Ó\n"
 
-#: postmaster/postmaster.c:1103
+#: postmaster/postmaster.c:1086
 #, c-format
 msgid "  -N MAX-CONNECT  maximum number of allowed connections\n"
 msgstr "  -N MAX-CONNECT  ÔÊÐí½¨Á¢µÄ×î´óÁª½ÓÊýÄ¿\n"
 
-#: postmaster/postmaster.c:1104
+#: postmaster/postmaster.c:1087
 #, c-format
 msgid "  -o OPTIONS      pass \"OPTIONS\" to each server process\n"
 msgstr "  -o OPTIONS      °Ñ \"OPTIONS\" ´«µÝ¸øÿһ¸öºó¶Ë·þÎñÆ÷½ø³Ì\n"
 
-#: postmaster/postmaster.c:1105
+#: postmaster/postmaster.c:1088
 #, c-format
 msgid "  -p PORT         port number to listen on\n"
 msgstr "  -p PORT         ¼àÌýµÄ¶Ë¿ÚºÅ\n"
 
-#: postmaster/postmaster.c:1106
+#: postmaster/postmaster.c:1089
 #, c-format
 msgid ""
 "  -S              silent mode (start in background without logging output)\n"
 msgstr "  -S              °²¾²Ä£Ê½(ºó¶ËÆô¶¯Ö®ºó²»ÔټǼÈÕÖ¾Êä³ö)\n"
 
-#: postmaster/postmaster.c:1111
+#: postmaster/postmaster.c:1094
 #, c-format
 msgid ""
 "  -n              do not reinitialize shared memory after abnormal exit\n"
 msgstr "  -n              ÔÚÒì³£Í˳öÖ®ºó²»ÔÙÖØгõʼ»¯¹²ÏíÄÚ´æ\n"
 
-#: postmaster/postmaster.c:1112
+#: postmaster/postmaster.c:1095
 #, c-format
 msgid "  -s              send SIGSTOP to all backend servers if one dies\n"
 msgstr "  -s              Èç¹ûÒ»¸öºó¶ËÍ˳ö, ÄÇôÏòËùÓкó¶Ë·¢ËÍ SIGSTOP\n"
 
-#: postmaster/postmaster.c:1114
+#: postmaster/postmaster.c:1097
 #, c-format
 msgid ""
 "\n"
@@ -9834,390 +9987,417 @@ msgstr ""
 "\n"
 "ÇëÏò <pgsql-bugs@postgresql.org> ±¨¸æ³ô³æ.\n"
 
-#: postmaster/postmaster.c:1176
+#: postmaster/postmaster.c:1159
 #, c-format
 msgid "select() failed in postmaster: %m"
 msgstr "postmaster select() Ê§°Ü: %m"
 
-#: postmaster/postmaster.c:1327 postmaster/postmaster.c:1358
+#: postmaster/postmaster.c:1310 postmaster/postmaster.c:1341
 msgid "incomplete startup packet"
 msgstr "²»ÍêÕûµÄÆô¶¯°ü"
 
-#: postmaster/postmaster.c:1339
+#: postmaster/postmaster.c:1322
 msgid "invalid length of startup packet"
 msgstr "ÎÞЧµÄÆô¶¯°ü³¤¶È"
 
-#: postmaster/postmaster.c:1391
+#: postmaster/postmaster.c:1374
 #, c-format
 msgid "failed to send SSL negotiation response: %m"
 msgstr "·¢ËÍ SSL Ð­ÉÌÏìӦʧ°Ü: %m"
 
-#: postmaster/postmaster.c:1420
+#: postmaster/postmaster.c:1403
 #, c-format
 msgid "unsupported frontend protocol %u.%u: server supports %u.0 to %u.%u"
 msgstr "²»Ö§³ÖµÄÇ°¶ËЭÒé %u.%u: ·þÎñ¶ËÖ§³Ö %u.0 µ½ %u.%u"
 
-#: postmaster/postmaster.c:1484
+#: postmaster/postmaster.c:1467
 msgid "invalid startup packet layout: expected terminator as last byte"
 msgstr "ÎÞЧµÄÆô¶¯°ü¸ñʽ: Ô¤¼Æ½áÊø·ûΪ×îºóÒ»¸ö×Ö½Ú"
 
-#: postmaster/postmaster.c:1513
+#: postmaster/postmaster.c:1496
 msgid "no PostgreSQL user name specified in startup packet"
 msgstr "ÔÚÆô¶¯°üÖÐûÓÐÖ¸¶¨ PostgreSQL Óû§Ãû"
 
-#: postmaster/postmaster.c:1566
+#: postmaster/postmaster.c:1549
 msgid "the database system is starting up"
 msgstr "Êý¾Ý¿âϵͳÆô¶¯ÖÐ"
 
-#: postmaster/postmaster.c:1571
+#: postmaster/postmaster.c:1554
 msgid "the database system is shutting down"
 msgstr "Êý¾Ý¿âϵͳֹͣÖÐ"
 
-#: postmaster/postmaster.c:1576
+#: postmaster/postmaster.c:1559
 msgid "the database system is in recovery mode"
 msgstr "Êý¾Ý¿âϵͳÔÚ»Ö¸´Ä£Ê½ÖÐ"
 
-#: postmaster/postmaster.c:1808
+#: postmaster/postmaster.c:1791
 msgid "received SIGHUP, reloading configuration files"
 msgstr "½ÓÊÕµ½ SIGHUP, ÖØÔØÅäÖÃÎļþ"
 
-#: postmaster/postmaster.c:1860
+#: postmaster/postmaster.c:1843
 msgid "received smart shutdown request"
 msgstr "½Óµ½µ½ÖÇÄÜ (smart) Í£Ö¹ÇëÇó"
 
-#: postmaster/postmaster.c:1896
+#: postmaster/postmaster.c:1879
 msgid "received fast shutdown request"
 msgstr "½ÓÊÕµ½¿ìËÙ (fast) Í£Ö¹ÇëÇó"
 
-#: postmaster/postmaster.c:1903
+#: postmaster/postmaster.c:1886
 msgid "aborting any active transactions"
 msgstr "ÖжÏÈκ줻îÊÂÎñ"
 
-#: postmaster/postmaster.c:1941
+#: postmaster/postmaster.c:1924
 msgid "received immediate shutdown request"
 msgstr "½ÓÊÕµ½Á¢¼´ (immediate) Í£Ö¹ÇëÇó"
 
-#: postmaster/postmaster.c:2014
+#: postmaster/postmaster.c:1997
 msgid "startup process"
 msgstr "Æô¶¯½ø³Ì"
 
-#: postmaster/postmaster.c:2017
+#: postmaster/postmaster.c:2000
 msgid "aborting startup due to startup process failure"
 msgstr "ÓÉÓÚÆô¶¯½ø³Ìʧ°Ü, ÖÕÖ¹Æô¶¯"
 
-#: postmaster/postmaster.c:2080
+#: postmaster/postmaster.c:2063
 msgid "background writer process"
 msgstr "ºǫ́дÈë½ø³Ì"
 
-#: postmaster/postmaster.c:2093
+#: postmaster/postmaster.c:2076
 msgid "archiver process"
 msgstr "¹éµµ½ø³Ì"
 
-#: postmaster/postmaster.c:2110
+#: postmaster/postmaster.c:2093
 msgid "statistics collector process"
 msgstr "ͳ¼ÆÊÕ¼¯Æ÷½ø³Ì"
 
-#: postmaster/postmaster.c:2124
+#: postmaster/postmaster.c:2107
 msgid "system logger process"
 msgstr "ϵͳÈÕÖ¾½ø³Ì"
 
-#: postmaster/postmaster.c:2145
+#: postmaster/postmaster.c:2128
 msgid "all server processes terminated; reinitializing"
 msgstr "ËùÓеķþÎñÆ÷½ø³Ì±»ÖÐÖ¹; ÖØгõʼ»¯"
 
-#: postmaster/postmaster.c:2191 postmaster/postmaster.c:2201
+#: postmaster/postmaster.c:2174 postmaster/postmaster.c:2184
 msgid "server process"
 msgstr "·þÎñÆ÷½ø³Ì"
 
-#: postmaster/postmaster.c:2246
+#: postmaster/postmaster.c:2229
 msgid "terminating any other active server processes"
 msgstr "ÖжÏÈκÎÆäËüÒѼ¤»îµÄ·þÎñÆ÷½ø³Ì"
 
-#: postmaster/postmaster.c:2343
+#: postmaster/postmaster.c:2326
 #, c-format
 msgid "%s (PID %d) exited with exit code %d"
 msgstr "%s (PID %d) ÒÑÍ˳ö, Í˳ö´úÂë %d"
 
-#: postmaster/postmaster.c:2352
+#: postmaster/postmaster.c:2335
 #, c-format
 msgid "%s (PID %d) was terminated by signal %d"
 msgstr "%s (PID %d) ±»ÐźŠ%d ÖжÏ"
 
-#: postmaster/postmaster.c:2361
+#: postmaster/postmaster.c:2344
 #, c-format
 msgid "%s (PID %d) exited with unexpected status %d"
 msgstr "%s (PID %d) ÒÑÍ˳ö, ÒâÍâ״̬ %d"
 
-#: postmaster/postmaster.c:2486
+#: postmaster/postmaster.c:2469
 #, c-format
 msgid "could not fork new process for connection: %m"
 msgstr "ÎÞ·¨ÎªÁª½ÓÅÉÉúнø³Ì: %m"
 
-#: postmaster/postmaster.c:2525
+#: postmaster/postmaster.c:2508
 msgid "could not fork new process for connection: "
 msgstr "ÎÞ·¨ÎªÁª½ÓÅÉÉúнø³Ì: "
 
-#: postmaster/postmaster.c:2667
+#: postmaster/postmaster.c:2647
 #, c-format
 msgid "getnameinfo_all() failed: %s"
 msgstr "getnameinfo_all() Ê§°Ü: %s"
 
-#: postmaster/postmaster.c:2676
+#: postmaster/postmaster.c:2656
 #, c-format
 msgid "connection received: host=%s port=%s"
 msgstr "Áª½Ó½ÓÊÕµ½: Ö÷»ú=%s ¶Ë¿Ú=%s"
 
-#: postmaster/postmaster.c:2748
+#: postmaster/postmaster.c:2728
 #, c-format
 msgid "connection authorized: user=%s database=%s"
 msgstr "Áª½ÓÈÏÖ¤: Ö÷»ú=%s Êý¾Ý¿â=%s"
 
-#: postmaster/postmaster.c:2924
+#: postmaster/postmaster.c:2946
 #, c-format
-msgid "could not exec backend process \"%s\": %m"
-msgstr "ÎÞ·¨Ö´Ðкǫ́½ø³Ì \"%s\": %m"
+msgid "could not execute server process \"%s\": %m"
+msgstr "ÎÞ·¨Ö´ÐзþÎñÆ÷½ø³Ì \"%s\": %m"
 
-#: postmaster/postmaster.c:3321
+#: postmaster/postmaster.c:3540
 #, c-format
 msgid "could not fork startup process: %m"
 msgstr "ÎÞ·¨ÅÉÉúÆô¶¯½ø³Ì: %m"
 
-#: postmaster/postmaster.c:3325
+#: postmaster/postmaster.c:3544
 #, c-format
 msgid "could not fork background writer process: %m"
 msgstr "ÎÞ·¨ fork ºǫ́дÈë½ø³Ì: %m"
 
-#: postmaster/postmaster.c:3329
+#: postmaster/postmaster.c:3548
 #, c-format
 msgid "could not fork process: %m"
 msgstr "ÎÞ·¨ÅÉÉú½ø³Ì: %m"
 
-#: postmaster/postmaster.c:3513
+#: postmaster/postmaster.c:3722
+#, c-format
+msgid "could not duplicate socket %d for use in backend: error code %d"
+msgstr "ÎÞ·¨Îªºó¶ËʹÓø´ÖÆÌ×½Ó×Ö %d: ´íÎóÂëΪ %d"
+
+#: postmaster/postmaster.c:3751
+#, c-format
+msgid "could not create inherited socket: error code %d\n"
+msgstr "ÎÞ·¨´´½¨¼Ì³ÐÌ×½Ó×Ö: ´íÎóÂëΪ %d\n"
+
+#: postmaster/postmaster.c:3779 postmaster/postmaster.c:3786
 #, c-format
-msgid "could not read from backend variables file \"%s\": %m"
-msgstr "ÎÞ·¨´Óºó¶Ë¿É±ä (variables) Îļþ \"%s\" ¶ÁÈ¡: %m"
+msgid "could not read from backend variables file \"%s\": %s\n"
+msgstr "ÎÞ·¨´Óºó¶Ë¿É±ä (variables) Îļþ \"%s\" ¶ÁÈ¡: %s\n"
 
-#: postmaster/postmaster.c:3827
+#: postmaster/postmaster.c:3795
 #, c-format
-msgid "ERROR: failed to wait on child process handle: %d\n"
-msgstr "´íÎó: µÈ´ý×Ó½ø³Ìʧ°Ü: %d\n"
+msgid "could not remove file \"%s\": %s\n"
+msgstr "ÎÞ·¨É¾³ýÎļþ \"%s\": %s\n"
 
-#: postmaster/pgstat.c:257
+#: postmaster/postmaster.c:3810
+#, c-format
+msgid "could not map view of backend variables: error code %d\n"
+msgstr "ÎÞ·¨ map ºó¶Ë±äÁ¿ÊÓͼ: ´íÎóÂëΪ %d\n"
+
+#: postmaster/postmaster.c:3819
+#, c-format
+msgid "could not unmap view of backend variables: error code %d\n"
+msgstr "ÎÞ·¨ unmap ºó¶Ë±äÁ¿ÊÓͼ: ´íÎóÂëΪ %d\n"
+
+#: postmaster/postmaster.c:3826
+#, c-format
+msgid "could not close handle to backend parameter variables: error code %d\n"
+msgstr "ÎÞ·¨¹Ø±Õºó¶Ë²ÎÊý±äÁ¿µÄ¾ä±ú: ´íÎóÂëΪ %d\n"
+
+#: postmaster/postmaster.c:4065
+#, c-format
+msgid "could not wait on child process handle: error code %d\n"
+msgstr "ÎÞ·¨µÈ´ý×Ó½ø³Ì: ´íÎóÂë %d\n"
+
+#: postmaster/pgstat.c:259
 #, c-format
 msgid "could not resolve \"localhost\": %s"
 msgstr "ÎÞ·¨½âÎö \"localhost\": %s"
 
-#: postmaster/pgstat.c:285
+#: postmaster/pgstat.c:287
 #, c-format
 msgid "could not create socket for statistics collector: %m"
 msgstr "ÎÞ·¨ÎªÍ³¼ÆÊÕ¼¯Æ÷´´½¨Ì×½Ó×Ö: %m"
 
-#: postmaster/pgstat.c:297
+#: postmaster/pgstat.c:299
 #, c-format
 msgid "could not bind socket for statistics collector: %m"
 msgstr "ÎÞ·¨°ó¶¨Í³¼ÆÊÕ¼¯Æ÷µÄÌ×½Ó×Ö: %m"
 
-#: postmaster/pgstat.c:308
+#: postmaster/pgstat.c:310
 #, c-format
 msgid "could not get address of socket for statistics collector: %m"
 msgstr "ÎÞ·¨»ñµÃͳ¼ÆÊÕ¼¯Æ÷µÄÌ×½Ó×ÖµØÖ·: %m"
 
-#: postmaster/pgstat.c:324
+#: postmaster/pgstat.c:326
 #, c-format
 msgid "could not connect socket for statistics collector: %m"
 msgstr "ÎÞ·¨Áª½Óͳ¼ÆÊÕ¼¯Æ÷µÄÌ×½Ó×Ö: %m"
 
-#: postmaster/pgstat.c:341
+#: postmaster/pgstat.c:343
 #, c-format
 msgid "could not send test message on socket for statistics collector: %m"
 msgstr "ÎÞ·¨ÎªÍ³¼ÆÊÕ¼¯Æ÷ÔÚÌ×½Ó×ÖÉÏ·¢ËͲâÊÔÐÅÏ¢: %m"
 
-#: postmaster/pgstat.c:366 postmaster/pgstat.c:1610
+#: postmaster/pgstat.c:368 postmaster/pgstat.c:1567
 #, c-format
 msgid "select() failed in statistics collector: %m"
 msgstr "ÔÚͳ¼ÆÊÕ¼¯Æ÷ÖРselect() Ê§°Ü: %m"
 
-#: postmaster/pgstat.c:381
+#: postmaster/pgstat.c:383
 msgid "test message did not get through on socket for statistics collector"
 msgstr "ͳ¼ÆÊÕ¼¯Æ÷µÄ²âÊÔÐÅϢûÓÐͨ¹ýÌ×½Ó×Ö: %m"
 
-#: postmaster/pgstat.c:393
+#: postmaster/pgstat.c:395
 #, c-format
 msgid "could not receive test message on socket for statistics collector: %m"
 msgstr "ÎÞ·¨ÎªÍ³¼ÆÊÕ¼¯Æ÷ÔÚÌ×½Ó×ÖÉϽÓÊÕ²âÊÔÐÅÏ¢: %m"
 
-#: postmaster/pgstat.c:403
+#: postmaster/pgstat.c:405
 msgid "incorrect test message transmission on socket for statistics collector"
 msgstr "ͳ¼ÆÊÕ¼¯Æ÷ÔÚÌ×½Ó×ÖÉϲ»ÕýÈ·µÄ²âÊÔÐÅÏ¢ transmission: %m"
 
-#: postmaster/pgstat.c:418
+#: postmaster/pgstat.c:420
 msgid "disabling statistics collector for lack of working socket"
 msgstr "µ±È±·¦¿ÉÓÃÌ×½Ó×ÖʱȡÏûͳ¼ÆÊÕ¼¯Æ÷"
 
-#: postmaster/pgstat.c:432
+#: postmaster/pgstat.c:434
 #, c-format
 msgid "could not set statistics collector socket to nonblocking mode: %m"
 msgstr "ÎÞ·¨°Ñͳ¼ÆÊÕ¼¯Æ÷µÄÌ×½Ó×ÖÉèÖÃΪ·Ç×èÈûģʽ: %m"
 
-#: postmaster/pgstat.c:571
+#: postmaster/pgstat.c:567
 msgid "statistics collector startup skipped"
 msgstr "ºöÂÔͳ¼ÆÊÕ¼¯Æ÷Æô¶¯"
 
-#: postmaster/pgstat.c:605
+#: postmaster/pgstat.c:601
 #, c-format
 msgid "could not fork statistics buffer: %m"
 msgstr "ÎÞ·¨ÅÉÉú (fork) Í³¼ÆÐÅÏ¢»º³åÇø: %m"
 
-#: postmaster/pgstat.c:963
+#: postmaster/pgstat.c:959
 msgid "must be superuser to reset statistics counters"
 msgstr "±ØÐëΪ³¬¼¶Óû§²Å¿ÉÒÔÖØÖÃͳ¼Æ¼ÆÊýÆ÷"
 
-#: postmaster/pgstat.c:1411
+#: postmaster/pgstat.c:1381
 #, c-format
 msgid "could not create pipe for statistics buffer: %m"
 msgstr "ÎÞ·¨ÎªÍ³¼Æ»º³åÇø´´½¨¹ÜµÀ: %m"
 
-#: postmaster/pgstat.c:1424
+#: postmaster/pgstat.c:1393
 #, c-format
 msgid "could not fork statistics collector: %m"
 msgstr "ÎÞ·¨ÅÉÉú (fork) Í³¼ÆÊÕ¼¯Æ÷: %m"
 
-#: postmaster/pgstat.c:1537 postmaster/pgstat.c:1550 postmaster/pgstat.c:1833
-#: postmaster/pgstat.c:2099 postmaster/pgstat.c:2131 postmaster/pgstat.c:2185
-#: postmaster/pgstat.c:2446 postmaster/pgstat.c:2519 postmaster/pgstat.c:2565
-#: postmaster/pgstat.c:2616 postmaster/pgstat.c:2866 postmaster/pgstat.c:3048
-msgid "out of memory in statistics collector --- abort"
-msgstr "ÔÚͳ¼ÆÊÕ¼¯Æ÷ÖÐÄÚ´æÒç³ö --- ÖÕÖ¹"
-
-#: postmaster/pgstat.c:1652
+#: postmaster/pgstat.c:1608
 #, c-format
 msgid "could not read from statistics collector pipe: %m"
 msgstr "ÎÞ·¨´Óͳ¼ÆÊÕ¼¯Æ÷¹ÜµÀ¶ÁÈ¡: %m"
 
-#: postmaster/pgstat.c:1674
+#: postmaster/pgstat.c:1629
 msgid "invalid statistics message length"
 msgstr "ÎÞЧµÄͳ¼ÆÐÅÏ¢³¤¶È"
 
-#: postmaster/pgstat.c:1821
+#: postmaster/pgstat.c:1774
 #, c-format
 msgid "could not set statistics collector pipe to nonblocking mode: %m"
 msgstr "ÎÞ·¨°Ñͳ¼ÆÊÕ¼¯Æ÷¹ÜµÀÉèÖÃΪ·Ç×èÈûģʽ: %m"
 
-#: postmaster/pgstat.c:1861
+#: postmaster/pgstat.c:1805
 msgid "statistics buffer is full"
 msgstr "ͳ¼ÆÐÅÏ¢»º³åÇøÒÑÂú"
 
-#: postmaster/pgstat.c:1892
+#: postmaster/pgstat.c:1836
 #, c-format
 msgid "select() failed in statistics buffer: %m"
 msgstr "ÔÚͳ¼Æ»º³åÇøÖРselect() Ê§°Ü: %m"
 
-#: postmaster/pgstat.c:1908
+#: postmaster/pgstat.c:1850
 #, c-format
 msgid "could not read statistics message: %m"
 msgstr "ÎÞ·¨¶Áȡͳ¼ÆÐÅÏ¢: %m"
 
-#: postmaster/pgstat.c:1973
+#: postmaster/pgstat.c:1913
 #, c-format
 msgid "could not write to statistics collector pipe: %m"
 msgstr "ÎÞ·¨Ð´Èëͳ¼ÆÊÕ¼¯Æ÷¹ÜµÀ: %m"
 
-#: postmaster/pgstat.c:2039
+#: postmaster/pgstat.c:1988
 #, c-format
 msgid "invalid server process ID %d"
 msgstr "ÎÞЧµÄ·þÎñÆ÷½ø³Ì ID %d"
 
-#: postmaster/pgstat.c:2234
+#: postmaster/pgstat.c:2047 postmaster/pgstat.c:2122 postmaster/pgstat.c:2720
+msgid "out of memory in statistics collector --- abort"
+msgstr "ÔÚͳ¼ÆÊÕ¼¯Æ÷ÖÐÄÚ´æÒç³ö --- ÖÕÖ¹"
+
+#: postmaster/pgstat.c:2170
 #, c-format
 msgid "could not open temporary statistics file \"%s\": %m"
 msgstr "ÎÞ·¨´ò¿ªÁÙʱͳ¼ÆÎļþ \"%s\": %m"
 
-#: postmaster/pgstat.c:2261
+#: postmaster/pgstat.c:2196
 msgid "database hash table corrupted during cleanup --- abort"
 msgstr "ÇåÀí¹ý³ÌÖÐÊý¾Ý¿âÉ¢Áбí»Ù»µ --- ÖÕÖ¹"
 
-#: postmaster/pgstat.c:2298
+#: postmaster/pgstat.c:2231
 #, c-format
 msgid "tables hash table for database %u corrupted during cleanup --- abort"
 msgstr "ÇåÀí¹ý³ÌÖÐÊý¾Ý¿â %u µÄ±íÉ¢Áбí»Ù»µ --- ÖÕÖ¹"
 
-#: postmaster/pgstat.c:2347
+#: postmaster/pgstat.c:2279
 #, c-format
 msgid "could not close temporary statistics file \"%s\": %m"
 msgstr "ÎÞ·¨¹Ø±ÕÁÙʱͳ¼ÆÎļþ \"%s\": %m"
 
-#: postmaster/pgstat.c:2356
+#: postmaster/pgstat.c:2288
 #, c-format
 msgid "could not rename temporary statistics file \"%s\" to \"%s\": %m"
 msgstr "ÎÞ·¨°ÑÁÙʱͳ¼ÆÎļþ \"%s\" ÖØÃüÃûΪ \"%s\": %m"
 
-#: postmaster/pgstat.c:2378
+#: postmaster/pgstat.c:2310
 msgid "dead-server-process hash table corrupted during cleanup --- abort"
 msgstr "ÇåÀí¹ý³ÌÖÐËÀ·þÎñÆ÷½ø³Ì (dead-server-process) É¢Áбí»Ù»µ --- ÖÕÖ¹"
 
-#: postmaster/pgstat.c:2501 postmaster/pgstat.c:2533 postmaster/pgstat.c:2596
-#: postmaster/pgstat.c:2629 postmaster/pgstat.c:2650 postmaster/pgstat.c:2696
-#: postmaster/pgstat.c:2729
+#: postmaster/pgstat.c:2417 postmaster/pgstat.c:2437 postmaster/pgstat.c:2483
+#: postmaster/pgstat.c:2504 postmaster/pgstat.c:2521 postmaster/pgstat.c:2555
+#: postmaster/pgstat.c:2584
 msgid "corrupted pgstat.stat file"
 msgstr "Ë𻵵Ġpgstat.stat Îļþ"
 
-#: postmaster/syslogger.c:315
+#: postmaster/syslogger.c:317
 #, c-format
 msgid "select() failed in logger process: %m"
 msgstr "ÈÕÖ¾½ø³ÌÖеĠselect() Ê§°Ü: %m"
 
-#: postmaster/syslogger.c:327 postmaster/syslogger.c:732
+#: postmaster/syslogger.c:329 postmaster/syslogger.c:734
 #, c-format
 msgid "could not read from logger pipe: %m"
 msgstr "ÎÞ·¨´ÓÈÕÖ¾¹ÜµÀ¶ÁÈ¡: %m"
 
-#: postmaster/syslogger.c:359
+#: postmaster/syslogger.c:361
 msgid "logger shutting down"
 msgstr "ÈÕÖ¾ÕýÔڹرÕ"
 
-#: postmaster/syslogger.c:403 postmaster/syslogger.c:417
+#: postmaster/syslogger.c:405 postmaster/syslogger.c:419
 #, c-format
-msgid "could not create pipe for syslogging: %m"
-msgstr "ÎÞ·¨ÎªÍ³¼ÆÈÕÖ¾ (syslogging) ´´½¨¹ÜµÀ: %m"
+msgid "could not create pipe for syslog: %m"
+msgstr "ÎÞ·¨ÎªÍ³¼ÆÈÕÖ¾ (syslog) ´´½¨¹ÜµÀ: %m"
 
-#: postmaster/syslogger.c:445
+#: postmaster/syslogger.c:447
 #, c-format
-msgid "could not create logfile \"%s\": %m"
+msgid "could not create log file \"%s\": %m"
 msgstr "ÎÞ·¨´´½¨ÈÕÖ¾Îļþ \"%s\": %m"
 
-#: postmaster/syslogger.c:475
+#: postmaster/syslogger.c:477
 #, c-format
 msgid "could not fork system logger: %m"
 msgstr "ÎÞ·¨ÅÉÉú (fork) ÏµÍ³ÈÕÖ¾: %m"
 
-#: postmaster/syslogger.c:507
+#: postmaster/syslogger.c:509
 #, c-format
 msgid "could not redirect stdout: %m"
 msgstr "ÎÞ·¨Öض¨Ïòµ½±ê×¼Êä³ö (stdout) : %m"
 
-#: postmaster/syslogger.c:512 postmaster/syslogger.c:525
+#: postmaster/syslogger.c:514 postmaster/syslogger.c:527
 #, c-format
 msgid "could not redirect stderr: %m"
 msgstr "ÎÞ·¨Öض¨Ïòµ½±ê×¼´íÎó (stderr) : %m"
 
-#: postmaster/syslogger.c:701
+#: postmaster/syslogger.c:703
 #, c-format
-msgid "could not write to logfile: %m"
+msgid "could not write to log file: %m"
 msgstr "ÎÞ·¨Ð´ÈëÈÕÖ¾Îļþ: %m"
 
-#: postmaster/syslogger.c:775
+#: postmaster/syslogger.c:790
 #, c-format
-msgid "could not open new logfile \"%s\": %m"
+msgid "could not open new log file \"%s\": %m"
 msgstr "ÎÞ·¨´ò¿ªÐµÄÈÕÖ¾Îļþ \"%s\": %m"
 
-#: postmaster/syslogger.c:787
-msgid "disabling auto rotation (use SIGHUP to reenable)"
-msgstr ""
+#: postmaster/syslogger.c:802
+msgid "disabling automatic rotation (use SIGHUP to reenable)"
+msgstr "È¡Ïû×Ô¶¯ÂÖÑ° (ʹÓàSIGHUP reenable)"
 
 #: postmaster/bgwriter.c:336
 #, c-format
 msgid "checkpoints are occurring too frequently (%d seconds apart)"
-msgstr ""
+msgstr "¼ì²éµã·¢Éú̫Ƶ·± (%d Ãë¼ä¸ô)"
 
 #: postmaster/bgwriter.c:338
 msgid ""
@@ -10225,18 +10405,18 @@ msgid ""
 msgstr "ÈÏΪÔö¼ÓÅäÖòÎÊý \"checkpoint_segments\"."
 
 #: postmaster/bgwriter.c:490
-msgid "insufficient shared memory for bgwriter"
+msgid "not enough shared memory for background writer"
 msgstr "ûÓÐ×ã¹»µÄ¹²ÏíÄÚ´æ¸øºǫ́дÈë½ø³Ì"
 
 #: postmaster/bgwriter.c:555
 msgid "checkpoint request failed"
-msgstr ""
+msgstr "¼ì²éµãÇëÇóʧ°Ü"
 
 #: postmaster/bgwriter.c:556
-msgid "Consult the postmaster log for details."
+msgid "Consult the server log for details."
 msgstr "ÏêϸÐÅÏ¢Çë²Î¿¼·þÎñÆ÷ÈÕÖ¾."
 
-#: bootstrap/bootstrap.c:500
+#: bootstrap/bootstrap.c:481
 msgid ""
 "Usage:\n"
 "  postgres -boot [OPTION]... DBNAME\n"
@@ -10256,8 +10436,47 @@ msgstr ""
 "  -o file          °Ñµ÷ÊÔÐÅÏ¢Êä³öµ½Îļþ file\n"
 "  -x num           ÄÚ²¿Ê¹ÓÃ\n"
 
-#~ msgid "could not remove junction dir \"%s\": %m"
-#~ msgstr "ÎÞ·¨É¾³ýÁ¬½Ó (junction) Ä¿Â¼ \"%s\": %m"
+#: ../port/dirmod.c:75 ../port/dirmod.c:88 ../port/dirmod.c:101
+#, c-format
+msgid "out of memory\n"
+msgstr "ÄÚ´æÒç³ö\n"
+
+#: ../port/dirmod.c:283
+#, c-format
+msgid "Error setting junction for %s: %s"
+msgstr "Ϊ %s ÉèÖýӺϵã´íÎó: %s"
+
+#: ../port/exec.c:193 ../port/exec.c:307 ../port/exec.c:350
+#, c-format
+msgid "could not identify current directory: %s"
+msgstr "ÎÞ·¨È·Èϵ±Ç°Ä¿Â¼: %s"
+
+#: ../port/exec.c:323 ../port/exec.c:359
+#, c-format
+msgid "could not change directory to \"%s\""
+msgstr "ÎÞ·¨½øÈëĿ¼ \"%s\""
+
+#: ../port/exec.c:338
+#, c-format
+msgid "could not read symbolic link \"%s\""
+msgstr "ÎÞ·¨¶ÁÈ¡·ûºÅÁ´½Ó \"%s\""
+
+#: ../port/exec.c:569
+#, c-format
+msgid "child process exited with exit code %d"
+msgstr "×Ó½ø³ÌÒÑÍ˳ö, Í˳öÂëΪ %d"
 
-#~ msgid "Input has wrong number of columns."
-#~ msgstr "´íÎóµÄÊäÈë×ֶθöÊý"
+#: ../port/exec.c:572
+#, c-format
+msgid "child process was terminated by signal %d"
+msgstr "×Ó½ø³Ì±»ÐźŠ%d ÖÕÖ¹"
+
+#: ../port/exec.c:575
+#, c-format
+msgid "child process exited with unrecognized status %d"
+msgstr "×Ó½ø³ÌÒÑÍ˳ö, Î´Öª×´Ì¬ %d"
+
+#: ../port/copydir.c:67
+#, c-format
+msgid "could not copy file \"%s\": %m"
+msgstr "ÎÞ·¨¿½±´Îļþ \"%s\": %m"
index 700ad52fa91f746ce23d4d3e15df0189ac58e6cd..f6eb0cf39ca481a5fbf024de683db30460c5f326 100644 (file)
@@ -4,9 +4,9 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: PostgreSQL 7.4\n"
+"Project-Id-Version: PostgreSQL 8.0\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2004-08-31 08:59+0000\n"
+"POT-Creation-Date: 2004-12-02 09:43+0000\n"
 "PO-Revision-Date: 2003-09-15 13:48:19+0800\n"
 "Last-Translator: Bao Wei <weibao@qmail.zhengmai.net.cn>\n"
 "Language-Team: Weiping He <laser@zhengmai.com.cn>\n"
@@ -14,42 +14,57 @@ msgstr ""
 "Content-Type: text/plain; charset=GB2312\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: initdb.c:233 initdb.c:247
+#: initdb.c:250 initdb.c:264
 #, c-format
 msgid "%s: out of memory\n"
 msgstr "%s: ÄÚ´æÒç³ö\n"
 
-#: initdb.c:329 initdb.c:1298
+#: initdb.c:374 initdb.c:1403
 #, c-format
 msgid "%s: could not open file \"%s\" for reading: %s\n"
 msgstr "%s: ÎªÁ˶ÁÈ¡, ÎÞ·¨´ò¿ªÎļþ \"%s\": %s\n"
 
-#: initdb.c:387
+#: initdb.c:435 initdb.c:1035 initdb.c:1062
 #, c-format
 msgid "%s: could not open file \"%s\" for writing: %s\n"
 msgstr "%s: ÎªÁËд, ÎÞ·¨´ò¿ªÎļþ \"%s\": %s\n"
 
-#: initdb.c:515 initdb.c:524 initdb.c:532
+#: initdb.c:443 initdb.c:451 initdb.c:1042 initdb.c:1068
 #, c-format
-msgid "%s: failed\n"
-msgstr "%s: Ê§°Ü\n"
+msgid "%s: could not write file \"%s\": %s\n"
+msgstr "%s: ÎÞ·¨Ð´Îļþ \"%s\": %s\n"
 
-#: initdb.c:521
+#: initdb.c:470
+#, c-format
+msgid "%s: could not execute command \"%s\": %s\n"
+msgstr "%s: ÎÞ·¨Ö´ÐÐÃüÁî \"%s\": %s\n"
+
+#: initdb.c:593
 #, c-format
 msgid "%s: removing data directory \"%s\"\n"
 msgstr "%s: É¾³ýÊý¾ÝĿ¼ \"%s\"\n"
 
-#: initdb.c:529
+#: initdb.c:596
+#, c-format
+msgid "%s: failed to remove data directory\n"
+msgstr "%s: É¾³ýÊý¾ÝĿ¼ʧ°Ü\n"
+
+#: initdb.c:602
 #, c-format
 msgid "%s: removing contents of data directory \"%s\"\n"
 msgstr "%s: É¾³ýÊý¾ÝĿ¼ \"%s\" µÄÄÚÈÝ\n"
 
-#: initdb.c:540
+#: initdb.c:605
+#, c-format
+msgid "%s: failed to remove contents of data directory\n"
+msgstr "%s: É¾³ýÊý¾ÝĿ¼ÄÚÈÝʧ°Ü\n"
+
+#: initdb.c:614
 #, c-format
 msgid "%s: data directory \"%s\" not removed at user's request\n"
 msgstr "%s: ÔÚÓû§µÄÒªÇóÏÂÊý¾Ý¿âĿ¼ \"%s\" ²»±»É¾³ý\n"
 
-#: initdb.c:566
+#: initdb.c:640
 #, c-format
 msgid ""
 "%s: cannot be run as root\n"
@@ -60,17 +75,17 @@ msgstr ""
 "ÇëÒÔ·þÎñÆ÷½ø³ÌËùÓÐÕßµÄÓû§ (ÎÞÌØȨ) Éí·Ý\n"
 "µÇ½ (ʹÓÃ, e.g., \"su\").\n"
 
-#: initdb.c:615
+#: initdb.c:689
 #, c-format
 msgid "%s: \"%s\" is not a valid server encoding name\n"
 msgstr "%s: \"%s\" ²»ÊÇÒ»¸öÓÐЧµÄ·þÎñÆ÷±àÂëÃû×Ö\n"
 
-#: initdb.c:770
+#: initdb.c:844
 #, c-format
 msgid "%s: warning: encoding mismatch\n"
 msgstr "%s: ¾¯¸æ: ±àÂ벻ƥÅä\n"
 
-#: initdb.c:772
+#: initdb.c:846
 #, c-format
 msgid ""
 "The encoding you selected (%s) and the encoding that the selected\n"
@@ -85,7 +100,12 @@ msgstr ""
 "ÀàÐÍ.\n"
 "\n"
 
-#: initdb.c:924
+#: initdb.c:976
+#, c-format
+msgid "%s: could not create directory \"%s\": %s\n"
+msgstr "%s: ÎÞ·¨´´½¨Ä¿Â¼ \"%s\": %s\n"
+
+#: initdb.c:1004
 #, c-format
 msgid ""
 "%s: file \"%s\" does not exist\n"
@@ -96,26 +116,26 @@ msgstr ""
 "ÕâÒâζ×ÅÄúµÄ°²×°·¢ÉúÁË´íÎó»ò\n"
 "ʹÓà-L Ñ¡ÏîÖ¸¶¨ÁË´íÎóµÄ·¾¶.\n"
 
-#: initdb.c:989
+#: initdb.c:1086
 #, c-format
 msgid "selecting default max_connections ... "
 msgstr "Ñ¡ÔñĬÈÏ×î´óÁª½ÓÊý (max_connections) ... "
 
-#: initdb.c:1025
+#: initdb.c:1122
 #, c-format
 msgid "selecting default shared_buffers ... "
 msgstr "Ñ¡ÔñĬÈϹ²Ïí»º³åÇø´óС (shared_buffers) ... "
 
-#: initdb.c:1058
+#: initdb.c:1155
 msgid "creating configuration files ... "
 msgstr "´´½¨ÅäÖÃÎļþ ... "
 
-#: initdb.c:1145
+#: initdb.c:1251
 #, c-format
 msgid "creating template1 database in %s/base/1 ... "
 msgstr "ÔÚ %s/base/1 Öд´½¨ template1 Êý¾Ý¿â ... "
 
-#: initdb.c:1161
+#: initdb.c:1267
 #, c-format
 msgid ""
 "%s: input file \"%s\" does not belong to PostgreSQL %s\n"
@@ -124,95 +144,95 @@ msgstr ""
 "%s: ÊäÈëÎļþ \"%s\" ²»ÊôÓÚ PostgreSQL %s\n"
 "¼ì²éÄãµÄ°²×°»òʹÓà-L Ñ¡ÏîÖ¸¶¨ÕýÈ·µÄ·¾¶.\n"
 
-#: initdb.c:1237
+#: initdb.c:1342
 msgid "initializing pg_shadow ... "
 msgstr "³õʼ»¯ pg_shadow ... "
 
-#: initdb.c:1273
+#: initdb.c:1378
 msgid "Enter new superuser password: "
 msgstr "ÊäÈëеij¬¼¶Óû§¿ÚÁî: "
 
-#: initdb.c:1274
+#: initdb.c:1379
 msgid "Enter it again: "
 msgstr "ÔÙÊäÈëÒ»±é: "
 
-#: initdb.c:1277
+#: initdb.c:1382
 #, c-format
 msgid "Passwords didn't match.\n"
 msgstr "¿ÚÁƥÅä.\n"
 
-#: initdb.c:1304
+#: initdb.c:1409
 #, c-format
 msgid "%s: could not read password from file \"%s\": %s\n"
 msgstr "%s: ÎÞ·¨´ÓÎļþ \"%s\" ¶ÁÈ¡¿ÚÁî: %s\n"
 
-#: initdb.c:1317
+#: initdb.c:1422
 #, c-format
 msgid "setting password ... "
 msgstr "ÉèÖÿÚÁî ... "
 
-#: initdb.c:1341
+#: initdb.c:1443
 #, c-format
 msgid "%s: The password file was not generated. Please report this problem.\n"
 msgstr "%s: ¿ÚÁîÎļþûÓÐÉú³É. Ç뱨¸æÕâ¸öÎÊÌâ.\n"
 
-#: initdb.c:1371
+#: initdb.c:1471
 msgid "enabling unlimited row size for system tables ... "
 msgstr "Æô¶¯²»ÏÞÖÆϵͳ±íÐдóС ... "
 
-#: initdb.c:1444
+#: initdb.c:1544
 msgid "initializing pg_depend ... "
 msgstr "³õʼ»¯ pg_depend ... "
 
-#: initdb.c:1472
+#: initdb.c:1572
 msgid "creating system views ... "
 msgstr "´´½¨ÏµÍ³ÊÓͼ ... "
 
-#: initdb.c:1509
+#: initdb.c:1608
 msgid "loading pg_description ... "
 msgstr "¼ÓÔØ pg_description ... "
 
-#: initdb.c:1557
+#: initdb.c:1647
 msgid "creating conversions ... "
 msgstr "´´½¨×Ö·û¼¯×ª»» ... "
 
-#: initdb.c:1613
+#: initdb.c:1701
 msgid "setting privileges on built-in objects ... "
 msgstr "¶ÔÄÚ½¨¶ÔÏóÉèÖÃȨÏÞ ... "
 
-#: initdb.c:1671
+#: initdb.c:1759
 msgid "creating information schema ... "
 msgstr "´´½¨ÐÅϢģʽ ... "
 
-#: initdb.c:1734
+#: initdb.c:1816
 msgid "vacuuming database template1 ... "
 msgstr "ÇåÀíÊý¾Ý¿â template1 ... "
 
-#: initdb.c:1790
+#: initdb.c:1870
 msgid "copying template1 to template0 ... "
 msgstr "¿½±´ template1 µ½ template0 ... "
 
-#: initdb.c:1847
+#: initdb.c:1927
 #, c-format
 msgid "caught signal\n"
 msgstr "²¶»ñÐźÅ\n"
 
-#: initdb.c:1852
+#: initdb.c:1933
 #, c-format
-msgid "could not write to child process\n"
-msgstr "ÎÞ·¨Ð´µ½×Ó½ø³Ì\n"
+msgid "could not write to child process: %s\n"
+msgstr "ÎÞ·¨Ð´µ½×Ó½ø³Ì: %s\n"
 
-#: initdb.c:1858
+#: initdb.c:1941
 #, c-format
 msgid "ok\n"
 msgstr "³É¹¦\n"
 
-#: initdb.c:1888
+#: initdb.c:1989
 #, c-format
 msgid "%s: invalid locale name \"%s\"\n"
 msgstr "%s: ÎÞЧµÄ locale Ãû×Ö \"%s\"\n"
 
-#: initdb.c:1955
+#: initdb.c:2056
 #, c-format
 msgid ""
 "%s initializes a PostgreSQL database cluster.\n"
@@ -221,17 +241,17 @@ msgstr ""
 "%s ³õʼ»¯Ò»¸ö PostgreSQL Êý¾Ý¿â´Ø.\n"
 "\n"
 
-#: initdb.c:1956
+#: initdb.c:2057
 #, c-format
 msgid "Usage:\n"
 msgstr "ʹÓ÷½·¨:\n"
 
-#: initdb.c:1957
+#: initdb.c:2058
 #, c-format
 msgid "  %s [OPTION]... [DATADIR]\n"
 msgstr "  %s [Ñ¡Ïî]... [DATADIR]\n"
 
-#: initdb.c:1958
+#: initdb.c:2059
 #, c-format
 msgid ""
 "\n"
@@ -240,23 +260,23 @@ msgstr ""
 "\n"
 "Ñ¡Ïî:\n"
 
-#: initdb.c:1959
+#: initdb.c:2060
 #, c-format
 msgid " [-D, --pgdata=]DATADIR     location for this database cluster\n"
 msgstr "  -D, --pgdata=DATADIR      µ±Ç°Êý¾Ý¿â´ØµÄλÖÃ\n"
 
-#: initdb.c:1960
+#: initdb.c:2061
 #, c-format
 msgid "  -E, --encoding=ENCODING   set default encoding for new databases\n"
 msgstr "  -E, --encoding=ENCODING   ÎªÐÂÊý¾Ý¿âÉèÖÃĬÈϱàÂë\n"
 
-#: initdb.c:1961
+#: initdb.c:2062
 #, c-format
 msgid ""
 "  --locale=LOCALE           initialize database cluster with given locale\n"
 msgstr "  --locale=LOCALE           ³õʼ»¯Êý¾Ý¿â´ØµÄ locale\n"
 
-#: initdb.c:1962
+#: initdb.c:2063
 #, c-format
 msgid ""
 "  --lc-collate, --lc-ctype, --lc-messages=LOCALE\n"
@@ -271,46 +291,46 @@ msgstr ""
 "                            locale (ĬÈÏʹÓû·¾³±ä\n"
 "                            Á¿)\n"
 
-#: initdb.c:1967
+#: initdb.c:2068
 #, c-format
 msgid "  --no-locale               equivalent to --locale=C\n"
 msgstr "  --no-locale               µÈͬÓÚ --locale=C\n"
 
-#: initdb.c:1968
+#: initdb.c:2069
 #, c-format
 msgid ""
-"  -A, --auth=method         default authentication method for local "
+"  -A, --auth=METHOD         default authentication method for local "
 "connections\n"
-msgstr "  -A, --auth=method         ±¾µØÁ¬½ÓµÄĬÈÏÈÏÖ¤·½·¨\n"
+msgstr "  -A, --auth=METHOD         ±¾µØÁ¬½ÓµÄĬÈÏÈÏÖ¤·½·¨\n"
 
-#: initdb.c:1969
+#: initdb.c:2070
 #, c-format
 msgid "  -U, --username=NAME       database superuser name\n"
 msgstr "  -U, --username=NAME       Êý¾Ý¿â³¬¼¶Óû§Ãû\n"
 
-#: initdb.c:1970
+#: initdb.c:2071
 #, c-format
 msgid ""
 "  -W, --pwprompt            prompt for a password for the new superuser\n"
 msgstr "  -W, --pwprompt            ¶ÔÓÚеij¬¼¶Óû§ÌáʾÊäÈë¿ÚÁî\n"
 
-#: initdb.c:1971
+#: initdb.c:2072
 #, c-format
 msgid ""
-"  --pwfile=filename         read password for the new superuser from file\n"
+"  --pwfile=FILE             read password for the new superuser from file\n"
 msgstr "  --pwfile=ÎļþÃû           ¶ÔÓÚеij¬¼¶Óû§´ÓÎļþ¶ÁÈ¡¿ÚÁî\n"
 
-#: initdb.c:1972
+#: initdb.c:2073
 #, c-format
 msgid "  -?, --help                show this help, then exit\n"
 msgstr "  -?, --help                ÏÔʾ´Ë°ïÖú, È»ºóÍ˳ö\n"
 
-#: initdb.c:1973
+#: initdb.c:2074
 #, c-format
 msgid "  -V, --version             output version information, then exit\n"
 msgstr "  -V, --version             Êä³ö°æ±¾ÐÅÏ¢, È»ºóÍ˳ö\n"
 
-#: initdb.c:1974
+#: initdb.c:2075
 #, c-format
 msgid ""
 "\n"
@@ -319,27 +339,27 @@ msgstr ""
 "\n"
 "·ÇÆÕͨʹÓÃÑ¡Ïî:\n"
 
-#: initdb.c:1975
+#: initdb.c:2076
 #, c-format
 msgid "  -d, --debug               generate lots of debugging output\n"
 msgstr "  -d, --debug               ²úÉú´óÁ¿µÄ³ý´íÐÅÏ¢\n"
 
-#: initdb.c:1976
+#: initdb.c:2077
 #, c-format
 msgid "  -s, --show                show internal settings\n"
 msgstr "  -s, --show                ÏÔʾÄÚ²¿ÉèÖÃ\n"
 
-#: initdb.c:1977
+#: initdb.c:2078
 #, c-format
 msgid "  -L DIRECTORY              where to find the input files\n"
 msgstr "  -L DIRECTORY              ÊäÈëÎļþµÄλÖÃ\n"
 
-#: initdb.c:1978
+#: initdb.c:2079
 #, c-format
 msgid "  -n, --noclean             do not clean up after errors\n"
 msgstr "  -n, --noclean             ³ö´íºó²»ÇåÀí\n"
 
-#: initdb.c:1979
+#: initdb.c:2080
 #, c-format
 msgid ""
 "\n"
@@ -349,7 +369,7 @@ msgstr ""
 "\n"
 "Èç¹ûûÓÐÖ¸¶¨Êý¾ÝĿ¼, ½«Ê¹Óû·¾³±äÁ¿ PGDATA\n"
 
-#: initdb.c:1981
+#: initdb.c:2082
 #, c-format
 msgid ""
 "\n"
@@ -358,36 +378,36 @@ msgstr ""
 "\n"
 "±¨¸æ´íÎóÖÁ <pgql-bugs@postgresql.org>.\n"
 
-#: initdb.c:2072
+#: initdb.c:2175
 #, c-format
 msgid "Running in debug mode.\n"
 msgstr "ÔËÐÐÔÚ³ý´íģʽÖÐ. \n"
 
-#: initdb.c:2076
+#: initdb.c:2179
 #, c-format
 msgid "Running in noclean mode.  Mistakes will not be cleaned up.\n"
 msgstr "ÔËÐÐÔÚ noclean Ä£Ê½ÖÐ. ´íÎ󽫲»±»ÇåÀí.\n"
 
-#: initdb.c:2112 initdb.c:2129 initdb.c:2341
+#: initdb.c:2216 initdb.c:2233 initdb.c:2453
 #, c-format
 msgid "Try \"%s --help\" for more information.\n"
 msgstr "ÇëÓà\"%s --help\" »ñÈ¡¸ü¶àµÄÐÅÏ¢.\n"
 
-#: initdb.c:2127
+#: initdb.c:2231
 #, c-format
 msgid "%s: too many command-line arguments (first is \"%s\")\n"
 msgstr "%s: ÃüÁîÐвÎÊýÌ«¶à (µÚÒ»¸öÊÇ \"%s\")\n"
 
-#: initdb.c:2135
+#: initdb.c:2239
 #, c-format
-msgid "%s: you cannot specify both password prompt and password file\n"
-msgstr "%s: Äã²»ÄÜͬʱָ¶¨ÌáʾÊäÈë¿ÚÁîºÍ¿ÚÁîÎļþ\n"
+msgid "%s: password prompt and password file may not be specified together\n"
+msgstr "%s: ¿ÚÁîÌáʾºÍ¿ÚÁîÎļþ¿ÉÒÔ²»ÓÃͬʱ¶¼Ö¸¶¨\n"
 
-#: initdb.c:2141
+#: initdb.c:2245
 msgid ""
 "\n"
-"WARNING: enabling \"trust\" authentication for local connections.\n"
-"You can change this by editing pg_hba.conf or using the -A flag the\n"
+"WARNING: enabling \"trust\" authentication for local connections\n"
+"You can change this by editing pg_hba.conf or using the -A option the\n"
 "next time you run initdb.\n"
 msgstr ""
 "\n"
@@ -395,19 +415,18 @@ msgstr ""
 "Äã¿ÉÒÔͨ¹ý±à¼­ pg_hba.conf ¸ü¸Ä»òÄãÏÂ\n"
 "´ÎÔËÐРinitdb Ê±Ê¹Óà-A Ñ¡Ïî.\n"
 
-#: initdb.c:2165
+#: initdb.c:2269
 #, c-format
-msgid "%s: unknown authentication method \"%s\".\n"
+msgid "%s: unrecognized authentication method \"%s\"\n"
 msgstr "%s: Î´ÖªÈÏÖ¤·½·¨ \"%s\".\n"
 
-#: initdb.c:2174
+#: initdb.c:2279
 #, c-format
 msgid ""
-"%s: you need to specify a password for the superuser to enable %s "
-"authentication.\n"
-msgstr "%s: ÎªÁËÆô¶¯ %s ÈÏÖ¤, ÄãÐèҪΪ³¬¼¶Óû§Ö¸¶¨Ò»¸ö¿ÚÁî.\n"
+"%s: must specify a password for the superuser to enable %s authentication\n"
+msgstr "%s: ÎªÁËÆô¶¯ %s ÈÏÖ¤, ÄãÐèҪΪ³¬¼¶Óû§Ö¸¶¨Ò»¸ö¿ÚÁî\n"
 
-#: initdb.c:2189
+#: initdb.c:2294
 #, c-format
 msgid ""
 "%s: no data directory specified\n"
@@ -420,37 +439,39 @@ msgstr ""
 "´æÔÚ. Ê¹Óà-D Ñ¡Ïî»òÕß\n"
 "»·¾³±äÁ¿ PGDATA.\n"
 
-#: initdb.c:2215
+#: initdb.c:2326
 #, c-format
 msgid ""
-"The program \"postgres\" is needed by %s but was not found in the same "
-"directory as \"%s\".\n"
+"The program \"postgres\" is needed by %s but was not found in the\n"
+"same directory as \"%s\".\n"
 "Check your installation.\n"
 msgstr ""
 "%s ÐèÒª³ÌÐò \"postgres\", µ«ÊÇÔÚͬһ¸öĿ¼ \"%s\" ÖÐûÕÒµ½.\n"
+"\n"
 "¼ì²éÄúµÄ°²×°.\n"
 
-#: initdb.c:2221
+#: initdb.c:2333
 #, c-format
 msgid ""
-"The program \"postgres\" was found by %s but was not the same version as \"%s"
-"\".\n"
+"The program \"postgres\" was found by \"%s\"\n"
+"but was not the same version as %s.\n"
 "Check your installation.\n"
 msgstr ""
 "%s ÕÒµ½³ÌÐò \"postgres\", µ«ÊǺͰ汾 \"%s\" ²»Ò»ÖÂ.\n"
+"\n"
 "¼ì²éÄúµÄ°²×°.\n"
 
-#: initdb.c:2240
+#: initdb.c:2352
 #, c-format
 msgid "%s: input file location must be an absolute path\n"
 msgstr "%s: ÊäÈëÎļþλÖñØÐëΪ¾ø¶Ô·¾¶\n"
 
-#: initdb.c:2248
+#: initdb.c:2360
 #, c-format
 msgid "%s: could not determine valid short version string\n"
 msgstr "%s: ÎÞ·¨È·¶¨ÓÐЧµÄ¶Ì°æ±¾×Ö·û´®\n"
 
-#: initdb.c:2301
+#: initdb.c:2413
 #, c-format
 msgid ""
 "The files belonging to this database system will be owned by user \"%s\".\n"
@@ -460,12 +481,12 @@ msgstr ""
 "ÊôÓÚ´ËÊý¾Ý¿âϵͳµÄÎļþËÞÖ÷ΪÓû§ \"%s\".\n"
 "´ËÓû§Ò²±ØÐëΪ·þÎñÆ÷½ø³ÌµÄËÞÖ÷.\n"
 
-#: initdb.c:2311
+#: initdb.c:2423
 #, c-format
 msgid "The database cluster will be initialized with locale %s.\n"
 msgstr "Êý¾Ý¿â´Ø½«´øÓРlocale %s ³õʼ»¯.\n"
 
-#: initdb.c:2314
+#: initdb.c:2426
 #, c-format
 msgid ""
 "The database cluster will be initialized with locales\n"
@@ -484,32 +505,37 @@ msgstr ""
 "  NUMERIC:  %s\n"
 "  TIME:     %s\n"
 
-#: initdb.c:2339
+#: initdb.c:2451
 #, c-format
 msgid "%s: could not find suitable encoding for locale \"%s\"\n"
 msgstr "%s: ÎÞ·¨Îª locale \"%s\" ÕÒµ½ºÏÊʵıàÂë\n"
 
-#: initdb.c:2340
+#: initdb.c:2452
 #, c-format
 msgid "Rerun %s with the -E option.\n"
 msgstr "´ø -E Ñ¡ÏîÖØÐÂÔËÐР%s.\n"
 
-#: initdb.c:2347
+#: initdb.c:2459
 #, c-format
 msgid "The default database encoding has accordingly been set to %s.\n"
 msgstr "ĬÈϵÄÊý¾Ý¿â±àÂëÒѾ­ÏàÓ¦µÄÉèÖÃΪ %s.\n"
 
-#: initdb.c:2388
+#: initdb.c:2500
 #, c-format
 msgid "creating directory %s ... "
 msgstr "´´½¨Ä¿Â¼ %s ... "
 
-#: initdb.c:2402
+#: initdb.c:2514
 #, c-format
 msgid "fixing permissions on existing directory %s ... "
 msgstr "ÐÞ¸´ÒÑ´æÔÚĿ¼ %s µÄȨÏÞ ... "
 
-#: initdb.c:2420
+#: initdb.c:2520
+#, c-format
+msgid "%s: could not change permissions of directory \"%s\": %s\n"
+msgstr "%s: ÎÞ·¨¸Ä±äĿ¼ \"%s\" µÄȨÏÞ: %s\n"
+
+#: initdb.c:2533
 #, c-format
 msgid ""
 "%s: directory \"%s\" exists but is not empty\n"
@@ -522,26 +548,66 @@ msgstr ""
 "Ŀ¼ \"%s\" »òÕßÔËÐдø²ÎÊýµÄ %s\n"
 "¶ø²»ÊÇ \"%s\".\n"
 
-#: initdb.c:2437
+#: initdb.c:2542
+#, c-format
+msgid "%s: could not access directory \"%s\": %s\n"
+msgstr "%s: ÎÞ·¨·ÃÎÊĿ¼ \"%s\": %s\n"
+
+#: initdb.c:2551
 #, c-format
 msgid "creating directory %s/%s ... "
 msgstr "´´½¨Ä¿Â¼ %s/%s ... "
 
-#: initdb.c:2501
+#: initdb.c:2619
 #, c-format
 msgid ""
 "\n"
 "Success. You can now start the database server using:\n"
 "\n"
-"    %s%s%s/postmaster -D %s%s%s\n"
+"    %s%s%s%spostmaster -D %s%s%s\n"
 "or\n"
-"    %s%s%s/pg_ctl -D %s%s%s -l logfile start\n"
+"    %s%s%s%spg_ctl -D %s%s%s -l logfile start\n"
 "\n"
 msgstr ""
 "\n"
 "³É¹¦. ÄúÏÖÔÚ¿ÉÒÔÓÃÏÂÃæµÄÃüÁîÔËÐÐÊý¾Ý¿â·þÎñÆ÷:\n"
 "\n"
-"    %s%s%s/postmaster -D %s%s%s\n"
+"    %s%s%s%spostmaster -D %s%s%s\n"
 "»òÕß\n"
-"    %s%s%s/pg_ctl -D %s%s%s -l logfile start\n"
+"    %s%s%s%spg_ctl -D %s%s%s -l logfile start\n"
 "\n"
+
+#: ../../port/dirmod.c:75 ../../port/dirmod.c:88 ../../port/dirmod.c:101
+#, c-format
+msgid "out of memory\n"
+msgstr "ÄÚ´æÒç³ö\n"
+
+#: ../../port/exec.c:193 ../../port/exec.c:307 ../../port/exec.c:350
+#, c-format
+msgid "could not identify current directory: %s"
+msgstr "ÎÞ·¨È·Èϵ±Ç°Ä¿Â¼: %s"
+
+#: ../../port/exec.c:323 ../../port/exec.c:359
+#, c-format
+msgid "could not change directory to \"%s\""
+msgstr "ÎÞ·¨½øÈëĿ¼ \"%s\""
+
+#: ../../port/exec.c:338
+#, c-format
+msgid "could not read symbolic link \"%s\""
+msgstr "ÎÞ·¨¶ÁÈ¡·ûºÅÁ´½á \"%s\""
+
+#: ../../port/exec.c:569
+#, c-format
+msgid "child process exited with exit code %d"
+msgstr "×Ó½ø³ÌÒÑÍ˳ö, Í˳öÂëΪ %d"
+
+#: ../../port/exec.c:572
+#, c-format
+msgid "child process was terminated by signal %d"
+msgstr "×Ó½ø³Ì±»ÐźŠ%d ÖÕÖ¹"
+
+#: ../../port/exec.c:575
+#, c-format
+msgid "child process exited with unrecognized status %d"
+msgstr "×Ó½ø³ÌÒÑÍ˳ö, Î´Öª×´Ì¬ %d"
index f60857622a04ca18d94aa05e8823044d198a238c..cf481f676206d3e0e91a11a615c4a363d633835d 100644 (file)
@@ -1,5 +1,5 @@
-# $PostgreSQL: pgsql/src/bin/pg_config/nls.mk,v 1.12 2004/11/27 22:44:12 petere Exp $
+# $PostgreSQL: pgsql/src/bin/pg_config/nls.mk,v 1.13 2004/12/11 19:09:02 petere Exp $
 CATALOG_NAME   := pg_config
-AVAIL_LANGUAGES        := cs de es fr pt_BR ro ru sl sv tr zh_TW
+AVAIL_LANGUAGES        := cs de es fr pt_BR ro ru sl sv tr zh_CN zh_TW
 GETTEXT_FILES  := pg_config.c ../../port/exec.c
 GETTEXT_TRIGGERS:= _
diff --git a/src/bin/pg_config/po/zh_CN.po b/src/bin/pg_config/po/zh_CN.po
new file mode 100644 (file)
index 0000000..da388ab
--- /dev/null
@@ -0,0 +1,162 @@
+# SOME DESCRIPTIVE TITLE.
+# This file is put in the public domain.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: PostgreSQL 8.0\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2004-12-02 10:00+0000\n"
+"PO-Revision-Date: 2003-09-15 13:49:24+0800\n"
+"Last-Translator: Bao Wei <weibao@qmail.zhengmai.net.cn>\n"
+"Language-Team: Weiping He <laser@zhengmai.com.cn>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=GB2312\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: pg_config.c:36
+#, c-format
+msgid ""
+"\n"
+"%s provides information about the installed version of PostgreSQL.\n"
+"\n"
+msgstr ""
+"\n"
+"%s Ìṩ PostgreSQL µÄ°²×°ÐÅÏ¢.\n"
+"\n"
+
+#: pg_config.c:37
+#, c-format
+msgid "Usage:\n"
+msgstr "ʹÓ÷½·¨:\n"
+
+#: pg_config.c:38
+#, c-format
+msgid ""
+"  %s OPTION...\n"
+"\n"
+msgstr ""
+"  %s Ñ¡Ïî...\n"
+"\n"
+
+#: pg_config.c:39
+#, c-format
+msgid "Options:\n"
+msgstr "Ñ¡Ïî:\n"
+
+#: pg_config.c:40
+#, c-format
+msgid "  --bindir              show location of user executables\n"
+msgstr "  --bindir              ÏÔʾִÐÐÎļþËùÔÚλÖÃ\n"
+
+#: pg_config.c:41
+#, c-format
+msgid ""
+"  --includedir          show location of C header files of the client\n"
+"                        interfaces\n"
+msgstr ""
+"  --includedir          ÏÔʾ¿Í»§¶Ë½Ó¿Ú C Í·ÎļþËùÔÚ\n"
+"                        Î»ÖÃ\n"
+
+#: pg_config.c:43
+#, c-format
+msgid ""
+"  --includedir-server   show location of C header files for the server\n"
+msgstr "  --includedir-server   ÏÔʾ·þÎñ¶Ë C Í·ÎļþËùÔÚλÖÃ\n"
+
+#: pg_config.c:44
+#, c-format
+msgid "  --libdir              show location of object code libraries\n"
+msgstr "  --libdir              ÏÔʾĿ±ê´úÂë¿âÎļþËùÔÚλÖÃ\n"
+
+#: pg_config.c:45
+#, c-format
+msgid "  --pkglibdir           show location of dynamically loadable modules\n"
+msgstr "  --pkglibdir           ÏÔʾ¶¯Ì¬¼ÓÔØ¿âËùÔÚλÖÃ\n"
+
+#: pg_config.c:46
+#, c-format
+msgid "  --pgxs                show location of extension makefile\n"
+msgstr "  --pgxs                ÏÔʾÀ©Õ¹ makefile ËùÔÚλÖÃ\n"
+
+#: pg_config.c:47
+#, c-format
+msgid ""
+"  --configure           show options given to \"configure\" script when\n"
+"                        PostgreSQL was built\n"
+msgstr ""
+"  --configure           ÏÔʾ±àÒë PostgreSQL Ê± \"configure\"\n"
+"                        µÄÑ¡Ïî\n"
+
+#: pg_config.c:49
+#, c-format
+msgid "  --version             show the PostgreSQL version, then exit\n"
+msgstr "  --version             ÏÔʾ PostgreSQL °æ±¾ÐÅÏ¢, È»ºóÍ˳ö\n"
+
+#: pg_config.c:50
+#, c-format
+msgid ""
+"  --help                show this help, then exit\n"
+"\n"
+msgstr ""
+"  --help                ÏÔʾ´Ë°ïÖúÐÅÏ¢, È»ºóÍ˳ö\n"
+"\n"
+
+#: pg_config.c:51
+#, c-format
+msgid "Report bugs to <pgsql-bugs@postgresql.org>.\n"
+msgstr "³ô³æ±¨¸æÖÁ <pgsql-bugs@postgresql.org>.\n"
+
+#: pg_config.c:57
+#, c-format
+msgid ""
+"\n"
+"Try \"%s --help\" for more information\n"
+msgstr ""
+"\n"
+"ÊÔÓà\"%s --help\" »ñÈ¡¸ü¶àµÄÐÅÏ¢\n"
+
+#: pg_config.c:75
+#, c-format
+msgid "%s: argument required\n"
+msgstr "%s: ÐèÒª²ÎÊý\n"
+
+#: pg_config.c:104
+#, c-format
+msgid "%s: invalid argument: %s\n"
+msgstr "%s: ÎÞЧ²ÎÊý: %s\n"
+
+#: pg_config.c:113
+#, c-format
+msgid "%s: could not find own executable\n"
+msgstr "%s: ÕÒ²»µ½Ö´ÐÐÎļþ\n"
+
+#: ../../port/exec.c:193 ../../port/exec.c:307 ../../port/exec.c:350
+#, c-format
+msgid "could not identify current directory: %s"
+msgstr "ÎÞ·¨È·Èϵ±Ç°Ä¿Â¼: %s"
+
+#: ../../port/exec.c:323 ../../port/exec.c:359
+#, c-format
+msgid "could not change directory to \"%s\""
+msgstr "ÎÞ·¨½øÈëĿ¼ \"%s\""
+
+#: ../../port/exec.c:338
+#, c-format
+msgid "could not read symbolic link \"%s\""
+msgstr "ÎÞ·¨¶ÁÈ¡·ûºÅÁ´½á \"%s\""
+
+#: ../../port/exec.c:569
+#, c-format
+msgid "child process exited with exit code %d"
+msgstr "×Ó½ø³ÌÒÑÍ˳ö, Í˳öÂëΪ %d"
+
+#: ../../port/exec.c:572
+#, c-format
+msgid "child process was terminated by signal %d"
+msgstr "×Ó½ø³Ì±»ÐźŠ%d ÖÕÖ¹"
+
+#: ../../port/exec.c:575
+#, c-format
+msgid "child process exited with unrecognized status %d"
+msgstr "×Ó½ø³ÌÒÑÍ˳ö, Î´Öª×´Ì¬ %d"
index a9b237d29e442164a43b9e938de7dec2ffa1b766..d96df1c8b56d4cbfdb52c29922c9d568887c4a41 100644 (file)
@@ -3,9 +3,9 @@
 # \r
 msgid ""
 msgstr ""
-"Project-Id-Version: PostgreSQL 7.4\n"
+"Project-Id-Version: PostgreSQL 8.0\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2004-08-31 08:57+0000\n"
+"POT-Creation-Date: 2004-11-15 14:24+0000\n"
 "PO-Revision-Date: 2004-01-10 13:45+0800\n"
 "Last-Translator: Bao Wei <weibao@qmail.zhengmai.net.cn>\n"
 "Language-Team: Weiping He <laser@zhengmai.com.cn>\n"
@@ -13,7 +13,7 @@ msgstr ""
 "Content-Type: text/plain; charset=GB2312\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: pg_controldata.c:28
+#: pg_controldata.c:26
 #, c-format
 msgid ""
 "%s displays control information of a PostgreSQL database cluster.\n"
@@ -22,88 +22,87 @@ msgstr ""
 "%s ÏÔʾ PostgreSQL Êý¾Ý¿â´Ø¿ØÖÆÐÅÏ¢.\n"
 "\n"
 
-#: pg_controldata.c:32
+#: pg_controldata.c:30
 #, c-format
 msgid ""
 "Usage:\n"
-"  %s [OPTION]\n"
+"  %s [OPTION] [DATADIR]\n"
 "\n"
 "Options:\n"
-"  DATADIR        show cluster control information for DATADIR\n"
 "  --help         show this help, then exit\n"
 "  --version      output version information, then exit\n"
 msgstr ""
-"Ó÷¨:\n"
-"  %s [Ñ¡Ïî]\n"
+"ʹÓ÷½·¨:\n"
+"  %s [Ñ¡Ïî] [Êý¾ÝĿ¼]\n"
 "\n"
 "Ñ¡Ïî:\n"
-"  DATADIR        ÏÔʾ DATADIR µÄ´Ø¿ØÖÆÐÅÏ¢\n"
 "  --help         ÏÔʾ´Ë°ïÖúÐÅÏ¢, È»ºóÍ˳ö\n"
 "  --version      ÏÔʾ pg_controldata µÄ°æ±¾, È»ºóÍ˳ö\n"
 
-#: pg_controldata.c:41
+#: pg_controldata.c:38
 #, c-format
 msgid ""
 "\n"
-"If no data directory is specified, the environment variable PGDATA\n"
+"If no data directory (DATADIR) is specified, the environment variable "
+"PGDATA\n"
 "is used.\n"
 "\n"
 msgstr ""
 "\n"
-"Èç¹ûûÓÐÖ¸¶¨Êý¾ÝĿ¼, ½«Ê¹ÓÃ\n"
+"Èç¹ûûÓÐÖ¸¶¨Êý¾ÝĿ¼ (DATADIR), ½«Ê¹ÓÃ\n"
 "»·¾³±äÁ¿PGDATA.\n"
 "\n"
 
-#: pg_controldata.c:42
+#: pg_controldata.c:40
 #, c-format
 msgid "Report bugs to <pgsql-bugs@postgresql.org>.\n"
 msgstr "±¨¸æ´íÎóÖÁ <pgsql-bugs@postgresql.org>.\n"
 
-#: pg_controldata.c:52
+#: pg_controldata.c:50
 msgid "starting up"
 msgstr "ÕýÔÚÆô¶¯"
 
-#: pg_controldata.c:54
+#: pg_controldata.c:52
 msgid "shut down"
 msgstr "¹Ø±Õ"
 
-#: pg_controldata.c:56
+#: pg_controldata.c:54
 msgid "shutting down"
 msgstr "ÕýÔڹرÕ"
 
-#: pg_controldata.c:58
+#: pg_controldata.c:56
 msgid "in recovery"
 msgstr "ÔÚ»Ö¸´ÖÐ"
 
-#: pg_controldata.c:60
+#: pg_controldata.c:58
 msgid "in production"
 msgstr "ÔÚÔËÐÐÖÐ"
 
-#: pg_controldata.c:62
+#: pg_controldata.c:60
 msgid "unrecognized status code"
 msgstr "²»±»ÈϿɵÄ״̬Âë"
 
-#: pg_controldata.c:104
+#: pg_controldata.c:102
 #, c-format
 msgid "%s: no data directory specified\n"
 msgstr "%s: Ã»ÓÐÖ¸¶¨Êý¾ÝĿ¼\n"
 
-#: pg_controldata.c:105
+#: pg_controldata.c:103
 #, c-format
 msgid "Try \"%s --help\" for more information.\n"
 msgstr "Óà\"%s --help\" ÏÔʾ¸ü¶àµÄÐÅÏ¢.\n"
 
-#: pg_controldata.c:113
+#: pg_controldata.c:111
 #, c-format
 msgid "%s: could not open file \"%s\" for reading: %s\n"
 msgstr "%s: ÎÞ·¨´ò¿ªÎļþ \"%s\" ¶ÁÈ¡ÐÅÏ¢: %s\n"
 
-#: pg_controldata.c:120
+#: pg_controldata.c:118
 #, c-format
 msgid "%s: could not read file \"%s\": %s\n"
 msgstr "%s: ÎÞ·¨¶ÁÈ¡Îļþ \"%s\": %s\n"
 
-#: pg_controldata.c:134
+#: pg_controldata.c:132
 #, c-format
 msgid ""
 "WARNING: Calculated CRC checksum does not match value stored in file.\n"
@@ -116,130 +115,130 @@ msgstr ""
 "ÏÂÃæµÄ½á¹ûÊDz»¿É¿¿µÄ.\n"
 "\n"
 
-#: pg_controldata.c:154
+#: pg_controldata.c:152
 #, c-format
 msgid "pg_control version number:            %u\n"
 msgstr "pg_control °æ±¾:                      %u\n"
 
-#: pg_controldata.c:155
+#: pg_controldata.c:153
 #, c-format
 msgid "Catalog version number:               %u\n"
 msgstr "Catalog °æ±¾:                         %u\n"
 
-#: pg_controldata.c:156
+#: pg_controldata.c:154
 #, c-format
 msgid "Database system identifier:           %s\n"
 msgstr "Êý¾Ý¿âϵͳ±êʶ·û:                     %s\n"
 
-#: pg_controldata.c:157
+#: pg_controldata.c:155
 #, c-format
 msgid "Database cluster state:               %s\n"
 msgstr "Êý¾Ý¿â´Ø״̬:                         %s\n"
 
-#: pg_controldata.c:158
+#: pg_controldata.c:156
 #, c-format
 msgid "pg_control last modified:             %s\n"
 msgstr "pg_control ×îºóÐÞ¸Ä:                  %s\n"
 
-#: pg_controldata.c:159
+#: pg_controldata.c:157
 #, c-format
 msgid "Current log file ID:                  %u\n"
 msgstr "µ±Ç°ÈÕÖ¾ÎļþID:                       %u\n"
 
-#: pg_controldata.c:160
+#: pg_controldata.c:158
 #, c-format
 msgid "Next log file segment:                %u\n"
 msgstr "ÏÂÒ»¸öÈÕÖ¾Îļþ¶Î:                     %u\n"
 
-#: pg_controldata.c:161
+#: pg_controldata.c:159
 #, c-format
 msgid "Latest checkpoint location:           %X/%X\n"
 msgstr "×îмì²éµãλÖÃ:                       %X/%X\n"
 
-#: pg_controldata.c:163
+#: pg_controldata.c:161
 #, c-format
 msgid "Prior checkpoint location:            %X/%X\n"
 msgstr "ÓÅÏȼì²éµãλÖÃ:                       %X/%X\n"
 
-#: pg_controldata.c:165
+#: pg_controldata.c:163
 #, c-format
 msgid "Latest checkpoint's REDO location:    %X/%X\n"
 msgstr "×îмì²éµãµÄ REDO Î»ÖÃ:               %X/%X\n"
 
-#: pg_controldata.c:167
+#: pg_controldata.c:165
 #, c-format
 msgid "Latest checkpoint's UNDO location:    %X/%X\n"
 msgstr "×îмì²éµãµÄ UNDO Î»ÖÃ:               %X/%X\n"
 
-#: pg_controldata.c:169
+#: pg_controldata.c:167
 #, c-format
 msgid "Latest checkpoint's TimeLineID:       %u\n"
 msgstr "×îмì²éµãµÄ TimeLineID:              %u\n"
 
-#: pg_controldata.c:170
+#: pg_controldata.c:168
 #, c-format
 msgid "Latest checkpoint's NextXID:          %u\n"
 msgstr "×îмì²éµãµÄ NextXID:                 %u\n"
 
-#: pg_controldata.c:171
+#: pg_controldata.c:169
 #, c-format
 msgid "Latest checkpoint's NextOID:          %u\n"
 msgstr "×îмì²éµãµÄ NextOID:                 %u\n"
 
-#: pg_controldata.c:172
+#: pg_controldata.c:170
 #, c-format
 msgid "Time of latest checkpoint:            %s\n"
 msgstr "×îмì²éµãµÄʱ¼ä:                     %s\n"
 
-#: pg_controldata.c:173
+#: pg_controldata.c:171
 #, c-format
 msgid "Database block size:                  %u\n"
 msgstr "Êý¾Ý¿â¿é´óС:                         %u\n"
 
-#: pg_controldata.c:174
+#: pg_controldata.c:172
 #, c-format
 msgid "Blocks per segment of large relation: %u\n"
 msgstr "´ó¹ØϵµÄÿ¶Î¿éÊý:                     %u\n"
 
-#: pg_controldata.c:175
+#: pg_controldata.c:173
 #, c-format
 msgid "Bytes per WAL segment:                %u\n"
 msgstr "ÿһ¸ö WAL ¶Î×Ö½ÚÊý:                  %u\n"
 
-#: pg_controldata.c:176
+#: pg_controldata.c:174
 #, c-format
 msgid "Maximum length of identifiers:        %u\n"
 msgstr "±êʶ·ûµÄ×î´ó³¤¶È:                     %u\n"
 
-#: pg_controldata.c:177
+#: pg_controldata.c:175
 #, c-format
 msgid "Maximum number of function arguments: %u\n"
 msgstr "º¯Êý²ÎÊýµÄ×î´ó¸öÊý:                   %u\n"
 
-#: pg_controldata.c:178
+#: pg_controldata.c:176
 #, c-format
 msgid "Date/time type storage:               %s\n"
 msgstr "ÈÕÆÚ/ʱ¼ä ÀàÐÍ´æ´¢:                   %s\n"
 
-#: pg_controldata.c:179
+#: pg_controldata.c:177
 msgid "64-bit integers"
 msgstr "64λÕûÊý"
 
-#: pg_controldata.c:179
+#: pg_controldata.c:177
 msgid "floating-point numbers"
 msgstr "¸¡µãÊý"
 
-#: pg_controldata.c:180
+#: pg_controldata.c:178
 #, c-format
 msgid "Maximum length of locale name:        %u\n"
 msgstr "±¾µØÃû×ÖµÄ×î´ó³¤¶È:                   %u\n"
 
-#: pg_controldata.c:181
+#: pg_controldata.c:179
 #, c-format
 msgid "LC_COLLATE:                           %s\n"
 msgstr "LC_COLLATE:                           %s\n"
 
-#: pg_controldata.c:182
+#: pg_controldata.c:180
 #, c-format
 msgid "LC_CTYPE:                             %s\n"
 msgstr "LC_CTYPE:                             %s\n"
index 3a46d1314b3ec4d03d290cf2c19f319ee4588b84..c6b4e116965ab7a94fed1bf31c407c78ff288c0e 100644 (file)
@@ -4,9 +4,9 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: PostgreSQL 7.5\n"
+"Project-Id-Version: PostgreSQL 8.0\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2004-08-31 08:57+0000\n"
+"POT-Creation-Date: 2004-12-02 09:53+0000\n"
 "PO-Revision-Date: 2004-06-10 11:23+0000\n"
 "Last-Translator: Bao Wei<weibao@imsi.cn>\n"
 "Language-Team: Weiping He <laser@imsi.cn>\n"
@@ -14,168 +14,160 @@ msgstr ""
 "Content-Type: text/plain; charset=GB2312\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: pg_ctl.c:193 pg_ctl.c:209 pg_ctl.c:1293
+#: pg_ctl.c:201 pg_ctl.c:216 pg_ctl.c:1342
 #, c-format
 msgid "%s: out of memory\n"
 msgstr "%s: ÄÚ´æÒç³ö\n"
 
-#: pg_ctl.c:452
+#: pg_ctl.c:250
+#, c-format
+msgid "%s: could not open PID file \"%s\": %s"
+msgstr "%s: ÎÞ·¨´ò¿ª PID Îļþ \"%s\": %s"
+
+#: pg_ctl.c:469
 #, c-format
 msgid ""
-"%s: Another postmaster may be running. Trying to start postmaster anyway.\n"
-msgstr "%s: ÆäËû postmaster ¿ÉÄÜÕýÔÚÔËÐÐ. ³¢ÊÔÆô¶¯ postmaster.\n"
+"%s: another postmaster may be running; trying to start postmaster anyway\n"
+msgstr "%s: ÆäËû postmaster ¿ÉÄÜÕýÔÚÔËÐÐ. ³¢ÊÔÆô¶¯ postmaster\n"
 
-#: pg_ctl.c:470
+#: pg_ctl.c:487
 #, c-format
-msgid "%s: cannot read %s\n"
-msgstr "%s: ÎÞ·¨¶ÁÈ¡ %s\n"
+msgid "%s: could not read file \"%s\"\n"
+msgstr "%s: ÎÞ·¨¶ÁÈ¡Îļþ \"%s\"\n"
 
-#: pg_ctl.c:476
+#: pg_ctl.c:493
 #, c-format
-msgid "%s: option file %s must have exactly 1 line\n"
-msgstr "%s: Ñ¡ÏîÎļþ %s Ö»ÄÜÓÐÒ»ÐÐ\n"
+msgid "%s: option file \"%s\" must have exactly one line\n"
+msgstr "%s: Ñ¡ÏîÎļþ \"%s\" Ö»ÄÜÓÐÒ»ÐÐ\n"
 
-#: pg_ctl.c:522
+#: pg_ctl.c:544
 #, c-format
 msgid ""
-"The program \"postmaster\" is needed by %s but was not found in the same "
-"directory as \"%s\".\n"
+"The program \"postmaster\" is needed by %s but was not found in the\n"
+"same directory as \"%s\".\n"
 "Check your installation.\n"
 msgstr ""
 "³ÌÐò \"postmaster\" ÊÇ %s ÐèÒªµÄ, µ«Ã»ÓÐÔÚͬһ¸öĿ¼ \"%s\" ·¢ÏÖ.\n"
+"\n"
 "¼ì²éÄúµÄ°²×°.\n"
 
-#: pg_ctl.c:528
+#: pg_ctl.c:550
 #, c-format
 msgid ""
-"The program \"postmaster\" was found by %s but was not the same version as "
-"\"%s\".\n"
+"The program \"postmaster\" was found by \"%s\"\n"
+"but was not the same version as %s.\n"
 "Check your installation.\n"
 msgstr ""
 "%s ÕÒµ½³ÌÐò \"postmaster\", µ«°æ±¾ºÍ \"%s\" ²»Ò»ÖÂ.\n"
+"\n"
 "¼ì²éÄúµÄ°²×°.\n"
 
-#: pg_ctl.c:539
-msgid "Unable to run the postmaster binary\n"
-msgstr "ÎÞ·¨ÔËÐРpostmaster ¶þ½øÖÆÎļþ\n"
+#: pg_ctl.c:562
+#, c-format
+msgid "%s: could not start postmaster: exit code was %d\n"
+msgstr "%s: ÎÞ·¨Æô¶¯ postmaster: Í˳öÂëΪ %d\n"
 
-#: pg_ctl.c:549
+#: pg_ctl.c:573
 #, c-format
 msgid ""
-"%s: cannot start postmaster\n"
-"Examine the log output\n"
+"%s: could not start postmaster\n"
+"Examine the log output.\n"
 msgstr ""
 "%s: ÎÞ·¨Æô¶¯ postmaster\n"
-"¼ì²éÈÕÖ¾Êä³ö\n"
+"¼ì²éÈÕÖ¾Êä³ö.\n"
 
-#: pg_ctl.c:560
-#, c-format
+#: pg_ctl.c:582
 msgid "waiting for postmaster to start..."
 msgstr "µÈ´ý postmaster Æô¶¯ ..."
 
-#: pg_ctl.c:565
+#: pg_ctl.c:585
 #, c-format
 msgid "could not start postmaster\n"
 msgstr "ÎÞ·¨Æô¶¯ postmaster\n"
 
-#: pg_ctl.c:567
-#, c-format
-msgid ""
-"done\n"
-"postmaster started\n"
-msgstr ""
-"Íê³É\n"
-"postmaster ÒѾ­Æô¶¯\n"
+#: pg_ctl.c:588 pg_ctl.c:654 pg_ctl.c:721
+msgid " done\n"
+msgstr " Íê³É\n"
 
-#: pg_ctl.c:570
-#, c-format
+#: pg_ctl.c:589
+msgid "postmaster started\n"
+msgstr "postmaster ÒѾ­Æô¶¯\n"
+
+#: pg_ctl.c:593
 msgid "postmaster starting\n"
 msgstr "Æô¶¯ postmaster\n"
 
-#: pg_ctl.c:585 pg_ctl.c:664 pg_ctl.c:734
+#: pg_ctl.c:607 pg_ctl.c:675 pg_ctl.c:735
 #, c-format
-msgid "%s: could not find %s\n"
-msgstr "%s: ÎÞ·¨ÕÒµ½ %s\n"
+msgid "%s: PID file \"%s\" does not exist\n"
+msgstr "%s: PID Îļþ \"%s\" ²»´æÔÚ\n"
 
-#: pg_ctl.c:586 pg_ctl.c:735
+#: pg_ctl.c:608 pg_ctl.c:676 pg_ctl.c:736
 msgid "Is postmaster running?\n"
 msgstr "ÊÇ·ñ postmaster ÕýÔÚÔËÐÐ?\n"
 
-#: pg_ctl.c:592
+#: pg_ctl.c:614
 #, c-format
 msgid "%s: cannot stop postmaster; postgres is running (PID: %ld)\n"
 msgstr "%s: ÎÞ·¨Í£Ö¹ postmaster; postgres ÕýÔÚÔËÐР(PID: %ld)\n"
 
-#: pg_ctl.c:600 pg_ctl.c:681
+#: pg_ctl.c:622 pg_ctl.c:693
 #, c-format
-msgid "stop signal failed (PID: %ld): %s\n"
-msgstr "Í£Ö¹ÐźÅʧ°Ü (PID: %ld): %s\n"
+msgid "%s: could not send stop signal (PID: %ld): %s\n"
+msgstr "%s: ÎÞ·¨·¢ËÍÍ£Ö¹ÐźŠ(PID: %ld): %s\n"
 
-#: pg_ctl.c:608
-#, c-format
+#: pg_ctl.c:629
 msgid "postmaster shutting down\n"
 msgstr "¹Ø±Õ postmaster\n"
 
-#: pg_ctl.c:615 pg_ctl.c:688
-#, c-format
+#: pg_ctl.c:634 pg_ctl.c:698
 msgid "waiting for postmaster to shut down..."
 msgstr "µÈ´ý postmaster ¹Ø±Õ ..."
 
-#: pg_ctl.c:637 pg_ctl.c:712
-#, c-format
+#: pg_ctl.c:649 pg_ctl.c:715
 msgid " failed\n"
 msgstr " Ê§°Ü\n"
 
-#: pg_ctl.c:639 pg_ctl.c:714
+#: pg_ctl.c:651 pg_ctl.c:717
 #, c-format
 msgid "%s: postmaster does not shut down\n"
 msgstr "%s: postmaster Ã»ÓйرÕ\n"
 
-#: pg_ctl.c:643 pg_ctl.c:719
-#, c-format
-msgid "done\n"
-msgstr "Íê³É\n"
-
-#: pg_ctl.c:645 pg_ctl.c:721
+#: pg_ctl.c:656 pg_ctl.c:722
 #, c-format
 msgid "postmaster stopped\n"
 msgstr "postmaster ÒѾ­¹Ø±Õ\n"
 
-#: pg_ctl.c:665
-msgid ""
-"Is postmaster running?\n"
-"starting postmaster anyway\n"
-msgstr ""
-"ÊÇ·ñ postmaster ÕýÔÚÔËÐÐ?\n"
-"³¢ÊÔÆô¶¯ postmaster\n"
+#: pg_ctl.c:677
+msgid "starting postmaster anyway\n"
+msgstr "ÕýÔÚ³¢ÊÔÆô¶¯ postmaster\n"
 
-#: pg_ctl.c:672
+#: pg_ctl.c:684
 #, c-format
 msgid "%s: cannot restart postmaster; postgres is running (PID: %ld)\n"
 msgstr "%s: ÎÞ·¨ÖØÆô postmaster; postgres ÕýÔÚÔËÐР(PID: %ld)\n"
 
-#: pg_ctl.c:675 pg_ctl.c:744
+#: pg_ctl.c:687 pg_ctl.c:745
 msgid "Please terminate postgres and try again.\n"
 msgstr "ÇëÖÕÖ¹ postgres ÔÙÖØÊÔ.\n"
 
-#: pg_ctl.c:741
+#: pg_ctl.c:742
 #, c-format
 msgid "%s: cannot reload postmaster; postgres is running (PID: %ld)\n"
 msgstr "%s: ÎÞ·¨ÖØÔØ postmaser; postgres ÕýÔÚÔËÐР(PID: %ld)\n"
 
-#: pg_ctl.c:750
+#: pg_ctl.c:751
 #, c-format
-msgid "reload signal failed (PID: %ld): %s\n"
-msgstr "ÖØÔØÐźÅʧ°Ü (PID: %ld): %s\n"
+msgid "%s: could not send reload signal (PID: %ld): %s\n"
+msgstr "%s: ÎÞ·¨·¢ËÍÖØÔØÐźŠ(PID: %ld): %s\n"
 
 #: pg_ctl.c:756
-#, c-format
 msgid "postmaster signaled\n"
 msgstr "postmaster ·¢³öÐźÅ\n"
 
 #: pg_ctl.c:771
 #, c-format
-msgid "%s: postmaster or postgres not running\n"
+msgid "%s: neither postmaster nor postgres running\n"
 msgstr "%s: postmaster »òÕß postgres Ã»ÓÐÔËÐÐ\n"
 
 #: pg_ctl.c:777
@@ -190,163 +182,155 @@ msgstr "%s: postmaster 
 
 #: pg_ctl.c:800
 #, c-format
-msgid "signal %d failed (PID: %ld): %s\n"
-msgstr "ÐźŠ%d Ê§°Ü (PID: %ld): %s\n"
+msgid "%s: could not send signal %d (PID: %ld): %s\n"
+msgstr "%s: ÎÞ·¨·¢ËÍÐźŠ%d (PID: %ld): %s\n"
 
-#: pg_ctl.c:831
-msgid "Unable to find exe"
-msgstr "ÎÞ·¨ÕÒµ½Ö´ÐÐÎļþ"
+#: pg_ctl.c:833
+#, c-format
+msgid "%s: could not find own program executable\n"
+msgstr "%s: ÎÞ·¨ÕÒµ½Ö´ÐÐÎļþ\n"
 
-#: pg_ctl.c:878 pg_ctl.c:910
-msgid "Unable to open service manager\n"
-msgstr "ÎÞ·¨´ò¿ª·þÎñ¹ÜÀíÆ÷\n"
+#: pg_ctl.c:842
+#, c-format
+msgid "%s: could not find postmaster program executable\n"
+msgstr "%s: ÎÞ·¨ÕÒµ½ postmaster ³ÌÐòµÄÖ´ÐÐÎļþ\n"
 
-#: pg_ctl.c:884
+#: pg_ctl.c:896 pg_ctl.c:928
 #, c-format
-msgid "Service \"%s\" already registered\n"
-msgstr "·þÎñ \"%s\" ÒѾ­×¢²áÁË\n"
+msgid "%s: could not open service manager\n"
+msgstr "%s: ÎÞ·¨´ò¿ª·þÎñ¹ÜÀíÆ÷\n"
 
-#: pg_ctl.c:895
+#: pg_ctl.c:902
 #, c-format
-msgid "Unable to register service \"%s\" [%d]\n"
-msgstr "ÎÞ·¨×¢²á·þÎñ \"%s\" [%d]\n"
+msgid "%s: service \"%s\" already registered\n"
+msgstr "%s: ·þÎñ \"%s\" ÒѾ­×¢²áÁË\n"
 
-#: pg_ctl.c:916
+#: pg_ctl.c:913
 #, c-format
-msgid "Service \"%s\" not registered\n"
-msgstr "·þÎñ \"%s\" Ã»ÓÐ×¢²á\n"
+msgid "%s: could not register service \"%s\": error code %d\n"
+msgstr "%s: ÎÞ·¨×¢²á·þÎñ \"%s\": ´íÎóÂë %d\n"
 
-#: pg_ctl.c:923
+#: pg_ctl.c:934
 #, c-format
-msgid "Unable to open service \"%s\" [%d]\n"
-msgstr "ÎÞ·¨´ò¿ª·þÎñ \"%s\" [%d]\n"
+msgid "%s: service \"%s\" not registered\n"
+msgstr "%s: ·þÎñ \"%s\" Ã»ÓÐ×¢²á\n"
 
-#: pg_ctl.c:930
+#: pg_ctl.c:941
 #, c-format
-msgid "Unable to unregister service \"%s\" [%d]\n"
-msgstr "ÎÞ·¨È¡Ïû×¢²á·þÎñ \"%s\" [%d]\n"
+msgid "%s: could not open service \"%s\": error code %d\n"
+msgstr "%s: ÎÞ·¨´ò¿ª·þÎñ \"%s\": ´íÎóÂë %d\n"
 
-#: pg_ctl.c:1067
+#: pg_ctl.c:948
 #, c-format
-msgid ""
-"\n"
-"Try \"%s --help\" for more information.\n"
-msgstr ""
-"\n"
-"ÇëÓà\"%s --help\" »ñÈ¡¸ü¶àµÄÐÅÏ¢.\n"
+msgid "%s: could not unregister service \"%s\": error code %d\n"
+msgstr "%s: ÎÞ·¨×¢Ïú·þÎñ \"%s\": ´íÎóÂë %d\n"
 
-#: pg_ctl.c:1075
+#: pg_ctl.c:1085
+#, c-format
+msgid "Try \"%s --help\" for more information.\n"
+msgstr "ÊÔÓà\"%s --help\" »ñÈ¡¸ü¶àµÄÐÅÏ¢.\n"
+
+#: pg_ctl.c:1093
 #, c-format
 msgid ""
 "%s is a utility to start, stop, restart, reload configuration files,\n"
-"report the status of a PostgreSQL server, or kill a PostgreSQL process\n"
+"report the status of a PostgreSQL server, or signal a PostgreSQL process.\n"
 "\n"
 msgstr ""
 "%s ÊÇÒ»¸öÆô¶¯, Í£Ö¹, ÖØÆô, ÖØÔØÅäÖÃÎļþ, ±¨¸æ PostgreSQL ·þÎñÆ÷״̬,\n"
 "»òÕßɱµô PostgreSQL ½ø³ÌµÄ¹¤¾ß\n"
 "\n"
 
-#: pg_ctl.c:1077
+#: pg_ctl.c:1095
 #, c-format
 msgid "Usage:\n"
 msgstr "ʹÓ÷½·¨:\n"
 
-#: pg_ctl.c:1078
+#: pg_ctl.c:1096
 #, c-format
 msgid "  %s start   [-w] [-D DATADIR] [-s] [-l FILENAME] [-o \"OPTIONS\"]\n"
 msgstr "  %s start   [-w] [-D Êý¾ÝĿ¼] [-s] [-l ÎļþÃû] [-o \"Ñ¡Ïî\"]\n"
 
-#: pg_ctl.c:1079
+#: pg_ctl.c:1097
 #, c-format
 msgid "  %s stop    [-W] [-D DATADIR] [-s] [-m SHUTDOWN-MODE]\n"
 msgstr "  %s stop    [-W] [-D Êý¾ÝĿ¼] [-s] [-m ¹Ø±Õģʽ]\n"
 
-#: pg_ctl.c:1080
+#: pg_ctl.c:1098
 #, c-format
 msgid ""
 "  %s restart [-w] [-D DATADIR] [-s] [-m SHUTDOWN-MODE] [-o \"OPTIONS\"]\n"
 msgstr "  %s restart [-w] [-D Êý¾ÝĿ¼] [-s] [-m ¹Ø±Õģʽ] [-o \"Ñ¡Ïî\"]\n"
 
-#: pg_ctl.c:1081
+#: pg_ctl.c:1099
 #, c-format
 msgid "  %s reload  [-D DATADIR] [-s]\n"
 msgstr "  %s reload  [-D Êý¾ÝĿ¼] [-s]\n"
 
-#: pg_ctl.c:1082
+#: pg_ctl.c:1100
 #, c-format
 msgid "  %s status  [-D DATADIR]\n"
 msgstr "  %s status  [-D Êý¾ÝĿ¼]\n"
 
-#: pg_ctl.c:1083
+#: pg_ctl.c:1101
 #, c-format
-msgid "  %s kill    SIGNALNAME PROCESSID\n"
-msgstr "  %s kill    ÐźÅÃû³Æ ½ø³Ì ID\n"
+msgid "  %s kill    SIGNALNAME PID\n"
+msgstr "  %s kill    ÐźÅÃû³Æ ½ø³ÌºÅ\n"
 
-#: pg_ctl.c:1085
+#: pg_ctl.c:1103
 #, c-format
 msgid ""
-"  %s register   [-N servicename] [-U username] [-P password] [-D DATADIR] [-"
-"w] [-o \"OPTIONS\"]\n"
+"  %s register   [-N SERVICENAME] [-U USERNAME] [-P PASSWORD] [-D DATADIR]\n"
+"                    [-w] [-o \"OPTIONS\"]\n"
 msgstr ""
-"  %s register   [-N ·þÎñÃû³Æ] [-U Óû§Ãû] [-P ¿ÚÁî] [-D DATADIR] [-"
-"w] [-o \"Ñ¡Ïî\"]\n"
+"  %s register   [-N ·þÎñÃû³Æ] [-U Óû§Ãû] [-P ¿ÚÁî] [-D Êý¾ÝĿ¼]\n"
+"                    [-w] [-o \"Ñ¡Ïî\"]\n"
 
-#: pg_ctl.c:1086
+#: pg_ctl.c:1105
 #, c-format
-msgid "  %s unregister [-N servicename]\n"
+msgid "  %s unregister [-N SERVICENAME]\n"
 msgstr "  %s unregister [-N ·þÎñÃû³Æ]\n"
 
-#: pg_ctl.c:1088
+#: pg_ctl.c:1108
 #, c-format
-msgid "Common options:\n"
-msgstr "ÆÕͨѡÏî:\n"
+msgid ""
+"\n"
+"Common options:\n"
+msgstr ""
+"\n"
+"ÆÕͨѡÏî:\n"
 
-#: pg_ctl.c:1089
+#: pg_ctl.c:1109
 #, c-format
 msgid "  -D, --pgdata DATADIR   location of the database storage area\n"
 msgstr "  -D, --pgdata Êý¾ÝĿ¼  Êý¾Ý´æ´¢µÄλÖÃ\n"
 
-#: pg_ctl.c:1090
-#, c-format
-msgid "  -s, --silent only print errors, no informational messages\n"
-msgstr "  -s, --silent Ö»´òÓ¡´íÎóÐÅÏ¢, Ã»ÓÐÆäËûÐÅÏ¢\n"
-
-#: pg_ctl.c:1092
-#, c-format
-msgid "  -N       service name with which to register PostgreSQL server\n"
-msgstr "  -N       ×¢²áµ½ PostgreSQL ·þÎñÆ÷µÄ·þÎñÃû³Æ\n"
-
-#: pg_ctl.c:1093
-#, c-format
-msgid "  -P       password of account to register PostgreSQL server\n"
-msgstr "  -P       ×¢²áµ½ PostgreSQL ·þÎñÆ÷ÕÊ»§µÄ¿ÚÁî\n"
-
-#: pg_ctl.c:1094
+#: pg_ctl.c:1110
 #, c-format
-msgid "  -U       user name of account to register PostgreSQL server\n"
-msgstr "  -U       ×¢²áµ½ PostgreSQL ·þÎñÆ÷ÕÊ»§µÄÓû§Ãû\n"
+msgid "  -s, --silent           only print errors, no informational messages\n"
+msgstr "  -s, --silent           Ö»´òÓ¡´íÎóÐÅÏ¢, Ã»ÓÐÆäËûÐÅÏ¢\n"
 
-#: pg_ctl.c:1096
+#: pg_ctl.c:1111
 #, c-format
-msgid "  -w           wait until operation completes\n"
-msgstr "  -w           µÈ´ýÖ±µ½²Ù×÷Íê³É\n"
+msgid "  -w                     wait until operation completes\n"
+msgstr "  -w                     µÈ´ýÖ±µ½²Ù×÷Íê³É\n"
 
-#: pg_ctl.c:1097
+#: pg_ctl.c:1112
 #, c-format
-msgid "  -W           do not wait until operation completes\n"
-msgstr "  -W           ²»Óõȴý²Ù×÷Íê³É\n"
+msgid "  -W                     do not wait until operation completes\n"
+msgstr "  -W                     ²»Óõȴý²Ù×÷Íê³É\n"
 
-#: pg_ctl.c:1098
+#: pg_ctl.c:1113
 #, c-format
-msgid "  --help       show this help, then exit\n"
-msgstr "  --help       ÏÔʾ´Ë°ïÖúÐÅÏ¢, È»ºóÍ˳ö\n"
+msgid "  --help                 show this help, then exit\n"
+msgstr "  --help                 ÏÔʾ´Ë°ïÖúÐÅÏ¢, È»ºóÍ˳ö\n"
 
-#: pg_ctl.c:1099
+#: pg_ctl.c:1114
 #, c-format
-msgid "  --version    output version information, then exit\n"
-msgstr "  --version    Êä³ö°æ±¾ÐÅÏ¢, È»ºóÍ˳ö\n"
+msgid "  --version              output version information, then exit\n"
+msgstr "  --version              ÏÔʾ°æ±¾ÐÅÏ¢, È»ºóÍ˳ö\n"
 
-#: pg_ctl.c:1100
+#: pg_ctl.c:1115
 #, c-format
 msgid ""
 "(The default is to wait for shutdown, but not for start or restart.)\n"
@@ -355,142 +339,200 @@ msgstr ""
 "(ĬÈÏΪ¹Ø±ÕµÈ´ý, µ«²»ÊÇÆô¶¯»òÖØÆô.)\n"
 "\n"
 
-#: pg_ctl.c:1101
+#: pg_ctl.c:1116
+#, c-format
+msgid "If the -D option is omitted, the environment variable PGDATA is used.\n"
+msgstr "Èç¹ûÊ¡ÂÔÁË -D Ñ¡Ïî, ½«Ê¹ÓàPGDATA »·¾³±äÁ¿.\n"
+
+#: pg_ctl.c:1118
 #, c-format
 msgid ""
-"If the -D option is omitted, the environment variable PGDATA is used.\n"
 "\n"
+"Options for start or restart:\n"
 msgstr ""
-"Èç¹ûÊ¡ÂÔÁË -D Ñ¡Ïî, ½«Ê¹ÓàPGDATA »·¾³±äÁ¿.\n"
 "\n"
+"Æô¶¯»òÖØÆôµÄÑ¡Ïî:\n"
 
-#: pg_ctl.c:1102
+#: pg_ctl.c:1119
 #, c-format
-msgid "Options for start or restart:\n"
-msgstr "Æô¶¯»òÖØÆôµÄÑ¡Ïî:\n"
+msgid "  -l, --log FILENAME     write (or append) server log to FILENAME\n"
+msgstr "  -l, --log FILENAME     Ð´Èë (»ò×·¼Ó) ·þÎñÆ÷ÈÕÖ¾µ½Îļþ FILENAME\n"
 
-#: pg_ctl.c:1103
+#: pg_ctl.c:1120
 #, c-format
 msgid ""
-"  -l, --log FILENAME      write (or append) server log to FILENAME.  The\n"
-"                          use of this option is highly recommended.\n"
+"  -o OPTIONS             command line options to pass to the postmaster\n"
+"                         (PostgreSQL server executable)\n"
 msgstr ""
-"  -l, --log FILENAME      Ð´Èë (»ò×·¼Ó) ·þÎñÆ÷ÈÕÖ¾µ½Îļþ FILENAME.\n"
-"                          Ç¿ÁÒ½¨ÒéʹÓôËÑ¡Ïî.\n"
+"  -o OPTIONS             ´«µÝ¸ø postmaster µÄÃüÁîÐÐÑ¡Ïî\n"
+"                         (PostgreSQL ·þÎñÆ÷Ö´ÐÐÎļþ)\n"
 
-#: pg_ctl.c:1105
+#: pg_ctl.c:1122
 #, c-format
-msgid ""
-"  -o OPTIONS              command line options to pass to the postmaster\n"
-"                          (PostgreSQL server executable)\n"
-msgstr ""
-"  -o OPTIONS              ´«µÝ¸ø postmaster µÄÃüÁîÐÐÑ¡Ïî\n"
-"                          (PostgreSQL ·þÎñÆ÷Ö´ÐÐ)\n"
+msgid "  -p PATH-TO-POSTMASTER  normally not necessary\n"
+msgstr "  -p PATH-TO-POSTMASTER  Õý³£Çé¿ö²»ÐèÒª\n"
 
-#: pg_ctl.c:1107
+#: pg_ctl.c:1124
 #, c-format
 msgid ""
-"  -p PATH-TO-POSTMASTER   normally not necessary\n"
 "\n"
+"Options for stop or restart:\n"
 msgstr ""
-"  -p PATH-TO-POSTMASTER   Õý³£Çé¿ö²»ÐèÒª\n"
 "\n"
+"Í£Ö¹»òÖØÆôµÄÑ¡Ïî:\n"
 
-#: pg_ctl.c:1108
+#: pg_ctl.c:1125
 #, c-format
-msgid "Options for stop or restart:\n"
-msgstr "Í£Ö¹»òÖØÆôµÄÑ¡Ïî:\n"
+msgid "  -m SHUTDOWN-MODE   may be \"smart\", \"fast\", or \"immediate\"\n"
+msgstr "  -m SHUTDOWN-MODE   ¿ÉÒÔÊÇ \"smart\", \"fast\", »òÕß \"immediate\"\n"
 
-#: pg_ctl.c:1109
+#: pg_ctl.c:1127
 #, c-format
 msgid ""
-"  -m SHUTDOWN-MODE   may be 'smart', 'fast', or 'immediate'\n"
 "\n"
+"Shutdown modes are:\n"
 msgstr ""
-"  -m SHUTDOWN-MODE   ¿ÉÒÔÊÇ 'smart', 'fast', »òÕß 'immediate'\n"
 "\n"
+"¹Ø±ÕģʽÓÐÈçϼ¸ÖÖ:\n"
 
-#: pg_ctl.c:1110
+#: pg_ctl.c:1128
+#, c-format
+msgid "  smart       quit after all clients have disconnected\n"
+msgstr "  smart       ËùÓпͻ§¶Ë¶Ï¿ªÁ¬½ÓºóÍ˳ö\n"
+
+#: pg_ctl.c:1129
 #, c-format
-msgid "Allowed signal names for kill:\n"
-msgstr "ÔÊÐí¹Ø±ÕµÄÐźÅÃû³Æ:\n"
+msgid "  fast        quit directly, with proper shutdown\n"
+msgstr "  fast        Ö±½ÓÍ˳ö, ÕýÈ·µÄ¹Ø±Õ\n"
 
-#: pg_ctl.c:1111
+#: pg_ctl.c:1130
+#, c-format
+msgid ""
+"  immediate   quit without complete shutdown; will lead to recovery on "
+"restart\n"
+msgstr "  immediate   ²»ÍêÈ«µÄ¹Ø±ÕÍ˳ö; ÖØÆôºó»Ö¸´\n"
+
+#: pg_ctl.c:1132
 #, c-format
 msgid ""
-"  HUP INT QUIT ABRT TERM USR1 USR2\n"
 "\n"
+"Allowed signal names for kill:\n"
 msgstr ""
-"  HUP INT QUIT ABRT TERM USR1 USR2\n"
 "\n"
+"ÔÊÐí¹Ø±ÕµÄÐźÅÃû³Æ:\n"
 
-#: pg_ctl.c:1112
+#: pg_ctl.c:1136
 #, c-format
-msgid "Shutdown modes are:\n"
-msgstr "¹Ø±ÕģʽÓÐÈçϼ¸ÖÖ:\n"
+msgid ""
+"\n"
+"Options for register and unregister:\n"
+msgstr ""
+"\n"
+"×¢²á»ò×¢ÏúµÄÑ¡Ïî:\n"
 
-#: pg_ctl.c:1113
+#: pg_ctl.c:1137
 #, c-format
-msgid "  smart       quit after all clients have disconnected\n"
-msgstr "  smart       ËùÓпͻ§¶Ë¶Ï¿ªÁ¬½ÓºóÍ˳ö\n"
+msgid ""
+"  -N SERVICENAME  service name with which to register PostgreSQL server\n"
+msgstr "  -N ·þÎñÃû³Æ     ×¢²áµ½ PostgreSQL ·þÎñÆ÷µÄ·þÎñÃû³Æ\n"
 
-#: pg_ctl.c:1114
+#: pg_ctl.c:1138
 #, c-format
-msgid "  fast        quit directly, with proper shutdown\n"
-msgstr "  fast        Ö±½ÓÍ˳ö, ÕýÈ·µÄ¹Ø±Õ\n"
+msgid "  -P PASSWORD     password of account to register PostgreSQL server\n"
+msgstr "  -P ¿ÚÁî         ×¢²áµ½ PostgreSQL ·þÎñÆ÷ÕÊ»§µÄ¿ÚÁî\n"
 
-#: pg_ctl.c:1115
+#: pg_ctl.c:1139
+#, c-format
+msgid "  -U USERNAME     user name of account to register PostgreSQL server\n"
+msgstr "  -U Óû§Ãû       ×¢²áµ½ PostgreSQL ·þÎñÆ÷ÕÊ»§µÄÓû§Ãû\n"
+
+#: pg_ctl.c:1142
 #, c-format
 msgid ""
-"  immediate   quit without complete shutdown; will lead to recovery on "
-"restart\n"
 "\n"
+"Report bugs to <pgsql-bugs@postgresql.org>.\n"
 msgstr ""
-"  immediate   ²»ÍêÈ«µÄ¹Ø±ÕÍ˳ö; ÖØÆôºó»Ö¸´\n"
 "\n"
+"³ô³æ±¨¸æÖÁ <pgsql-bugs@postgresql.org>.\n"
 
-#: pg_ctl.c:1116
+#: pg_ctl.c:1167
 #, c-format
-msgid "Report bugs to <pgsql-bugs@postgresql.org>.\n"
-msgstr "´íÎ󱨸æÖÁ <pgsql-bugs@postgresql.org>.\n"
+msgid "%s: unrecognized shutdown mode \"%s\"\n"
+msgstr "%s: ÎÞЧµÄ¹Ø±Õģʽ \"%s\"\n"
 
-#: pg_ctl.c:1141
+#: pg_ctl.c:1200
 #, c-format
-msgid "%s: invalid shutdown mode %s\n"
-msgstr "%s: ÎÞЧµÄ¹Ø±Õģʽ %s\n"
+msgid "%s: unrecognized signal name \"%s\"\n"
+msgstr "%s: ÎÞЧÐźÅÃû³Æ \"%s\"\n"
 
-#: pg_ctl.c:1174
+#: pg_ctl.c:1265
 #, c-format
-msgid "%s: invalid signal \"%s\"\n"
-msgstr "%s: ÎÞЧÐźŠ\"%s\"\n"
+msgid ""
+"%s: cannot be run as root\n"
+"Please log in (using, e.g., \"su\") as the (unprivileged) user that will\n"
+"own the server process.\n"
+msgstr ""
+"%s: ÎÞ·¨ÒÔ root Óû§ÔËÐÐ\n"
+"ÇëÒÔ·þÎñÆ÷½ø³ÌËùÊôÓû§ (·ÇÌØȨÓû§) µÇ¼ (»òʹÓà\"su\")\n"
+"\n"
 
-#: pg_ctl.c:1309
+#: pg_ctl.c:1358
 #, c-format
 msgid "%s: invalid option %s\n"
 msgstr "%s: ÎÞЧѡÏî %s\n"
 
-#: pg_ctl.c:1320
+#: pg_ctl.c:1369
 #, c-format
-msgid "%s: extra operation mode %s\n"
-msgstr "%s: ¶îÍâµÄ²Ù×÷ģʽ %s\n"
+msgid "%s: too many command-line arguments (first is \"%s\")\n"
+msgstr "%s: ÃüÁîÐвÎÊýÌ«¶à (µÚÒ»¸öÊÇ \"%s\")\n"
 
-#: pg_ctl.c:1339
+#: pg_ctl.c:1388
 #, c-format
-msgid "%s: invalid kill syntax\n"
-msgstr "%s: ÎÞЧµÄ kill Óï·¨\n"
+msgid "%s: missing arguments for kill mode\n"
+msgstr "%s: È±ÉÙ kill Ä£Ê½²ÎÊý\n"
 
-#: pg_ctl.c:1357
+#: pg_ctl.c:1406
 #, c-format
-msgid "%s: invalid operation mode %s\n"
-msgstr "%s: ÎÞЧµÄ²Ù×÷ģʽ %s\n"
+msgid "%s: unrecognized operation mode \"%s\"\n"
+msgstr "%s: ÎÞЧµÄ²Ù×÷ģʽ \"%s\"\n"
 
-#: pg_ctl.c:1367
+#: pg_ctl.c:1416
 #, c-format
 msgid "%s: no operation specified\n"
 msgstr "%s: Ã»ÓÐÖ¸¶¨²Ù×÷\n"
 
-#: pg_ctl.c:1383
+#: pg_ctl.c:1432
 #, c-format
 msgid ""
 "%s: no database directory specified and environment variable PGDATA unset\n"
 msgstr "%s: Ã»ÓÐÖ¸¶¨Êý¾ÝĿ¼, ²¢ÇÒûÓÐÉèÖàPGDATA »·¾³±äÁ¿\n"
+
+#: ../../port/exec.c:193 ../../port/exec.c:307 ../../port/exec.c:350
+#, c-format
+msgid "could not identify current directory: %s"
+msgstr "ÎÞ·¨È·Èϵ±Ç°Ä¿Â¼: %s"
+
+#: ../../port/exec.c:323 ../../port/exec.c:359
+#, c-format
+msgid "could not change directory to \"%s\""
+msgstr "ÎÞ·¨½øÈëĿ¼ \"%s\""
+
+#: ../../port/exec.c:338
+#, c-format
+msgid "could not read symbolic link \"%s\""
+msgstr "ÎÞ·¨¶ÁÈ¡·ûºÅÁ´½á \"%s\""
+
+#: ../../port/exec.c:569
+#, c-format
+msgid "child process exited with exit code %d"
+msgstr "×Ó½ø³ÌÒÑÍ˳ö, Í˳öÂëΪ %d"
+
+#: ../../port/exec.c:572
+#, c-format
+msgid "child process was terminated by signal %d"
+msgstr "×Ó½ø³Ì±»ÐźŠ%d ÖÕÖ¹"
+
+#: ../../port/exec.c:575
+#, c-format
+msgid "child process exited with unrecognized status %d"
+msgstr "×Ó½ø³ÌÒÑÍ˳ö, Î´Öª×´Ì¬ %d"
index 27491a8091ba9dad1a558578e35c8c35dbdaf60c..98cdeb1f0de40d45dfd2c23d108a44ccee53039c 100644 (file)
@@ -1,12 +1,12 @@
 # simplified Chinese translation file for pg_dump and friends
 # Weiping He <laser@zhengmai.com.cn>, 2001.
-# $PostgreSQL: pgsql/src/bin/pg_dump/po/zh_CN.po,v 1.6 2004/09/13 12:35:12 petere Exp $
+# $PostgreSQL: pgsql/src/bin/pg_dump/po/zh_CN.po,v 1.7 2004/12/11 19:09:05 petere Exp $
 #
 msgid ""
 msgstr ""
 "Project-Id-Version: PostgreSQL 7.4\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2004-08-31 08:57+0000\n"
+"POT-Creation-Date: 2004-12-02 09:55+0000\n"
 "PO-Revision-Date: 2004-01-10 13:46:59+0800\n"
 "Last-Translator: Bao Wei <weibao@qmail.zhengmai.net.cn>\n"
 "Language-Team: Weiping He <laser@zhengmai.com.cn>\n"
@@ -18,18 +18,18 @@ msgstr ""
 msgid "User name: "
 msgstr "Óû§Ãû: "
 
-#: pg_dump.c:399 pg_restore.c:256 pg_dumpall.c:239
+#: pg_dump.c:399 pg_restore.c:256 pg_dumpall.c:264
 #, c-format
 msgid "%s: invalid -X option -- %s\n"
 msgstr "%s: ÎÞЧµÄ -X Ñ¡Ïî -- %s\n"
 
 #: pg_dump.c:401 pg_dump.c:415 pg_dump.c:424 pg_restore.c:258 pg_restore.c:268
-#: pg_restore.c:285 pg_dumpall.c:241 pg_dumpall.c:250 pg_dumpall.c:267
+#: pg_restore.c:285 pg_dumpall.c:266 pg_dumpall.c:275 pg_dumpall.c:292
 #, c-format
 msgid "Try \"%s --help\" for more information.\n"
 msgstr "ÊäÈë \"%s --help\" »ñÈ¡¸ü¶àµÄÐÅÏ¢.\n"
 
-#: pg_dump.c:422 pg_dumpall.c:265
+#: pg_dump.c:422 pg_dumpall.c:290
 #, c-format
 msgid "%s: too many command-line arguments (first is \"%s\")\n"
 msgstr "%s: ÃüÁîÐвÎÊýÌ«¶à (µÚÒ»¸öÊÇ \"%s\")\n"
@@ -100,7 +100,7 @@ msgstr ""
 "%s °ÑÒ»¸öÊý¾Ý¿âת´¢Îª´¿Îı¾Îļþ»òÕßÊÇÆäËü¸ñʽ.\n"
 "\n"
 
-#: pg_dump.c:663 pg_restore.c:359 pg_dumpall.c:312
+#: pg_dump.c:663 pg_restore.c:359 pg_dumpall.c:337
 #, c-format
 msgid "Usage:\n"
 msgstr "Ó÷¨:\n"
@@ -110,7 +110,7 @@ msgstr "
 msgid "  %s [OPTION]... [DBNAME]\n"
 msgstr "  %s [Ñ¡Ïî]... [Êý¾Ý¿âÃû×Ö]\n"
 
-#: pg_dump.c:666 pg_restore.c:362 pg_dumpall.c:315
+#: pg_dump.c:666 pg_restore.c:362 pg_dumpall.c:340
 #, c-format
 msgid ""
 "\n"
@@ -149,17 +149,17 @@ msgstr "  -v, --verbose            
 msgid "  -Z, --compress=0-9       compression level for compressed formats\n"
 msgstr "  -Z, --compress=0-9       ±»Ñ¹Ëõ¸ñʽµÄѹËõ¼¶±ð\n"
 
-#: pg_dump.c:673 pg_restore.c:369 pg_dumpall.c:318
+#: pg_dump.c:673 pg_restore.c:369 pg_dumpall.c:343
 #, c-format
 msgid "  --help                   show this help, then exit\n"
 msgstr "  --help                   ÏÔʾ´Ë°ïÖúÐÅÏ¢, È»ºóÍ˳ö\n"
 
-#: pg_dump.c:674 pg_restore.c:370 pg_dumpall.c:319
+#: pg_dump.c:674 pg_restore.c:370 pg_dumpall.c:344
 #, c-format
 msgid "  --version                output version information, then exit\n"
 msgstr "  --version                Êä³ö°æ±¾ÐÅÏ¢, È»ºóÍ˳ö\n"
 
-#: pg_dump.c:676 pg_restore.c:372 pg_dumpall.c:320
+#: pg_dump.c:676 pg_dumpall.c:345
 #, c-format
 msgid ""
 "\n"
@@ -168,7 +168,7 @@ msgstr ""
 "\n"
 "¿ØÖÆÊä³öÄÚÈÝÑ¡Ïî:\n"
 
-#: pg_dump.c:677 pg_dumpall.c:321
+#: pg_dump.c:677 pg_dumpall.c:346
 #, c-format
 msgid "  -a, --data-only          dump only the data, not the schema\n"
 msgstr "  -a, --data-only          Ö»×ª´¢Êý¾Ý,²»°üÀ¨Ä£Ê½\n"
@@ -189,14 +189,14 @@ msgid ""
 "  -C, --create             include commands to create database in dump\n"
 msgstr "  -C, --create             ÔÚת´¢ÖаüÀ¨ÃüÁî,ÒԱ㴴½¨Êý¾Ý¿â\n"
 
-#: pg_dump.c:681 pg_dumpall.c:323
+#: pg_dump.c:681 pg_dumpall.c:348
 #, c-format
 msgid ""
 "  -d, --inserts            dump data as INSERT, rather than COPY, commands\n"
 msgstr ""
 "  -d, --inserts            Ïó INSERT Ò»ÑùµÄת´¢Êý¾Ý, Ï൱ÓÚ COPY, ÃüÁî\n"
 
-#: pg_dump.c:682 pg_dumpall.c:324
+#: pg_dump.c:682 pg_dumpall.c:349
 #, c-format
 msgid ""
 "  -D, --column-inserts     dump data as INSERT commands with column names\n"
@@ -207,7 +207,7 @@ msgstr "  -D, --column-inserts     
 msgid "  -n, --schema=SCHEMA      dump the named schema only\n"
 msgstr "  -n, --schema=SCHEMA      Ö»×ª´¢Ö¸¶¨Ãû³ÆµÄģʽ\n"
 
-#: pg_dump.c:684 pg_dumpall.c:326
+#: pg_dump.c:684 pg_dumpall.c:351
 #, c-format
 msgid "  -o, --oids               include OIDs in dump\n"
 msgstr "  -o, --oids               ÔÚת´¢ÖаüÀ¨ OID\n"
@@ -221,7 +221,7 @@ msgstr ""
 "  -O, --no-owner           ÔÚÃ÷ÎĸñʽÖÐ, ÉèÖöÔÏóËùÊôÕßʱ²»Êä³ö\n"
 "                           Ã÷Áî\n"
 
-#: pg_dump.c:687 pg_dumpall.c:328
+#: pg_dump.c:687 pg_dumpall.c:353
 #, c-format
 msgid "  -s, --schema-only        dump only the schema, no data\n"
 msgstr "  -s, --schema-only        Ö»×ª´¢Ä£Ê½, ²»°üÀ¨Êý¾Ý\n"
@@ -240,12 +240,12 @@ msgstr ""
 msgid "  -t, --table=TABLE        dump the named table only\n"
 msgstr "  -t, --table=TABLE        Ö»×ª´¢Ö¸¶¨Ãû³ÆµÄ±í\n"
 
-#: pg_dump.c:691 pg_dumpall.c:330
+#: pg_dump.c:691 pg_dumpall.c:355
 #, c-format
 msgid "  -x, --no-privileges      do not dump privileges (grant/revoke)\n"
 msgstr "  -x, --no-privileges      ²»Òª×ª´¢È¨ÏÞ (grant/revoke)\n"
 
-#: pg_dump.c:692 pg_dumpall.c:331
+#: pg_dump.c:692 pg_dumpall.c:356
 #, c-format
 msgid ""
 "  -X disable-dollar-quoting, --disable-dollar-quoting\n"
@@ -254,7 +254,7 @@ msgstr ""
 "  -X disable-dollar-quoting, --disable-dollar-quoting\n"
 "                           È¡ÏûÃÀÔª (·ûºÅ) ÒýºÅ, Ê¹ÓàSQL ±ê×¼ÒýºÅ\n"
 
-#: pg_dump.c:694 pg_restore.c:388 pg_dumpall.c:333
+#: pg_dump.c:694 pg_restore.c:388 pg_dumpall.c:358
 #, c-format
 msgid ""
 "  -X disable-triggers, --disable-triggers\n"
@@ -263,7 +263,7 @@ msgstr ""
 "  -X disable-triggers, --disable-triggers\n"
 "                           ÔÚÖ»»Ö¸´Êý¾ÝµÄ¹ý³ÌÖÐÈ¡Ïû´¥·¢Æ÷\n"
 
-#: pg_dump.c:696 pg_restore.c:390 pg_dumpall.c:335
+#: pg_dump.c:696 pg_restore.c:390 pg_dumpall.c:360
 #, c-format
 msgid ""
 "  -X use-set-session-authorization, --use-set-session-authorization\n"
@@ -274,7 +274,7 @@ msgstr ""
 "                           Ê¹ÓàSESSION AUTHORIZATION ÃüÁî´úÌæ\n"
 "                           OWNER TO ÃüÁî\n"
 
-#: pg_dump.c:700 pg_restore.c:394 pg_dumpall.c:339
+#: pg_dump.c:700 pg_restore.c:394 pg_dumpall.c:364
 #, c-format
 msgid ""
 "\n"
@@ -283,22 +283,22 @@ msgstr ""
 "\n"
 "Áª½ÓÑ¡Ïî:\n"
 
-#: pg_dump.c:701 pg_restore.c:395 pg_dumpall.c:340
+#: pg_dump.c:701 pg_restore.c:395 pg_dumpall.c:365
 #, c-format
 msgid "  -h, --host=HOSTNAME      database server host or socket directory\n"
 msgstr "  -h, --host=Ö÷»úÃû        Êý¾Ý¿â·þÎñÆ÷µÄÖ÷»úÃû»òÌ×½Ó×ÖĿ¼\n"
 
-#: pg_dump.c:702 pg_restore.c:396 pg_dumpall.c:341
+#: pg_dump.c:702 pg_restore.c:396 pg_dumpall.c:366
 #, c-format
 msgid "  -p, --port=PORT          database server port number\n"
 msgstr "  -p, --port=¶Ë¿ÚºÅ        Êý¾Ý¿â·þÎñÆ÷µÄ¶Ë¿ÚºÅ\n"
 
-#: pg_dump.c:703 pg_restore.c:397 pg_dumpall.c:342
+#: pg_dump.c:703 pg_restore.c:397 pg_dumpall.c:367
 #, c-format
 msgid "  -U, --username=NAME      connect as specified database user\n"
 msgstr "  -U, --username=Ãû×Ö      ÒÔÖ¸¶¨µÄÊý¾Ý¿âÓû§Áª½Ó\n"
 
-#: pg_dump.c:704 pg_restore.c:398 pg_dumpall.c:343
+#: pg_dump.c:704 pg_restore.c:398 pg_dumpall.c:368
 #, c-format
 msgid ""
 "  -W, --password           force password prompt (should happen "
@@ -318,12 +318,12 @@ msgstr ""
 "µÄÊýÖµ.\n"
 "\n"
 
-#: pg_dump.c:708 pg_restore.c:402 pg_dumpall.c:346
+#: pg_dump.c:708 pg_restore.c:402 pg_dumpall.c:371
 #, c-format
 msgid "Report bugs to <pgsql-bugs@postgresql.org>.\n"
 msgstr "±¨¸æ´íÎóÖÁ <pgsql-bugs@postgresql.org>.\n"
 
-#: pg_dump.c:716 pg_backup_archiver.c:1208
+#: pg_dump.c:716 pg_backup_archiver.c:1219
 msgid "*** aborted because of error\n"
 msgstr "*** ÒòΪ´íÎóÍ˳ö\n"
 
@@ -339,120 +339,120 @@ msgid ""
 "failed.\n"
 msgstr "ת´¢±í \"%s\" µÄÄÚÈݵĠSQL ÃüÁîʧ°Ü: PQendcopy() Ê§°Ü.\n"
 
-#: pg_dump.c:911 pg_dump.c:8058
+#: pg_dump.c:911 pg_dump.c:8050
 #, c-format
 msgid "Error message from server: %s"
 msgstr "À´×Ô·þÎñÆ÷µÄ´íÎóÐÅÏ¢: %s"
 
-#: pg_dump.c:912 pg_dump.c:8059
+#: pg_dump.c:912 pg_dump.c:8051
 #, c-format
 msgid "The command was: %s\n"
 msgstr "ÃüÁîÊÇ: %s\n"
 
-#: pg_dump.c:1182
+#: pg_dump.c:1183
 msgid "saving database definition\n"
 msgstr "±£´æÊý¾Ý¿â¶¨Òå\n"
 
-#: pg_dump.c:1228
+#: pg_dump.c:1229
 #, c-format
 msgid "missing pg_database entry for database \"%s\"\n"
 msgstr "ȱÉÙÓÃÓÚ \"%s\" µÄ pg_database ¼Ç¼\n"
 
-#: pg_dump.c:1235
+#: pg_dump.c:1236
 #, c-format
 msgid ""
 "query returned more than one (%d) pg_database entry for database \"%s\"\n"
 msgstr "²éѯΪÊý¾Ý¿â \"%2$s\" ·µ»ØÁ˳¬¹ýÒ»Ìõ (%1$d) pg_database ¼Ç¼\n"
 
-#: pg_dump.c:1341
+#: pg_dump.c:1344
 msgid "saving encoding\n"
 msgstr "±£´æ±àÂë\n"
 
-#: pg_dump.c:1391
+#: pg_dump.c:1394
 msgid "saving large objects\n"
 msgstr "±£´æ´ó¶ÔÏó\n"
 
-#: pg_dump.c:1424
+#: pg_dump.c:1427
 #, c-format
 msgid "dumpBlobs(): could not open large object: %s"
 msgstr "dumpBlobs(): ÎÞ·¨´ò¿ª´ó¶ÔÏó: %s"
 
-#: pg_dump.c:1437
+#: pg_dump.c:1440
 #, c-format
 msgid "dumpBlobs(): error reading large object: %s"
 msgstr "dumpBlobs(): ¶ÁÈ¡´ó¶ÔÏó´íÎó: %s"
 
-#: pg_dump.c:1571
+#: pg_dump.c:1557
 #, c-format
 msgid "WARNING: owner of schema \"%s\" appears to be invalid\n"
 msgstr "¾¯¸æ: Ä£Ê½ \"%s\" µÄËùÓÐÕß·Ç·¨\n"
 
-#: pg_dump.c:1588
+#: pg_dump.c:1574
 #, c-format
 msgid "specified schema \"%s\" does not exist\n"
 msgstr "Ö¸¶¨µÄģʽ \"%s\" ²»´æÔÚ\n"
 
-#: pg_dump.c:1625
+#: pg_dump.c:1611
 #, c-format
 msgid "schema with OID %u does not exist\n"
 msgstr "OID %u µÄģʽ²»´æÔÚ\n"
 
-#: pg_dump.c:1810
+#: pg_dump.c:1796
 #, c-format
 msgid "WARNING: owner of data type \"%s\" appears to be invalid\n"
 msgstr "¾¯¸æ: Êý¾ÝÀàÐÍ \"%s\" µÄËùÓÐÕß·Ç·¨\n"
 
-#: pg_dump.c:1908
+#: pg_dump.c:1894
 #, c-format
 msgid "WARNING: owner of operator \"%s\" appears to be invalid\n"
 msgstr "¾¯¸æ: ²Ù×÷·û \"%s\" µÄËùÓÐÕß·Ç·¨\n"
 
-#: pg_dump.c:2074
+#: pg_dump.c:2060
 #, c-format
 msgid "WARNING: owner of operator class \"%s\" appears to be invalid\n"
 msgstr "¾¯¸æ: ²Ù×÷·û±í \"%s\" ÎÞЧ\n"
 
-#: pg_dump.c:2178
+#: pg_dump.c:2164
 #, c-format
 msgid "WARNING: owner of aggregate function \"%s\" appears to be invalid\n"
 msgstr "¾¯¸æ: ¾Û¼¯º¯Êý \"%s\" µÄËùÓÐÕß·Ç·¨\n"
 
-#: pg_dump.c:2312
+#: pg_dump.c:2298
 #, c-format
 msgid "WARNING: owner of function \"%s\" appears to be invalid\n"
 msgstr "¾¯¸æ: º¯Êý \"%s\" µÄËùÓÐÕß·Ç·¨\n"
 
-#: pg_dump.c:2590
+#: pg_dump.c:2576
 #, c-format
 msgid "WARNING: owner of table \"%s\" appears to be invalid\n"
 msgstr "¾¯¸æ: Êý¾Ý±í \"%s\" µÄËùÓÐÕß·Ç·¨\n"
 
-#: pg_dump.c:2609
+#: pg_dump.c:2595
 #, c-format
 msgid "specified table \"%s\" does not exist\n"
 msgstr "Ö¸¶¨µÄ±í \"%s\" ²»´æÔÚ\n"
 
-#: pg_dump.c:2716
+#: pg_dump.c:2702
 #, c-format
 msgid "reading indexes for table \"%s\"\n"
 msgstr "Ϊ±í \"%s\" ¶ÁÈ¡Ë÷Òý\n"
 
-#: pg_dump.c:2953
+#: pg_dump.c:2939
 #, c-format
 msgid "reading foreign key constraints for table \"%s\"\n"
 msgstr "Ϊ±í \"%s\" ¶ÁÈ¡Íâ¼üÔ¼Êø\n"
 
-#: pg_dump.c:3229
+#: pg_dump.c:3215
 #, c-format
 msgid "reading triggers for table \"%s\"\n"
 msgstr "Ϊ±í \"%s\" ¶ÁÈ¡´¥·¢Æ÷\n"
 
-#: pg_dump.c:3301
+#: pg_dump.c:3287
 #, c-format
 msgid "expected %d triggers on table \"%s\" but found %d\n"
 msgstr "Ô¤ÆÚÔÚ±í \"%2$s\" ÉÏÓд¥·¢Æ÷ %1$d , È´·¢ÏÖ %3$d\n"
 
-#: pg_dump.c:3346
+#: pg_dump.c:3332
 #, c-format
 msgid ""
 "query produced null referenced table name for foreign key trigger \"%s\" on "
@@ -461,164 +461,165 @@ msgstr ""
 "¶ÔÔÚ±í \"%2$s\" ÉϵÄÍâ¼ü´¥·¢Æ÷ \"%1$s\" ÉϵIJéѯÉú³ÉÁË NULL ¸öÒýÓñí(±íµÄ "
 "OID ÊÇ: %3$u)\n"
 
-#: pg_dump.c:3647
+#: pg_dump.c:3633
 #, c-format
 msgid "finding the columns and types of table \"%s\"\n"
 msgstr "ÕýÔÚ²éÕÒ±í \"%s\" µÄ×ֶκÍÀàÐÍ\n"
 
-#: pg_dump.c:3733
+#: pg_dump.c:3719
 #, c-format
 msgid "invalid column numbering in table \"%s\"\n"
 msgstr "ÔÚ±í \"%s\" ÖеÄ×ֶθöÊýÊÇÎÞЧµÄ\n"
 
-#: pg_dump.c:3767
+#: pg_dump.c:3753
 #, c-format
 msgid "finding default expressions of table \"%s\"\n"
 msgstr "ÕýÔÚ²éÕÒ±í \"%s\" µÄĬÈϱí´ïʽ\n"
 
-#: pg_dump.c:3850
+#: pg_dump.c:3836
 #, c-format
 msgid "invalid adnum value %d for table \"%s\"\n"
 msgstr "±í \"%2$s\" µÄÎÞЧ adnum Öµ %1$d\n"
 
-#: pg_dump.c:3868
+#: pg_dump.c:3854
 #, c-format
 msgid "finding check constraints for table \"%s\"\n"
 msgstr "ÕýÔÚΪ±í \"%s\" ²éÕÒ¼ì²éÔ¼Êø\n"
 
-#: pg_dump.c:3932
+#: pg_dump.c:3918
 #, c-format
 msgid "expected %d check constraints on table \"%s\" but found %d\n"
 msgstr "Ô¤¼ÆÓР%d ¸ö¼ì²éÔ¼ÊøÔÚ±í \"%s\" ÉÏ, µ«Ö»ÕÒµ½ %d ¸ö\n"
 
-#: pg_dump.c:3934
+#: pg_dump.c:3920
 msgid "(The system catalogs might be corrupted.)\n"
 msgstr "(ϵͳ±í¿ÉÄÜËð»µÁË.)\n"
 
-#: pg_dump.c:4621 pg_dump.c:4786 pg_dump.c:5185 pg_dump.c:5570 pg_dump.c:5867
-#: pg_dump.c:6067 pg_dump.c:6250
+#: pg_dump.c:4605 pg_dump.c:4771 pg_dump.c:5172 pg_dump.c:5558 pg_dump.c:5857
+#: pg_dump.c:6059 pg_dump.c:6244
 #, c-format
 msgid "Got %d rows instead of one from: %s"
 msgstr "Òѵõ½ %d Ìõ¼Ç¼Ìæ´úÀ´×Ô %s µÄÒ»Ìõ"
 
-#: pg_dump.c:4894
+#: pg_dump.c:4880
 #, c-format
 msgid "query yielded no rows: %s\n"
 msgstr "²éѯ·ÅÆú, Ã»ÓмǼ: %s\n"
 
-#: pg_dump.c:5241
+#: pg_dump.c:5228
 msgid "WARNING: could not parse proargnames array\n"
 msgstr "¾¯¸æ: ÎÞ·¨·ÖÎö proargnames Êý×é\n"
 
-#: pg_dump.c:5278
+#: pg_dump.c:5265
 #, c-format
 msgid "unrecognized provolatile value for function \"%s\"\n"
 msgstr "º¯Êý \"%s\" µÄÒâÍâÕýÏòÒ×ʧֵ\n"
 
-#: pg_dump.c:5792
+#: pg_dump.c:5782
 #, c-format
 msgid "WARNING: could not find operator with OID %s\n"
 msgstr "¾¯¸æ: Î´ÕÒµ½ OID Îª %s µÄ²Ù×÷·û\n"
 
-#: pg_dump.c:6278
+#: pg_dump.c:6272
 #, c-format
 msgid ""
 "WARNING: aggregate function %s could not be dumped correctly for this "
 "database version; ignored\n"
 msgstr "¾¯¸æ: ÎÞ·¨Îª´Ë°æ±¾µÄÊý¾Ý¿âÕýȷת´¢¾Û¼¯º¯Êý \"%s\"; ºöÂÔ\n"
 
-#: pg_dump.c:6410
+#: pg_dump.c:6406
 #, c-format
 msgid "could not parse ACL list (%s) for object \"%s\" (%s)\n"
 msgstr "ÎÞ·¨Îª¶ÔÏó \"%2$s\" ·ÖÎö ACL Áбí (%1$s) (%3$s)\n"
 
-#: pg_dump.c:6503
+#: pg_dump.c:6500
 #, c-format
 msgid "query to obtain definition of view \"%s\" returned no data\n"
 msgstr "»ñÈ¡ÊÓͼ \"%s\" ¶¨ÒåµÄ²éѯûÓзµ»ØÊý¾Ý\n"
 
-#: pg_dump.c:6506
+#: pg_dump.c:6503
 #, c-format
 msgid ""
 "query to obtain definition of view \"%s\" returned more than one definition\n"
 msgstr "»ñÈ¡ÊÓͼ \"%s\" ¶¨ÒåµÄ²éѯ·µ»Ø³¬¹ýÒ»¸ö¶¨Òå\n"
 
-#: pg_dump.c:6515
+#: pg_dump.c:6512
 #, c-format
 msgid "definition of view \"%s\" appears to be empty (length zero)\n"
 msgstr "ÊÓͼ \"%s\" µÄ¶¨ÒåÊÇ¿ÕµÄ(Á㳤)\n"
 
-#: pg_dump.c:6822
+#: pg_dump.c:6814
 #, c-format
 msgid "invalid column number %d for table \"%s\"\n"
 msgstr "¶ÔÓÚ±í \"%2$s\" ×ֶθöÊý %1$d ÊÇÎÞЧµÄ\n"
 
-#: pg_dump.c:6923
+#: pg_dump.c:6916
 #, c-format
-msgid "missing index for constraint %s\n"
-msgstr "¶ÔÓÚÔ¼Êø %s È±ÉÙË÷Òý\n"
+msgid "missing index for constraint \"%s\"\n"
+msgstr "¶ÔÓÚÔ¼Êø \"%s\" È±ÉÙË÷Òý\n"
 
-#: pg_dump.c:7090
-msgid "unexpected constraint type\n"
-msgstr "ÒâÍâµÄÔ¼ÊøÀàÐÍ\n"
+#: pg_dump.c:7076
+#, c-format
+msgid "unrecognized constraint type: %c\n"
+msgstr "δ֪µÄÔ¼ÊøÀàÐÍ: %c\n"
 
-#: pg_dump.c:7132
+#: pg_dump.c:7118
 msgid "inserted invalid OID\n"
 msgstr "²åÈëÁË·Ç·¨ OID\n"
 
-#: pg_dump.c:7138
+#: pg_dump.c:7124
 #, c-format
 msgid "maximum system OID is %u\n"
 msgstr "×î´óϵͳ OID ÊÇ %u\n"
 
-#: pg_dump.c:7179
+#: pg_dump.c:7165
 msgid "missing pg_database entry for this database\n"
 msgstr "ȱÉÙ´ËÊý¾Ý¿âµÄ pg_database ¼Ç¼\n"
 
-#: pg_dump.c:7184
+#: pg_dump.c:7170
 msgid "found more than one pg_database entry for this database\n"
 msgstr "ÕÒµ½´ËÊý¾Ý¿âµÄ¶àÓÚÒ»ÌõµÄ pg_database ¼Ç¼\n"
 
-#: pg_dump.c:7216
+#: pg_dump.c:7202
 msgid "could not find entry for pg_indexes in pg_class\n"
 msgstr "ÔÚ pg_class ÖÐÎÞ·¨Îª pg_indexes ÕÒµ½¼Ç¼\n"
 
-#: pg_dump.c:7221
+#: pg_dump.c:7207
 msgid "found more than one entry for pg_indexes in pg_class\n"
 msgstr "ÔÚ pg_class ±íÖÐÕÒµ½¶àÌõ pg_indexes µÄ¼Ç¼\n"
 
-#: pg_dump.c:7270
+#: pg_dump.c:7256
 #, c-format
 msgid "query to get data of sequence \"%s\" returned %d rows (expected 1)\n"
 msgstr "»ñÈ¡ÐòÁР\"%s\" µÄÊý¾ÝµÄ²éѯ·µ»ØÁË %d ÐР(Ô¤ÆÚÊÇ 1)\n"
 
-#: pg_dump.c:7279
+#: pg_dump.c:7265
 #, c-format
 msgid "query to get data of sequence \"%s\" returned name \"%s\"\n"
 msgstr "»ñÈ¡ÐòÁР\"%s\" µÄÊý¾ÝµÄ²éѯ·µ»ØÁËÃû×Ö \"%s\"\n"
 
-#: pg_dump.c:7516
+#: pg_dump.c:7506
 #, c-format
 msgid "invalid argument string (%s) for trigger \"%s\" on table \"%s\"\n"
 msgstr "¸ø±í \"%3$s\" ÉϵĴ¥·¢Æ÷ \"%2$s\" µÄ´íÎó²ÎÊý (%1$s)\n"
 
-#: pg_dump.c:7622
+#: pg_dump.c:7613
 #, c-format
 msgid ""
 "query to get rule \"%s\" for table \"%s\" failed: wrong number of rows "
 "returned"
 msgstr "»ñÈ¡±í \"%s\" µÄ¹æÔò \"%s\" ²éѯʧ°Ü: ·µ»ØÁË´íÎóµÄÐÐÊý"
 
-#: pg_dump.c:7689
-msgid "fetching dependency data\n"
-msgstr "È¡»Ø´ÓÊôÊý¾Ý\n"
+#: pg_dump.c:7681
+msgid "reading dependency data\n"
+msgstr "¶ÁÈ¡´ÓÊôÊý¾Ý\n"
 
-#: pg_dump.c:7866
+#: pg_dump.c:7858
 #, c-format
 msgid "query yielded %d rows instead of one: %s\n"
 msgstr "²éѯ·ÅÆú %d Ìõ¼Ç¼, ÓÉÒ»Ìõ¼Ç¼´úÌæ: %s\n"
 
-#: pg_dump.c:8053
+#: pg_dump.c:8045
 msgid "SQL command failed\n"
 msgstr "SQL ÃüÁîʧ°Ü\n"
 
@@ -694,12 +695,12 @@ msgstr "
 msgid "reading triggers\n"
 msgstr "¶ÁÈ¡´¥·¢Æ÷\n"
 
-#: common.c:421 common.c:553 common.c:587 pg_backup_archiver.c:616
-#: pg_backup_archiver.c:959 pg_backup_archiver.c:1073
-#: pg_backup_archiver.c:1511 pg_backup_archiver.c:1661
-#: pg_backup_archiver.c:1694 pg_backup_custom.c:141 pg_backup_custom.c:146
+#: common.c:421 common.c:553 common.c:587 pg_backup_archiver.c:619
+#: pg_backup_archiver.c:970 pg_backup_archiver.c:1084
+#: pg_backup_archiver.c:1522 pg_backup_archiver.c:1672
+#: pg_backup_archiver.c:1705 pg_backup_custom.c:141 pg_backup_custom.c:146
 #: pg_backup_custom.c:152 pg_backup_custom.c:167 pg_backup_custom.c:544
-#: pg_backup_db.c:156 pg_backup_db.c:232 pg_backup_files.c:112
+#: pg_backup_db.c:157 pg_backup_db.c:233 pg_backup_files.c:112
 #: pg_backup_tar.c:168 pg_backup_tar.c:960
 msgid "out of memory\n"
 msgstr "ÄÚ´æÓþ¡\n"
@@ -721,312 +722,312 @@ msgstr "
 msgid "archiver"
 msgstr "¹éµµ"
 
-#: pg_backup_archiver.c:125
+#: pg_backup_archiver.c:126
 msgid "could not close output archive file\n"
 msgstr "ÎÞ·¨¹Ø±ÕÊä³ö¹éµµÎļþ\n"
 
-#: pg_backup_archiver.c:152
+#: pg_backup_archiver.c:153
 msgid "-C and -c are incompatible options\n"
 msgstr "-C ºÍ -c ÊÇ»¥²»¼æÈݵÄÑ¡Ïî\n"
 
-#: pg_backup_archiver.c:159
+#: pg_backup_archiver.c:160
 msgid "connecting to database for restore\n"
 msgstr "Ϊ»Ö¸´Êý¾Ý¿âÓëÊý¾Ý¿âÁª½Ó\n"
 
-#: pg_backup_archiver.c:161
+#: pg_backup_archiver.c:162
 msgid "direct database connections are not supported in pre-1.3 archives\n"
 msgstr "1.3 ÒÔÇ°µÄ¹éµµÀï²»Ö§³ÖÖ±½ÓÊý¾Ý¿âÁª½Ó\n"
 
-#: pg_backup_archiver.c:204
+#: pg_backup_archiver.c:205
 msgid "implied data-only restore\n"
 msgstr "Òþº¬µÄÖ»»Ö¸´Êý¾Ý\n"
 
-#: pg_backup_archiver.c:237
+#: pg_backup_archiver.c:238
 #, c-format
 msgid "dropping %s %s\n"
 msgstr "ɾ³ý %s %s\n"
 
-#: pg_backup_archiver.c:263 pg_backup_archiver.c:265
+#: pg_backup_archiver.c:264 pg_backup_archiver.c:266
 #, c-format
 msgid "warning from original dump file: %s\n"
 msgstr "À´×Ôԭʼת´¢ÎļþµÄ¾¯¸æ: %s\n"
 
-#: pg_backup_archiver.c:272
+#: pg_backup_archiver.c:273
 #, c-format
 msgid "creating %s %s\n"
 msgstr "´´½¨ %s %s\n"
 
-#: pg_backup_archiver.c:280
+#: pg_backup_archiver.c:281
 #, c-format
-msgid "connecting to new database \"%s\" as user \"%s\"\n"
-msgstr "ÒÔÓû§ \"%2$s\" Éí·ÝÁª½Óµ½ÐÂÊý¾Ý¿â \"%1$s\"\n"
+msgid "connecting to new database \"%s\"\n"
+msgstr "Áª½Óµ½ÐÂÊý¾Ý¿â \"%s\"\n"
 
-#: pg_backup_archiver.c:305
+#: pg_backup_archiver.c:306
 msgid ""
 "cannot restore from compressed archive (not configured for compression "
 "support)\n"
 msgstr "ÎÞ·¨´ÓѹËõµÄ¹éµµÖлָ´ (δÅäÖÃѹËõÖ§³Ö)\n"
 
-#: pg_backup_archiver.c:325
+#: pg_backup_archiver.c:326
 msgid "WARNING: skipping large-object restoration\n"
 msgstr "¾¯¸æ: ºöÂÔ´ó¶ÔÏóµÄ»Ö¸´\n"
 
-#: pg_backup_archiver.c:335
+#: pg_backup_archiver.c:336
 #, c-format
 msgid "restoring data for table \"%s\"\n"
 msgstr "Ϊ±í \"%s\" »Ö¸´Êý¾Ý\n"
 
-#: pg_backup_archiver.c:367 pg_backup_archiver.c:453
+#: pg_backup_archiver.c:368 pg_backup_archiver.c:454
 #, c-format
 msgid "fixing up large-object cross-reference for \"%s\"\n"
 msgstr "Ϊ \"%s\" ÐÞ¸´´ó¶ÔÏóµÄ½»²æÒýÓÃ\n"
 
-#: pg_backup_archiver.c:378
+#: pg_backup_archiver.c:379
 #, c-format
 msgid "executing %s %s\n"
 msgstr "Ö´ÐР%s %s\n"
 
-#: pg_backup_archiver.c:398
+#: pg_backup_archiver.c:399
 #, c-format
-msgid "setting owner and acl for %s %s\n"
-msgstr "Ϊ %s %s ÉèÖÃÊôÖ÷ºÍȨÏÞ (acl)\n"
+msgid "setting owner and privileges for %s %s\n"
+msgstr "Ϊ %s %s ÉèÖÃÊôÖ÷ºÍȨÏÞ\n"
 
-#: pg_backup_archiver.c:516
+#: pg_backup_archiver.c:517
 msgid "disabling triggers\n"
 msgstr "¹Ø±Õ´¥·¢Æ÷\n"
 
-#: pg_backup_archiver.c:555
+#: pg_backup_archiver.c:556
 msgid "enabling triggers\n"
 msgstr "´ò¿ª´¥·¢Æ÷\n"
 
-#: pg_backup_archiver.c:590
+#: pg_backup_archiver.c:591
 msgid ""
 "internal error -- WriteData cannot be called outside the context of a "
 "DataDumper routine\n"
 msgstr "ÄÚ²¿´íÎó -- WriteData ²»ÄÜÔÚ DataDumper ¹ý³ÌµÄ»·¾³Ö®Íâµ÷ÓÃ\n"
 
-#: pg_backup_archiver.c:723
+#: pg_backup_archiver.c:734
 msgid "large-object output not supported in chosen format\n"
 msgstr "Ñ¡¶¨µÄ¸ñʽ²»Ö§³Ö´ó¶ÔÏóÊä³ö\n"
 
-#: pg_backup_archiver.c:763 pg_backup_archiver.c:851
+#: pg_backup_archiver.c:774 pg_backup_archiver.c:862
 msgid "committing large-object transactions\n"
 msgstr "Ìá½»´ó¶ÔÏóÊÂÎñ\n"
 
-#: pg_backup_archiver.c:773
+#: pg_backup_archiver.c:784
 #, c-format
 msgid "restored %d large objects\n"
 msgstr "»Ö¸´ÁË %d ¸ö´ó¶ÔÏó\n"
 
-#: pg_backup_archiver.c:790
+#: pg_backup_archiver.c:801
 msgid "cannot restore large objects without a database connection\n"
 msgstr "ûÓÐÊý¾Ý¿âÁª½ÓʱÎÞ·¨»Ö¸´´ó¶ÔÏó\n"
 
-#: pg_backup_archiver.c:804
+#: pg_backup_archiver.c:815
 msgid "starting large-object transactions\n"
 msgstr "¿ªÊ¼´ó¶ÔÏóÊÂÎñ\n"
 
-#: pg_backup_archiver.c:812
+#: pg_backup_archiver.c:823
 msgid "could not create large object\n"
 msgstr "ÎÞ·¨´´½¨´ó¶ÔÏó\n"
 
-#: pg_backup_archiver.c:814
+#: pg_backup_archiver.c:825
 #, c-format
 msgid "restoring large object with OID %u as %u\n"
 msgstr "°Ñ OID Îª %u µÄ´ó¶ÔÏó»Ö¸´Îª %u\n"
 
-#: pg_backup_archiver.c:820
+#: pg_backup_archiver.c:831
 msgid "could not open large object\n"
 msgstr "ÎÞ·¨´ò¿ª´ó¶ÔÏó\n"
 
-#: pg_backup_archiver.c:835
+#: pg_backup_archiver.c:846
 #, c-format
 msgid "wrote remaining %lu bytes of large-object data (result = %lu)\n"
 msgstr "дʣÏÂÁË %lu ×ֽڵĴó¶ÔÏóÊý¾Ý (½á¹û = %lu)\n"
 
-#: pg_backup_archiver.c:838 pg_backup_archiver.c:1130
+#: pg_backup_archiver.c:849 pg_backup_archiver.c:1141
 #, c-format
 msgid "could not write to large object (result: %lu, expected: %lu)\n"
 msgstr "ÎÞ·¨Ð´Èë´ó¶ÔÏó (½á¹û: %lu, Ô¤ÆÚ: %lu)\n"
 
-#: pg_backup_archiver.c:884
+#: pg_backup_archiver.c:895
 msgid "could not open TOC file\n"
 msgstr "ÎÞ·¨´ò¿ª TOC Îļþ\n"
 
-#: pg_backup_archiver.c:905
+#: pg_backup_archiver.c:916
 #, c-format
 msgid "WARNING: line ignored: %s\n"
 msgstr "¾¯¸æ: ºöÂÔµÄÐÐ: %s\n"
 
-#: pg_backup_archiver.c:912
+#: pg_backup_archiver.c:923
 #, c-format
 msgid "could not find entry for ID %d\n"
 msgstr "ÎÞ·¨Îª ID %d ÕÒµ½¼Ç¼\n"
 
-#: pg_backup_archiver.c:922 pg_backup_files.c:156 pg_backup_files.c:439
+#: pg_backup_archiver.c:933 pg_backup_files.c:156 pg_backup_files.c:439
 #, c-format
 msgid "could not close TOC file: %s\n"
 msgstr "ÎÞ·¨¹Ø±Õ TOC Îļþ: %s\n"
 
-#: pg_backup_archiver.c:1021 pg_backup_files.c:130
+#: pg_backup_archiver.c:1032 pg_backup_files.c:130
 #, c-format
 msgid "could not open output file: %s\n"
 msgstr "ÎÞ·¨´ò¿ªÊä³öÎļþ: %s\n"
 
-#: pg_backup_archiver.c:1037
+#: pg_backup_archiver.c:1048
 #, c-format
 msgid "could not close output file: %s\n"
 msgstr "ÎÞ·¨¹Ø±ÕÊä³öÎļþ: %s\n"
 
-#: pg_backup_archiver.c:1126
+#: pg_backup_archiver.c:1137
 #, c-format
 msgid "wrote %lu bytes of large object data (result = %lu)\n"
 msgstr "дÁË %lu ×ֽڵĴó¶ÔÏóÊý¾Ý (½á¹û = %lu)\n"
 
-#: pg_backup_archiver.c:1148
+#: pg_backup_archiver.c:1159
 msgid "could not write to compressed archive\n"
 msgstr "ÎÞ·¨Ð´ÈëѹËõµÄ¹éµµ\n"
 
-#: pg_backup_archiver.c:1156
+#: pg_backup_archiver.c:1167
 msgid "could not write to custom output routine\n"
 msgstr "ÎÞ·¨Ð´³öµ½¿Í»§Êä³ö¹ý³Ì\n"
 
-#: pg_backup_archiver.c:1171
+#: pg_backup_archiver.c:1182
 #, c-format
 msgid "could not write to output file (%lu != %lu)\n"
 msgstr "ÎÞ·¨Ð´³öµ½Êä³öÎļþ (%lu != %lu)\n"
 
-#: pg_backup_archiver.c:1256
+#: pg_backup_archiver.c:1267
 msgid "Error while INITIALIZING:\n"
 msgstr "INITIALIZING Ê±´íÎó:\n"
 
-#: pg_backup_archiver.c:1261
+#: pg_backup_archiver.c:1272
 msgid "Error while PROCESSING TOC:\n"
 msgstr "PROCESSING TOC Ê±´íÎó:\n"
 
-#: pg_backup_archiver.c:1266
+#: pg_backup_archiver.c:1277
 msgid "Error while FINALIZING:\n"
 msgstr "FINALIZING Ê±´íÎó:\n"
 
-#: pg_backup_archiver.c:1271
+#: pg_backup_archiver.c:1282
 #, c-format
-msgid "Error from TOC Entry %d; %u %u %s %s %s\n"
+msgid "Error from TOC entry %d; %u %u %s %s %s\n"
 msgstr "´íÎóÀ´×Ô TOC ¼Ç¼ %d; %u %u %s %s %s\n"
 
-#: pg_backup_archiver.c:1404
+#: pg_backup_archiver.c:1415
 #, c-format
 msgid "Unexpected data offset flag %d\n"
 msgstr "ÒâÍâµÄÊý¾ÝÆ«ÒƱêÖ¾ %d\n"
 
-#: pg_backup_archiver.c:1417
+#: pg_backup_archiver.c:1428
 msgid "file offset in dump file is too large\n"
 msgstr "ÔÚת´¢ÎļþÖеÄÎļþÆ«ÒÆÁ¿Ì«´ó\n"
 
-#: pg_backup_archiver.c:1529
+#: pg_backup_archiver.c:1540
 msgid "attempting to ascertain archive format\n"
 msgstr "ÊÔͼȷÈϹ鵵¸ñʽ\n"
 
-#: pg_backup_archiver.c:1549 pg_backup_files.c:148
+#: pg_backup_archiver.c:1560 pg_backup_files.c:148
 #, c-format
 msgid "could not open input file: %s\n"
 msgstr "ÎÞ·¨´ò¿ªÊäÈëÎļþ: %s\n"
 
-#: pg_backup_archiver.c:1556
+#: pg_backup_archiver.c:1567
 #, c-format
 msgid "could not read input file: %s\n"
 msgstr "ÎÞ·¨¶ÁÈ¡ÊäÈëÎļþ: %s\n"
 
-#: pg_backup_archiver.c:1558
+#: pg_backup_archiver.c:1569
 #, c-format
 msgid "input file is too short (read %lu, expected 5)\n"
 msgstr "ÊäÈëÎļþÌ«¶Ì (¶ÁÁË %lu, Ô¤ÆÚ 5)\n"
 
-#: pg_backup_archiver.c:1611
+#: pg_backup_archiver.c:1622
 msgid "input file does not appear to be a valid archive (too short?)\n"
 msgstr "ÊäÈëÎļþ¿´ÉÏÈ¥²»ÏóÓÐЧµÄ¹éµµ (Ì«¶Ì?)\n"
 
-#: pg_backup_archiver.c:1614
+#: pg_backup_archiver.c:1625
 msgid "input file does not appear to be a valid archive\n"
 msgstr "ÊäÈëÎļþ¿´ÉÏÈ¥²»ÏóÓÐЧµÄ¹éµµ\n"
 
-#: pg_backup_archiver.c:1632
+#: pg_backup_archiver.c:1643
 #, c-format
 msgid "read %lu bytes into lookahead buffer\n"
 msgstr "¶ÁÈ¡ %lu ×Ö½Úµ½Ô¤ÀÀ»º³åÇø\n"
 
-#: pg_backup_archiver.c:1639
+#: pg_backup_archiver.c:1650
 #, c-format
 msgid "could not close the input file after reading header: %s\n"
 msgstr "¶ÁÈ¡Í·Ö®ºóÎÞ·¨¹Ø±ÕÊäÈëÎļþ: %s\n"
 
-#: pg_backup_archiver.c:1656
+#: pg_backup_archiver.c:1667
 #, c-format
 msgid "allocating AH for %s, format %d\n"
 msgstr "Ϊ %s ·ÖÅä AH, ¸ñʽ %d\n"
 
-#: pg_backup_archiver.c:1710
+#: pg_backup_archiver.c:1721
 #, c-format
 msgid "archive format is %d\n"
 msgstr "¹éµµ¸ñʽÊÇ %d\n"
 
-#: pg_backup_archiver.c:1738
+#: pg_backup_archiver.c:1749
 #, c-format
 msgid "unrecognized file format \"%d\"\n"
 msgstr "²»¿Éʶ±ðµÄÎļþ¸ñʽ \"%d\"\n"
 
-#: pg_backup_archiver.c:1865
+#: pg_backup_archiver.c:1877
 #, c-format
 msgid "entry ID %d out of range -- perhaps a corrupt TOC\n"
 msgstr "¼Ç¼ ID %d ³¬³ö·¶Î§ - ¿ÉÄÜÊÇËð»µÁ˵ĠTOC\n"
 
-#: pg_backup_archiver.c:1947
+#: pg_backup_archiver.c:1962
 #, c-format
 msgid "read TOC entry %d (ID %d) for %s %s\n"
 msgstr "Ϊ %3$s %4$s ¶ÁÈ¡ TOC ¼Ç¼ %1$d (ID %2$d)\n"
 
-#: pg_backup_archiver.c:2109
+#: pg_backup_archiver.c:2124
 #, c-format
 msgid "could not set session user to \"%s\": %s"
 msgstr "ÎÞ·¨ÉèÖûỰÓû§Îª \"%s\": %s"
 
-#: pg_backup_archiver.c:2494
+#: pg_backup_archiver.c:2569
 msgid ""
 "WARNING: requested compression not available in this installation -- archive "
 "will be uncompressed\n"
 msgstr "¾¯¸æ: ËùÒªÇóµÄѹËõÎÞ·¨ÔÚ±¾´Î°²×°ÖлñÈ¡ - ¹éµµ½«²»±»Ñ¹Ëõ\n"
 
-#: pg_backup_archiver.c:2527
+#: pg_backup_archiver.c:2604
 msgid "did not find magic string in file header\n"
 msgstr "ÔÚÎļþÍ·ÖÐûÓÐÕÒµ½Ä§Êõ×Ö´®\n"
 
-#: pg_backup_archiver.c:2541
+#: pg_backup_archiver.c:2618
 #, c-format
 msgid "unsupported version (%d.%d) in file header\n"
 msgstr "ÔÚÎļþÍ·ÖÐÓв»Ö§³ÖµÄ°æ±¾ (%d.%d)\n"
 
-#: pg_backup_archiver.c:2546
+#: pg_backup_archiver.c:2623
 #, c-format
 msgid "sanity check on integer size (%lu) failed\n"
 msgstr "ÕûÊý³ß´ç (%lu) µÄ½¡È«¼ì²éʧ°Ü\n"
 
-#: pg_backup_archiver.c:2550
+#: pg_backup_archiver.c:2627
 msgid ""
 "WARNING: archive was made on a machine with larger integers, some operations "
 "may fail\n"
 msgstr "¾¯¸æ: ¹éµµÊÇÔÚһ̨ÓÐןü´óµÄÕûÊýµÄ»úÆ÷ÉÏÖÆ×÷µÄ, ÓÐЩ²Ù×÷¿ÉÄÜʧ°Ü\n"
 
-#: pg_backup_archiver.c:2560
+#: pg_backup_archiver.c:2637
 #, c-format
 msgid "expected format (%d) differs from format found in file (%d)\n"
 msgstr "Ô¤Æڵĸñʽ (%d) ºÍÔÚÎļþÀïÕÒµ½µÄ¸ñʽ (%d) ²»Í¬\n"
 
-#: pg_backup_archiver.c:2576
+#: pg_backup_archiver.c:2653
 msgid ""
 "WARNING: archive is compressed, but this installation does not support "
 "compression -- no data will be available\n"
 msgstr "¾¯¸æ: ¹éµµÊÇѹËõ¹ýµÄ, µ«Êǵ±Ç°°²×°²»Ö§³ÖѹËõ - Êý¾Ý½«²»¿ÉʹÓÃ\n"
 
-#: pg_backup_archiver.c:2594
+#: pg_backup_archiver.c:2671
 msgid "WARNING: invalid creation date in header\n"
 msgstr "¾¯¸æ: ÔÚÍ·ÖеĴ´½¨ÈÕÆÚÎÞЧ\n"
 
@@ -1140,32 +1141,32 @@ msgstr "
 msgid "could not get server_version from libpq\n"
 msgstr "ÎÞ·¨´Ó libpq »ñÈ¡·þÎñÆ÷°æ±¾\n"
 
-#: pg_backup_db.c:78
+#: pg_backup_db.c:79
 #, c-format
 msgid "server version: %s; %s version: %s\n"
 msgstr "·þÎñÆ÷°æ±¾: %s; %s °æ±¾: %s\n"
 
-#: pg_backup_db.c:81
+#: pg_backup_db.c:82
 msgid "proceeding despite version mismatch\n"
 msgstr "ºöÂÔ°æ±¾²îÒì¼ÌÐø´¦Àí\n"
 
-#: pg_backup_db.c:83
+#: pg_backup_db.c:84
 msgid ""
 "aborting because of version mismatch  (Use the -i option to proceed "
 "anyway.)\n"
 msgstr "Òò°æ±¾²îÒìÍ˳ö (Óà-i Ñ¡ÏîºöÂÔ²îÒì¼ÌÐø´¦Àí.)\n"
 
-#: pg_backup_db.c:150
+#: pg_backup_db.c:151
 #, c-format
 msgid "connecting to database \"%s\" as user \"%s\"\n"
 msgstr "ÒÔÓû§ \"%2$s\" µÄÉí·ÝÁª½Óµ½Êý¾Ý¿â \"%1$s\"\n"
 
-#: pg_backup_db.c:154 pg_backup_db.c:187 pg_backup_db.c:230 pg_backup_db.c:259
-#: pg_dumpall.c:916 pg_dumpall.c:942
+#: pg_backup_db.c:155 pg_backup_db.c:187 pg_backup_db.c:231 pg_backup_db.c:260
+#: pg_dumpall.c:941 pg_dumpall.c:967
 msgid "Password: "
 msgstr "¿ÚÁî: "
 
-#: pg_backup_db.c:166
+#: pg_backup_db.c:167
 msgid "failed to reconnect to database\n"
 msgstr "ÓëÊý¾Ý¿âÖØÐÂÁª½Óʧ°Ü\n"
 
@@ -1174,108 +1175,108 @@ msgstr "
 msgid "could not reconnect to database: %s"
 msgstr "ÎÞ·¨ÓëÊý¾Ý¿âÖØÐÂÁª½Ó: %s"
 
-#: pg_backup_db.c:226
+#: pg_backup_db.c:227
 msgid "already connected to a database\n"
 msgstr "ÒѾ­ÓëÒ»¸öÊý¾Ý¿âÁª½Ó\n"
 
-#: pg_backup_db.c:249
+#: pg_backup_db.c:250
 msgid "failed to connect to database\n"
 msgstr "ÓëÊý¾Ý¿âÁª½Óʧ°Ü\n"
 
-#: pg_backup_db.c:268
+#: pg_backup_db.c:269
 #, c-format
 msgid "connection to database \"%s\" failed: %s"
 msgstr "ÓëÊý¾Ý¿â \"%s\" Áª½Óʧ°Ü: %s"
 
-#: pg_backup_db.c:283
+#: pg_backup_db.c:284
 #, c-format
 msgid "%s"
 msgstr "%s"
 
-#: pg_backup_db.c:312
+#: pg_backup_db.c:313
 #, c-format
 msgid "%s: no result from server\n"
 msgstr "%s: Ã»ÓÐÀ´×Ô·þÎñÆ÷µÄ½á¹û\n"
 
-#: pg_backup_db.c:319
+#: pg_backup_db.c:320
 msgid "COPY command executed in non-primary connection\n"
 msgstr "COPY ÃüÁîÔÚûÓÐÖ÷Áª½ÓµÄ»·¾³ÏÂÖ´ÐÐ\n"
 
-#: pg_backup_db.c:409
+#: pg_backup_db.c:410
 msgid "error returned by PQputline\n"
 msgstr "PQputline ·µ»Ø´íÎó\n"
 
-#: pg_backup_db.c:420
+#: pg_backup_db.c:421
 msgid "error returned by PQendcopy\n"
 msgstr "PQendcopy ·µ»Ø´íÎó\n"
 
-#: pg_backup_db.c:480
+#: pg_backup_db.c:481
 msgid "could not execute query"
 msgstr "ÎÞ·¨Ö´Ðвéѯ"
 
-#: pg_backup_db.c:700
+#: pg_backup_db.c:701
 #, c-format
 msgid "could not find OID columns of table \"%s\": %s"
 msgstr "ÎÞ·¨Ñ°ÕÒ±í \"%s\" µÄ OID ×Ö¶Î: %s"
 
-#: pg_backup_db.c:706
+#: pg_backup_db.c:707
 #, c-format
 msgid "no OID type columns in table %s\n"
 msgstr "±í %s ÖÐûÓРOID ÀàÐÍ×Ö¶Î\n"
 
-#: pg_backup_db.c:720
+#: pg_backup_db.c:721
 #, c-format
 msgid "fixing large object cross-references for %s.%s\n"
 msgstr "Ϊ %s.%s ÐÞ²¹´ó¶ÔÏó½»²æÒýÓÃ\n"
 
-#: pg_backup_db.c:759
+#: pg_backup_db.c:760
 #, c-format
 msgid "SQL: %s\n"
 msgstr "SQL: %s\n"
 
-#: pg_backup_db.c:764
+#: pg_backup_db.c:765
 #, c-format
 msgid "could not update column \"%s\" of table \"%s\": %s"
 msgstr "ÎÞ·¨¸üбí \"%2$s\" µÄ×ֶΠ\"%1$s\": %3$s"
 
-#: pg_backup_db.c:769
+#: pg_backup_db.c:770
 #, c-format
 msgid "error while updating column \"%s\" of table \"%s\": %s"
 msgstr "¸üбí \"%2$s\" µÄ×ֶΠ\"%1$s\" Ê±³ö´í: %3$s"
 
-#: pg_backup_db.c:792
+#: pg_backup_db.c:793
 msgid "creating table for large object cross-references\n"
 msgstr "Ϊ´ó¶ÔÏó½»²æÒýÓô´½¨±í\n"
 
-#: pg_backup_db.c:795
+#: pg_backup_db.c:796
 msgid "could not create large object cross-reference table"
 msgstr "ÎÞ·¨´´½¨´ó¶ÔÏó½»²æÒýÓñí"
 
-#: pg_backup_db.c:805
+#: pg_backup_db.c:806
 msgid "creating index for large object cross-references\n"
 msgstr "Ϊ´ó¶ÔÏó½»²æÒýÓô´½¨Ë÷Òý\n"
 
-#: pg_backup_db.c:809
+#: pg_backup_db.c:810
 msgid "could not create index on large object cross-reference table"
 msgstr "ÎÞ·¨ÔÚ´ó¶ÔÏó½»²æÒýÓñíÉÏ´´½¨Ë÷Òý"
 
-#: pg_backup_db.c:822
+#: pg_backup_db.c:823
 msgid "could not create large object cross-reference entry"
 msgstr "ÎÞ·¨´´½¨´ó¶ÔÏó½»²æÒýÓüǼ"
 
-#: pg_backup_db.c:834
+#: pg_backup_db.c:835
 msgid "could not start database transaction"
 msgstr "ÎÞ·¨¿ªÊ¼Êý¾Ý¿âÊÂÎñ"
 
-#: pg_backup_db.c:848
+#: pg_backup_db.c:849
 msgid "could not start transaction for large object cross-references"
 msgstr "ÎÞ·¨Îª´ó¶ÔÏó½»²æÒýÓÃÆô¶¯ÊÂÎñ"
 
-#: pg_backup_db.c:861
+#: pg_backup_db.c:862
 msgid "could not commit database transaction"
 msgstr "ÎÞ·¨Ìá½»Êý¾Ý¿âÊÂÎñ"
 
-#: pg_backup_db.c:874
+#: pg_backup_db.c:875
 msgid "could not commit transaction for large object cross-references"
 msgstr "ÎÞ·¨Îª´ó¶ÔÏó½»²æÒýÓÃÌá½»ÊÂÎñ"
 
@@ -1422,50 +1423,50 @@ msgstr "
 msgid "could not write null block at end of tar archive\n"
 msgstr "ÎÞ·¨ÔÚ tar ¹éµµÄ©Î²Ð´ null ¿é\n"
 
-#: pg_backup_tar.c:1023
+#: pg_backup_tar.c:1027
 msgid "archive member too large for tar format\n"
 msgstr "ÔÚ tar ¸ñʽÖй鵵³ÉԱ̫´ó\n"
 
-#: pg_backup_tar.c:1033
+#: pg_backup_tar.c:1037
 #, c-format
 msgid "write error appending to tar archive (wrote %lu, attempted %lu)\n"
 msgstr "Ïò tar ¹éµµ¸½¼Óʱд´íÎó (дÁË %lu, ÊÔͼд %lu)\n"
 
-#: pg_backup_tar.c:1039
+#: pg_backup_tar.c:1043
 #, c-format
 msgid "could not close tar member: %s\n"
 msgstr "ÎÞ·¨¹Ø±Õ tar ³ÉÔ±: %s\n"
 
-#: pg_backup_tar.c:1048
+#: pg_backup_tar.c:1052
 #, c-format
 msgid "actual file length (%s) does not match expected (%s)\n"
 msgstr "ʵ¼ÊÎļþ³¤¶È (%s) ²»Æ¥ÅäÔ¤Æڵij¤¶È (%s)\n"
 
-#: pg_backup_tar.c:1056
+#: pg_backup_tar.c:1060
 msgid "could not output padding at end of tar member\n"
 msgstr "ÎÞ·¨ÔÚ tar ³ÉԱβ²¿Êä³öÌî³äÄÚÈÝ\n"
 
-#: pg_backup_tar.c:1085
+#: pg_backup_tar.c:1089
 #, c-format
 msgid "moving from position %s to next member at file position %s\n"
 msgstr "´ÓλÖà%s Òƶ¯µ½ÎļþλÖà%s µÄÏÂÒ»¸ö³ÉÔ±\n"
 
-#: pg_backup_tar.c:1096
+#: pg_backup_tar.c:1100
 #, c-format
 msgid "now at file position %s\n"
 msgstr "ÏÖÔÚÔÚÎļþµÄλÖà%s\n"
 
-#: pg_backup_tar.c:1105 pg_backup_tar.c:1132
+#: pg_backup_tar.c:1109 pg_backup_tar.c:1136
 #, c-format
 msgid "could not find header for file %s in tar archive\n"
 msgstr "ÎÞ·¨ÔÚ tar ¹éµµÀïΪÎļþ %s ÕÒµ½Í·±ê\n"
 
-#: pg_backup_tar.c:1116
+#: pg_backup_tar.c:1120
 #, c-format
 msgid "skipping tar member %s\n"
 msgstr "ºöÂÔ tar ³ÉÔ± %s\n"
 
-#: pg_backup_tar.c:1120
+#: pg_backup_tar.c:1124
 #, c-format
 msgid ""
 "dumping data out of order is not supported in this archive format: %s is "
@@ -1473,29 +1474,29 @@ msgid ""
 msgstr ""
 "Õâ¸ö¹éµµ¸ñʽÀï²»Ö§³ÖÂÒÐòת´¢Êý¾Ý: ÒªÇó %s,µ«ËüÔڹ鵵ÎļþÀïλÓÚ %s Ç°Ãæ.\n"
 
-#: pg_backup_tar.c:1168
+#: pg_backup_tar.c:1172
 #, c-format
 msgid "mismatch in actual vs. predicted file position (%s vs. %s)\n"
 msgstr "ʵ¼ÊÎļþλÖúÍÔ¤ÆÚÎļþλÖò»Æ¥Åä (%s ¶Ô %s)\n"
 
-#: pg_backup_tar.c:1183
+#: pg_backup_tar.c:1187
 #, c-format
 msgid "incomplete tar header found (%lu bytes)\n"
 msgstr "·¢ÏÖ²»ÍêÕû tar Í· (%lu ×Ö½Ú)\n"
 
-#: pg_backup_tar.c:1218
+#: pg_backup_tar.c:1222
 #, c-format
 msgid "TOC Entry %s at %s (length %lu, checksum %d)\n"
 msgstr "ÔÚ %2$s µÄ TOC ¼Ç¼ %1$s (³¤¶È %3$lu, Ð£ÑéºÍ %4$d)\n"
 
-#: pg_backup_tar.c:1228
+#: pg_backup_tar.c:1232
 #, c-format
 msgid ""
 "corrupt tar header found in %s (expected %d, computed %d) file position %s\n"
 msgstr ""
 "ÔÚÎļþ %1$s µÄλÖà%4$s ·¢ÏÖ±ÀÀ£µÄ tar Í·(Ô¤¼ÆÔÚ %2$d, ¼ÆËã³öÀ´ÔÚ %3$d)\n"
 
-#: pg_backup_tar.c:1321
+#: pg_backup_tar.c:1325
 msgid "could not write tar header\n"
 msgstr "ÎÞ·¨Ð´ tar Í·\n"
 
@@ -1506,8 +1507,8 @@ msgstr "%s: 
 
 #: pg_restore.c:344
 #, c-format
-msgid "WARNING, errors ignored on restore: %d\n"
-msgstr "¾¯¸æ, »Ö¸´ÖкöÂÔ´íÎó: %d\n"
+msgid "WARNING: errors ignored on restore: %d\n"
+msgstr "¾¯¸æ: »Ö¸´ÖкöÂÔ´íÎó: %d\n"
 
 #: pg_restore.c:358
 #, c-format
@@ -1525,8 +1526,8 @@ msgstr "  %s [ѡ
 
 #: pg_restore.c:363
 #, c-format
-msgid "  -d, --dbname=NAME        output database name\n"
-msgstr "  -d, --dbname=Ãû×Ö        Êý¾Ý¿âÃû×Ö\n"
+msgid "  -d, --dbname=NAME        connect to database name\n"
+msgstr "  -d, --dbname=Ãû×Ö        Á¬½ÓÊý¾Ý¿âÃû×Ö\n"
 
 #: pg_restore.c:365
 #, c-format
@@ -1544,6 +1545,15 @@ msgstr "  -i, --ignore-version     
 msgid "  -l, --list               print summarized TOC of the archive\n"
 msgstr "  -l, --list               ´òÓ¡¹éµµÎļþµÄ TOC ¸ÅÊö\n"
 
+#: pg_restore.c:372
+#, c-format
+msgid ""
+"\n"
+"Options controlling the restore:\n"
+msgstr ""
+"\n"
+"»Ö¸´¿ØÖÆÑ¡Ïî:\n"
+
 #: pg_restore.c:373
 #, c-format
 msgid "  -a, --data-only          restore only the data, no schema\n"
@@ -1551,13 +1561,13 @@ msgstr "  -a, --data-only          ֻ
 
 #: pg_restore.c:375
 #, c-format
-msgid "  -C, --create             issue commands to create the database\n"
-msgstr "  -C, --create             ÔËÐÐÃüÁî´´½¨Êý¾Ý¿â\n"
+msgid "  -C, --create             create the target database\n"
+msgstr "  -C, --create             ´´½¨Ä¿±êÊý¾Ý¿â\n"
 
 #: pg_restore.c:376
 #, c-format
 msgid "  -I, --index=NAME         restore named index\n"
-msgstr "  -I, --index=Ãû×Ö         »Ö¸´Ö¸¶¨Ãü×ÖµÄË÷Òý\n"
+msgstr "  -I, --index=Ãû³Æ         »Ö¸´Ö¸¶¨Ãû³ÆµÄË÷Òý\n"
 
 #: pg_restore.c:377
 #, c-format
@@ -1568,13 +1578,11 @@ msgstr ""
 "  -L, --use-list=ÎļþÃû    ´ÓÕâ¸öÎļþÖÐʹÓÃÖ¸¶¨µÄÄÚÈݱíÅÅÐò\n"
 "                           Êä³ö\n"
 
-#: pg_restore.c:379 pg_dumpall.c:327
+#: pg_restore.c:379
 #, c-format
 msgid ""
-"  -O, --no-owner           do not output commands to set object ownership\n"
-msgstr ""
-"  -O, --no-owner           ÉèÖöÔÏóµÄËùÊôÕßʱ²»Êä³ö\n"
-"                           ÃüÁî\n"
+"  -O, --no-owner           do not issue commands to set object ownership\n"
+msgstr "  -O, --no-owner           ÉèÖöÔÏóµÄËùÊôÕßʱ²»Êä³öÃüÁî\n"
 
 #: pg_restore.c:380
 #, c-format
@@ -1632,27 +1640,29 @@ msgstr ""
 "Èç¹ûûÓÐÌṩÊäÈëÎļþÃû, ÔòʹÓñê×¼ÊäÈë.\n"
 "\n"
 
-#: pg_dumpall.c:144
+#: pg_dumpall.c:149
 #, c-format
 msgid ""
-"The program \"pg_dump\" is needed by %s but was not found in the same "
-"directory as \"%s\".\n"
+"The program \"pg_dump\" is needed by %s but was not found in the\n"
+"same directory as \"%s\".\n"
 "Check your installation.\n"
 msgstr ""
 "%s ÐèÒª³ÌÐò \"pg_dump\", µ«ÊÇÔÚͬһ¸öĿ¼ \"%s\" Ã»ÓÐÕÒµ½.\n"
+"\n"
 "¼ì²éÄúµÄ°²×°.\n"
 
-#: pg_dumpall.c:150
+#: pg_dumpall.c:156
 #, c-format
 msgid ""
-"The program \"pg_dump\" was found by %s but was not the same version as \"%s"
-"\".\n"
+"The program \"pg_dump\" was found by \"%s\"\n"
+"but was not the same version as %s.\n"
 "Check your installation.\n"
 msgstr ""
 "%s ÕÒµ½³ÌÐò \"pg_dump\", µ«ÊǺͰ汾 \"%s\" ²»Ò»ÖÂ.\n"
+"\n"
 "¼ì²éÄúµÄ°²×°.\n"
 
-#: pg_dumpall.c:311
+#: pg_dumpall.c:336
 #, c-format
 msgid ""
 "%s extracts a PostgreSQL database cluster into an SQL script file.\n"
@@ -1661,12 +1671,12 @@ msgstr ""
 "%s ³éÈ¡Ò»¸ö PostgreSQL Êý¾Ý¿â´Ø½øÒ»¸ö SQL ½Å±¾Îļþ.\n"
 "\n"
 
-#: pg_dumpall.c:313
+#: pg_dumpall.c:338
 #, c-format
 msgid "  %s [OPTION]...\n"
 msgstr "  %s [Ñ¡Ïî]...\n"
 
-#: pg_dumpall.c:316
+#: pg_dumpall.c:341
 #, c-format
 msgid ""
 "  -i, --ignore-version     proceed even when server version mismatches\n"
@@ -1675,24 +1685,32 @@ msgstr ""
 "  -i, --ignore-version     µ±·þÎñÆ÷°æ±¾Óë pg_dumpall ²»Æ¥Åäʱ\n"
 "                           ¼ÌÐøÔËÐÐ\n"
 
-#: pg_dumpall.c:322
+#: pg_dumpall.c:347
 #, c-format
 msgid "  -c, --clean              clean (drop) databases prior to create\n"
 msgstr "  -c, --clean              Çå³ý (ɾ³ý) Ô¤ÏȵÄÊý¾Ý¿â, ÒÔ±ãÔÙ´´½¨\n"
 
-#: pg_dumpall.c:325
+#: pg_dumpall.c:350
 #, c-format
 msgid "  -g, --globals-only       dump only global objects, no databases\n"
 msgstr "  -g, --globals-only       Ö»×ª´¢È«¾Ö¶ÔÏó, ²»°üÀ¨Êý¾Ý¿â\n"
 
-#: pg_dumpall.c:329
+#: pg_dumpall.c:352
+#, c-format
+msgid ""
+"  -O, --no-owner           do not output commands to set object ownership\n"
+msgstr ""
+"  -O, --no-owner           ÉèÖöÔÏóµÄËùÊôÕßʱ²»Êä³ö\n"
+"                           ÃüÁî\n"
+
+#: pg_dumpall.c:354
 #, c-format
 msgid ""
 "  -S, --superuser=NAME     specify the superuser user name to use in the "
 "dump\n"
 msgstr "  -S, --superuser=NAME     ÔÚת´¢ÖÐ, Ö¸¶¨µÄ³¬¼¶Óû§Ãû\n"
 
-#: pg_dumpall.c:345
+#: pg_dumpall.c:370
 #, c-format
 msgid ""
 "\n"
@@ -1703,91 +1721,92 @@ msgstr ""
 "½«°Ñ SQL ½Å±¾Ð´µ½±ê×¼Êä³öÉÏ.\n"
 "\n"
 
-#: pg_dumpall.c:545
+#: pg_dumpall.c:570
 #, c-format
 msgid "%s: could not parse ACL list (%s) for tablespace \"%s\"\n"
 msgstr "%1$s: ÎÞ·¨Îª±í¿Õ¼ä \"%3$s\" ·ÖÎö ACL Áбí (%2$s)\n"
 
-#: pg_dumpall.c:677
+#: pg_dumpall.c:702
 #, c-format
 msgid "%s: could not parse ACL list (%s) for database \"%s\"\n"
 msgstr "%1$s: ÎÞ·¨ÎªÊý¾Ý¿â \"%3$s\" ·ÖÎö ACL Áбí (%2$s)\n"
 
-#: pg_dumpall.c:827
+#: pg_dumpall.c:852
 #, c-format
 msgid "%s: dumping database \"%s\"...\n"
 msgstr "%s: ÕýÔÚת´¢Êý¾Ý¿â \"%s\"...\n"
 
-#: pg_dumpall.c:833
+#: pg_dumpall.c:858
 #, c-format
 msgid "%s: pg_dump failed on database \"%s\", exiting\n"
 msgstr "%s: pg_dump Ê§°ÜÔÚÊý¾Ý¿â \"%s\", ÕýÔÚÍ˳ö\n"
 
-#: pg_dumpall.c:888
+#: pg_dumpall.c:913
 #, c-format
 msgid "%s: running \"%s\"\n"
 msgstr "%s: ÕýÔÚÔËÐР\"%s\"\n"
 
-#: pg_dumpall.c:929
+#: pg_dumpall.c:954
 #, c-format
 msgid "%s: could not connect to database \"%s\"\n"
 msgstr "%s: ÎÞ·¨ÓëÊý¾Ý¿â \"%s\" Áª½Ó\n"
 
-#: pg_dumpall.c:952
+#: pg_dumpall.c:977
 #, c-format
 msgid "%s: could not connect to database \"%s\": %s\n"
 msgstr "%s: ÎÞ·¨ÓëÊý¾Ý¿â \"%s\" Áª½Ó: %s\n"
 
-#: pg_dumpall.c:960
+#: pg_dumpall.c:985
 #, c-format
 msgid "%s: could not get server version\n"
 msgstr "%s: ÎÞ·¨´Ó·þÎñÆ÷»ñÈ¡°æ±¾\n"
 
-#: pg_dumpall.c:966
+#: pg_dumpall.c:991
 #, c-format
 msgid "%s: could not parse server version \"%s\"\n"
 msgstr "%s: ÎÞ·¨·ÖÎö°æ±¾×Ö´® \"%s\"\n"
 
-#: pg_dumpall.c:985
+#: pg_dumpall.c:1010
 #, c-format
 msgid "%s: executing %s\n"
 msgstr "%s: Ö´ÐР%s\n"
 
-#: pg_dumpall.c:991
+#: pg_dumpall.c:1016
 #, c-format
 msgid "%s: query failed: %s"
 msgstr "%s: ²éѯʧ°Ü: %s"
 
-#: pg_dumpall.c:992
+#: pg_dumpall.c:1017
 #, c-format
 msgid "%s: query was: %s\n"
 msgstr "%s: ²éѯÊÇ: %s\n"
 
-#~ msgid ""
-#~ "\n"
-#~ "Options:\n"
-#~ msgstr ""
-#~ "\n"
-#~ "Ñ¡Ïî:\n"
-
-#~ msgid ""
-#~ "%s: could not find pg_dump\n"
-#~ "Make sure it is in the path or in the same directory as %s.\n"
-#~ msgstr ""
-#~ "%s: Ã»ÕÒµ½ pg_dump\n"
-#~ "È·¶¨ÔÚ·¾¶ÖлòÓë %s Ò»ÑùµÄĿ¼ÖÐ.\n"
+#: ../../port/exec.c:193 ../../port/exec.c:307 ../../port/exec.c:350
+#, c-format
+msgid "could not identify current directory: %s"
+msgstr "ÎÞ·¨È·Èϵ±Ç°Ä¿Â¼: %s"
 
-#~ msgid "could not set default_with_oids: %s"
-#~ msgstr "ÎÞ·¨ÉèÖàdefault_with_oids: %s"
+#: ../../port/exec.c:323 ../../port/exec.c:359
+#, c-format
+msgid "could not change directory to \"%s\""
+msgstr "ÎÞ·¨½øÈëĿ¼ \"%s\""
 
-#~ msgid "could not set search_path to \"%s\": %s"
-#~ msgstr "ÎÞ·¨ÉèÖòéÕÒ·¾¶Îª \"%s\": %s"
+#: ../../port/exec.c:338
+#, c-format
+msgid "could not read symbolic link \"%s\""
+msgstr "ÎÞ·¨¶ÁÈ¡·ûºÅÁ´½á \"%s\""
 
-#~ msgid "%s: %s"
-#~ msgstr "%s: %s"
+#: ../../port/exec.c:569
+#, c-format
+msgid "child process exited with exit code %d"
+msgstr "×Ó½ø³ÌÒÑÍ˳ö, Í˳öÂëΪ %d"
 
-#~ msgid "checking whether we loaded \"%s\"\n"
-#~ msgstr "¼ì²éÎÒÃÇÊÇ·ñ×°ÔØÁË \"%s\"\n"
+#: ../../port/exec.c:572
+#, c-format
+msgid "child process was terminated by signal %d"
+msgstr "×Ó½ø³Ì±»ÐźŠ%d ÖÕÖ¹"
 
-#~ msgid "ignoring large-object cross-references for %s %s\n"
-#~ msgstr "Ϊ %s %s ºöÂÔ´ó¶ÔÏó½»²æÒýÓÃ\n"
+#: ../../port/exec.c:575
+#, c-format
+msgid "child process exited with unrecognized status %d"
+msgstr "×Ó½ø³ÌÒÑÍ˳ö, Î´Öª×´Ì¬ %d"
index ab5f7efb53ce5f6e53db06d6ba0c7f667f2afb87..0ef03a9cbbfbfac58beb862874e330252eb02633 100644 (file)
@@ -3,9 +3,9 @@
 # \r
 msgid ""
 msgstr ""
-"Project-Id-Version: PostgreSQL 7.4\n"
+"Project-Id-Version: PostgreSQL 8.0\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2004-08-31 08:57+0000\n"
+"POT-Creation-Date: 2004-12-02 09:58+0000\n"
 "PO-Revision-Date: 2004-01-10 13:47+0800\n"
 "Last-Translator: Bao Wei <weibao@qmail.zhengmai.net.cn>\n"
 "Language-Team: Weiping He <laser@zhengmai.com.cn>\n"
@@ -13,48 +13,48 @@ msgstr ""
 "Content-Type: text/plain; charset=GB2312\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: pg_resetxlog.c:120
+#: pg_resetxlog.c:123
 #, c-format
 msgid "%s: invalid argument for option -x\n"
 msgstr "%s: Îª -x Ñ¡ÏîµÄÎÞЧ²ÎÊý\n"
 
-#: pg_resetxlog.c:121 pg_resetxlog.c:136 pg_resetxlog.c:151 pg_resetxlog.c:158
-#: pg_resetxlog.c:164 pg_resetxlog.c:172
+#: pg_resetxlog.c:124 pg_resetxlog.c:139 pg_resetxlog.c:154 pg_resetxlog.c:161
+#: pg_resetxlog.c:167 pg_resetxlog.c:175
 #, c-format
 msgid "Try \"%s --help\" for more information.\n"
 msgstr "ÊäÈë \"%s --help\" »ñÈ¡¸ü¶àµÄÐÅÏ¢.\n"
 
-#: pg_resetxlog.c:126
+#: pg_resetxlog.c:129
 #, c-format
 msgid "%s: transaction ID (-x) must not be 0\n"
 msgstr "%s: ÊÂÎñ ID (-x) ²»ÄÜΪ 0\n"
 
-#: pg_resetxlog.c:135
+#: pg_resetxlog.c:138
 #, c-format
 msgid "%s: invalid argument for option -o\n"
 msgstr "%s: Îª -o Ñ¡ÏîµÄÎÞЧ²ÎÊý\n"
 
-#: pg_resetxlog.c:141
+#: pg_resetxlog.c:144
 #, c-format
 msgid "%s: OID (-o) must not be 0\n"
 msgstr "%s: OID (-o) ²»ÄÜΪ 0\n"
 
-#: pg_resetxlog.c:150 pg_resetxlog.c:157
+#: pg_resetxlog.c:153 pg_resetxlog.c:160
 #, c-format
 msgid "%s: invalid argument for option -l\n"
 msgstr "%s: Îª -l Ñ¡ÏîµÄÎÞЧ²ÎÊý\n"
 
-#: pg_resetxlog.c:171
+#: pg_resetxlog.c:174
 #, c-format
 msgid "%s: no data directory specified\n"
 msgstr "%s: Ã»ÓÐÖ¸¶¨Êý¾ÝĿ¼\n"
 
-#: pg_resetxlog.c:191 pg_resetxlog.c:287
+#: pg_resetxlog.c:194 pg_resetxlog.c:290
 #, c-format
 msgid "%s: could not open file \"%s\" for reading: %s\n"
 msgstr "%s: ÎÞ·¨´ò¿ªÎļþ \"%s\" ¶ÁÈ¡ÐÅÏ¢: %s\n"
 
-#: pg_resetxlog.c:197
+#: pg_resetxlog.c:200
 #, c-format
 msgid ""
 "%s: lock file \"%s\" exists\n"
@@ -63,7 +63,7 @@ msgstr ""
 "%s: ËøÎļþ \"%s\" ÒѾ­´æÔÚ\n"
 "ÊÇ·ñÓÐÒ»¸ö·þÎñÕýÔÚÔËÐÐ? Èç¹ûûÓÐ, É¾³ýÄǸöËøÎļþÈ»ºóÔÙÊÔÒ»´Î.\n"
 
-#: pg_resetxlog.c:236
+#: pg_resetxlog.c:239
 #, c-format
 msgid ""
 "\n"
@@ -72,7 +72,7 @@ msgstr ""
 "\n"
 "Èç¹ûÕâЩֵ¿É½ÓÊÜ, Óà-f Ç¿ÖÆÖØÖÃ.\n"
 
-#: pg_resetxlog.c:248
+#: pg_resetxlog.c:251
 #, c-format
 msgid ""
 "The database server was not shut down cleanly.\n"
@@ -83,12 +83,12 @@ msgstr ""
 "ÖØÖÃÊÂÎñÈÕÖ¾ÓпÉÄÜ»áÒýÆð¶ªÊ§Êý¾Ý.\n"
 "Èç¹ûÄãÈÔÏë¼ÌÐø, Óà-f Ç¿ÖÆÖØÖÃ.\n"
 
-#: pg_resetxlog.c:261
+#: pg_resetxlog.c:264
 #, c-format
 msgid "Transaction log reset\n"
 msgstr "ÊÂÎñÈÕÖ¾ÖØÖÃ\n"
 
-#: pg_resetxlog.c:290
+#: pg_resetxlog.c:293
 #, c-format
 msgid ""
 "If you are sure the data directory path is correct, execute\n"
@@ -99,32 +99,32 @@ msgstr ""
 "  touch %s\n"
 "È»ºóÔÙÊÔÒ»´Î.\n"
 
-#: pg_resetxlog.c:303
+#: pg_resetxlog.c:306
 #, c-format
 msgid "%s: could not read file \"%s\": %s\n"
 msgstr "%s: ÎÞ·¨¶ÁÈ¡Îļþ \"%s\": %s\n"
 
-#: pg_resetxlog.c:326
+#: pg_resetxlog.c:329
 #, c-format
 msgid "%s: pg_control exists but has invalid CRC; proceed with caution\n"
 msgstr "%s: pg_control ÒѾ­´æÔÚ, µ«ÓÐÎÞЧµÄCRC; ´øÓо¯¸æµÄ¼ÌÐøÔËÐÐ\n"
 
-#: pg_resetxlog.c:335
+#: pg_resetxlog.c:338
 #, c-format
 msgid "%s: pg_control exists but is broken or unknown version; ignoring it\n"
 msgstr "%s: pg_control ÒѾ­´æÔÚ, µ«ÒÑÆÆ»µ»òÎÞЧ°æ±¾; ºöÂÔËü\n"
 
-#: pg_resetxlog.c:399
+#: pg_resetxlog.c:402
 #, c-format
 msgid "%s: invalid LC_COLLATE setting\n"
 msgstr "%s: ÎÞЧµÄ LC_COLLATE ÉèÖÃ\n"
 
-#: pg_resetxlog.c:406
+#: pg_resetxlog.c:409
 #, c-format
 msgid "%s: invalid LC_CTYPE setting\n"
 msgstr "%s: ÎÞЧµÄ LC_CTYPE ÉèÖÃ\n"
 
-#: pg_resetxlog.c:430
+#: pg_resetxlog.c:433
 #, c-format
 msgid ""
 "Guessed pg_control values:\n"
@@ -133,7 +133,7 @@ msgstr ""
 "²Â²âµÄ pg_control Öµ:\n"
 "\n"
 
-#: pg_resetxlog.c:432
+#: pg_resetxlog.c:435
 #, c-format
 msgid ""
 "pg_control values:\n"
@@ -142,141 +142,141 @@ msgstr ""
 "pg_control ֵ:\n"
 "\n"
 
-#: pg_resetxlog.c:441
+#: pg_resetxlog.c:444
 #, c-format
 msgid "pg_control version number:            %u\n"
 msgstr "pg_control °æ±¾:                      %u\n"
 
-#: pg_resetxlog.c:442
+#: pg_resetxlog.c:445
 #, c-format
 msgid "Catalog version number:               %u\n"
 msgstr "Catalog °æ±¾:                         %u\n"
 
-#: pg_resetxlog.c:443
+#: pg_resetxlog.c:446
 #, c-format
 msgid "Database system identifier:           %s\n"
 msgstr "Êý¾Ý¿âϵͳ±êʶ·û:                     %s\n"
 
-#: pg_resetxlog.c:444
+#: pg_resetxlog.c:447
 #, c-format
 msgid "Current log file ID:                  %u\n"
 msgstr "µ±Ç°ÈÕÖ¾ÎļþID:                       %u\n"
 
-#: pg_resetxlog.c:445
+#: pg_resetxlog.c:448
 #, c-format
 msgid "Next log file segment:                %u\n"
 msgstr "ÏÂÒ»¸öÈÕÖ¾Îļþ¶Î:                     %u\n"
 
-#: pg_resetxlog.c:446
+#: pg_resetxlog.c:449
 #, c-format
 msgid "Latest checkpoint's TimeLineID:       %u\n"
 msgstr "×îмì²éµãµÄ TimeLineID:              %u\n"
 
-#: pg_resetxlog.c:447
+#: pg_resetxlog.c:450
 #, c-format
 msgid "Latest checkpoint's NextXID:          %u\n"
 msgstr "×îмì²éµãµÄ NextXID:                 %u\n"
 
-#: pg_resetxlog.c:448
+#: pg_resetxlog.c:451
 #, c-format
 msgid "Latest checkpoint's NextOID:          %u\n"
 msgstr "×îмì²éµãµÄ NextOID:                 %u\n"
 
-#: pg_resetxlog.c:449
+#: pg_resetxlog.c:452
 #, c-format
 msgid "Database block size:                  %u\n"
 msgstr "Êý¾Ý¿â¿é´óС:                         %u\n"
 
-#: pg_resetxlog.c:450
+#: pg_resetxlog.c:453
 #, c-format
 msgid "Blocks per segment of large relation: %u\n"
 msgstr "´ó¹ØϵµÄÿ¶Î¿éÊý:                     %u\n"
 
-#: pg_resetxlog.c:451
+#: pg_resetxlog.c:454
 #, c-format
 msgid "Maximum length of identifiers:        %u\n"
 msgstr "±êʾ·ûµÄ×î´ó³¤¶È:                     %u\n"
 
-#: pg_resetxlog.c:452
+#: pg_resetxlog.c:455
 #, c-format
 msgid "Maximum number of function arguments: %u\n"
 msgstr "º¯Êý²ÎÊýµÄ×î´ó¸öÊý:                   %u\n"
 
-#: pg_resetxlog.c:453
+#: pg_resetxlog.c:456
 #, c-format
 msgid "Date/time type storage:               %s\n"
 msgstr "ÈÕÆÚ/ʱ¼äÀàÐÍ´æ´¢:                    %s\n"
 
-#: pg_resetxlog.c:454
+#: pg_resetxlog.c:457
 msgid "64-bit integers"
 msgstr "64λÕûÐÍ"
 
-#: pg_resetxlog.c:454
+#: pg_resetxlog.c:457
 msgid "floating-point numbers"
 msgstr "¸¡µãÊý"
 
-#: pg_resetxlog.c:455
+#: pg_resetxlog.c:458
 #, c-format
 msgid "Maximum length of locale name:        %u\n"
 msgstr "±¾µØÃû×ÖµÄ×î´ó³¤¶È:                   %u\n"
 
-#: pg_resetxlog.c:456
+#: pg_resetxlog.c:459
 #, c-format
 msgid "LC_COLLATE:                           %s\n"
 msgstr "LC_COLLATE:                           %s\n"
 
-#: pg_resetxlog.c:457
+#: pg_resetxlog.c:460
 #, c-format
 msgid "LC_CTYPE:                             %s\n"
 msgstr "LC_CTYPE:                             %s\n"
 
-#: pg_resetxlog.c:518
+#: pg_resetxlog.c:521
 #, c-format
 msgid ""
 "%s: internal error -- sizeof(ControlFileData) is too large ... fix xlog.c\n"
 msgstr "%s: ÄÚ²¿´íÎó -- sizeof(ControlFileData) Ì«´ó ... ÐÞ¸´ xlog.c\n"
 
-#: pg_resetxlog.c:531
+#: pg_resetxlog.c:534
 #, c-format
 msgid "%s: could not create pg_control file: %s\n"
 msgstr "%s: ÎÞ·¨´´½¨ pg_control Îļþ: %s\n"
 
-#: pg_resetxlog.c:542
+#: pg_resetxlog.c:545
 #, c-format
 msgid "%s: could not write pg_control file: %s\n"
 msgstr "%s: ÎÞ·¨Ð´ pg_control Îļþ: %s\n"
 
-#: pg_resetxlog.c:549 pg_resetxlog.c:705
+#: pg_resetxlog.c:552 pg_resetxlog.c:708
 #, c-format
 msgid "%s: fsync error: %s\n"
 msgstr "%s: fsync ´íÎó: %s\n"
 
-#: pg_resetxlog.c:570
+#: pg_resetxlog.c:573
 #, c-format
 msgid "%s: could not open directory \"%s\": %s\n"
 msgstr "%s: ÎÞ·¨´ò¿ªÄ¿Â¼ \"%s\": %s\n"
 
-#: pg_resetxlog.c:584
+#: pg_resetxlog.c:587
 #, c-format
 msgid "%s: could not delete file \"%s\": %s\n"
 msgstr "%s: ÎÞ·¨É¾³ýÎļþ \"%s\": %s\n"
 
-#: pg_resetxlog.c:603
+#: pg_resetxlog.c:606
 #, c-format
 msgid "%s: could not read from directory \"%s\": %s\n"
 msgstr "%s: ÎÞ·¨´ÓĿ¼ \"%s\" ÖжÁÈ¡: %s\n"
 
-#: pg_resetxlog.c:672
+#: pg_resetxlog.c:675
 #, c-format
 msgid "%s: could not open file \"%s\": %s\n"
 msgstr "%s: ÎÞ·¨´ò¿ªÎļþ \"%s\": %s\n"
 
-#: pg_resetxlog.c:683 pg_resetxlog.c:697
+#: pg_resetxlog.c:686 pg_resetxlog.c:700
 #, c-format
 msgid "%s: could not write file \"%s\": %s\n"
 msgstr "%s: ÎÞ·¨Ð´Îļþ \"%s\": %s\n"
 
-#: pg_resetxlog.c:716
+#: pg_resetxlog.c:719
 #, c-format
 msgid ""
 "%s resets the PostgreSQL transaction log.\n"
@@ -285,7 +285,7 @@ msgstr ""
 "%s ÖØÖàPostgreSQL ÊÂÎñÈÕÖ¾.\n"
 "\n"
 
-#: pg_resetxlog.c:717
+#: pg_resetxlog.c:720
 #, c-format
 msgid ""
 "Usage:\n"
@@ -296,51 +296,51 @@ msgstr ""
 "  %s [Ñ¡Ïî]... Êý¾ÝĿ¼\n"
 "\n"
 
-#: pg_resetxlog.c:718
+#: pg_resetxlog.c:721
 #, c-format
 msgid "Options:\n"
 msgstr "Ñ¡Ïî:\n"
 
-#: pg_resetxlog.c:719
+#: pg_resetxlog.c:722
 #, c-format
 msgid "  -f              force update to be done\n"
 msgstr "  -f                Ç¿ÖƸüÐÂ\n"
 
-#: pg_resetxlog.c:720
+#: pg_resetxlog.c:723
 #, c-format
 msgid ""
 "  -l FILEID,SEG   force minimum WAL starting location for new transaction "
 "log\n"
 msgstr "  -l FILEID,SEG     ÔÚеÄÊÂÎñÈÕÖ¾ÖÐÇ¿ÖÆ×îС WAL ÆðʼλÖÃ\n"
 
-#: pg_resetxlog.c:721
+#: pg_resetxlog.c:724
 #, c-format
 msgid ""
 "  -n              no update, just show extracted control values (for "
 "testing)\n"
 msgstr "  -n                Î´¸üÐÂ, Ö»ÏÔʾ³éÈ¡µÄ¿ØÖÆÖµ (²âÊÔÓÃ;)\n"
 
-#: pg_resetxlog.c:722
+#: pg_resetxlog.c:725
 #, c-format
 msgid "  -o OID          set next OID\n"
 msgstr "  -o OID            ÉèÖÃÏÂÒ»¸ö OID\n"
 
-#: pg_resetxlog.c:723
+#: pg_resetxlog.c:726
 #, c-format
 msgid "  -x XID          set next transaction ID\n"
 msgstr "  -x XID            ÉèÖÃÏÂÒ»¸öÊÂÎñ ID\n"
 
-#: pg_resetxlog.c:724
+#: pg_resetxlog.c:727
 #, c-format
 msgid "  --help          show this help, then exit\n"
 msgstr "  --help            ÏÔʾ´Ë°ïÖúÐÅÏ¢, È»ºóÍ˳ö\n"
 
-#: pg_resetxlog.c:725
+#: pg_resetxlog.c:728
 #, c-format
 msgid "  --version       output version information, then exit\n"
 msgstr "  --version         Êä³ö°æ±¾ÐÅÏ¢, È»ºóÍ˳ö\n"
 
-#: pg_resetxlog.c:726
+#: pg_resetxlog.c:729
 #, c-format
 msgid ""
 "\n"
index e6243185862f46004903a33aa73bb04b949ba6c6..66c7154351ddacce0a62caedd7e6d3d3c2999e36 100644 (file)
@@ -1,13 +1,13 @@
 # simplified Chinese translation file for psql\r
 # Weiping He <laser@zhengmai.com.cn>, 2002.\r
 # \r
-# $PostgreSQL: pgsql/src/bin/psql/po/zh_CN.po,v 1.6 2004/09/13 12:35:15 petere Exp $\r
+# $PostgreSQL: pgsql/src/bin/psql/po/zh_CN.po,v 1.7 2004/12/11 19:09:07 petere Exp $\r
 # \r
 msgid ""
 msgstr ""
 "Project-Id-Version: PostgreSQL 7.4\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2004-08-31 08:54+0000\n"
+"POT-Creation-Date: 2004-12-02 09:58+0000\n"
 "PO-Revision-Date: 2004-01-12 13:48:19+0800\n"
 "Last-Translator: Bao Wei <weibao@qmail.zhengmai.net.cn>\n"
 "Language-Team: Weiping He <laser@zhengmai.com.cn>\n"
@@ -15,232 +15,240 @@ msgstr ""
 "Content-Type: text/plain; charset=GB2312\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: command.c:112
+#: command.c:116
 msgid "Warning: This syntax is deprecated.\n"
 msgstr "¾¯¸æ: ÕâÖÖÓï·¨ÒѾ­·ÏÆú.\n"
 
-#: command.c:120
+#: command.c:124
 #, c-format
 msgid "Invalid command \\%s. Try \\? for help.\n"
 msgstr "ÎÞЧµÄÃüÁî \\%s. Óà\\? »ñÈ¡°ïÖú.\n"
 
-#: command.c:122
+#: command.c:126
 #, c-format
 msgid "invalid command \\%s\n"
 msgstr "ÎÞЧµÄÃüÁî \\%s\n"
 
-#: command.c:131
+#: command.c:135
 #, c-format
 msgid "\\%s: extra argument \"%s\" ignored\n"
 msgstr "\\%s: ºöÂÔ¶àÓàµÄ²ÎÊý \"%s\"\n"
 
-#: command.c:240
+#: command.c:244
 #, c-format
 msgid "could not get home directory: %s\n"
 msgstr "ÎÞ·¨»ñµÃ¼ÒĿ¼: %s\n"
 
-#: command.c:256
+#: command.c:260
 #, c-format
 msgid "\\%s: could not change directory to \"%s\": %s\n"
 msgstr "\\%s: ²»Äܸı䵽 \"%s\" Ä¿Â¼: %s\n"
 
-#: command.c:370 command.c:760
+#: command.c:374 command.c:766
 msgid "no query buffer\n"
 msgstr "ÎÞ²éѯ»º³åÇø\n"
 
-#: command.c:433
+#: command.c:437
 #, c-format
 msgid "%s: invalid encoding name or conversion procedure not found\n"
 msgstr "%s: ÎÞЧ±àÂëÃû×Ö»òûÓÐÕÒµ½×ª»»¹ý³Ì\n"
 
-#: command.c:501 command.c:535 command.c:549 command.c:566 command.c:612
-#: command.c:740 command.c:771
+#: command.c:505 command.c:539 command.c:553 command.c:570 command.c:616
+#: command.c:746 command.c:777
 #, c-format
 msgid "\\%s: missing required argument\n"
 msgstr "\\%s: È±ÉÙËùÐè²ÎÊý\n"
 
-#: command.c:598
+#: command.c:602
 msgid "Query buffer is empty."
 msgstr "²éѯ»º³åÇøΪ¿Õ."
 
-#: command.c:632
+#: command.c:636
 msgid "Query buffer reset (cleared)."
 msgstr "ÖØÖÃ(Çå¿Õ)²éѯ»º³åÇø."
 
-#: command.c:646
+#: command.c:650
 #, c-format
 msgid "Wrote history to file \"%s\".\n"
 msgstr "ÏòÎļþ \"%s\" ÖÐдÈëÀúÊ·.\n"
 
-#: command.c:681 common.c:85 common.c:99 mainloop.c:71
+#: command.c:687 common.c:85 common.c:99 mainloop.c:71 print.c:230 print.c:237
+#: print.c:256 print.c:440 print.c:464 print.c:488 print.c:517 print.c:535
+#: print.c:1156 print.c:1168 print.c:1189 print.c:1196 print.c:1211
+#, c-format
 msgid "out of memory\n"
 msgstr "ÄÚ´æÓþ¡\n"
 
-#: command.c:696 command.c:745
+#: command.c:702 command.c:751
 #, c-format
 msgid "\\%s: error\n"
 msgstr "\\%s: ´íÎó\n"
 
-#: command.c:726
+#: command.c:732
 msgid "Timing is on."
 msgstr "¿ªÊ¼¼Æʱ."
 
-#: command.c:728
+#: command.c:734
 msgid "Timing is off."
 msgstr "½áÊø¼Æʱ."
 
-#: command.c:788 command.c:808 command.c:1164 command.c:1171 command.c:1181
-#: command.c:1193 command.c:1206 command.c:1220 command.c:1242 command.c:1273
+#: command.c:794 command.c:814 command.c:1199 command.c:1206 command.c:1216
+#: command.c:1228 command.c:1241 command.c:1255 command.c:1277 command.c:1308
 #: common.c:170 copy.c:530 copy.c:575
 #, c-format
 msgid "%s: %s\n"
 msgstr "%s: %s\n"
 
-#: command.c:915 command.c:939 startup.c:184 startup.c:202
+#: command.c:921 command.c:945 startup.c:188 startup.c:206
 msgid "Password: "
 msgstr "¿ÚÁî: "
 
-#: command.c:953 common.c:216 common.c:605 common.c:660 common.c:903
+#: command.c:959 common.c:216 common.c:685 common.c:740 common.c:983
 #, c-format
 msgid "%s"
 msgstr "%s"
 
-#: command.c:957
+#: command.c:963
 msgid "Previous connection kept\n"
 msgstr "±£ÁôÉÏÒ»´ÎÁª½Ó\n"
 
-#: command.c:969
+#: command.c:975
 #, c-format
 msgid "\\connect: %s"
 msgstr "\\Áª½Ó: %s"
 
-#: command.c:981
+#: command.c:987
 #, c-format
 msgid "You are now connected to database \"%s\".\n"
 msgstr "ÄãÏÖÔÚÒѾ­Áª½Óµ½Êý¾Ý¿â \"%s\".\n"
 
-#: command.c:983
+#: command.c:989
 #, c-format
 msgid "You are now connected as new user \"%s\".\n"
 msgstr "ÄãÏÖÔÚÊÇ×÷ΪÐÂÓû§ \"%s\" Áª½ÓµÄ.\n"
 
-#: command.c:986
+#: command.c:992
 #, c-format
 msgid "You are now connected to database \"%s\" as user \"%s\".\n"
 msgstr "ÄãÏÖÔÚÊÇÒÔÓû§ \"%2$s\" µÄÉí·ÝÁª½Óµ½Êý¾Ý¿â \"%1$s\".\n"
 
-#: command.c:1103
+#: command.c:1117
 #, c-format
 msgid "could not start editor \"%s\"\n"
 msgstr "ÎÞ·¨ÔËÐб༭Æ÷ \"%s\"\n"
 
-#: command.c:1105
+#: command.c:1119
 msgid "could not start /bin/sh\n"
 msgstr "ÎÞ·¨ÔËÐР/bin/sh\n"
 
-#: command.c:1149
+#: command.c:1158
+#, c-format
+msgid "cannot locate temporary directory: %s"
+msgstr "ÎÞ·¨ÕÒµ½ÁÙʱĿ¼: %s"
+
+#: command.c:1184
 #, c-format
 msgid "could not open temporary file \"%s\": %s\n"
 msgstr "ÎÞ·¨´ò¿ªÁÙʱÎļþ \"%s\": %s\n"
 
-#: command.c:1341
+#: command.c:1376
 msgid "\\pset: allowed formats are unaligned, aligned, html, latex\n"
 msgstr "\\pset: ÔÊÐíµÄ¸ñʽÊÇÎÞ¶ÔÆë, ¶ÔÆë, html, latex\n"
 
-#: command.c:1346
+#: command.c:1381
 #, c-format
 msgid "Output format is %s.\n"
 msgstr "Êä³ö¸ñʽÊÇ %s.\n"
 
-#: command.c:1356
+#: command.c:1391
 #, c-format
 msgid "Border style is %d.\n"
 msgstr "±ß½ç·ç¸ñÊÇ %d.\n"
 
-#: command.c:1365
+#: command.c:1400
 #, c-format
 msgid "Expanded display is on.\n"
 msgstr "À©Õ¹ÏÔʾÒÑ´ò¿ª.\n"
 
-#: command.c:1366
+#: command.c:1401
 #, c-format
 msgid "Expanded display is off.\n"
 msgstr "À©Õ¹ÏÔʾÒѹرÕ.\n"
 
-#: command.c:1378
+#: command.c:1413
 #, c-format
 msgid "Null display is \"%s\".\n"
 msgstr "Null ÏÔʾΪ \"%s\".\n"
 
-#: command.c:1390
+#: command.c:1425
 #, c-format
 msgid "Field separator is \"%s\".\n"
 msgstr "Óò·Ö¸ô·ûÊÇ \"%s\".\n"
 
-#: command.c:1404
+#: command.c:1439
 #, c-format
 msgid "Record separator is <newline>."
 msgstr "¼Ç¼·Ö¸ô·ûÊÇ <ÐÂÐÐ>."
 
-#: command.c:1406
+#: command.c:1441
 #, c-format
 msgid "Record separator is \"%s\".\n"
 msgstr "¼Ç¼·Ö¸ô·ûÊÇ \"%s\".\n"
 
-#: command.c:1417
+#: command.c:1452
 msgid "Showing only tuples."
 msgstr "Ö»ÏÔʾԪ×é."
 
-#: command.c:1419
+#: command.c:1454
 msgid "Tuples only is off."
 msgstr "¹Ø±ÕÖ»ÏÔʾԪ×é."
 
-#: command.c:1435
+#: command.c:1470
 #, c-format
 msgid "Title is \"%s\".\n"
 msgstr "±êÌâÊÇ \"%s\".\n"
 
-#: command.c:1437
+#: command.c:1472
 #, c-format
 msgid "Title is unset.\n"
 msgstr "ÎÞ±êÌâ.\n"
 
-#: command.c:1453
+#: command.c:1488
 #, c-format
 msgid "Table attribute is \"%s\".\n"
 msgstr "±íÊôÐÔÊÇ \"%s\".\n"
 
-#: command.c:1455
+#: command.c:1490
 #, c-format
 msgid "Table attributes unset.\n"
 msgstr "δÉèÖñíÊôÐÔ.\n"
 
-#: command.c:1471
+#: command.c:1506
 msgid "Pager is used for long output."
 msgstr "·ÖÒ³Æ÷ÊÇΪ³¤Êä³öʹÓõÄ."
 
-#: command.c:1473
+#: command.c:1508
 msgid "Pager is always used."
 msgstr "×ÜÊÇʹÓ÷ÖÒ³Æ÷."
 
-#: command.c:1475
+#: command.c:1510
 msgid "Pager usage is off."
 msgstr "¹Ø±Õ·ÖÒ³Æ÷µÄʹÓÃ."
 
-#: command.c:1486
+#: command.c:1521
 msgid "Default footer is on."
 msgstr "´ò¿ªÈ±Ê¡½Å±ê."
 
-#: command.c:1488
+#: command.c:1523
 msgid "Default footer is off."
 msgstr "¹Ø±Õȱʡ½Å±ê."
 
-#: command.c:1494
+#: command.c:1529
 #, c-format
 msgid "\\pset: unknown option: %s\n"
 msgstr "\\pset: Î´ÖªÑ¡Ïî: %s\n"
 
-#: command.c:1533
+#: command.c:1582
 msgid "\\!: failed\n"
 msgstr "\\!: Ê§°Ü\n"
 
@@ -253,48 +261,48 @@ msgstr "%s: xstrdup: 
 msgid "out of memory"
 msgstr "ÄÚ´æÓþ¡"
 
-#: common.c:298
+#: common.c:356
 msgid "connection to server was lost\n"
 msgstr "ÓëÊý¾Ý¿âµÄÁª½Ó¶ªÊ§\n"
 
-#: common.c:302
+#: common.c:360
 msgid "The connection to the server was lost. Attempting reset: "
 msgstr "Óë·þÎñÆ÷µÄÁª½ÓÒѶªÊ§. ³¢ÊÔÖØÖÃ: "
 
-#: common.c:307
+#: common.c:365
 msgid "Failed.\n"
 msgstr "ʧ°Ü.\n"
 
-#: common.c:314
+#: common.c:372
 msgid "Succeeded.\n"
 msgstr "³É¹¦.\n"
 
-#: common.c:391
+#: common.c:471
 #, c-format
 msgid "INTERNAL ERROR: unexpected statement position \"%s\"\n"
 msgstr "ÄÚ²¿´íÎó: ÒâÍâµÄÓï¾äλÖà\"%s\"\n"
 
-#: common.c:527
+#: common.c:607
 #, c-format
 msgid "LINE %d: "
 msgstr "µÚ %d ÐÐ: "
 
-#: common.c:544 common.c:553
+#: common.c:624 common.c:633
 #, c-format
 msgid "%s\n"
 msgstr "%s\n"
 
-#: common.c:636 common.c:871
+#: common.c:716 common.c:951
 msgid "You are currently not connected to a database.\n"
 msgstr "ÄãĿǰûÓÐÓëÊý¾Ý¿âÁª½Ó.\n"
 
-#: common.c:691
+#: common.c:771
 #, c-format
 msgid ""
 "Asynchronous notification \"%s\" received from server process with PID %d.\n"
 msgstr "½ÓÊÕµ½·þÎñÆ÷½ø³Ì PID %2$d µÄÒ첽֪ͨ \"%1$s\".\n"
 
-#: common.c:879
+#: common.c:959
 #, c-format
 msgid ""
 "***(Single step mode: verify command)"
@@ -307,7 +315,7 @@ msgstr ""
 "%s\n"
 "***(°´»Ø³µ¼ÌÐø»òÕßÊäÈë x È»ºó°´»Ø³µÈ¡Ïû)********************\n"
 
-#: common.c:930
+#: common.c:1010
 #, c-format
 msgid "Time: %.3f ms\n"
 msgstr "ʱ¼ä: %.3f ms\n"
@@ -348,20 +356,20 @@ msgstr ""
 "ÊäÈëÒª¿½±´µÄÊý¾ÝÈ»ºóÊäÈëÒ»¸öÐÂÐÐ.\n"
 "ÔÚ¶ÀÁ¢µÄÒ»ÐÐÉÏÊäÈëÒ»¸ö·´Ð±¿¸ºÍÒ»¸ö¾äµã½áÊø."
 
-#: help.c:48
+#: help.c:49
 msgid "on"
 msgstr "´ò¿ª"
 
-#: help.c:48
+#: help.c:49
 msgid "off"
 msgstr "¹Ø±Õ"
 
-#: help.c:70
+#: help.c:71
 #, c-format
 msgid "could not get current user name: %s\n"
-msgstr "ÎÞ·¨»ñÈ¡µ±Ç°Óû§Ãû×Ö: %s\n"
+msgstr "ÎÞ·¨»ñÈ¡µ±Ç°Óû§Ãû³Æ: %s\n"
 
-#: help.c:83
+#: help.c:84
 #, c-format
 msgid ""
 "This is psql %s, the PostgreSQL interactive terminal.\n"
@@ -370,53 +378,53 @@ msgstr ""
 "ÕâÀïÊÇ psql %s, PostgreSQL µÄ½»»¥ÖÕ¶Ë.\n"
 "\n"
 
-#: help.c:85
+#: help.c:86
 msgid "Usage:"
 msgstr "Ó÷¨:"
 
-#: help.c:86
+#: help.c:87
 msgid "  psql [OPTIONS]... [DBNAME [USERNAME]]\n"
-msgstr "  psql [Ñ¡Ïî]... [Êý¾Ý¿âÃû×Ö [Óû§Ãû]]\n"
+msgstr "  psql [Ñ¡Ïî]... [Êý¾Ý¿âÃû×Ö [Óû§Ãû³Æ]]\n"
 
-#: help.c:88
+#: help.c:89
 msgid "General options:"
 msgstr "Ò»°ãÑ¡Ïî:"
 
-#: help.c:93
+#: help.c:94
 #, c-format
 msgid ""
 "  -d DBNAME       specify database name to connect to (default: \"%s\")\n"
 msgstr "  -d Êý¾Ý¿âÃû     ÉùÃ÷ÒªÁª½ÓµÄÊý¾Ý¿âÃû(ȱʡ: \"%s\")\n"
 
-#: help.c:94
+#: help.c:95
 msgid "  -c COMMAND      run only single command (SQL or internal) and exit"
 msgstr "  -c ÃüÁî         Ö»ÔËÐÐÒ»ÌõÃüÁî(SQL »òÕßÄÚ²¿)È»ºóÍ˳ö"
 
-#: help.c:95
+#: help.c:96
 msgid "  -f FILENAME     execute commands from file, then exit"
 msgstr "  -f ÎļþÃû       Ö´ÐÐÀ´×ÔÎļþµÄÃüÁî, È»ºóÍ˳ö"
 
-#: help.c:96
+#: help.c:97
 msgid "  -l              list available databases, then exit"
 msgstr "  -l              ÁгöËùÓпÉÓÃÊý¾Ý¿â, È»ºóÍ˳ö"
 
-#: help.c:97
+#: help.c:98
 msgid "  -v NAME=VALUE   set psql variable NAME to VALUE"
 msgstr "  -v NAME=VALUE   ÉèÖàpsql ±äÁ¿ NAME µÄֵΪ VALUE"
 
-#: help.c:98
+#: help.c:99
 msgid "  -X              do not read startup file (~/.psqlrc)"
 msgstr "  -X              ²»Òª¶ÁÈ¡Æô¶¯Îļþ (~/.psqlrc)"
 
-#: help.c:99
+#: help.c:100
 msgid "  --help          show this help, then exit"
 msgstr "  --help          ÏÔʾ´Ë°ïÖúÐÅÏ¢, È»ºóÍ˳ö"
 
-#: help.c:100
+#: help.c:101
 msgid "  --version       output version information, then exit"
 msgstr "  --version       ÏÔʾ°æ±¾ÐÅÏ¢, È»ºóÍ˳ö"
 
-#: help.c:102
+#: help.c:103
 msgid ""
 "\n"
 "Input and output options:"
@@ -424,39 +432,39 @@ msgstr ""
 "\n"
 "ÊäÈëºÍÊä³öÑ¡Ïî:"
 
-#: help.c:103
+#: help.c:104
 msgid "  -a              echo all input from script"
 msgstr "  -a              »ØÏÔËùÓÐÀ´×Խű¾µÄÊäÈë"
 
-#: help.c:104
+#: help.c:105
 msgid "  -e              echo commands sent to server"
 msgstr "  -e              »ØÏÔ·¢Ë͸ø·þÎñÆ÷µÄÃüÁî"
 
-#: help.c:105
+#: help.c:106
 msgid "  -E              display queries that internal commands generate"
 msgstr "  -E              ÏÔʾÄÚ²¿ÃüÁîÉú³ÉµÄ²éѯ"
 
-#: help.c:106
+#: help.c:107
 msgid "  -q              run quietly (no messages, only query output)"
 msgstr "  -q              °²¾²ÔËÐР(ûÓÐÐÅÏ¢, Ö»ÓвéѯÊä³ö)"
 
-#: help.c:107
+#: help.c:108
 msgid "  -o FILENAME     send query results to file (or |pipe)"
 msgstr "  -o ÎļþÃû       ÏòÎļþ(»òÕß |¹ÜµÀ)·¢ËͲéѯ½á¹û"
 
-#: help.c:108
+#: help.c:109
 msgid "  -n              disable enhanced command line editing (readline)"
 msgstr "  -n              ¹Ø±ÕÔöÇ¿µÄÃüÁîÐб༭¹¦ÄÜ (readline)"
 
-#: help.c:109
+#: help.c:110
 msgid "  -s              single-step mode (confirm each query)"
 msgstr "  -s              µ¥²½Ä£Ê½ (ºËʵÿ¸ö²éѯ)"
 
-#: help.c:110
+#: help.c:111
 msgid "  -S              single-line mode (end of line terminates SQL command)"
 msgstr "  -S              µ¥ÐÐģʽ (Ò»ÐнáÊøͬʱҲ±êÖ¾×Å SQL ÃüÁî½áÊø)"
 
-#: help.c:112
+#: help.c:113
 msgid ""
 "\n"
 "Output format options:"
@@ -464,44 +472,44 @@ msgstr ""
 "\n"
 "Êä³ö¸ñʽѡÏî:"
 
-#: help.c:113
+#: help.c:114
 msgid "  -A              unaligned table output mode (-P format=unaligned)"
 msgstr "  -A              ·Ç¶ÔÆëµÄ±íÊä³öģʽ(-P format=unaligned)"
 
-#: help.c:114
+#: help.c:115
 msgid "  -H              HTML table output mode (-P format=html)"
 msgstr "  -H              HTML ±íÊä³öģʽ (-P format=html)"
 
-#: help.c:115
+#: help.c:116
 msgid "  -t              print rows only (-P tuples_only)"
 msgstr "  -t              Ö»´òÓ¡ÐР(-P tuples_onle)"
 
-#: help.c:116
+#: help.c:117
 msgid ""
 "  -T TEXT         set HTML table tag attributes (width, border) (-P "
 "tableattr=)"
 msgstr "  -T Îı¾         ÉèÖàHTML ±í±ê¼ÇÊôÐÔ (±í¿í, ±ß¿í) (-P tableattr=)"
 
-#: help.c:117
+#: help.c:118
 msgid "  -x              turn on expanded table output (-P expanded)"
 msgstr "  -x              ´ò¿ªÀ©Õ¹±íÊä³ö (-P expended)"
 
-#: help.c:118
+#: help.c:119
 msgid "  -P VAR[=ARG]    set printing option VAR to ARG (see \\pset command)"
 msgstr "  -P VAR[=ARG]    °Ñ´òÓ¡Ñ¡Ïî VAR ÉèÖÃΪ ARG (¼û \\pset ÃüÁî)"
 
-#: help.c:119
+#: help.c:120
 #, c-format
 msgid ""
 "  -F STRING       set field separator (default: \"%s\") (-P fieldsep=)\n"
 msgstr "  -F ×Ö´®         ÉèÖÃÓò·Ö¸ô·û (ȱʡ: \"%s\") (-P fieldsep=)\n"
 
-#: help.c:121
+#: help.c:122
 msgid ""
 "  -R STRING       set record separator (default: newline) (-P recordsep=)"
 msgstr "  -R ×Ö´®         ÉèÖüǼ·Ö¸ô·û (ȱʡ: ÐÂÐÐ) (-P recordsep=)"
 
-#: help.c:123
+#: help.c:124
 msgid ""
 "\n"
 "Connection options:"
@@ -509,32 +517,32 @@ msgstr ""
 "\n"
 "Áª½ÓÑ¡Ïî:"
 
-#: help.c:126
+#: help.c:127
 #, c-format
 msgid ""
 "  -h HOSTNAME     database server host or socket directory (default: \"%s"
 "\")\n"
 msgstr "  -h Ö÷»úÃû       ÉùÃ÷Êý¾Ý¿â·þÎñÆ÷Ö÷»ú»òÌ×½Ó×ÖĿ¼ (ȱʡ: \"%s\")\n"
 
-#: help.c:127
+#: help.c:128
 msgid "local socket"
 msgstr "±¾µØÌ×½Ó×Ö"
 
-#: help.c:130
+#: help.c:131
 #, c-format
 msgid "  -p PORT         database server port (default: \"%s\")\n"
 msgstr "  -p ¶Ë¿Ú         Êý¾Ý¿â·þÎñÆ÷¶Ë¿Ú (ȱʡ: %s)\n"
 
-#: help.c:136
+#: help.c:137
 #, c-format
 msgid "  -U NAME         database user name (default: \"%s\")\n"
-msgstr "  -U Ãû×Ö         Êý¾Ý¿âÓû§Ãû (ȱʡ: \"%s\")\n"
+msgstr "  -U Ãû×Ö         Êý¾Ý¿âÓû§Ãû³Æ (ȱʡ: \"%s\")\n"
 
-#: help.c:137
+#: help.c:138
 msgid "  -W              prompt for password (should happen automatically)"
 msgstr "  -W              ÌáʾÊäÈë¿ÚÁî (½«×Ô¶¯·¢Éú)"
 
-#: help.c:140
+#: help.c:141
 msgid ""
 "\n"
 "For more information, type \"\\?\" (for internal commands) or \"\\help\"\n"
@@ -549,85 +557,85 @@ msgstr ""
 "\n"
 "Ïò <pgsql-bugs@postgresql.org> »ã±¨³ô³æ."
 
-#: help.c:174
+#: help.c:175
 #, c-format
 msgid "General\n"
 msgstr "Ò»°ãÑ¡Ïî\n"
 
-#: help.c:175
+#: help.c:176
 #, c-format
 msgid ""
 "  \\c[onnect] [DBNAME|- [USER]]\n"
 "                 connect to new database (currently \"%s\")\n"
 msgstr ""
-"  \\c[onnect] [Êý¾Ý¿âÃû|- [Óû§Ãû]]\n"
-"                   Áª½Óµ½ÐµÄÊý¾Ý¿â (µ±Ç°Îª \"%s\")\n"
+"  \\c[onnect] [Êý¾Ý¿âÃû|- [Óû§Ãû³Æ]]\n"
+"                    Áª½Óµ½ÐµÄÊý¾Ý¿â (µ±Ç°Îª \"%s\")\n"
 
-#: help.c:178
+#: help.c:179
 #, c-format
 msgid "  \\cd [DIR]      change the current working directory\n"
 msgstr "  \\cd [Ŀ¼Ãû]     ¸Ä±äµ±Ç°µÄ¹¤×÷Ŀ¼\n"
 
-#: help.c:179
+#: help.c:180
 #, c-format
 msgid "  \\copyright     show PostgreSQL usage and distribution terms\n"
 msgstr "  \\copyright       ÏÔʾ PostgreSQL Ó÷¨ºÍ·¢²¼ÐÅÏ¢\n"
 
-#: help.c:180
+#: help.c:181
 #, c-format
 msgid ""
 "  \\encoding [ENCODING]\n"
 "                 show or set client encoding\n"
 msgstr ""
 "  \\encoding [±àÂë]\n"
-"                   ÏÔʾ»òÉèÖÿͻ§¶Ë±àÂë\n"
+"                    ÏÔʾ»òÉèÖÿͻ§¶Ë±àÂë\n"
 
-#: help.c:182
+#: help.c:183
 #, c-format
 msgid "  \\h [NAME]      help on syntax of SQL commands, * for all commands\n"
 msgstr "  \\h [Ãû×Ö]        SQL ÃüÁîµÄÓï·¨°ïÖú, Óà* ¿ÉÒÔ¿´ËùÓÐÃüÁîµÄ°ïÖú\n"
 
-#: help.c:183
+#: help.c:184
 #, c-format
 msgid "  \\q             quit psql\n"
 msgstr "  \\q               Í˳ö psql\n"
 
-#: help.c:184
+#: help.c:185
 #, c-format
 msgid ""
 "  \\set [NAME [VALUE]]\n"
 "                 set internal variable, or list all if no parameters\n"
 msgstr ""
 "  \\set [Ãû×Ö [Öµ]]\n"
-"                   ÉèÖÃÄÚ²¿±äÁ¿, Èç¹ûûÓвÎÊý¾ÍÁгöËùÓÐ\n"
+"                    ÉèÖÃÄÚ²¿±äÁ¿, Èç¹ûûÓвÎÊý¾ÍÁгöËùÓÐ\n"
 
-#: help.c:186
+#: help.c:187
 #, c-format
 msgid "  \\timing        toggle timing of commands (currently %s)\n"
 msgstr "  \\timing          ²éѯ¼Æʱ¿ª¹ØÇл» (Ä¿Ç°ÊÇ %s)\n"
 
-#: help.c:188
+#: help.c:189
 #, c-format
 msgid "  \\unset NAME    unset (delete) internal variable\n"
 msgstr "  \\unset Ãû×Ö      È¡Ïû(ɾ³ý)ÄÚ²¿±äÁ¿\n"
 
-#: help.c:189
+#: help.c:190
 #, c-format
 msgid "  \\! [COMMAND]   execute command in shell or start interactive shell\n"
 msgstr "  \\! [ÃüÁî]        ÔÚ shell ÀïÖ´ÐÐÃüÁî»òÕß¿ªÊ¼Ò»¸ö½»»¥µÄ shell\n"
 
-#: help.c:192
+#: help.c:193
 #, c-format
 msgid "Query Buffer\n"
 msgstr "²éѯ»º³åÇøÑ¡Ïî\n"
 
-#: help.c:193
+#: help.c:194
 #, c-format
 msgid ""
 "  \\e [FILE]      edit the query buffer (or file) with external editor\n"
 msgstr "  \\e [ÎļþÃû]      ÓÃÒ»¸öÍⲿ±à¼­Æ÷±à¼­µ±Ç°²éѯ»º³åÇø»òÕßÎļþ\n"
 
-#: help.c:194
+#: help.c:195
 #, c-format
 msgid ""
 "  \\g [FILE]      send query buffer to server (and results to file or |"
@@ -635,183 +643,183 @@ msgid ""
 msgstr ""
 "  \\g [ÎļþÃû]      Ïò·þÎñÆ÷·¢ËÍ SQL ÃüÁî (²¢ÇҰѽá¹ûдµ½Îļþ»òÕß |¹ÜµÀ)\n"
 
-#: help.c:195
+#: help.c:196
 #, c-format
 msgid "  \\p             show the contents of the query buffer\n"
 msgstr "  \\p               ÏÔʾµ±Ç°²éѯ»º³åÇøµÄÄÚÈÝ\n"
 
-#: help.c:196
+#: help.c:197
 #, c-format
 msgid "  \\r             reset (clear) the query buffer\n"
 msgstr "  \\r               ÖØÖà(ÇåÀí) ²éѯ»º³åÇø\n"
 
-#: help.c:197
+#: help.c:199
 #, c-format
 msgid "  \\s [FILE]      display history or save it to file\n"
 msgstr "  \\s [ÎļþÃû]      ´òÓ¡ÀúÊ·»òÕß½«Æä±£´æµ½Îļþ\n"
 
-#: help.c:198
+#: help.c:201
 #, c-format
 msgid "  \\w FILE        write query buffer to file\n"
 msgstr "  \\w [ÎļþÃû]      ½«²éѯ»º³åÇøд³öµ½Îļþ\n"
 
-#: help.c:201
+#: help.c:204
 #, c-format
 msgid "Input/Output\n"
 msgstr "ÊäÈë/Êä³öÑ¡Ïî\n"
 
-#: help.c:202
+#: help.c:205
 #, c-format
 msgid "  \\echo [STRING] write string to standard output\n"
 msgstr "  \\echo [×Ö´®]     Ïò±ê×¼Êä³öд³öÎı¾\n"
 
-#: help.c:203
+#: help.c:206
 #, c-format
 msgid "  \\i FILE        execute commands from file\n"
 msgstr "  \\i ÎļþÃû        Ö´ÐÐÀ´×ÔÎļþµÄÃüÁî\n"
 
-#: help.c:204
+#: help.c:207
 #, c-format
 msgid "  \\o [FILE]      send all query results to file or |pipe\n"
 msgstr "  \\o [ÎļþÃû]      ÏòÎļþ»òÕß |¹ÜµÀ ·¢ËÍËùÓвéѯ½á¹û\n"
 
-#: help.c:205
+#: help.c:208
 #, c-format
 msgid ""
 "  \\qecho [STRING]\n"
 "                 write string to query output stream (see \\o)\n"
 msgstr ""
 "  \\qecho [×Ö´®]\n"
-"                   Ïò²éѯÊä³öÁ÷д³öÎı¾ (¼û \\o)\n"
+"                    Ïò²éѯÊä³öÁ÷д³öÎı¾ (¼û \\o)\n"
 
-#: help.c:209
+#: help.c:212
 #, c-format
 msgid "Informational\n"
 msgstr "ÐÅϢѡÏî\n"
 
-#: help.c:210
+#: help.c:213
 #, c-format
 msgid "  \\d [NAME]      describe table, index, sequence, or view\n"
 msgstr "  \\d [Ãû×Ö]        ÃèÊö±í, Ë÷Òý, ÐòÁÐ, »òÕßÊÓͼ\n"
 
-#: help.c:211
+#: help.c:214
 #, c-format
 msgid ""
 "  \\d{t|i|s|v|S} [PATTERN] (add \"+\" for more detail)\n"
 "                 list tables/indexes/sequences/views/system tables\n"
 msgstr ""
 "  \\d{t|i|s|v|S} [ģʽ] (¼Ó \"+\" »ñÈ¡¸ü¶àÐÅÏ¢)\n"
-"                   Áгö±í/Ë÷Òý/ÐòÁÐ/ÊÓͼ/ϵͳ±í\n"
+"                    Áгö±í/Ë÷Òý/ÐòÁÐ/ÊÓͼ/ϵͳ±í\n"
 
-#: help.c:213
+#: help.c:216
 #, c-format
 msgid "  \\da [PATTERN]  list aggregate functions\n"
 msgstr "  \\da [ģʽ]       Áгö¾Û¼¯º¯Êý\n"
 
-#: help.c:214
+#: help.c:217
 #, c-format
 msgid "  \\db [PATTERN]  list tablespaces (add \"+\" for more detail)\n"
 msgstr "  \\db [ģʽ]       Áгö±í¿Õ¼ä (¼Ó \"+\" »ñÈ¡¸ü¶àµÄÐÅÏ¢)\n"
 
-#: help.c:215
+#: help.c:218
 #, c-format
 msgid "  \\dc [PATTERN]  list conversions\n"
 msgstr "  \\dc [ģʽ]       Áгö±àÂëת»»\n"
 
-#: help.c:216
+#: help.c:219
 #, c-format
 msgid "  \\dC            list casts\n"
 msgstr "  \\dC              ÁгöÀàÐÍת»»\n"
 
-#: help.c:217
+#: help.c:220
 #, c-format
 msgid "  \\dd [PATTERN]  show comment for object\n"
 msgstr "  \\dd [ģʽ]       ÏÔʾĿ±êµÄ×¢ÊÍ\n"
 
-#: help.c:218
+#: help.c:221
 #, c-format
 msgid "  \\dD [PATTERN]  list domains\n"
 msgstr "  \\dD [ģʽ]       ÁгöÓò\n"
 
-#: help.c:219
+#: help.c:222
 #, c-format
 msgid "  \\df [PATTERN]  list functions (add \"+\" for more detail)\n"
 msgstr "  \\df [ģʽ]       Áгöº¯Êý (¼Ó \"+\" »ñÈ¡¸ü¶àµÄÐÅÏ¢)\n"
 
-#: help.c:220
+#: help.c:223
 #, c-format
 msgid "  \\dg [PATTERN]  list groups\n"
 msgstr "  \\dg [ģʽ]       Áгö×é\n"
 
-#: help.c:221
+#: help.c:224
 #, c-format
 msgid "  \\dn [PATTERN]  list schemas (add \"+\" for more detail)\n"
 msgstr "  \\dn [ģʽ]       Áгöģʽ (¼Ó \"+\" »ñÈ¡¸ü¶àµÄÐÅÏ¢)\n"
 
-#: help.c:222
+#: help.c:225
 #, c-format
 msgid "  \\do [NAME]     list operators\n"
 msgstr "  \\do [Ãû×Ö]       Áгö²Ù×÷·û\n"
 
-#: help.c:223
+#: help.c:226
 #, c-format
 msgid "  \\dl            list large objects, same as \\lo_list\n"
 msgstr "  \\dl              Áгö´ó¶ÔÏó, ºÍ \\lo_list Ò»Ñù\n"
 
-#: help.c:224
+#: help.c:227
 #, c-format
-msgid "  \\dp [PATTERN]  list table, view and sequence access privileges\n"
+msgid "  \\dp [PATTERN]  list table, view, and sequence access privileges\n"
 msgstr "  \\dp [ģʽ]       Áгö±í, ÊÓͼ, ÐòÁеķÃÎÊȨÏÞ\n"
 
-#: help.c:225
+#: help.c:228
 #, c-format
 msgid "  \\dT [PATTERN]  list data types (add \"+\" for more detail)\n"
 msgstr "  \\dT [ģʽ]       ÁгöÊý¾ÝÀàÐÍ (¼Ó \"+\" »ñÈ¡¸ü¶àµÄÐÅÏ¢)\n"
 
-#: help.c:226
+#: help.c:229
 #, c-format
 msgid "  \\du [PATTERN]  list users\n"
 msgstr "  \\du [ģʽ]       ÁгöÓû§\n"
 
-#: help.c:227
+#: help.c:230
 #, c-format
 msgid "  \\l             list all databases (add \"+\" for more detail)\n"
 msgstr "  \\l               ÁгöËùÓÐÊý¾Ý¿â (¼Ó \"+\" »ñÈ¡¸ü¶àµÄÐÅÏ¢)\n"
 
-#: help.c:228
+#: help.c:231
 #, c-format
 msgid ""
-"  \\z [PATTERN]   list table, view and sequence access privileges (same as "
+"  \\z [PATTERN]   list table, view, and sequence access privileges (same as "
 "\\dp)\n"
 msgstr "  \\z [ģʽ]        Áгö±í, ÊÓͼ, ÐòÁеķÃÎÊȨÏÞ (ºÍ \\dp Ò»Ñù)\n"
 
-#: help.c:231
+#: help.c:234
 #, c-format
 msgid "Formatting\n"
 msgstr "¸ñʽѡÏî\n"
 
-#: help.c:232
+#: help.c:235
 #, c-format
 msgid "  \\a             toggle between unaligned and aligned output mode\n"
 msgstr "  \\a               ÔڷǶÔÆëºÍ¶ÔÆëµÄÊä³öģʽ֮¼äÇл»\n"
 
-#: help.c:233
+#: help.c:236
 #, c-format
 msgid "  \\C [STRING]    set table title, or unset if none\n"
 msgstr "  \\C [×Ö´®]        ÉèÖñí±êÌâ, Èç¹û²ÎÊý¿ÕÔòÈ¡Ïû±êÌâ\n"
 
-#: help.c:234
+#: help.c:237
 #, c-format
 msgid ""
 "  \\f [STRING]    show or set field separator for unaligned query output\n"
 msgstr " \\f [×Ö´®]         Îª·Ç¶ÔÆë²éѯÊä³öÏÔʾ»òÉèÖÃÓò·Ö¸ô·û\n"
 
-#: help.c:235
+#: help.c:238
 #, c-format
 msgid "  \\H             toggle HTML output mode (currently %s)\n"
 msgstr "  \\H               ÔÚ HTML Êä³öģʽ֮¼äÇл» (µ±Ç°ÊÇ %s)\n"
 
-#: help.c:237
+#: help.c:240
 #, c-format
 msgid ""
 "  \\pset NAME [VALUE]\n"
@@ -820,41 +828,41 @@ msgid ""
 "                 recordsep|tuples_only|title|tableattr|pager})\n"
 msgstr ""
 "  \\pset ±äÁ¿ [Öµ]\n"
-"                   ÉèÖñíµÄÊä³öÑ¡Ïî\n"
-"                   (±äÁ¿ := {foramt|border|expanded|fieldsep|null|\n"
-"                   recordsep|tuples_only|title|tableattr|pager})\n"
+"                    ÉèÖñíµÄÊä³öÑ¡Ïî\n"
+"                    (±äÁ¿ := {foramt|border|expanded|fieldsep|null|\n"
+"                    recordsep|tuples_only|title|tableattr|pager})\n"
 
-#: help.c:241
+#: help.c:244
 #, c-format
 msgid "  \\t             show only rows (currently %s)\n"
 msgstr "  \\t               Ö»ÏÔʾÐР(µ±Ç°ÊÇ %s)\n"
 
-#: help.c:243
+#: help.c:246
 #, c-format
 msgid "  \\T [STRING]    set HTML <table> tag attributes, or unset if none\n"
 msgstr "  \\T [×Ö´®]        ÉèÖàHTML <±í> ±ê¼ÇÊôÐÔ, Èç¹ûûÓвÎÊý¾ÍÈ¡ÏûÉèÖÃ\n"
 
-#: help.c:244
+#: help.c:247
 #, c-format
 msgid "  \\x             toggle expanded output (currently %s)\n"
 msgstr "  \\x               ÔÚÀ©Õ¹Êä³öÖ®¼äÇл» (Ä¿Ç°ÊÇ %s)\n"
 
-#: help.c:248
+#: help.c:251
 #, c-format
 msgid "Copy, Large Object\n"
 msgstr "¿½±´, ´ó¶ÔÏóÑ¡Ïî\n"
 
-#: help.c:249
+#: help.c:252
 #, c-format
 msgid ""
 "  \\copy ...      perform SQL COPY with data stream to the client host\n"
 msgstr "  \\copy ...        Ö´ÐРSQL COPY, Êý¾ÝÁ÷Ö¸Ïò¿Í»§¶ËÖ÷»ú\n"
 
-#: help.c:250
+#: help.c:253
 #, c-format
 msgid ""
 "  \\lo_export LOBOID FILE\n"
-"  \\lo_import FILE [COMMENT] \n"
+"  \\lo_import FILE [COMMENT]\n"
 "  \\lo_list\n"
 "  \\lo_unlink LOBOID    large object operations\n"
 msgstr ""
@@ -863,11 +871,11 @@ msgstr ""
 "  \\lo_list\n"
 "  \\lo_unlink LOBOID    ´ó¶ÔÏó²Ù×÷\n"
 
-#: help.c:283
+#: help.c:286
 msgid "Available help:\n"
 msgstr "¿ÉÓðïÖú:\n"
 
-#: help.c:342
+#: help.c:345
 #, c-format
 msgid ""
 "Command:     %s\n"
@@ -882,7 +890,7 @@ msgstr ""
 "%s\n"
 "\n"
 
-#: help.c:355
+#: help.c:358
 #, c-format
 msgid ""
 "No help available for \"%-.*s\".\n"
@@ -891,11 +899,15 @@ msgstr ""
 "ûÓР\"%-.*s\" µÄ¿ÉÓðïÖú.\n"
 "Óò»´ø²ÎÊýµÄ \\h »ñÈ¡¿ÉÓðïÖú.\n"
 
-#: input.c:214
+#: input.c:210
 #, c-format
 msgid "could not save history to file \"%s\": %s\n"
 msgstr "ÎÞ·¨½«ÀúÊ·±£´æµ½Îļþ \"%s\": %s\n"
 
+#: input.c:213
+msgid "history is not supported by this installation\n"
+msgstr "´Ë°²×°²»Ö§³ÖÀúÊ·\n"
+
 #: large_obj.c:36
 #, c-format
 msgid "%s: not connected to a database\n"
@@ -911,17 +923,17 @@ msgstr "%s: 
 msgid "%s: unknown transaction status\n"
 msgstr "%s: Î´ÖªÊÂÎñ״̬\n"
 
-#: large_obj.c:255 describe.c:83 describe.c:187 describe.c:260 describe.c:322
-#: describe.c:369 describe.c:469 describe.c:758 describe.c:1483
-#: describe.c:1730
+#: large_obj.c:256 describe.c:83 describe.c:187 describe.c:260 describe.c:322
+#: describe.c:369 describe.c:469 describe.c:758 describe.c:1488
+#: describe.c:1733
 msgid "Description"
 msgstr "ÃèÊö"
 
-#: large_obj.c:263
+#: large_obj.c:264
 msgid "Large objects"
 msgstr "´ó¶ÔÏó"
 
-#: mainloop.c:172
+#: mainloop.c:175
 #, c-format
 msgid "Use \"\\q\" to leave %s.\n"
 msgstr "ʹÓà\"\\q\" À뿪 %s.\n"
@@ -945,11 +957,11 @@ msgstr "(%d 
 msgid "%s: out of memory\n"
 msgstr "%s: ÄÚ´æÓþ¡\n"
 
-#: startup.c:178
+#: startup.c:182
 msgid "User name: "
-msgstr "Óû§Ãû:"
+msgstr "Óû§Ãû³Æ:"
 
-#: startup.c:286
+#: startup.c:293
 #, c-format
 msgid ""
 "Welcome to %s %s, the PostgreSQL interactive terminal.\n"
@@ -1000,11 +1012,11 @@ msgstr "%s: 
 msgid "%s: Warning: The -u option is deprecated. Use -U.\n"
 msgstr "%s: ¾¯¸æ: -u Ñ¡ÏîÒѾ­·ÏÆú. ÇëÓà-U.\n"
 
-#: startup.c:629
+#: startup.c:630
 msgid "contains support for command-line editing"
 msgstr "°üÀ¨ÃüÁîÐб༭µÄÖ§³Ö"
 
-#: startup.c:652
+#: startup.c:653
 #, c-format
 msgid ""
 "SSL connection (cipher: %s, bits: %i)\n"
@@ -1014,13 +1026,13 @@ msgstr ""
 "\n"
 
 #: describe.c:82 describe.c:177 describe.c:247 describe.c:320 describe.c:415
-#: describe.c:469 describe.c:1476 describe.c:1582 describe.c:1630
+#: describe.c:469 describe.c:1476 describe.c:1585 describe.c:1633
 msgid "Schema"
 msgstr "ģʽ"
 
 #: describe.c:82 describe.c:128 describe.c:177 describe.c:247 describe.c:320
 #: describe.c:362 describe.c:415 describe.c:469 describe.c:1476
-#: describe.c:1583 describe.c:1631 describe.c:1724
+#: describe.c:1586 describe.c:1634 describe.c:1727
 msgid "Name"
 msgstr "Ãû×Ö"
 
@@ -1038,11 +1050,11 @@ msgstr "
 
 #: describe.c:117
 #, c-format
-msgid "This server version (%d) does not support tablespaces.\n"
+msgid "The server version (%d) does not support tablespaces.\n"
 msgstr "´Ë·þÎñÆ÷°æ±¾ (%d) ²»Ö§³Ö±í¿Õ¼ä.\n"
 
 #: describe.c:128 describe.c:186 describe.c:362 describe.c:1478
-#: describe.c:1724
+#: describe.c:1727
 msgid "Owner"
 msgstr "ËùÓÐÕß"
 
@@ -1050,7 +1062,7 @@ msgstr "
 msgid "Location"
 msgstr "λÖÃ"
 
-#: describe.c:133 describe.c:415 describe.c:1730
+#: describe.c:133 describe.c:415 describe.c:1733
 msgid "Access privileges"
 msgstr "·ÃÎÊȨÏÞ"
 
@@ -1126,7 +1138,7 @@ msgstr "
 msgid "sequence"
 msgstr "ÐòÁÐ"
 
-#: describe.c:415 describe.c:745 describe.c:1478 describe.c:1584
+#: describe.c:415 describe.c:745 describe.c:1478 describe.c:1587
 msgid "Type"
 msgstr "ÀàÐÍ"
 
@@ -1230,12 +1242,12 @@ msgid "?%c? \"%s.%s\""
 msgstr "?%c? \"%s.%s\""
 
 #: describe.c:925
-msgid "PRIMARY KEY, "
-msgstr " PRIMARY KEY, "
+msgid "primary key, "
+msgstr "Ö÷¼ü, "
 
 #: describe.c:927
-msgid "UNIQUE, "
-msgstr " UNIQUE, "
+msgid "unique, "
+msgstr "Ψһ, "
 
 #: describe.c:933
 #, c-format
@@ -1248,8 +1260,8 @@ msgid ", predicate (%s)"
 msgstr ", ÊõÓï (%s)"
 
 #: describe.c:940
-msgid ", CLUSTER"
-msgstr ", CLUSTER"
+msgid ", clustered"
+msgstr ", ´Ø"
 
 #: describe.c:977
 #, c-format
@@ -1273,18 +1285,6 @@ msgstr "
 msgid "    \"%s\""
 msgstr "    \"%s\""
 
-#: describe.c:1152
-msgid " PRIMARY KEY,"
-msgstr " PRIMARY KEY,"
-
-#: describe.c:1154
-msgid " UNIQUE,"
-msgstr " UNIQUE,"
-
-#: describe.c:1165
-msgid " CLUSTER"
-msgstr " CLUSTER"
-
 #: describe.c:1174
 msgid "Check constraints:"
 msgstr "¼ì²éÔ¼Êø:"
@@ -1307,14 +1307,14 @@ msgid "Inherits"
 msgstr "¼Ì³Ð"
 
 #: describe.c:1259
-msgid "Contains OIDs"
-msgstr "Contains OIDs"
+msgid "Has OIDs"
+msgstr "Has OIDs"
 
-#: describe.c:1262 describe.c:1634 describe.c:1691
+#: describe.c:1262 describe.c:1637 describe.c:1694
 msgid "yes"
 msgstr "yes"
 
-#: describe.c:1262 describe.c:1635 describe.c:1689
+#: describe.c:1262 describe.c:1638 describe.c:1692
 msgid "no"
 msgstr "no"
 
@@ -1325,7 +1325,7 @@ msgstr "
 
 #: describe.c:1375
 msgid "User name"
-msgstr "Óû§Ãû"
+msgstr "Óû§Ãû³Æ"
 
 #: describe.c:1375
 msgid "User ID"
@@ -1352,8 +1352,8 @@ msgid "Groups"
 msgstr "×é"
 
 #: describe.c:1391
-msgid "List of database users"
-msgstr "Êý¾Ý¿âÓû§Áбí"
+msgid "List of users"
+msgstr "Óû§Áбí"
 
 #: describe.c:1418
 msgid "Group name"
@@ -1364,84 +1364,84 @@ msgid "Group ID"
 msgstr "×é ID"
 
 #: describe.c:1431
-msgid "List of database groups"
-msgstr "Êý¾Ý¿â×éÁбí"
+msgid "List of groups"
+msgstr "×éÁбí"
 
 #: describe.c:1478
 msgid "special"
 msgstr "ÌØÊâ"
 
-#: describe.c:1493
+#: describe.c:1483
 msgid "Table"
 msgstr "±í"
 
-#: describe.c:1539
+#: describe.c:1542
 #, c-format
 msgid "No matching relations found.\n"
 msgstr "ûÓÐÕÒµ½Æ¥ÅäµÄ¹Øϵ.\n"
 
-#: describe.c:1541
+#: describe.c:1544
 #, c-format
 msgid "No relations found.\n"
 msgstr "ûÓÐÕÒµ½¹Øϵ.\n"
 
-#: describe.c:1546
+#: describe.c:1549
 msgid "List of relations"
 msgstr "¹ØϵÁбí"
 
-#: describe.c:1585
+#: describe.c:1588
 msgid "Modifier"
 msgstr "ÐÞ¸ÄÕß"
 
-#: describe.c:1599
+#: describe.c:1602
 msgid "List of domains"
 msgstr "ÓòÁбí"
 
-#: describe.c:1632
+#: describe.c:1635
 msgid "Source"
 msgstr "Source"
 
-#: describe.c:1633
+#: describe.c:1636
 msgid "Destination"
 msgstr "Destination"
 
-#: describe.c:1636
+#: describe.c:1639
 msgid "Default?"
 msgstr "Default?"
 
-#: describe.c:1650
+#: describe.c:1653
 msgid "List of conversions"
 msgstr "ת»»Áбí"
 
-#: describe.c:1685
+#: describe.c:1688
 msgid "Source type"
 msgstr "Ô´ÀàÐÍ"
 
-#: describe.c:1686
+#: describe.c:1689
 msgid "Target type"
 msgstr "Ä¿±êÀàÐÍ"
 
-#: describe.c:1687
+#: describe.c:1690
 msgid "(binary compatible)"
 msgstr "(¶þ½øÖƼæÈÝ)"
 
-#: describe.c:1688
+#: describe.c:1691
 msgid "Function"
 msgstr "º¯Êý"
 
-#: describe.c:1690
+#: describe.c:1693
 msgid "in assignment"
 msgstr "in assignment"
 
-#: describe.c:1692
+#: describe.c:1695
 msgid "Implicit?"
 msgstr "Òþº¬µÄ?"
 
-#: describe.c:1700
+#: describe.c:1703
 msgid "List of casts"
 msgstr "ÀàÐÍת»»Áбí"
 
-#: describe.c:1750
+#: describe.c:1753
 msgid "List of schemas"
 msgstr "ģʽÁбí"
 
@@ -1548,10 +1548,10 @@ msgid ""
 "\n"
 "ALTER GROUP groupname RENAME TO newname"
 msgstr ""
-"ALTER GROUP ×éÃû ADD USER Óû§Ãû [, ... ]\n"
-"ALTER GROUP ×éÃû DROP USER Óû§Ãû [, ... ]\n"
+"ALTER GROUP ×éÃû³Æ ADD USER Óû§Ãû³Æ [, ... ]\n"
+"ALTER GROUP ×éÃû³Æ DROP USER Óû§Ãû³Æ [, ... ]\n"
 "\n"
-"ALTER GROUP ×éÃû RENAME TO ÐÂÃû×Ö"
+"ALTER GROUP ×éÃû³Æ RENAME TO ÐÂÃû³Æ"
 
 #: sql_help.h:53
 msgid "change the definition of an index"
@@ -2187,15 +2187,12 @@ msgstr "
 
 #: sql_help.h:182
 msgid ""
-"CREATE SCHEMA schemaname [ AUTHORIZATION username ] [ TABLESPACE "
-"tablespace ] [ schema_element [ ... ] ]\n"
-"CREATE SCHEMA AUTHORIZATION username [ TABLESPACE tablespace ] "
-"[ schema_element [ ... ] ]"
+"CREATE SCHEMA schemaname [ AUTHORIZATION username ] [ schema_element "
+"[ ... ] ]\n"
+"CREATE SCHEMA AUTHORIZATION username [ schema_element [ ... ] ]"
 msgstr ""
-"CREATE SCHEMA schemaname [ AUTHORIZATION username ] [ TABLESPACE "
-"tablespace ] [ schema_element [ ... ] ]\n"
-"CREATE SCHEMA AUTHORIZATION username [ TABLESPACE tablespace ] "
-"[ schema_element [ ... ] ]"
+"CREATE SCHEMA Ä£Ê½Ãû³Æ [ AUTHORIZATION Óû§Ãû³Æ ] [ Ä£Ê½ÔªËØ [ ... ] ]\n"
+"CREATE SCHEMA AUTHORIZATION Óû§Ãû³Æ [ Ä£Ê½ÔªËØ [ ... ] ]"
 
 #: sql_help.h:185
 msgid "define a new sequence generator"
@@ -2314,7 +2311,7 @@ msgstr "
 #: sql_help.h:198
 msgid ""
 "CREATE TABLESPACE tablespacename [ OWNER username ] LOCATION 'directory'"
-msgstr "CREATE TABLESPACE ±í¿Õ¼äÃû³Æ [ OWNER Óû§Ãû ] LOCATION 'Ŀ¼'"
+msgstr "CREATE TABLESPACE ±í¿Õ¼äÃû³Æ [ OWNER Óû§Ãû³Æ ] LOCATION 'Ŀ¼'"
 
 #: sql_help.h:201
 msgid "define a new trigger"
@@ -2683,11 +2680,6 @@ msgid ""
 "    TO { username | GROUP groupname | PUBLIC } [, ...] [ WITH GRANT "
 "OPTION ]\n"
 "\n"
-"GRANT { CREATE | ALL [ PRIVILEGES ] }\n"
-"    ON TABLESPACE tablespacename [, ...]\n"
-"    TO { username | GROUP groupname | PUBLIC } [, ...] [ WITH GRANT "
-"OPTION ]\n"
-"\n"
 "GRANT { EXECUTE | ALL [ PRIVILEGES ] }\n"
 "    ON FUNCTION funcname ([type, ...]) [, ...]\n"
 "    TO { username | GROUP groupname | PUBLIC } [, ...] [ WITH GRANT "
@@ -2700,32 +2692,37 @@ msgid ""
 "\n"
 "GRANT { { CREATE | USAGE } [,...] | ALL [ PRIVILEGES ] }\n"
 "    ON SCHEMA schemaname [, ...]\n"
+"    TO { username | GROUP groupname | PUBLIC } [, ...] [ WITH GRANT "
+"OPTION ]\n"
+"\n"
+"GRANT { CREATE | ALL [ PRIVILEGES ] }\n"
+"    ON TABLESPACE tablespacename [, ...]\n"
 "    TO { username | GROUP groupname | PUBLIC } [, ...] [ WITH GRANT OPTION ]"
 msgstr ""
 "GRANT { { SELECT | INSERT | UPDATE | DELETE | RULE | REFERENCES | TRIGGER }\n"
 "    [,...] | ALL [ PRIVILEGES ] }\n"
 "    ON [ TABLE ] ±íÃû³Æ [, ...]\n"
-"    TO { Óû§Ãû | GROUP ×éÃû | PUBLIC } [, ...] [ WITH GRANT OPTION ]\n"
+"    TO { Óû§Ãû³Æ | GROUP ×éÃû³Æ | PUBLIC } [, ...] [ WITH GRANT OPTION ]\n"
 "\n"
 "GRANT { { CREATE | TEMPORARY | TEMP } [,...] | ALL [ PRIVILEGES ] }\n"
 "    ON DATABASE Êý¾Ý¿âÃû³Æ [, ...]\n"
-"    TO { Óû§Ãû | GROUP ×éÃû | PUBLIC } [, ...] [ WITH GRANT OPTION ]\n"
-"\n"
-"GRANT { CREATE | ALL [ PRIVILEGES ] }\n"
-"    ON TABLESPACE ±í¿Õ¼äÃû³Æ [, ...]\n"
-"    TO { Óû§Ãû | GROUP ×éÃû | PUBLIC } [, ...] [ WITH GRANT OPTION ]\n"
+"    TO { Óû§Ãû³Æ | GROUP ×éÃû³Æ | PUBLIC } [, ...] [ WITH GRANT OPTION ]\n"
 "\n"
 "GRANT { EXECUTE | ALL [ PRIVILEGES ] }\n"
 "    ON FUNCTION º¯ÊýÃû³Æ ([ÀàÐÍ, ...]) [, ...]\n"
-"    TO { Óû§Ãû | GROUP ×éÃû | PUBLIC } [, ...] [ WITH GRANT OPTION ]\n"
+"    TO { Óû§Ãû³Æ | GROUP ×éÃû³Æ | PUBLIC } [, ...] [ WITH GRANT OPTION ]\n"
 "\n"
 "GRANT { USAGE | ALL [ PRIVILEGES ] }\n"
 "    ON LANGUAGE ÓïÑÔÃû³Æ [, ...]\n"
-"    TO { Óû§Ãû | GROUP ×éÃû | PUBLIC } [, ...] [ WITH GRANT OPTION ]\n"
+"    TO { Óû§Ãû³Æ | GROUP ×éÃû³Æ | PUBLIC } [, ...] [ WITH GRANT OPTION ]\n"
 "\n"
 "GRANT { { CREATE | USAGE } [,...] | ALL [ PRIVILEGES ] }\n"
 "    ON SCHEMA Ä£Ê½Ãû³Æ [, ...]\n"
-"    TO { Óû§Ãû | GROUP ×éÃû | PUBLIC } [, ...] [ WITH GRANT OPTION ]"
+"    TO { Óû§Ãû³Æ | GROUP ×éÃû³Æ | PUBLIC } [, ...] [ WITH GRANT OPTION ]\n"
+"\n"
+"GRANT { CREATE | ALL [ PRIVILEGES ] }\n"
+"    ON TABLESPACE ±í¿Õ¼äÃû³Æ [, ...]\n"
+"    TO { Óû§Ãû³Æ | GROUP ×éÃû³Æ | PUBLIC } [, ...] [ WITH GRANT OPTION ]"
 
 #: sql_help.h:329
 msgid "create new rows in a table"
@@ -2847,12 +2844,6 @@ msgid ""
 "    [ CASCADE | RESTRICT ]\n"
 "\n"
 "REVOKE [ GRANT OPTION FOR ]\n"
-"    { CREATE | ALL [ PRIVILEGES ] }\n"
-"    ON TABLESPACE tablespacename [, ...]\n"
-"    FROM { username | GROUP groupname | PUBLIC } [, ...]\n"
-"    [ CASCADE | RESTRICT ]\n"
-"\n"
-"REVOKE [ GRANT OPTION FOR ]\n"
 "    { EXECUTE | ALL [ PRIVILEGES ] }\n"
 "    ON FUNCTION funcname ([type, ...]) [, ...]\n"
 "    FROM { username | GROUP groupname | PUBLIC } [, ...]\n"
@@ -2868,43 +2859,49 @@ msgid ""
 "    { { CREATE | USAGE } [,...] | ALL [ PRIVILEGES ] }\n"
 "    ON SCHEMA schemaname [, ...]\n"
 "    FROM { username | GROUP groupname | PUBLIC } [, ...]\n"
+"    [ CASCADE | RESTRICT ]\n"
+"\n"
+"REVOKE [ GRANT OPTION FOR ]\n"
+"    { CREATE | ALL [ PRIVILEGES ] }\n"
+"    ON TABLESPACE tablespacename [, ...]\n"
+"    FROM { username | GROUP groupname | PUBLIC } [, ...]\n"
 "    [ CASCADE | RESTRICT ]"
 msgstr ""
 "REVOKE [ GRANT OPTION FOR ]\n"
 "    { { SELECT | INSERT | UPDATE | DELETE | RULE | REFERENCES | TRIGGER }\n"
 "    [,...] | ALL [ PRIVILEGES ] }\n"
 "    ON [ TABLE ] ±íÃû³Æ [, ...]\n"
-"    FROM { Óû§Ãû | GROUP ×éÃû | PUBLIC } [, ...]\n"
+"    FROM { Óû§Ãû³Æ | GROUP ×éÃû³Æ | PUBLIC } [, ...]\n"
 "    [ CASCADE | RESTRICT ]\n"
 "\n"
 "REVOKE [ GRANT OPTION FOR ]\n"
 "    { { CREATE | TEMPORARY | TEMP } [,...] | ALL [ PRIVILEGES ] }\n"
 "    ON DATABASE Êý¾Ý¿âÃû³Æ [, ...]\n"
-"    FROM { Óû§Ãû | GROUP ×éÃû | PUBLIC } [, ...]\n"
-"    [ CASCADE | RESTRICT ]\n"
-"\n"
-"REVOKE [ GRANT OPTION FOR ]\n"
-"    { CREATE | ALL [ PRIVILEGES ] }\n"
-"    ON TABLESPACE ±í¿Õ¼äÃû³Æ [, ...]\n"
-"    FROM { Óû§Ãû | GROUP ×éÃû | PUBLIC } [, ...]\n"
+"    FROM { Óû§Ãû³Æ | GROUP ×éÃû³Æ | PUBLIC } [, ...]\n"
 "    [ CASCADE | RESTRICT ]\n"
 "\n"
 "REVOKE [ GRANT OPTION FOR ]\n"
 "    { EXECUTE | ALL [ PRIVILEGES ] }\n"
 "    ON FUNCTION º¯ÊýÃû³Æ ([ÀàÐÍ, ...]) [, ...]\n"
-"    FROM { Óû§Ãû | GROUP ×éÃû | PUBLIC } [, ...]\n"
+"    FROM { Óû§Ãû³Æ | GROUP ×éÃû³Æ | PUBLIC } [, ...]\n"
 "    [ CASCADE | RESTRICT ]\n"
 "\n"
 "REVOKE [ GRANT OPTION FOR ]\n"
 "    { USAGE | ALL [ PRIVILEGES ] }\n"
 "    ON LANGUAGE ÓïÑÔÃû³Æ [, ...]\n"
-"    FROM { Óû§Ãû | GROUP ×éÃû | PUBLIC } [, ...]\n"
+"    FROM { Óû§Ãû³Æ | GROUP ×éÃû³Æ | PUBLIC } [, ...]\n"
 "    [ CASCADE | RESTRICT ]\n"
 "\n"
 "REVOKE [ GRANT OPTION FOR ]\n"
 "    { { CREATE | USAGE } [,...] | ALL [ PRIVILEGES ] }\n"
 "    ON SCHEMA Ä£Ê½Ãû³Æ [, ...]\n"
-"    FROM { Óû§Ãû | GROUP ×éÃû | PUBLIC } [, ...]\n"
+"    FROM { Óû§Ãû³Æ | GROUP ×éÃû³Æ | PUBLIC } [, ...]\n"
+"    [ CASCADE | RESTRICT ]\n"
+"\n"
+"REVOKE [ GRANT OPTION FOR ]\n"
+"    { CREATE | ALL [ PRIVILEGES ] }\n"
+"    ON TABLESPACE ±í¿Õ¼äÃû³Æ [, ...]\n"
+"    FROM { Óû§Ãû³Æ | GROUP ×éÃû³Æ | PUBLIC } [, ...]\n"
 "    [ CASCADE | RESTRICT ]"
 
 #: sql_help.h:374
@@ -3018,8 +3015,8 @@ msgstr ""
 "SET [ SESSION | LOCAL ] TIME ZONE { timezone | LOCAL | DEFAULT }"
 
 #: sql_help.h:397
-msgid "set the constraint mode of the current transaction"
-msgstr "ÉèÖõ±Ç°½»Ò×µÄÔ¼Êøģʽ"
+msgid "set constraint checking modes for the current transaction"
+msgstr "ÉèÖõ±Ç°½»Ò×µÄÔ¼Êø¼ì²éģʽ"
 
 #: sql_help.h:398
 msgid "SET CONSTRAINTS { ALL | name [, ...] } { DEFERRED | IMMEDIATE }"
@@ -3037,7 +3034,7 @@ msgid ""
 "SET [ SESSION | LOCAL ] SESSION AUTHORIZATION DEFAULT\n"
 "RESET SESSION AUTHORIZATION"
 msgstr ""
-"SET [ SESSION | LOCAL ] SESSION AUTHORIZATION Óû§Ãû\n"
+"SET [ SESSION | LOCAL ] SESSION AUTHORIZATION Óû§Ãû³Æ\n"
 "SET [ SESSION | LOCAL ] SESSION AUTHORIZATION DEFAULT\n"
 "RESET SESSION AUTHORIZATION"
 
@@ -3138,51 +3135,32 @@ msgstr ""
 "VACUUM [ FULL ] [ FREEZE ] [ VERBOSE ] [ ±í ]\n"
 "VACUUM [ FULL ] [ FREEZE ] [ VERBOSE ] ANALYZE [ ±í [ (ÁР[, ...] ) ] ]"
 
-#~ msgid "RELEASE savepoint_name"
-#~ msgstr "RELEASE savepoint_name"
-
-#~ msgid "ROLLBACK TO savepoint_name"
-#~ msgstr "ROLLBACK TO savepoint_name"
-
-#~ msgid ""
-#~ "SET TRANSACTION\n"
-#~ "    [ ISOLATION LEVEL { READ UNCOMMITTED | READ COMMITTED | REPEATABLE "
-#~ "READ | SERIALIZABLE } ]\n"
-#~ "    [ READ WRITE | READ ONLY ]\n"
-#~ "\n"
-#~ "SET SESSION CHARACTERISTICS AS TRANSACTION\n"
-#~ "    [ ISOLATION LEVEL { READ UNCOMMITTED | READ COMMITTED | REPEATABLE "
-#~ "READ | SERIALIZABLE } ]\n"
-#~ "    [ READ WRITE | READ ONLY ]"
-#~ msgstr ""
-#~ "SET TRANSACTION\n"
-#~ "    [ ISOLATION LEVEL { READ UNCOMMITTED | READ COMMITTED | REPEATABLE "
-#~ "READ | SERIALIZABLE } ]\n"
-#~ "    [ READ WRITE | READ ONLY ]\n"
-#~ "\n"
-#~ "SET SESSION CHARACTERISTICS AS TRANSACTION\n"
-#~ "    [ ISOLATION LEVEL { READ UNCOMMITTED | READ COMMITTED | REPEATABLE "
-#~ "READ | SERIALIZABLE } ]\n"
-#~ "    [ READ WRITE | READ ONLY ]"
-
-#~ msgid "  \\db [PATTERN]  list tablespaces\n"
-#~ msgstr "  \\db [ģʽ]       Áгö±í¿Õ¼ä\n"
-
-#~ msgid "  \\dn [PATTERN]  list schemas\n"
-#~ msgstr "  \\dn [ģʽ]       Áгöģʽ\n"
-
-#~ msgid ""
-#~ "CREATE [ TEMPORARY | TEMP ] SEQUENCE name [ INCREMENT [ BY ] increment ]\n"
-#~ "    [ MINVALUE minvalue | NO MINVALUE ] [ MAXVALUE maxvalue | NO "
-#~ "MAXVALUE ]\n"
-#~ "    [ START [ WITH ] start ] [ CACHE cache ] [ [ NO ] CYCLE ]\n"
-#~ "    [ TABLESPACE tablespace ]"
-#~ msgstr ""
-#~ "CREATE [ TEMPORARY | TEMP ] SEQUENCE name [ INCREMENT [ BY ] increment ]\n"
-#~ "    [ MINVALUE minvalue | NO MINVALUE ] [ MAXVALUE maxvalue | NO "
-#~ "MAXVALUE ]\n"
-#~ "    [ START [ WITH ] start ] [ CACHE cache ] [ [ NO ] CYCLE ]\n"
-#~ "    [ TABLESPACE tablespace ]"
-
-#~ msgid "parse error at the end of line\n"
-#~ msgstr "ÔÚÐÐβ·¢Éú·ÖÎö´í\n"
+#: ../../port/exec.c:193 ../../port/exec.c:307 ../../port/exec.c:350
+#, c-format
+msgid "could not identify current directory: %s"
+msgstr "ÎÞ·¨È·Èϵ±Ç°Ä¿Â¼: %s"
+
+#: ../../port/exec.c:323 ../../port/exec.c:359
+#, c-format
+msgid "could not change directory to \"%s\""
+msgstr "ÎÞ·¨½øÈëĿ¼ \"%s\""
+
+#: ../../port/exec.c:338
+#, c-format
+msgid "could not read symbolic link \"%s\""
+msgstr "ÎÞ·¨¶ÁÈ¡·ûºÅÁ´½á \"%s\""
+
+#: ../../port/exec.c:569
+#, c-format
+msgid "child process exited with exit code %d"
+msgstr "×Ó½ø³ÌÒÑÍ˳ö, Í˳öÂëΪ %d"
+
+#: ../../port/exec.c:572
+#, c-format
+msgid "child process was terminated by signal %d"
+msgstr "×Ó½ø³Ì±»ÐźŠ%d ÖÕÖ¹"
+
+#: ../../port/exec.c:575
+#, c-format
+msgid "child process exited with unrecognized status %d"
+msgstr "×Ó½ø³ÌÒÑÍ˳ö, Î´Öª×´Ì¬ %d"
index dd6987ceed2243fa613472ebe49a8027296c3c4f..24442f44ec557010673fd50d2b6123b7a59d742c 100644 (file)
@@ -6,7 +6,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PostgreSQL 7.4\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2004-08-31 08:56+0000\n"
+"POT-Creation-Date: 2004-11-15 14:20+0000\n"
 "PO-Revision-Date: 2003-09-15 21:03+0000\n"
 "Last-Translator: Bao Wei <weibao@qmail.zhengmai.net.cn>\n"
 "Language-Team: Weiping He <laser@zhengmai.com.cn>\n"
@@ -657,37 +657,47 @@ msgstr ""
 "\n"
 "ÔĶÁ SQL ÃüÁî VACUUM µÄÃèÊöÐÅÏ¢, ÒÔ±ã»ñµÃ¸üÏêϸµÄÐÅÏ¢.\n"
 
-#: common.c:86 common.c:112
+#: common.c:33
+#, c-format
+msgid "%s: could not obtain information about current user: %s"
+msgstr "%s: ÎÞ·¨»ñµÃµ±Ç°Óû§µÄÐÅÏ¢: %s"
+
+#: common.c:44
+#, c-format
+msgid "%s: could not get current user name: %s"
+msgstr "%s: ÎÞ·¨»ñÈ¡µ±Ç°Óû§Ãû³Æ: %s"
+
+#: common.c:89 common.c:115
 msgid "Password: "
 msgstr "¿ÚÁî: "
 
-#: common.c:99
+#: common.c:102
 #, c-format
 msgid "%s: could not connect to database %s\n"
 msgstr "%s: ÎÞ·¨Áª½Óµ½Êý¾Ý¿â %s\n"
 
-#: common.c:122
+#: common.c:125
 #, c-format
 msgid "%s: could not connect to database %s: %s"
 msgstr "%s: ÎÞ·¨Áª½Óµ½Êý¾Ý¿â %s: %s"
 
-#: common.c:146
+#: common.c:149
 #, c-format
 msgid "%s: query failed: %s"
 msgstr "%s: ²éѯʧ°Ü: %s"
 
-#: common.c:147
+#: common.c:150
 #, c-format
 msgid "%s: query was: %s\n"
 msgstr "%s: ²éѯÊÇ: %s\n"
 
 #. translator: Make sure the (y/n) prompts match the translation of this.
-#: common.c:161
+#: common.c:164
 msgid "y"
 msgstr "y"
 
 #. translator: Make sure the (y/n) prompts match the translation of this.
-#: common.c:163
+#: common.c:166
 msgid "n"
 msgstr "n"
 
index c8d12aec42d2d581a96cfdfd4eb1e6838d075135..9c1474e38fa44a01eff554e840b093b1d3ad6f4a 100644 (file)
@@ -1,13 +1,13 @@
 # simplified Chinese translation file for libpq\r
 # Bao Wei <weibao@forevertek.com>, 2002\r
 #
-# $PostgreSQL: pgsql/src/interfaces/libpq/po/zh_CN.po,v 1.6 2004/09/13 12:35:18 petere Exp $\r
+# $PostgreSQL: pgsql/src/interfaces/libpq/po/zh_CN.po,v 1.7 2004/12/11 19:09:08 petere Exp $\r
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: PostgreSQL 7.4\n"
+"Project-Id-Version: PostgreSQL 8.0\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2004-08-31 08:59+0000\n"
+"POT-Creation-Date: 2004-12-02 10:00+0000\n"
 "PO-Revision-Date: 2003-09-15 13:47:06+0800\n"
 "Last-Translator: Bao Wei <weibao@qmail.zhengmai.net.cn>\n"
 "Language-Team: Weiping He <laser@zhengmai.com.cn>\n"
@@ -44,6 +44,13 @@ msgstr "
 msgid "SCM_CRED authentication method not supported\n"
 msgstr "²»Ö§³Ö SCM_CRED ÈÏÖ¤·½Ê½\n"
 
+# fe-connect.c:2427 fe-connect.c:2436 fe-connect.c:2933 fe-exec.c:1284\r
+# fe-lobj.c:536\r
+#: fe-auth.c:530 fe-connect.c:1414 fe-connect.c:2629 fe-connect.c:2638
+#: fe-connect.c:3217 fe-lobj.c:556 fe-protocol2.c:1007 fe-protocol3.c:958
+msgid "out of memory\n"
+msgstr "ÄÚ´æÓþ¡\n"
+
 # fe-auth.c:589\r
 #: fe-auth.c:600
 msgid "Kerberos 4 authentication failed\n"
@@ -82,30 +89,24 @@ msgstr "
 msgid "fe_getauthname: invalid authentication system: %d\n"
 msgstr "fe_getauthname: ÎÞЧµÄÈÏ֤ϵͳ: %d\n"
 
-#: fe-connect.c:452
+#: fe-connect.c:458
 #, c-format
 msgid "invalid sslmode value: \"%s\"\n"
 msgstr "ÎÞЧµÄ sslmode Öµ: \"%s\"\n"
 
-#: fe-connect.c:472
+#: fe-connect.c:478
 #, c-format
 msgid "sslmode value \"%s\" invalid when SSL support is not compiled in\n"
 msgstr "ÎÞЧµÄ sslmode Öµ \"%s\" µ±Ã»ÓаѠSSL Ö§³Ö±àÒë½øÀ´Ê±\n"
 
-# fe-connect.c:708\r
-#: fe-connect.c:783
-#, c-format
-msgid "could not set socket to non-blocking mode: %s\n"
-msgstr "ÎÞ·¨½«Ì×½Ó×ÖÉèÖÃΪ·Ç×èÈûģʽ: %s\n"
-
 # fe-connect.c:732\r
-#: fe-connect.c:810
+#: fe-connect.c:794
 #, c-format
 msgid "could not set socket to TCP no delay mode: %s\n"
 msgstr "ÎÞ·¨½«Ì×½Ó×ÖÉèÖÃΪ TCP ÎÞÑÓ³Ùģʽ: %s\n"
 
 # fe-connect.c:752\r
-#: fe-connect.c:841
+#: fe-connect.c:825
 #, c-format
 msgid ""
 "could not connect to server: %s\n"
@@ -117,7 +118,7 @@ msgstr ""
 "\t\"%s\"ÉÏ×¼±¸½ÓÊÜÁª½Ó?\n"
 
 # fe-connect.c:761\r
-#: fe-connect.c:853
+#: fe-connect.c:837
 #, c-format
 msgid ""
 "could not connect to server: %s\n"
@@ -129,28 +130,40 @@ msgstr ""
 "%s ÉϵĠTCP/IP Áª½Ó?\n"
 
 # fe-misc.c:702\r
-#: fe-connect.c:946
+#: fe-connect.c:930
 #, c-format
 msgid "could not translate host name \"%s\" to address: %s\n"
 msgstr "ÎÞ·¨½âÊÍÖ÷»úÃû \"%s\" µ½µØÖ·: %s\n"
 
 # fe-misc.c:702\r
-#: fe-connect.c:950
+#: fe-connect.c:934
 #, c-format
 msgid "could not translate Unix-domain socket path \"%s\" to address: %s\n"
 msgstr "ÎÞ·¨½âÊÍ Unix-domian Ì×½Ó×Ö·¾¶ \"%s\" µ½µØÖ·: %s\n"
 
 # fe-connect.c:1232\r
-#: fe-connect.c:1154
+#: fe-connect.c:1138
 msgid "invalid connection state, probably indicative of memory corruption\n"
 msgstr "ÎÞЧµÄÁª½Ó״̬, ¿ÉÄÜÊÇ´æ´¢Æ÷Êý¾Ý±»ÆÆ»µµÄ±êÖ¾\n"
 
 # fe-connect.c:891\r
-#: fe-connect.c:1197
+#: fe-connect.c:1181
 #, c-format
 msgid "could not create socket: %s\n"
 msgstr "ÎÞ·¨´´½¨Ì×½Ó×Ö: %s\n"
 
+# fe-connect.c:708\r
+#: fe-connect.c:1204
+#, c-format
+msgid "could not set socket to non-blocking mode: %s\n"
+msgstr "ÎÞ·¨½«Ì×½Ó×ÖÉèÖÃΪ·Ç×èÈûģʽ: %s\n"
+
+# fe-auth.c:395\r
+#: fe-connect.c:1216
+#, c-format
+msgid "could not set socket to close-on-exec mode: %s\n"
+msgstr "ÎÞ·¨½«Ì×½Ó×ÖÉèÖÃΪִÐÐʱ¹Ø±Õ (close-on-exec) Ä£Ê½: %s\n"
+
 # fe-connect.c:1263\r
 #: fe-connect.c:1308
 #, c-format
@@ -169,13 +182,6 @@ msgstr "
 msgid "could not send SSL negotiation packet: %s\n"
 msgstr "ÎÞ·¨·¢ËÍ SSL ÎÕÊÖ°ü: %s\n"
 
-# fe-connect.c:2427 fe-connect.c:2436 fe-connect.c:2933 fe-exec.c:1284\r
-# fe-lobj.c:536\r
-#: fe-connect.c:1414 fe-connect.c:2538 fe-connect.c:2547 fe-connect.c:3126
-#: fe-lobj.c:556
-msgid "out of memory\n"
-msgstr "ÄÚ´æÓþ¡\n"
-
 # fe-connect.c:1322\r
 #: fe-connect.c:1427
 #, c-format
@@ -217,112 +223,113 @@ msgid "invalid connection state %c, probably indicative of memory corruption\n"
 msgstr "ÎÞЧµÄÁª½Ó״̬ %c, ¿ÉÄÜÊÇ´æ´¢Æ÷Êý¾Ý±»ÆÆ»µµÄ±êÖ¾\n"
 
 # fe-connect.c:2475\r
-#: fe-connect.c:2586
+#: fe-connect.c:2677
 #, c-format
 msgid "missing \"=\" after \"%s\" in connection info string\n"
 msgstr "ÔÚÁª½ÓÐÅÏ¢×Ö´®ÀïµÄ \"%s\" ºóÃæȱÉÙ \"=\"\n"
 
 # fe-connect.c:2524\r
-#: fe-connect.c:2635
+#: fe-connect.c:2726
 msgid "unterminated quoted string in connection info string\n"
 msgstr "Áª½ÓÐÅÏ¢×Ö´®ÖÐδ½áÊøµÄÒýºÅ×Ö´®\n"
 
 # fe-connect.c:2558\r
-#: fe-connect.c:2669
+#: fe-connect.c:2760
 #, c-format
 msgid "invalid connection option \"%s\"\n"
 msgstr "·Ç·¨Áª½ÓÑ¡Ïî \"%s\"\n"
 
 # fe-connect.c:2744\r
-#: fe-connect.c:2891
+#: fe-connect.c:2982
 msgid "connection pointer is NULL\n"
 msgstr "Áª½ÓÖ¸ÕëÊÇ NULL\n"
 
 # fe-connect.c:2953\r
-#: fe-connect.c:3148
+#: fe-connect.c:3239
 #, c-format
 msgid ""
 "WARNING: Password file %s has world or group read access; permission should "
 "be u=rw (0600)\n"
 msgstr "¾¯¸æ: ¿ÚÁîÎļþ %s È¨ÏÞÉèÖò»¶Ô; È¨ÏÞÓ¦ÉèÖàΪ u=rw (0600)\n"
 
-#: fe-exec.c:484
+#: fe-exec.c:479
 msgid "NOTICE"
 msgstr "×¢Òâ"
 
 # fe-exec.c:737\r
-#: fe-exec.c:653 fe-exec.c:705
+#: fe-exec.c:648 fe-exec.c:700 fe-exec.c:740
 msgid "command string is a null pointer\n"
 msgstr "ÃüÁî×Ö´®ÊÇÒ»¸ö¿ÕÖ¸Õë\n"
 
 # fe-exec.c:737\r
-#: fe-exec.c:740
+#: fe-exec.c:733 fe-exec.c:823
 msgid "statement name is a null pointer\n"
 msgstr "ÉùÃ÷Ãû×ÖÊÇÒ»¸ö¿ÕÖ¸Õë\n"
 
+#: fe-exec.c:748 fe-exec.c:897 fe-exec.c:1572
+msgid "function requires at least protocol version 3.0\n"
+msgstr "º¯ÊýÖÁÉÙÐèÒª 3.0 °æ±¾µÄЭÒé\n"
+
 # fe-exec.c:745\r
-#: fe-exec.c:771
+#: fe-exec.c:854
 msgid "no connection to the server\n"
 msgstr "ûÓе½·þÎñÆ÷µÄÁª½Ó\n"
 
 # fe-exec.c:752\r
-#: fe-exec.c:778
+#: fe-exec.c:861
 msgid "another command is already in progress\n"
 msgstr "ÒѾ­ÓÐÁíÍâÒ»ÌõÃüÁîÔÚ´¦Àí\n"
 
-#: fe-exec.c:814 fe-exec.c:1466
-msgid "function requires at least protocol version 3.0\n"
-msgstr "º¯ÊýÖÁÉÙÐèÒª 3.0 °æ±¾µÄЭÒé\n"
-
 # fe-exec.c:1371\r
-#: fe-exec.c:1116
+#: fe-exec.c:1199
 #, c-format
 msgid "unexpected asyncStatus: %d\n"
 msgstr "ÒâÍâµÄ asyncStatus(Ò첽״̬): %d\n"
 
-#: fe-exec.c:1221
+#: fe-exec.c:1326
 msgid "COPY terminated by new PQexec"
 msgstr "COPY ±»Ò»¸öеĠPQexec ÖÕÖ¹"
 
 # fe-exec.c:1421\r
-#: fe-exec.c:1229
+#: fe-exec.c:1334
 msgid "COPY IN state must be terminated first\n"
 msgstr "COPY IN ×´Ì¬±ØÐëÏȽáÊø\n"
 
 # fe-exec.c:1421\r
-#: fe-exec.c:1249
+#: fe-exec.c:1354
 msgid "COPY OUT state must be terminated first\n"
 msgstr "COPY OUT ×´Ì¬±ØÐëÏȽáÊø\n"
 
 # fe-exec.c:1780\r
-#: fe-exec.c:1358 fe-exec.c:1423 fe-exec.c:1508
+#: fe-exec.c:1464 fe-exec.c:1529 fe-exec.c:1614 fe-protocol2.c:1153
+#: fe-protocol3.c:1115
 msgid "no COPY in progress\n"
 msgstr "ûÓÐÕýÔÚ´¦ÀíµÄ COPY\n"
 
 # fe-exec.c:1884\r
-#: fe-exec.c:1700
+#: fe-exec.c:1806
 msgid "connection in wrong state\n"
 msgstr "Áª½Ó´¦ÓÚ´íÎó״̬\n"
 
 # fe-exec.c:2055\r
-#: fe-exec.c:1731
+#: fe-exec.c:1837
 msgid "invalid ExecStatusType code"
 msgstr "·Ç·¨ ExecStatusType ´úÂë"
 
 # fe-exec.c:2108 fe-exec.c:2141\r
-#: fe-exec.c:1795 fe-exec.c:1818
+#: fe-exec.c:1901 fe-exec.c:1924
 #, c-format
 msgid "column number %d is out of range 0..%d"
 msgstr "ÁкÅÂë %d ³¬³öÁË·¶Î§ 0..%d"
 
 # fe-exec.c:2130\r
-#: fe-exec.c:1811
+#: fe-exec.c:1917
 #, c-format
 msgid "row number %d is out of range 0..%d"
 msgstr "ÐкÅÂë %d ³¬³öÁË·¶Î§ 0..%d"
 
 # fe-exec.c:2325\r
-#: fe-exec.c:2093
+#: fe-exec.c:2199
 #, c-format
 msgid "could not interpret result from server: %s"
 msgstr "ÎÞ·¨½âÊÍÀ´×Ô·þÎñÆ÷µÄ½á¹û: %s"
@@ -457,126 +464,260 @@ msgstr "
 msgid "select() failed: %s\n"
 msgstr "select() Ê§°Ü: %s\n"
 
-#: fe-secure.c:262
+# fe-connect.c:1549\r
+#: fe-protocol2.c:91
+#, c-format
+msgid "invalid setenv state %c, probably indicative of memory corruption\n"
+msgstr "ÎÞЧµÄ setenv ×´Ì¬ %c, ¿ÉÄÜÊÇÄÚ´æ±»ÆÆ»µ\n"
+
+# fe-connect.c:1549\r
+#: fe-protocol2.c:333
+#, c-format
+msgid "invalid state %c, probably indicative of memory corruption\n"
+msgstr "ÎÞЧ״̬ %c, ¿ÉÄÜÊÇÄÚ´æ±»ÆÆ»µ\n"
+
+#: fe-protocol2.c:423 fe-protocol3.c:183
+#, c-format
+msgid "message type 0x%02x arrived from server while idle"
+msgstr "µ±¿ÕÏÐʱÊÕµ½·þÎñÆð·¢Ë͹ýÀ´µÄÏûÏ¢ÀàÐÍ 0x%02x"
+
+#: fe-protocol2.c:462
+#, c-format
+msgid "unexpected character %c following empty query response (\"I\" message)"
+msgstr "unexpected character %c following empty query response (\"I\" message)"
+
+#: fe-protocol2.c:517
+msgid ""
+"server sent data (\"D\" message) without prior row description (\"T\" "
+"message)"
+msgstr ""
+"server sent data (\"D\" message) without prior row description (\"T\" "
+"message)"
+
+#: fe-protocol2.c:533
+msgid ""
+"server sent binary data (\"B\" message) without prior row description (\"T\" "
+"message)"
+msgstr ""
+"server sent binary data (\"B\" message) without prior row description (\"T\" "
+"message)"
+
+# fe-connect.c:1378\r
+#: fe-protocol2.c:548 fe-protocol3.c:344
+#, c-format
+msgid "unexpected response from server; first received character was \"%c\"\n"
+msgstr "À´×Ô·þÎñÆ÷ÒâÍâµÄ»ØÖ´, µÚÒ»¸öÊÕµ½µÄ×Ö·ûÊÇ \"%c\"\n"
+
+# fe-connect.c:2427 fe-connect.c:2436 fe-connect.c:2933 fe-exec.c:1284\r
+# fe-lobj.c:536\r
+#: fe-protocol2.c:760 fe-protocol3.c:577
+msgid "out of memory for query result\n"
+msgstr "Ϊ²éѯ½á¹ûÄÚ´æÓþ¡\n"
+
+#: fe-protocol2.c:1196 fe-protocol3.c:1184
+#, c-format
+msgid "%s"
+msgstr "%s"
+
+#: fe-protocol2.c:1208
+msgid "lost synchronization with server, resetting connection"
+msgstr "ʧȥÓë·þÎñÆ÷ͬ²½, ÖØÖÃÁ¬½Ó"
+
+#: fe-protocol2.c:1343 fe-protocol2.c:1375 fe-protocol3.c:1387
+#, c-format
+msgid "protocol error: id=0x%x\n"
+msgstr "ЭÒé´íÎó: id=0x%x\n"
+
+#: fe-protocol3.c:306
+msgid ""
+"server sent data (\"D\" message) without prior row description (\"T\" "
+"message)\n"
+msgstr ""
+"server sent data (\"D\" message) without prior row description (\"T\" "
+"message)\n"
+
+#: fe-protocol3.c:365
+#, c-format
+msgid "message contents do not agree with length in message type \"%c\"\n"
+msgstr "ÔÚÏûÏ¢ÀàÐÍ \"%c\" ÖÐ, ÏûÏ¢ÄÚÈÝÓ볤¶È²»Æ¥Åä\n"
+
+#: fe-protocol3.c:386
+#, c-format
+msgid "lost synchronization with server: got message type \"%c\", length %d\n"
+msgstr "ʧȥÓë·þÎñÆ÷ͬ²½: »ñÈ¡µ½ÏûÏ¢ÀàÐÍ \"%c\", ³¤¶È %d\n"
+
+#: fe-protocol3.c:522
+msgid "unexpected field count in \"D\" message\n"
+msgstr "ÔÚ \"D\" ÏûÏ¢ÖÐ, ÒâÍâµÄ×Ö¶ÎÊý\n"
+
+#. translator: %s represents a digit string
+#: fe-protocol3.c:651 fe-protocol3.c:659
+#, c-format
+msgid " at character %s"
+msgstr " ÔÚ×Ö·û %s"
+
+#: fe-protocol3.c:668
+#, c-format
+msgid "DETAIL:  %s\n"
+msgstr "ÃèÊö:  %s\n"
+
+#: fe-protocol3.c:671
+#, c-format
+msgid "HINT:  %s\n"
+msgstr "Ìáʾ:  %s\n"
+
+#: fe-protocol3.c:674
+#, c-format
+msgid "QUERY:  %s\n"
+msgstr "²éѯ:  %s\n"
+
+#: fe-protocol3.c:677
+#, c-format
+msgid "CONTEXT:  %s\n"
+msgstr "±³¾°:  %s\n"
+
+#: fe-protocol3.c:689
+msgid "LOCATION:  "
+msgstr "λÖÃ:  "
+
+#: fe-protocol3.c:691
+#, c-format
+msgid "%s, "
+msgstr "%s, "
+
+#: fe-protocol3.c:693
+#, c-format
+msgid "%s:%s"
+msgstr "%s:%s"
+
+#: fe-protocol3.c:1000
+msgid "PQgetline: not doing text COPY OUT\n"
+msgstr "PQgetline: not doing text COPY OUT\n"
+
+#: fe-secure.c:264
 #, c-format
 msgid "could not establish SSL connection: %s\n"
 msgstr "ÎÞ·¨½¨Á¢ SSL Áª½Ó: %s\n"
 
-#: fe-secure.c:325 fe-secure.c:406 fe-secure.c:1036
+#: fe-secure.c:335 fe-secure.c:420 fe-secure.c:1033
 #, c-format
 msgid "SSL SYSCALL error: %s\n"
 msgstr "SSL SYSCALL ´íÎó: %s\n"
 
-#: fe-secure.c:330 fe-secure.c:411 fe-secure.c:1040
+#: fe-secure.c:340 fe-secure.c:425 fe-secure.c:1037
 msgid "SSL SYSCALL error: EOF detected\n"
 msgstr "SSL SYSCALL ´íÎó: ·¢ÏÖ½áÊø·û\n"
 
 # fe-auth.c:232\r
-#: fe-secure.c:342 fe-secure.c:422 fe-secure.c:1049
+#: fe-secure.c:352 fe-secure.c:436 fe-secure.c:1056
 #, c-format
 msgid "SSL error: %s\n"
 msgstr "SSL ´íÎó: %s\n"
 
-#: fe-secure.c:352 fe-secure.c:432 fe-secure.c:1057
-msgid "unrecognized SSL error code\n"
-msgstr "δ֪µÄ SSL ´íÎóÂë\n"
+#: fe-secure.c:362 fe-secure.c:446 fe-secure.c:1066
+#, c-format
+msgid "unrecognized SSL error code: %d\n"
+msgstr "δ֪µÄ SSL ´íÎóÂë: %d\n"
 
 # fe-lobj.c:498\r
-#: fe-secure.c:494
+#: fe-secure.c:509
 #, c-format
 msgid "error querying socket: %s\n"
 msgstr "²éѯÌ×½Ó×Ö´íÎó: %s\n"
 
 # fe-connect.c:1263\r
-#: fe-secure.c:522
+#: fe-secure.c:537
 #, c-format
-msgid "could not get information about host (%s): %s\n"
-msgstr "ÎÞ·¨»ñÈ¡¹ØÓÚÖ÷»ú (%s) µÄÐÅÏ¢: %s\n"
+msgid "could not get information about host \"%s\": %s\n"
+msgstr "ÎÞ·¨»ñÈ¡¹ØÓÚÖ÷»ú \"%s\" µÄÐÅÏ¢: %s\n"
 
-#: fe-secure.c:541
+#: fe-secure.c:556
 msgid "unsupported protocol\n"
 msgstr "²»Ö§³ÖµÄЭÒé\n"
 
-#: fe-secure.c:563
+#: fe-secure.c:578
 #, c-format
 msgid "server common name \"%s\" does not resolve to %ld.%ld.%ld.%ld\n"
 msgstr "·þÎñÆ÷Ãû×Ö \"%s\" ²»ÄܽâÎöµ½ %ld.%ld.%ld.%ld\n"
 
-#: fe-secure.c:570
+#: fe-secure.c:585
 #, c-format
 msgid "server common name \"%s\" does not resolve to peer address\n"
 msgstr "·þÎñÆ÷Ãû×Ö \"%s\" ²»ÄܽâÎöµ½¶Ô¶ËµØÖ·\n"
 
 # fe-connect.c:1263\r
-#: fe-secure.c:753
+#: fe-secure.c:767
 msgid "could not get user information\n"
 msgstr "ÎÞ·¨»ñÈ¡Óû§ÐÅÏ¢\n"
 
 # fe-lobj.c:400 fe-lobj.c:483\r
-#: fe-secure.c:765
+#: fe-secure.c:777
 #, c-format
-msgid "could not open certificate (%s): %s\n"
-msgstr "ÎÞ·¨´ò¿ªÖ¤Êé (%s): %s\n"
+msgid "could not open certificate file \"%s\": %s\n"
+msgstr "ÎÞ·¨´ò¿ªÖ¤ÊéÎļþ \"%s\": %s\n"
 
 # fe-lobj.c:400 fe-lobj.c:483\r
-#: fe-secure.c:774
+#: fe-secure.c:786
 #, c-format
-msgid "could not read certificate (%s): %s\n"
-msgstr "ÎÞ·¨¶ÁÈ¡Ö¤Êé (%s): %s\n"
+msgid "could not read certificate file \"%s\": %s\n"
+msgstr "ÎÞ·¨¶ÁÈ¡Ö¤ÊéÎļþ \"%s\": %s\n"
 
-#: fe-secure.c:788
+#: fe-secure.c:800
 #, c-format
-msgid "certificate present, but not private key (%s)\n"
-msgstr "ÓÐÖ¤Êé, µ«²»ÊÇ˽Կ (%s)\n"
+msgid "certificate present, but not private key file \"%s\"\n"
+msgstr "ÓÐÖ¤Êé, µ«²»ÊÇ˽ԿÎļþ \"%s\"\n"
 
-#: fe-secure.c:797
+#: fe-secure.c:808
 #, c-format
-msgid "private key (%s) has wrong permissions\n"
-msgstr "˽Կ (%s) ÓдíÎóµÄÐí¿É\n"
+msgid "private key file \"%s\" has wrong permissions\n"
+msgstr "˽ԿÎļþ \"%s\" ÓдíÎóµÄÐí¿É\n"
 
 # fe-lobj.c:400 fe-lobj.c:483\r
-#: fe-secure.c:804
+#: fe-secure.c:815
 #, c-format
-msgid "could not open private key file (%s): %s\n"
-msgstr "ÎÞ·¨´ò¿ªË½Ô¿Îļþ (%s): %s\n"
+msgid "could not open private key file \"%s\": %s\n"
+msgstr "ÎÞ·¨´ò¿ªË½Ô¿Îļþ \"%s\": %s\n"
 
-#: fe-secure.c:813
+#: fe-secure.c:823
 #, c-format
-msgid "private key (%s) changed during execution\n"
-msgstr "ÔÚÖ´Ðйý³ÌÖÐ˽Կ (%s) ¸Ä±äÁË\n"
+msgid "private key file \"%s\" changed during execution\n"
+msgstr "ÔÚÖ´Ðйý³ÌÖÐ˽ԿÎļþ \"%s\" ¸Ä±äÁË\n"
 
 # fe-connect.c:891\r
-#: fe-secure.c:822
+#: fe-secure.c:831
 #, c-format
-msgid "could not read private key (%s): %s\n"
-msgstr "ÎÞ·¨¶Áȡ˽Կ (%s): %s\n"
+msgid "could not read private key file \"%s\": %s\n"
+msgstr "ÎÞ·¨¶Áȡ˽ԿÎļþ \"%s\": %s\n"
 
-#: fe-secure.c:837
+#: fe-secure.c:845
 #, c-format
-msgid "certificate/private key mismatch (%s): %s\n"
-msgstr "Ö¤Êé/˽Կ²»Æ¥Åä (%s): %s\n"
+msgid "certificate does not match private key file \"%s\": %s\n"
+msgstr "Ö¤Ê鲻ƥÅä˽ԿÎļþ \"%s\": %s\n"
 
-#: fe-secure.c:921
+#: fe-secure.c:927
 #, c-format
 msgid "could not create SSL context: %s\n"
 msgstr "ÎÞ·¨´´½¨ SSL »·¾³: %s\n"
 
 # fe-connect.c:891\r
-#: fe-secure.c:966 fe-secure.c:976
+#: fe-secure.c:972
 #, c-format
-msgid "could not read root certificate list (%s): %s\n"
-msgstr "ÎÞ·¨¶ÁÈ¡¸ùÖ¤ÊéÁбí (%s): %s\n"
+msgid "could not read root certificate file \"%s\": %s\n"
+msgstr "ÎÞ·¨¶ÁÈ¡¸ùÖ¤ÊéÎļþ \"%s\": %s\n"
 
-#: fe-secure.c:1076
+#: fe-secure.c:1086
 #, c-format
 msgid "certificate could not be validated: %s\n"
 msgstr "ÎÞ·¨ÑéÖ¤Ö¤Êé: %s\n"
 
-#: fe-secure.c:1090
+#: fe-secure.c:1100
 #, c-format
 msgid "certificate could not be obtained: %s\n"
 msgstr "ÎÞ·¨»ñµÃÖ¤Êé: %s\n"
 
+#~ msgid "certificate/private key mismatch (%s): %s\n"
+#~ msgstr "Ö¤Êé/˽Կ²»Æ¥Åä (%s): %s\n"
+
 # fe-misc.c:702\r
 #~ msgid "could not translate local service to address: %s\n"
 #~ msgstr "ÎÞ·¨½âÊͱ¾µØ·þÎñµ½µØÖ·: %s\n"