OSDN Git Service

Translation update
authorPeter Eisentraut <peter_e@gmx.net>
Mon, 13 Sep 2004 20:53:10 +0000 (20:53 +0000)
committerPeter Eisentraut <peter_e@gmx.net>
Mon, 13 Sep 2004 20:53:10 +0000 (20:53 +0000)
src/backend/po/ru.po
src/backend/po/zh_CN.po

index ac17d94..16a1306 100644 (file)
@@ -1,10 +1,10 @@
 # ru.po
 # POSTGRES Translated Messages into the Russian Language (KOI8-R)
 #
-# $Header: /cvsroot/pgsql/src/backend/po/Attic/ru.po,v 1.22 2004/08/24 21:45:40 petere Exp $
+# $Header: /cvsroot/pgsql/src/backend/po/Attic/ru.po,v 1.23 2004/09/13 20:49:43 petere Exp $
 #
 # ChangeLog:
-#   - March 27 - August 21, 2004: Updates for 7.4.x/8.0 branches; <mokhov@cs.concordia.ca>
+#   - March 27 - August 28, 2004: Updates for 7.4.x/8.0 branches; <mokhov@cs.concordia.ca>
 #   - July - August 23, 2003: Updates for 7.4.x; <mokhov@cs.concordia.ca>
 #   - January 2, 2003: Fuzzy fixes, Serguei A. Mokhov <mokhov@cs.concordia.ca>
 #   - October 12, 2002: Post-7.3 beta 2, Fuzzy fixes, Serguei A. Mokhov <mokhov@cs.concordia.ca>
@@ -15,8 +15,8 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: PostgreSQL 7.4.x\n"
-"POT-Creation-Date: 2004-08-18 01:09-0300\n"
-"PO-Revision-Date: 2004-08-21 16:45-0500\n"
+"POT-Creation-Date: 2004-08-24 19:09-0300\n"
+"PO-Revision-Date: 2004-08-28 21:16-0500\n"
 "Last-Translator: Serguei A. Mokhov <mokhov@cs.concordia.ca>\n"
 "Language-Team: pgsql-rus <pgsql-rus@yahoogroups.com>\n"
 "MIME-Version: 1.0\n"
@@ -805,7 +805,7 @@ msgstr "
 #: catalog/dependency.c:714
 #, c-format
 msgid "drop auto-cascades to %s"
-msgstr ""
+msgstr "ÕÄÁÌÅÎÉÅ Á×ÔÏÍÁÔÉÞÅÓËÉ ÓÎÉÓÈÏÄÉÔ ÄÏ %s"
 
 #: catalog/dependency.c:541
 #: catalog/dependency.c:691
@@ -817,7 +817,7 @@ msgstr "%s 
 #: catalog/dependency.c:698
 #, c-format
 msgid "drop cascades to %s"
-msgstr ""
+msgstr "ÕÄÁÌÅÎÉÅ ÓÎÉÓÈÏÄÉÔ ÄÏ %s"
 
 #: catalog/aclchk.c:160
 msgid "grant options can only be granted to individual users"
@@ -1794,7 +1794,7 @@ msgstr "
 #: commands/dbcommands.c:961
 #, c-format
 msgid "Failing system command was: %s"
-msgstr ""
+msgstr "óÉÓÔÅÍÎÁÑ ËÏÍÁÎÄÁ Ó ÏÛÉÂËÏÊ: %s"
 
 #: commands/dbcommands.c:372
 #: commands/dbcommands.c:377
@@ -1992,7 +1992,7 @@ msgstr "COPY %s, 
 #: commands/copy.c:1159
 #, c-format
 msgid "COPY %s, line %d, column %s: \"%s\""
-msgstr ""
+msgstr "COPY %s, ÓÔÒÏËÁ %d, ËÏÌÏÎËÁ %s: \"%s\""
 
 #: commands/copy.c:1186
 #, c-format
@@ -2005,28 +2005,28 @@ msgstr ""
 
 #: commands/copy.c:1395
 msgid "invalid COPY file header (missing flags)"
-msgstr ""
+msgstr "ÎÅ×ÅÒÎÙÊ ÚÁÇÏÌÏ×ÏË ÆÁÊÌÁ COPY (ÏÔÓÕÔÓÔ×ÕÀÔ ÆÌÁÇÉ)"
 
 #: commands/copy.c:1401
 msgid "unrecognized critical flags in COPY file header"
-msgstr ""
+msgstr "ÎÅÒÁÓÐÏÚÎÁÎÙ ËÒÉÔÉÞÅÓËÉÅ ÆÌÁÇÉ × ÚÁÇÏÌÏ×ÏËÅ ÆÁÊÌÁ COPY"
 
 #: commands/copy.c:1407
 msgid "invalid COPY file header (missing length)"
-msgstr ""
+msgstr "ÎÅ×ÅÒÎÙÊ ÚÁÇÏÌÏ×ÏË ÆÁÊÌÁ COPY (ÏÔÓÕÔÓÔ×ÕÅÔ ÄÌÉÎÁ)"
 
 #: commands/copy.c:1415
 msgid "invalid COPY file header (wrong length)"
-msgstr ""
+msgstr "ÎÅ×ÅÒÎÙÊ ÚÁÇÏÌÏ×ÏË ÆÁÊÌÁ COPY (ÎÅÐÒÁ×ÉÌØÎÁÑ ÄÌÉÎÁ)"
 
 #: commands/copy.c:1492
 msgid "null OID in COPY data"
-msgstr ""
+msgstr "ÎÕÌÅ×ÏÊ (null) OID × ÄÁÎÎÙÈ COPY"
 
 #: commands/copy.c:1501
 #: commands/copy.c:1584
 msgid "invalid OID in COPY data"
-msgstr ""
+msgstr "ÎÅ×ÅÒÎÙÊ OID × ÄÁÎÎÙÈ COPY"
 
 #: commands/copy.c:1521
 #, c-format
@@ -2035,12 +2035,12 @@ msgstr "
 
 #: commands/copy.c:1553
 msgid "extra data after last expected column"
-msgstr ""
+msgstr "ÄÏÐÏÌÎÉÔÅÌØÎÙÅ ÄÁÎÎÙÅ ÚÁ ÐÏÓÌÅÄÎÅÊ ÏÖÉÄÁ×ÛÅÊÓÑ ËÏÌÏÎËÏÊ"
 
 #: commands/copy.c:1570
 #, c-format
 msgid "row field count is %d, expected %d"
-msgstr ""
+msgstr "ËÏÌÉÞÅÓÔ×Ï ÐÏÌÅÊ × ÓÔÒÏËÅ: %d, ÏÖÉÄÁÌÏÓØ: %d"
 
 #: commands/copy.c:1786
 #: commands/copy.c:1804
@@ -2050,7 +2050,7 @@ msgstr ""
 #: commands/copy.c:1787
 #: commands/copy.c:1805
 msgid "Use \"\\r\" to represent carriage return."
-msgstr ""
+msgstr "éÓÐÏÌØÚÕÊÔÅ \"\\r\" ÄÌÑ ÐÒÅÄÓÔÁ×ÌÅÎÉÑ ÎÏ×ÏÊ ÓÔÒÏËÉ."
 
 #: commands/copy.c:1822
 msgid "literal newline found in data"
@@ -2061,6 +2061,8 @@ msgid ""
 "Use \"\\n"
 "\" to represent newline."
 msgstr ""
+"éÓÐÏÌØÚÕÊÔÅ \"\\n"
+"\" ÄÌÑ ÐÒÅÄÓÔÁ×ÌÅÎÉÑ ÎÏ×ÏÊ ÓÔÒÏËÉ."
 
 #: commands/copy.c:1843
 #: commands/copy.c:1859
@@ -2075,7 +2077,7 @@ msgstr ""
 #: commands/copy.c:2070
 #: commands/copy.c:2092
 msgid "unexpected EOF in COPY data"
-msgstr ""
+msgstr "ÎÅÏÖÉÄÁÎÎÙÊ ËÏÎÅàÆÁÊÌÁ (EOF) × ÄÁÎÎÙÈ COPY"
 
 #: commands/copy.c:2079
 msgid "invalid field size"
@@ -2083,7 +2085,7 @@ msgstr "
 
 #: commands/copy.c:2106
 msgid "incorrect binary data format"
-msgstr ""
+msgstr "ÎÅ×ÅÒÎÙÊ Ä×ÏÉÞÎÙÊ ÆÏÒÍÁÔ ÄÁÎÎÙÈ"
 
 #: commands/copy.c:2225
 #: parser/parse_target.c:500
@@ -2099,7 +2101,7 @@ msgstr "SQL-
 #: commands/functioncmds.c:88
 #, c-format
 msgid "return type %s is only a shell"
-msgstr ""
+msgstr "ÔÉР×ÏÚÒÁÔÁ %s Ñ×ÌÑÅÔÓÑ ÔÏÌØËÏ ÏÂÏÌÏÞËÏÊ"
 
 #: commands/functioncmds.c:114
 #, c-format
@@ -2142,12 +2144,12 @@ msgstr "
 #: commands/functioncmds.c:333
 #, c-format
 msgid "unrecognized function attribute \"%s\" ignored"
-msgstr ""
+msgstr "ÎÅÒÁÓÐÏÚÎÁÎÎÙÊ ÁÔÒÉÂÕÔ ÆÕÎËÃÉÉ \"%s\" -- ÐÒÏÉÇÎÏÒÉÒÏ×ÁÎ"
 
 #: commands/functioncmds.c:377
 #, c-format
 msgid "only one AS item needed for language \"%s\""
-msgstr ""
+msgstr "ÎÕÖÎÏ ÔÏÌØËÏ ÏÄÎÏ ×ÙÒÁÖÅÎÉÅ AS ÄÌÑ ÑÚÙËÁ \"%s\""
 
 #: commands/functioncmds.c:448
 msgid "You need to use \"createlang\" to load the language into the database."
@@ -2191,22 +2193,22 @@ msgstr "
 #: commands/functioncmds.c:832
 #, c-format
 msgid "source data type %s is only a shell"
-msgstr ""
+msgstr "ÉÓÈÏÄÎÙÊ ÔÉРÄÁÎÎÙÈ %s Ñ×ÌÑÅÔÓÑ ÔÏÌØËÏ ÏÂÏÌÏÞËÏÊ"
 
 #: commands/functioncmds.c:838
 #, c-format
 msgid "target data type %s is only a shell"
-msgstr ""
+msgstr "ÔÉРÄÁÎÎÙÈ ÎÁÚÎÁÞÅÎÉÑ %s Ñ×ÌÑÅÔÓÑ ÔÏÌØËÏ ÏÂÏÌÏÞËÏÊ"
 
 #: commands/functioncmds.c:844
 #, c-format
 msgid "source data type %s is a pseudo-type"
-msgstr ""
+msgstr "ÉÓÈÏÄÎÙÊ ÔÉРÄÁÎÎÙÈ %s Ñ×ÌÑÅÔÓÑ ÐÓÅ×ÄÏ-ÔÉÐÏÍ"
 
 #: commands/functioncmds.c:850
 #, c-format
 msgid "target data type %s is a pseudo-type"
-msgstr ""
+msgstr "ÔÉРÄÁÎÎÙÈ ÎÁÚÎÁÞÅÎÉÑ %s Ñ×ÌÑÅÔÓÑ ÐÓÅ×ÄÏ-ÔÉÐÏÍ"
 
 #: commands/functioncmds.c:858
 #: commands/functioncmds.c:1073
@@ -2244,7 +2246,7 @@ msgstr ""
 
 #: commands/functioncmds.c:946
 msgid "source and target data types are not physically compatible"
-msgstr ""
+msgstr "ÉÓÈÏÄÎÙÊ ÔÉРɠÔÉРÎÁÚÎÁÞÅÎÉÑ ÆÉÚÉÞÅÓËÉ ÎÅ ÓÏ×ÍÅÓÔÉÍÙ"
 
 #: commands/functioncmds.c:981
 #, c-format
@@ -2341,7 +2343,7 @@ msgstr "
 #: commands/opclasscmds.c:287
 #, c-format
 msgid "could not make operator class \"%s\" be default for type %s"
-msgstr ""
+msgstr "ÎÅ ÐÏÌÕÞÉÌÏÓØ ÕÓÔÁÎÏ×ÉÔØ ËÌÁÓÓ ÏÐÅÒÁÔÏÒÏ× \"%s\" ÐÏ ÕÍÏÌÞÁÎÉÀ ÄÌÑ ÔÉÐÁ %s"
 
 #: commands/opclasscmds.c:290
 #, c-format
@@ -2365,7 +2367,7 @@ msgstr "
 
 #: commands/indexcmds.c:92
 msgid "must specify at least one column"
-msgstr ""
+msgstr "ËÁË ÍÉÎÉÍÕÍ ÏÄÎÁ ËÏÌÏÎËÁ ÄÏÌÖÎÁ ÂÙÔØ ÕËÁÚÁÎÁ"
 
 #: commands/indexcmds.c:96
 #, c-format
@@ -2375,16 +2377,16 @@ msgstr "
 #: commands/indexcmds.c:152
 #, c-format
 msgid "access method \"%s\" does not support unique indexes"
-msgstr ""
+msgstr "ÍÅÔÏÄ ÄÏÓÔÕÐÁ \"%s\" ÎÅ ÐÏÄÄÅÒÖÉ×ÁÅÔ ÕÎÉËÁÌØÎÙÅ ÉÎÄÅËÓÙ"
 
 #: commands/indexcmds.c:157
 #, c-format
 msgid "access method \"%s\" does not support multicolumn indexes"
-msgstr ""
+msgstr "ÍÅÔÏÄ ÄÏÓÔÕÐÁ \"%s\" ÎÅ ÐÏÄÄÅÒÖÉ×ÁÅÔ ÉÎÄÅËÓÙ ÐÏ ÍÎÏÇÉÍ ËÏÌÏÎËÁÍ"
 
 #: commands/indexcmds.c:171
 msgid "index expressions and predicates may refer only to the table being indexed"
-msgstr ""
+msgstr "ÉÎÄÅËÓÎÙÅ ×ÙÒÁÖÅÎÉÑ É ÐÒÅÄÉËÁÔÙ ÍÏÇÕÔ ÓÓÙÌÁÔØÓÑ ÔÏÌØËÏ ÎÁ ÉÎÄÅËÓÉÒÕÅÍÕÀ ÔÁÂÌÉÃÕ"
 
 #: commands/indexcmds.c:202
 msgid "primary keys cannot be expressions"
@@ -2459,7 +2461,7 @@ msgstr "
 
 #: commands/indexcmds.c:685
 msgid "can only reindex the currently open database"
-msgstr ""
+msgstr "ÍÏÖÎÏ ÐÅÒÅÉÎÄÅËÓÏ×ÁÔØ ÔÏÌØËÏ ÏÔËÒÙÔÕÀ ÂÁÚÕ"
 
 #: commands/indexcmds.c:768
 #, c-format
@@ -2478,7 +2480,7 @@ msgstr "
 
 #: commands/operatorcmds.c:151
 msgid "operator procedure must be specified"
-msgstr ""
+msgstr "ÄÏÌÖÎÁ ÂÙÔØ ÕËÁÚÁÎÁ ÐÒÏÃÅÄÕÒÁ ÏÐÅÒÁÔÏÒÁ"
 
 #: commands/portalcmds.c:54
 #: commands/portalcmds.c:164
@@ -2555,7 +2557,7 @@ msgstr "
 #: commands/proclang.c:97
 #, c-format
 msgid "changing return type of function %s from \"opaque\" to \"language_handler\""
-msgstr ""
+msgstr "ÉÚÍÅÎÅÎÉÅ ÔÉÐÁ ×ÏÚ×ÒÁÔÁ ÆÕÎËÃÉÉ %s ÉÚ \"opaque\" ÎÁ \"language_handler\""
 
 #: commands/proclang.c:104
 #, c-format
@@ -2602,22 +2604,22 @@ msgstr "
 #: commands/sequence.c:477
 #, c-format
 msgid "nextval: reached maximum value of sequence \"%s\" (%s)"
-msgstr ""
+msgstr "nextval: ÄÏÓÔÉÇÎÕÔÏ ÍÁËÓÉÍÁÌØÎÏÅ ÚÎÁÞÅÎÉÅ ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÏÓÔÉ \"%s\" (%s)"
 
 #: commands/sequence.c:500
 #, c-format
 msgid "nextval: reached minimum value of sequence \"%s\" (%s)"
-msgstr ""
+msgstr "nextval: ÄÏÓÔÉÇÎÕÔÏ ÍÉÎÉÍÁÌØÎÏÅ ÚÎÁÞÅÎÉÅ ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÏÓÔÉ \"%s\" (%s)"
 
 #: commands/sequence.c:598
 #, c-format
 msgid "currval of sequence \"%s\" is not yet defined in this session"
-msgstr ""
+msgstr "currval (ÔÅËÕÝÅÅ ÚÎÁÞÅÎÉÅ) ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÏÓÔÉ \"%s\" ÅÝ£ ÎÅ ÏÐÒÅÄÅÌÅÎÏ × ÜÔÏÊ ÓÅÓÓÉÉ"
 
 #: commands/sequence.c:652
 #, c-format
 msgid "setval: value %s is out of bounds for sequence \"%s\" (%s..%s)"
-msgstr ""
+msgstr "setval: ÚÎÁÞÅÎÉÅ %s ×ÎÅ ÐÒÅÄÅÌÏ× ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÏÓÔÉ \"%s\" (%s..%s)"
 
 #: commands/sequence.c:799
 #: executor/execGrouping.c:328
@@ -2683,26 +2685,26 @@ msgstr "INCREMENT 
 #: commands/sequence.c:990
 #, c-format
 msgid "MINVALUE (%s) must be less than MAXVALUE (%s)"
-msgstr ""
+msgstr "MINVALUE (%s) ÄÏÌÖÎÏ ÂÙÔØ ÍÅÎØÛÅ ÞÅÍ MAXVALUE (%s)"
 
 #: commands/sequence.c:1021
 #, c-format
 msgid "START value (%s) can't be less than MINVALUE (%s)"
-msgstr ""
+msgstr "ÚÎÁÞÅÎÉÅ START (%s) ÎÅ ÍÏÖÅÔ ÂÙÔØ ÍÅÎØÛÅ ÞÅÍ MINVALUE (%s)"
 
 #: commands/sequence.c:1033
 #, c-format
 msgid "START value (%s) can't be greater than MAXVALUE (%s)"
-msgstr ""
+msgstr "ÚÎÁÞÅÎÉÅ START (%s) ÎÅ ÍÏÖÅÔ ÂÙÔØ ÂÏÌØÛÅ ÞÅÍ MAXVALUE (%s)"
 
 #: commands/sequence.c:1048
 #, c-format
 msgid "CACHE (%s) must be greater than zero"
-msgstr ""
+msgstr "CACHE (%s) ÄÏÌÖÎÏ ÂÙÔØ ÂÏÌØÛÅ ÎÕÌÑ"
 
 #: commands/tablecmds.c:151
 msgid "ON COMMIT can only be used on temporary tables"
-msgstr ""
+msgstr "ON COMMIT ÍÏÖÅÔ ÔÏÌØËÏ ÉÓÐÏÌØÚÏ×ÁÔØÓÑ ÄÌÑ ×ÒÅÍÅÎÎÙÈ ÔÁÂÌÉÃ"
 
 #: commands/tablecmds.c:211
 #, c-format
@@ -2749,12 +2751,12 @@ msgstr "
 #: commands/tablecmds.c:541
 #, c-format
 msgid "cannot inherit from temporary relation \"%s\""
-msgstr ""
+msgstr "ÎÅÌØÚÑ ÎÁÓÌÅÄÏ×ÁÔØ ×ÒÅÍÅÎÎÏÅ ÏÔÎÏÛÅÎÉÅ \"%s\""
 
 #: commands/tablecmds.c:558
 #, c-format
 msgid "inherited relation \"%s\" duplicated"
-msgstr ""
+msgstr "ÐÏ×ÔÏÒÎÏÅ ÎÁÓÌÅÄÏ×ÁÎÎÏÅ ÏÔÎÏÛÅÎÉÅ \"%s\""
 
 #: commands/tablecmds.c:611
 #, c-format
@@ -2764,7 +2766,7 @@ msgstr ""
 #: commands/tablecmds.c:618
 #, c-format
 msgid "inherited column \"%s\" has a type conflict"
-msgstr ""
+msgstr "ÎÁÓÌÅÄÏ×ÁÎÎÁÑ ËÏÌÏÎËÁ \"%s\" ÉÍÅÅÔ ËÏÎÆÌÉËÔ ÔÉÐÏ×"
 
 #: commands/tablecmds.c:620
 #: commands/tablecmds.c:775
@@ -2789,11 +2791,11 @@ msgstr "
 #: commands/tablecmds.c:814
 #, c-format
 msgid "column \"%s\" inherits conflicting default values"
-msgstr ""
+msgstr "ËÏÌÏÎËÁ \"%s\" ÎÁÓÌÅÄÕÅÔ ËÏÎÆÌÉËÔÕÀÝÉÅ ÚÎÁÞÅÎÉÑ ÐÏ ÕÍÏÌÞÁÎÉÀ"
 
 #: commands/tablecmds.c:816
 msgid "To resolve the conflict, specify a default explicitly."
-msgstr ""
+msgstr "äÌÑ ÒÅÛÅÎÉÑ ËÏÎÆÌÉËÔÁ ÕËÁÖÉÔÅ ÖÅÌÁÅÍÏÅ ÚÎÁÞÅÎÉÅ ÐÏ ÕÍÏÌÞÁÎÉÀ."
 
 #: commands/tablecmds.c:1109
 #, c-format
@@ -2836,15 +2838,15 @@ msgstr ""
 
 #: commands/tablecmds.c:1736
 msgid "Add the column, then use ALTER TABLE SET DEFAULT."
-msgstr ""
+msgstr "äÏÂÁ×ØÔÅ ËÏÌÏÎËÕ É ÚÁÔÅÍ ÉÓÐÏÌØÚÕÊÔÅ  ALTER TABLE SET DEFAULT."
 
 #: commands/tablecmds.c:1741
 msgid "adding NOT NULL columns is not implemented"
-msgstr ""
+msgstr "ÄÏÂÁ×ÌÅÎÉÅ ËÏÌÏÎÏË NOT NULL ÎÅ ÒÅÁÌÉÚÏ×ÁÎÏ"
 
 #: commands/tablecmds.c:1742
 msgid "Add the column, then use ALTER TABLE SET NOT NULL."
-msgstr ""
+msgstr "äÏÂÁ×ØÔÅ ËÏÌÏÎËÕ É ÚÁÔÅÍ ÉÓÐÏÌØÚÕÊÔÅ ALTER TABLE SET NOT NULL."
 
 #: commands/tablecmds.c:1955
 #: commands/tablecmds.c:2099
@@ -2891,7 +2893,7 @@ msgstr ""
 
 #: commands/tablecmds.c:2516
 msgid "ALTER TABLE WITH OIDS is not yet implemented"
-msgstr ""
+msgstr "ALTER TABLE WITH OIDS ÅÝ£ ÎÅ ÒÅÁÌÉÚÏ×ÁÎÏ"
 
 #: commands/tablecmds.c:2597
 #, c-format
@@ -2916,7 +2918,7 @@ msgstr ""
 #: commands/tablecmds.c:3047
 #, c-format
 msgid "referenced relation \"%s\" is not a table"
-msgstr ""
+msgstr "ÓÓÙÌÁÅÍÏÅ ÏÔÎÏÛÅÎÉÅ \"%s\" ÎÅ Ñ×ÌÑÅÔÓÑ ÔÁÂÌÉÃÅÊ"
 
 #: commands/tablecmds.c:3081
 msgid "cannot reference temporary table from permanent table constraint"
@@ -2965,7 +2967,7 @@ msgstr ""
 #: commands/tablecmds.c:3863
 #, c-format
 msgid "\"%s\" is not a table, TOAST table, index, view, or sequence"
-msgstr ""
+msgstr "\"%s\" ÎÅ Ñ×ÌÑÅÔÓÑ ÔÁÀÌÉÃÅÊ, TOAST-ÔÁÂÌÉÃÅÊ, ÉÎÄÅËÓÏÍ, ÐÒÅÄÓÔÁ×ÌÅÎÉÅÍ ÉÌÉ ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÏÓÔØÀ"
 
 #: commands/tablecmds.c:4047
 msgid "shared tables cannot be toasted after initdb"
@@ -3007,7 +3009,7 @@ msgstr "
 #: commands/trigger.c:290
 #, c-format
 msgid "changing return type of function %s from \"opaque\" to \"trigger\""
-msgstr ""
+msgstr "ÉÚÍÅÎÅÎÉÅ ÔÉÐÁ ×ÏÚ×ÒÁÔÁ ÆÕÎËÃÉÉ %s ÉÚ \"opaque\" ÎÁ \"trigger\""
 
 #: commands/trigger.c:297
 #, c-format
@@ -3044,12 +3046,12 @@ msgstr ""
 #: commands/typecmds.c:135
 #, c-format
 msgid "type names must be %d characters or less"
-msgstr ""
+msgstr "ÉÍÅÎÁ ÔÉÐÏ× ÍÏÇÕÔ ÓÏÄÅÒÖÁÔØ %d ÉÌÉ ÍÅÎÅÅ ÓÉÍ×ÏÌÏ×"
 
 #: commands/typecmds.c:167
 #, c-format
 msgid "array element type cannot be %s"
-msgstr ""
+msgstr "ÔÉРÜÌÅÍÅÎÔÁ ÍÁÓÓÉ×Á ÎÅ ÍÏÖÅÔ ÂÙÔØ %s"
 
 #: commands/typecmds.c:200
 #, c-format
@@ -3077,7 +3079,7 @@ msgstr ""
 #: commands/typecmds.c:275
 #, c-format
 msgid "changing return type of function %s from \"opaque\" to %s"
-msgstr ""
+msgstr "ÉÚÍÅÎÅÎÉÅ ÔÉÐÁ ×ÏÚ×ÒÁÔÁ ÆÕÎËÃÉÉ %s ÉÚ \"opaque\" ÎÁ %s"
 
 #: commands/typecmds.c:282
 #, c-format
@@ -3087,7 +3089,7 @@ msgstr ""
 #: commands/typecmds.c:292
 #, c-format
 msgid "changing return type of function %s from \"opaque\" to \"cstring\""
-msgstr ""
+msgstr "ÉÚÍÅÎÅÎÉÅ ÔÉÐÁ ×ÏÚ×ÒÁÔÁ ÆÕÎËÃÉÉ %s ÉÚ \"opaque\" ÎÁ \"cstring\""
 
 #: commands/typecmds.c:299
 #, c-format
@@ -3107,7 +3109,7 @@ msgstr ""
 #: commands/typecmds.c:520
 #, c-format
 msgid "domain names must be %d characters or less"
-msgstr ""
+msgstr "ÉÍÅÎÁ ÄÏÍÅÎÏ× ÍÏÇÕÔ ÓÏÄÅÒÖÁÔØ %d ÉÌÉ ÍÅÎÅÅ ÓÉÍ×ÏÌÏ×"
 
 #: commands/typecmds.c:541
 #, c-format
@@ -3153,12 +3155,12 @@ msgstr "\"%s\" 
 #: commands/typecmds.c:878
 #, c-format
 msgid "changing argument type of function %s from \"opaque\" to \"cstring\""
-msgstr ""
+msgstr "ÉÚÍÅÎÅÎÉÅ ÔÉÐÁ ÁÒÇÕÍÅÎÔÁ ÆÕÎËÃÉÉ %s ÉÚ \"opaque\" ÎÁ \"cstring\""
 
 #: commands/typecmds.c:948
 #, c-format
 msgid "changing argument type of function %s from \"opaque\" to %s"
-msgstr ""
+msgstr "ÉÚÍÅÎÅÎÉÅ ÔÉÐÁ ÁÒÇÕÍÅÎÔÁ ÆÕÎËÃÉÉ %s ÉÚ \"opaque\" ÎÁ %s"
 
 #: commands/typecmds.c:1059
 msgid "composite type must have at least one attribute"
@@ -3229,7 +3231,7 @@ msgstr ""
 #: commands/user.c:609
 #, c-format
 msgid "user name \"%s\" is reserved"
-msgstr ""
+msgstr "ÉÍÑ ÐÏÌØÚÏ×ÁÔÅÌÑ \"%s\" ÚÁÒÅÚÅÒ×ÉÒÏ×ÁÎÏ"
 
 #: commands/user.c:646
 #: commands/user.c:1191
@@ -3259,25 +3261,25 @@ msgstr ""
 
 #: commands/user.c:1060
 msgid "current user cannot be dropped"
-msgstr ""
+msgstr "ÔÅËÕÝÉÊ ÐÏÌØÚÏ×ÁÔÅÌØ ÎÅ ÍÏÖÅÔ ÂÙÔØ ÕÄÁÌ£Î"
 
 #: commands/user.c:1064
 msgid "session user cannot be dropped"
-msgstr ""
+msgstr "ÐÏÌØÚÏ×ÁÔÅÌØ ÓÅÓÓÉÉ ÎÅ ÍÏÖÅÔ ÂÙÔØ ÕÄÁÌ£Î"
 
 #: commands/user.c:1090
 #, c-format
 msgid "user \"%s\" cannot be dropped"
-msgstr ""
+msgstr "ÐÏÌØÚÏ×ÁÔÅÌØ \"%s\" ÎÅ ÍÏÖÅÔ ÂÙÔØ ÕÄÁÌ£Î"
 
 #: commands/user.c:1091
 #, c-format
 msgid "The user owns database \"%s\"."
-msgstr ""
+msgstr "ðÏÌØÚÏ×ÁÔÅÌØ ×ÌÁÄÅÅÔ ÂÁÚÏÊ \"%s\"."
 
 #: commands/user.c:1183
 msgid "session user may not be renamed"
-msgstr ""
+msgstr "ÐÏÌØÚÏ×ÁÔÅÌØ ÓÅÓÓÉÉ ÎÅ ÍÏÖÅÔ ÂÙÔØ ÐÅÒÅÉÍÅÎÏ×ÁÎ"
 
 #: commands/user.c:1197
 msgid "must be superuser to rename users"
@@ -3286,16 +3288,16 @@ msgstr ""
 #: commands/user.c:1230
 #, c-format
 msgid "before using passwords you must revoke privileges on %s"
-msgstr ""
+msgstr "ÐÅÒÅÄ ÉÓÐÏÌØÚÏ×ÁÎÉÅÍ ÐÁÒÏÌÅÊ ×Ù ÄÏÌÖÎÙ ÕÄÁÌÉÔØ ÐÒÉ×ÉÌÅÇÉÉ ÎÁ %s"
 
 #: commands/user.c:1232
 msgid "This restriction is to prevent unprivileged users from reading the passwords."
-msgstr ""
+msgstr "üÔÏ ÏÇÒÁÎÉÞÅÎÉÅ ××ÅÄÅÎÏ ÄÌÑ ÐÒÅÄÏÔ×ÒÁÝÅÎÉÑ ÞÔÅÎÉÑ ÐÁÒÏÌÅÊ ÎÅÐÒÉ×ÉÌÅÇÉÒÏ×ÁÎÎÙÍÉ ÐÏÌØÚÏ×ÁÔÅÌÑÍÉ."
 
 #: commands/user.c:1233
 #, c-format
 msgid "Try REVOKE ALL ON \"%s\" FROM PUBLIC."
-msgstr ""
+msgstr "ðÏÐÒÏÂÕÊÔÅ REVOKE ALL ON \"%s\" FROM PUBLIC."
 
 #: commands/user.c:1297
 msgid "group ID must be positive"
@@ -3308,7 +3310,7 @@ msgstr ""
 #: commands/user.c:1315
 #, c-format
 msgid "group name \"%s\" is reserved"
-msgstr ""
+msgstr "ÉÍÑ ÇÒÕÐÐÙ \"%s\" ÚÁÒÅÚÅÒ×ÉÒÏ×ÁÎÏ"
 
 #: commands/user.c:1352
 #: commands/user.c:1734
@@ -3328,7 +3330,7 @@ msgstr ""
 #: commands/user.c:1516
 #, c-format
 msgid "group \"%s\" does not have any members"
-msgstr ""
+msgstr "ÎÅÔ ÞÌÅÎÏ× × ÇÒÕÐÐÅ  \"%s\""
 
 #: commands/user.c:1544
 #, c-format
@@ -3345,7 +3347,7 @@ msgstr ""
 
 #: commands/vacuum.c:466
 msgid "oldest xmin is far in the past"
-msgstr ""
+msgstr "ÓÁÍÙÊ ÓÔÁÒÙÊ xmin ÄÁÌÅËÏ × ÐÒÏÛÌÏÍ"
 
 #: commands/vacuum.c:467
 msgid "Close open transactions soon to avoid wraparound problems."
@@ -3353,7 +3355,7 @@ msgstr ""
 
 #: commands/vacuum.c:684
 msgid "some databases have not been vacuumed in over 2 billion transactions"
-msgstr ""
+msgstr "ÓÂÏÒËÁ ÍÕÓÏÒÁ ÎÅ ÂÙÌÁ ÐÒÏÉÚ×ÅÄÅÎÁ × ÎÅËÏÔÏÒÙÈ ÂÁÚÁÈ Ó ÂÏÌÅÅ 2 ÍÉÌÌÉÁÒÄÏ× ÔÒÁÎÚÁËÃÉÊ"
 
 #: commands/vacuum.c:685
 msgid "You may have already suffered transaction-wraparound data loss."
@@ -3361,7 +3363,7 @@ msgstr ""
 
 #: commands/vacuum.c:696
 msgid "some databases have not been vacuumed in over 1 billion transactions"
-msgstr ""
+msgstr "ÓÂÏÒËÁ ÍÕÓÏÒÁ ÎÅ ÂÙÌÁ ÐÒÏÉÚ×ÅÄÅÎÁ × ÎÅËÏÔÏÒÙÈ ÂÁÚÁÈ Ó ÂÏÌÅÅ 1 ÍÉÌÌÉÁÒÄÁ ÔÒÁÎÚÁËÃÉÊ"
 
 #: commands/vacuum.c:697
 msgid "Better vacuum them soon, or you may have a wraparound failure."
@@ -3370,7 +3372,7 @@ msgstr ""
 #: commands/vacuum.c:704
 #, c-format
 msgid "some databases have not been vacuumed in %d transactions"
-msgstr ""
+msgstr "ÓÂÏÒËÁ ÍÕÓÏÒÁ ÎÅ ÂÙÌÁ ÐÒÏÉÚ×ÅÄÅÎÁ × ÎÅËÏÔÏÒÙÈ ÂÁÚÁÈ Ó ÞÉÓÌÏÍ ÔÒÁÎÚÁËÃÉÊ: %d"
 
 #: commands/vacuum.c:706
 #, c-format
@@ -3380,7 +3382,7 @@ msgstr ""
 #: commands/vacuum.c:795
 #, c-format
 msgid "skipping \"%s\" --- only table or database owner can vacuum it"
-msgstr ""
+msgstr "ÐÒÏÐÕÓËÁÅÔÓÑ \"%s\" --- ÔÏÌØËÏ ×ÌÁÄÅÌÅàÔÁÂÌÉÃÙ ÉÌÉ ÂÁÚÙ ÍÏÖÅÔ ÐÒÏÉÚ×ÏÄÉÔØ ÓÂÏÒËÕ ÍÕÓÏÒÁ × ÄÁÎÎÏÍ ÏÂßÅËÔÅ"
 
 #: commands/vacuum.c:809
 #, c-format
@@ -3397,23 +3399,23 @@ msgstr "
 #: commands/vacuumlazy.c:263
 #, c-format
 msgid "relation \"%s\" page %u is uninitialized --- fixing"
-msgstr ""
+msgstr "ÏÔÎÏÛÅÎÉÅ: \"%s\", ÓÔÒÁÎÉÃÁ %u ÎÅ ÉÎÉÃÉÁÌÉÚÉÒÏ×ÁÎÁ --- ÉÓÐÒÁ×ÌÑÅÔÓÑ"
 
 #: commands/vacuum.c:1192
 #, c-format
 msgid "relation \"%s\" TID %u/%u: InsertTransactionInProgress %u --- can't shrink relation"
-msgstr ""
+msgstr "ÏÔÎÏÛÅÎÉÅ \"%s\" TID %u/%u: InsertTransactionInProgress %u --- ÎÅ × ÓÏÓÔÏÑÎÉÉ ÕÍÅÎØÛÉÔØ ÏÔÎÏÛÅÎÉÅ"
 
 #: commands/vacuum.c:1205
 #, c-format
 msgid "relation \"%s\" TID %u/%u: DeleteTransactionInProgress %u --- can't shrink relation"
-msgstr ""
+msgstr "ÏÔÎÏÛÅÎÉÅ \"%s\" TID %u/%u: DeleteTransactionInProgress %u --- ÎÅ × ÓÏÓÔÏÑÎÉÉ ÕÍÅÎØÛÉÔØ ÏÔÎÏÛÅÎÉÅ"
 
 #: commands/vacuum.c:1367
 #: commands/vacuumlazy.c:428
 #, c-format
 msgid "\"%s\": found %.0f removable, %.0f nonremovable row versions in %u pages"
-msgstr ""
+msgstr "\"%s\": ÎÁÊÄÅÎÏ %.0f ÕÄÁÌÑÍÙÈ, %.0f ÎÅÕÄÁÌÑÅÍÙÈ ×ÅÒÓÉÊ ÓÔÒÏËÉ × ÓÔÒÁÎÉÃÁÈ: %u"
 
 #: commands/vacuum.c:1370
 #, c-format
@@ -3454,7 +3456,7 @@ msgstr ""
 #: commands/vacuumlazy.c:657
 #, c-format
 msgid "index \"%s\" now contains %.0f row versions in %u pages"
-msgstr ""
+msgstr "ÉÎÄÅËÓ \"%s\" ÔÅÐÅÒØ ÓÏÄÅÒÖÉÔ ×ÅÒÓÉÊ ÓÔÒÏËÉ: %.0f, ÎÁ ÓÔÒÁÎÉÃÁÈ: %u"
 
 #: commands/vacuum.c:2656
 #: commands/vacuumlazy.c:601
@@ -3463,12 +3465,14 @@ msgid ""
 "%u index pages have been deleted, %u are currently reusable.\n"
 "%s"
 msgstr ""
+"ÓÔÒÁÎÉàÉÎÄÅËÓÁ ÕÄÁÌÅÎÏ: %u, ÇÏÔÏ×Ï Ë ÐÅÒÅÉÓÐÏÌØÚÏ×ÁÎÉÀ: %u.\n"
+"%s"
 
 #: commands/vacuum.c:2670
 #: commands/vacuum.c:2739
 #, c-format
 msgid "index \"%s\" contains %.0f row versions, but table contains %.0f row versions"
-msgstr ""
+msgstr "ÉÎÄÅËÓ ÓÏÄÅÒÖÉÔ \"%s\" ÓÏÄÅÒÖÉÔ ×ÅÒÓÉÊ ÓÔÒÏËÉ: %.0f, Á ÔÁÂÌÉÃÁ ÓÏÄÅÒÖÉÔ: %.0f"
 
 #: commands/vacuum.c:2673
 #: commands/vacuum.c:2742
@@ -3483,6 +3487,9 @@ msgid ""
 "%u index pages have been deleted, %u are currently reusable.\n"
 "%s"
 msgstr ""
+"×ÅÒÓÉÊ ÔÒÏËÉ ÉÎÄÅËÓÁ ÕÄÁÌÅÎÏ: %.0f.\n"
+"ÓÔÒÁÎÉàÉÎÄÅËÓÁ ÕÄÁÌÅÎÏ: %u, ÓÔÒÁÎÉàÇÏÔÏ×Ï Ë ÐÅÒÅÉÓÐÏÌØÚÏ×ÁÎÉÀ: %u.\n"
+"%s"
 
 #: commands/vacuumlazy.c:431
 #, c-format
@@ -3496,7 +3503,7 @@ msgstr ""
 #: commands/vacuumlazy.c:486
 #, c-format
 msgid "\"%s\": removed %d row versions in %d pages"
-msgstr ""
+msgstr "\"%s\": ÕÄÁÌÅÎÏ ×ÅÒÓÉÊ ÓÔÒÏË: %d, × ÓÔÒÁÎÉÃÁÈ: %d"
 
 #: commands/variable.c:75
 msgid "invalid list syntax for parameter \"datestyle\""
@@ -3518,40 +3525,40 @@ msgstr ""
 #: commands/variable.c:557
 #, c-format
 msgid "unrecognized time zone name: \"%s\""
-msgstr ""
+msgstr "ÎÅÒÁÓÐÏÚÎÁÎÎÏÅ ÉÍÑ ×ÒÅÍÅÎÎÏÊ ÚÏÎÙ: \"%s\""
 
 #: commands/variable.c:565
 #, c-format
 msgid "time zone \"%s\" appears to use leap seconds"
-msgstr ""
+msgstr "×ÒÅÍÅÎÎÁÑ ÚÏÎÁ \"%s\" ÐÏÈÏÖÅ ÉÓÐÏÌØÚÕÅÔ ×ÉÓÏËÏÓÎÙÅ ÓÅËÕÎÄÙ"
 
 #: commands/variable.c:567
 msgid "PostgreSQL does not support leap seconds."
-msgstr ""
+msgstr "PostgreSQL ÎÅ ÐÏÄÄÅÒÖÉ×ÁÅÔ ×ÉÓÏËÏÓÎÙÅ ÓÅËÕÎÄÙ."
 
 #: commands/variable.c:636
 msgid "SET TRANSACTION ISOLATION LEVEL must be called before any query"
-msgstr ""
+msgstr "ËÏÍÁÎÄÁ SET TRANSACTION ISOLATION LEVEL ÄÏÌÖÎÁ ÂÙÔØ ×ÙÐÏÌÎÅÎÁ ÐÅÒÅÄ ÄÒÕÇÉÍÉ ÚÁÐÒÏÓÁÍÉ"
 
 #: commands/variable.c:713
 #: utils/mb/mbutils.c:188
 #, c-format
 msgid "conversion between %s and %s is not supported"
-msgstr ""
+msgstr "ÐÒÅÏÂÒÁÚÏ×ÁÎÉÅ ÍÅÖÄÕ %s É %s ÎÅ ÐÏÄÄÅÒÖÉ×ÁÅÔÓÑ"
 
 #: commands/view.c:89
 msgid "view must have at least one column"
-msgstr ""
+msgstr "ÐÒÅÄÓÔÁ×ÌÅÎÉÅ ÄÏÌÖÎÏ ÉÍÅÔØ ËÁË ÍÉÎÉÍÕÍ ÏÄÎÕ ËÏÌÏÎËÕ"
 
 #: commands/view.c:169
 #: commands/view.c:181
 msgid "cannot change number of columns in view"
-msgstr ""
+msgstr "ÎÅÌØÚÑ ÉÚÍÅÎÉÔØ ÞÉÓÌÏ ËÏÌÏÎÏË × ÐÒÅÄÓÔÁ×ÌÅÎÉÉ"
 
 #: commands/view.c:186
 #, c-format
 msgid "cannot change name of view column \"%s\""
-msgstr ""
+msgstr "ÎÅÌØÚÑ ÉÚÍÅÎÉÔØ ÉÍÑ ËÏÌÏÎËÉ \"%s\" × ÐÒÅÄÓÔÁ×ÌÅÎÉÉ"
 
 #: commands/view.c:193
 #, c-format
@@ -3598,12 +3605,12 @@ msgstr "
 #: executor/execQual.c:512
 #, c-format
 msgid "no value found for parameter \"%s\""
-msgstr ""
+msgstr "ÚÎÁÞÅÎÉÅ ÎÅ ÎÁÊÄÅÎÏ ÄÌÑ ÐÁÒÁÍÅÔÒÁ \"%s\""
 
 #: executor/execQual.c:517
 #, c-format
 msgid "no value found for parameter %d"
-msgstr ""
+msgstr "ÚÎÁÞÅÎÉÅ ÎÅ ÎÁÊÄÅÎÏ ÄÌÑ ÐÁÒÁÍÅÔÒÁ %d"
 
 #: executor/execQual.c:694
 msgid "functions and operators can take at most one set argument"
@@ -3641,11 +3648,11 @@ msgstr ""
 
 #: executor/execQual.c:1284
 msgid "IS DISTINCT FROM does not support set arguments"
-msgstr ""
+msgstr "IS DISTINCT FROM ÎÅ ÐÏÄÄÅÒÖÉ×ÁÅÔ ÁÒÇÕÍÅÎÔÙ-ÍÎÏÖÅÓÔ×Á"
 
 #: executor/execQual.c:1352
 msgid "op ANY/ALL (array) does not support set arguments"
-msgstr ""
+msgstr "ÏÐÅÒÁÔÏÒÙ ANY/ALL (ÍÁÓÓÉ×) ÎÅ ÐÏÄÄÅÒÖÉ×ÁÀÔ ÁÒÇÕÍÅÎÔÙ-ÍÎÏÖÅÓÔ×Á"
 
 #: executor/execQual.c:1742
 msgid "cannot merge incompatible arrays"
@@ -3662,12 +3669,12 @@ msgstr ""
 
 #: executor/execQual.c:1886
 msgid "NULLIF does not support set arguments"
-msgstr ""
+msgstr "NULLIF ÎÅ ÐÏÄÄÅÒÖÉ×ÁÅÔ ÁÒÇÕÍÅÎÔÙ-ÍÎÏÖÅÓÔ×Á"
 
 #: executor/execQual.c:2067
 #, c-format
 msgid "domain %s does not allow null values"
-msgstr ""
+msgstr "ÄÏÍÅΠ%s ÎÅ ÐÏÚ×ÏÌÑÅÔ ÎÕÌÅ×ÙÅ (null) ÚÎÁÞÅÎÉÑ"
 
 #: executor/execQual.c:2097
 #, c-format
@@ -3688,7 +3695,7 @@ msgstr "
 #: executor/functions.c:254
 #, c-format
 msgid "could not determine actual type of argument declared %s"
-msgstr ""
+msgstr "ÎÅ ÐÏÌÕÞÉÌÏÓØ ÏÐÒÅÄÅÌÉÔØ ÎÁÓÔÏÑÝÉÊ ÔÉРÁÒÇÕÍÅÎÔÁ ÚÁÄÅËÌÁÒÉÒÏ×ÁÎÎÏÇÏ ËÁË %s"
 
 #: executor/functions.c:673
 #, c-format
@@ -8657,7 +8664,7 @@ msgstr ""
 
 #: utils/misc/guc.c:762
 msgid "Encrypt passwords."
-msgstr ""
+msgstr "ûÉÆÒÏ×ÁÔØ ÐÁÒÏÌÉ."
 
 #: utils/misc/guc.c:763
 msgid "When a password is specified in CREATE USER or ALTER USER without writing either ENCRYPTED or UNENCRYPTED, this parameter determines whether the password is to be encrypted."
@@ -8749,7 +8756,7 @@ msgstr ""
 
 #: utils/misc/guc.c:920
 msgid "Uses syslog for logging."
-msgstr ""
+msgstr "éÓÐÏÌØÚÕÅÔ syslog ÄÌÑ ×ÅÄÅÎÉÑ ÖÕÒÎÁÌÁ."
 
 #: utils/misc/guc.c:921
 msgid "If this parameter is 1, messages go both to syslog and the standard output. A value of 2 sends output only to syslog. (Some messages will still go to the standard output/error.) The default is 0, which means syslog is off."
@@ -8919,7 +8926,7 @@ msgstr ""
 
 #: utils/misc/guc.c:1285
 msgid "Sets the client's character set encoding."
-msgstr ""
+msgstr "õÓÔÁÎÁ×ÌÉ×ÁÅÔ ËÏÄÉÒÏ×ËÕ ÓÉÍ×ÏÌÏ× ËÌÉÅÎÔÁ."
 
 #: utils/misc/guc.c:1295
 msgid "Sets the message levels that are sent to the client."
@@ -8943,7 +8950,7 @@ msgstr ""
 
 #: utils/misc/guc.c:1319
 msgid "Valid values are \"terse\", \"default\", and \"verbose\"."
-msgstr ""
+msgstr "÷ÅÒÎÙÅ ÚÎÁÞÅÎÉÑ: \"terse\", \"default\" É \"verbose\"."
 
 #: utils/misc/guc.c:1327
 msgid "Causes all statements generating error at or above this level to be logged."
@@ -8955,7 +8962,7 @@ msgstr ""
 
 #: utils/misc/guc.c:1337
 msgid "Sets the display format for date and time values."
-msgstr ""
+msgstr "õÓÔÁÎÁ×ÌÉ×ÁÅÔ ÆÏÒÍÁÔ ÏÔÏÂÒÁÖÅÎÉÑ ÄÌÑ ÄÁÔ É ×ÒÅÍÅÎÉ."
 
 #: utils/misc/guc.c:1338
 msgid "Also controls interpretation of ambiguous date inputs."
@@ -8963,11 +8970,11 @@ msgstr ""
 
 #: utils/misc/guc.c:1348
 msgid "Sets the transaction isolation level of each new transaction."
-msgstr ""
+msgstr "õÓÔÁÎÁ×ÌÉ×ÁÅÔ ÕÒÏ×ÅÎØ ÉÚÏÌÑÃÉÉ ÔÒÁÎÚÁËÃÉÊ ËÁÖÄÏÊ ÎÏ×ÏÊ ÔÒÁÎÚÁËÃÉÉ."
 
 #: utils/misc/guc.c:1349
 msgid "Each SQL transaction has an isolation level, which can be either \"read committed\" or \"serializable\"."
-msgstr ""
+msgstr "ëÁÖÄÁÑ SQL-ÔÒÁÎÚÁËÃÉÑ ÉÍÅÅÔ ÕÒÏ×ÅÎØ ÉÚÏÌÑÃÉÉ, ËÏÔÏÒÙÊ ÍÏÖÅÔ ÂÙÔØ \"read committed\" ÉÌÉ \"serializable\"."
 
 #: utils/misc/guc.c:1358
 msgid "Sets the path for dynamically loadable modules."
@@ -8995,19 +9002,19 @@ msgstr ""
 
 #: utils/misc/guc.c:1410
 msgid "Sets the language in which messages are displayed."
-msgstr ""
+msgstr "õÓÔÁÎÁ×ÌÉ×ÁÅÔ ÑÚÙË ÄÌÑ ÏÔÏÂÒÁÖÅÎÉÑ ÓÏÏÂÝÅÎÉÊ."
 
 #: utils/misc/guc.c:1419
 msgid "Sets the locale for formatting monetary amounts."
-msgstr ""
+msgstr "õÓÔÁÎÁ×ÌÉ×ÁÅÔ ÌÏËÁÌØ ÄÌÑ ÆÏÒÍÁÔÉÒÏ×ÁÎÉÑ ÄÅÎÅÖÎÙÈ ÓÕÍÍ."
 
 #: utils/misc/guc.c:1428
 msgid "Sets the locale for formatting numbers."
-msgstr ""
+msgstr "õÓÔÁÎÁ×ÌÉ×ÁÅÔ ÌÏËÁÌØ ÄÌÑ ÆÏÒÍÁÔÉÒÏ×ÁÎÉÑ ÞÉÓÅÌ."
 
 #: utils/misc/guc.c:1437
 msgid "Sets the locale for formatting date and time values."
-msgstr ""
+msgstr "õÓÔÁÎÁ×ÌÉ×ÁÅÔ ÌÏËÁÌØ ÄÌÑ ÆÏÒÍÁÔÉÒÏ×ÁÎÉÑ ÚÎÁÞÅÎÉÊ ÄÁÔ É ×ÒÅÍÅÎÉ."
 
 #: utils/misc/guc.c:1446
 msgid "Lists shared libraries to preload into server."
@@ -9027,7 +9034,7 @@ msgstr ""
 
 #: utils/misc/guc.c:1476
 msgid "Sets the server (database) character set encoding."
-msgstr ""
+msgstr "õÓÔÁÎÁ×ÌÉ×ÁÅÔ ËÏÄÉÒÏ×ËÕ ÓÉÍ×ÏÌÏ× ÓÅÒ×ÅÒÁ (ÂÁÚÙ ÄÁÎÎÙÈ)."
 
 #: utils/misc/guc.c:1487
 msgid "Shows the server version."
@@ -9035,7 +9042,7 @@ msgstr "
 
 #: utils/misc/guc.c:1498
 msgid "Shows the session user name."
-msgstr ""
+msgstr "ðÏËÁÚÙ×ÁÅÔ ÉÍÑ ÐÏÌØÚÏ×ÁÔÅÌÑ ÓÅÓÓÉÉ."
 
 #: utils/misc/guc.c:1509
 msgid "Sets the syslog \"facility\" to be used when syslog enabled."
@@ -9047,7 +9054,7 @@ msgstr "
 
 #: utils/misc/guc.c:1518
 msgid "Sets the program name used to identify PostgreSQL messages in syslog."
-msgstr ""
+msgstr "õÓÔÁÎÁ×ÌÉ×ÁÅÔ ÉÍÑ ÐÒÏÇÒÁÍÍÙ ÄÌÑ ÉÄÅÎÔÉÆÉËÁÃÉÉ ÓÏÏÂÝÅÎÉÊ PostgreSQL × syslog."
 
 #: utils/misc/guc.c:1529
 msgid "Sets the time zone for displaying and interpreting time stamps."
@@ -9055,7 +9062,7 @@ msgstr ""
 
 #: utils/misc/guc.c:1538
 msgid "Shows the current transaction's isolation level."
-msgstr ""
+msgstr "ðÏËÁÚÙ×ÁÅÔ ÔÅËÕÝÉÊ ÕÒÏ×ÅÎØ ÉÚÏÌÑÃÉÉ ÔÒÁÎÚÁËÃÉÊ."
 
 #: utils/misc/guc.c:1548
 msgid "Sets the owning group of the Unix-domain socket."
@@ -9067,7 +9074,7 @@ msgstr ""
 
 #: utils/misc/guc.c:1558
 msgid "Sets the directory where the Unix-domain socket will be created."
-msgstr ""
+msgstr "õÓÔÁÎÁ×ÌÉ×ÁÅÔ ÄÉÒÅËÔÏÒÉÀ ÄÌÑ ÓÏÚÄÁÎÉÑ Unix-domain ÓÏËÅÔÏ×."
 
 #: utils/misc/guc.c:1567
 msgid "Sets the host name or IP address to listen to."
@@ -9138,7 +9145,7 @@ msgstr "
 #: utils/misc/guc.c:2644
 #, c-format
 msgid "%d is outside the valid range for parameter \"%s\" (%d .. %d)"
-msgstr ""
+msgstr "%d ×ÎÅ ÄÉÁÐÁÚÏÎÁ ÄÌÑ ÐÁÒÁÍÅÔÒÁ \"%s\" (%d .. %d)"
 
 #: utils/misc/guc.c:2659
 msgid "Must be superuser to increase this value or set it to zero."
@@ -9152,7 +9159,7 @@ msgstr "
 #: utils/misc/guc.c:2741
 #, c-format
 msgid "%g is outside the valid range for parameter \"%s\" (%g .. %g)"
-msgstr ""
+msgstr "%g ×ÎÅ ÄÉÁÐÁÚÏÎÁ ÄÌÑ ÐÁÒÁÍÅÔÒÁ \"%s\" (%g .. %g)"
 
 #: utils/misc/guc.c:2755
 #: utils/misc/guc.c:2854
@@ -9195,14 +9202,14 @@ msgstr "
 #: utils/mmgr/aset.c:336
 #, c-format
 msgid "Failed while creating memory context \"%s\"."
-msgstr ""
+msgstr "ïÛÉÂËÁ ÐÒÉ ÓÏÚÄÁÎÉÉ ËÏÎÔÅËÓÔÁ ÐÁÍÑÔÉ \"%s\"."
 
 #: utils/mmgr/aset.c:502
 #: utils/mmgr/aset.c:699
 #: utils/mmgr/aset.c:892
 #, c-format
 msgid "Failed on request of size %lu."
-msgstr ""
+msgstr "ïÛÉÂËÁ ÐÒÉ ÚÁÐÒÏÓÅ ÒÁÚÍÅÒÁ %lu."
 
 #: utils/mmgr/portalmem.c:170
 #, c-format
index 44c89e6..289030b 100644 (file)
 # simplified Chinese translation file for PostgreSQL server
 # Weiping He <laser@zhengmai.com.cn>, 2001.
 #
-# $PostgreSQL: pgsql/src/backend/po/zh_CN.po,v 1.7 2003/11/29 19:51:54 pgsql Exp $
+# $PostgreSQL: pgsql/src/backend/po/zh_CN.po,v 1.8 2004/09/13 20:53:10 petere Exp $
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: PostgreSQL 7.4\n"
-"POT-Creation-Date: 2003-03-19 09:25+0800\n"
+"Project-Id-Version: PostgreSQL 7.5\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2004-09-13 11:21+0000\n"
 "PO-Revision-Date: 2003-09-15 13:49:24+0800\n"
-"Last-Translator: Bao Wei <bao_paul@yahoo.com.cn>\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"
 
-#: access/common/heaptuple.c:179
-msgid "heap_attisnull: zero attnum disallowed"
-msgstr "heap_attisnull: ²»ÔÊÐíÊôÐÔºÅΪÁã"
-
-#: access/common/heaptuple.c:182
-msgid "heap_attisnull: undefined negative attnum"
-msgstr "heap_attisnull: ²»Ã÷È·µÄ¸ºÊýÊôÐÔºÅ"
-
-#: access/common/heaptuple.c:460
-#, c-format
-msgid "heap_getsysattr: invalid attnum %d"
-msgstr "heap_getsysattr: ÎÞЧµÄÊôÐԺŠ%d"
+#: 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/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
+msgid "out of memory"
+msgstr "ÄÚ´æÓþ¡"
 
-#: access/common/heaptuple.c:584
+#: main/main.c:94
 #, c-format
-msgid "heap_formtuple: numberOfAttributes %d exceeds limit %d"
-msgstr "heap_formtuple: ÊôÐԺŠ%d ³¬¹ýÏÞÖÆ %d"
+msgid "%s: setsysinfo failed: %s\n"
+msgstr "%s: setsysinfo Ê§°Ü: %s\n"
 
-#: access/common/heaptuple.c:687
+#: main/main.c:112
 #, c-format
-msgid "heap_modifytuple: repl is \\%3d"
-msgstr "heap_modifytuple: repl ÊÇ \\%3d"
+msgid "%s: WSAStartup failed: %d\n"
+msgstr "%s: WSAStartup Ê§°Ü: %d\n"
 
-#: access/common/indextuple.c:55
-#, c-format
-msgid "index_formtuple: numberOfAttributes %d > %d"
-msgstr "index_formtuple: ÊôÐԺŠ%d > %d"
+#: main/main.c:215
+msgid ""
+"\"root\" execution of the PostgreSQL server is not permitted.\n"
+"The server must be started under an unprivileged user ID to prevent\n"
+"possible system security compromise.  See the documentation for\n"
+"more information on how to properly start the server.\n"
+msgstr ""
+"²»ÔÊÐí \"root\" Ö´ÐРPostgreSQL ·þÎñÆ÷.\n"
+"·þÎñÆ÷±ØÐëÒÔÒ»¸ö·ÇÌØȨµÄÓû§Éí·ÝÆô¶¯ÒÔ±ÜÃâ\n"
+"¿ÉÄܵÄϵͳ°²È«ÐÔÎÊÌâ. ²ÎÔÄÎĵµ»ñÈ¡¸ü¶à\n"
+"ÓйØÈçºÎÕýÈ·Æô¶¯·þÎñÆ÷µÄÐÅÏ¢.\n"
 
-#: access/common/indextuple.c:161
+#: main/main.c:234
 #, c-format
-msgid "index_formtuple: data takes %lu bytes, max is %d"
-msgstr "index_formtuple: Êý¾ÝΪ %lu ×Ö½Ú, ×î´óֵΪ %d"
+msgid "%s: real and effective user IDs must match\n"
+msgstr "%s: ÕæʵºÍÓÐЧÓû§±êʶ±ØÐëÏ໥ƥÅä\n"
 
-#: access/common/tupdesc.c:420
-#, c-format
-msgid "Unable to look up type id %u"
-msgstr "ÎÞ·¨ÕÒµ½ type id Îª %u"
+#: main/main.c:241
+msgid ""
+"execution of PostgreSQL by a user with administrative permissions is not "
+"permitted.\n"
+"The server must be started under an unprivileged user ID to prevent\n"
+"possible system security compromise.  See the documentation for\n"
+"more information on how to properly start the server.\n"
+msgstr ""
 
-#: access/common/tupdesc.c:646 executor/nodeFunctionscan.c:204
-#: parser/parse_relation.c:931 parser/parse_relation.c:1286
-#: parser/parse_relation.c:1596
+#: main/main.c:301
 #, c-format
-msgid "Invalid typrelid for complex type %u"
-msgstr "¶ÔÓÚ¸´ºÏÀàÐÍ %u typrelid ÊÇÎÞЧµÄ"
-
-#: access/common/tupdesc.c:660 access/common/tupdesc.c:683
-msgid "TypeGetTupleDesc: number of aliases does not match number of attributes"
-msgstr "TypeGetTupleDesc: ±ðÃû¸öÊýÓëÊôÐÔ¸öÊý²»Æ¥Åä"
-
-#: access/common/tupdesc.c:679
-msgid "TypeGetTupleDesc: no column alias was provided"
-msgstr "TypeGetTupleDesc: Ã»ÓÐÁбðÃû±»Ìṩ"
-
-#: access/common/tupdesc.c:698
-msgid "Unable to determine tuple description for function returning \"record\""
-msgstr "ÎÞ·¨È·¶¨º¯Êý·µ»Ø \"record\" µÄÔª×éÃèÊö"
+msgid "%s: invalid effective UID: %d\n"
+msgstr "%s: ÎÞЧ UID: %d\n"
 
-#: access/common/tupdesc.c:700 catalog/pg_proc.c:463
-#: executor/nodeFunctionscan.c:234 parser/parse_relation.c:1383
-#: parser/parse_relation.c:1637
-msgid "Unknown kind of return type specified for function"
-msgstr "δ֪µÄº¯Êý·µ»ØÖµÀàÐÍ"
-
-#: access/gist/gist.c:171 access/hash/hash.c:72 access/nbtree/nbtree.c:111
-#: access/rtree/rtree.c:128
+#: main/main.c:314
 #, c-format
-msgid "%s already contains data"
-msgstr "%s ÒѾ­°üº¬Êý¾Ý"
+msgid "%s: could not determine user name (GetUserName failed)\n"
+msgstr "%s: ÎÞ·¨È·¶¨Óû§Ãû³Æ (GetUserName Ê§°Ü)\n"
 
-#: access/gist/gist.c:399 access/gist/gist.c:606
+#: port/pg_shmem.c:94 port/sysv_shmem.c:94
 #, c-format
-msgid "gist: failed to add index item to %s"
-msgstr "gist: Ôö¼ÓË÷ÒýÏîÄ¿µ½ %s Ê§°Ü"
+msgid "could not create shared memory segment: %m"
+msgstr "ÎÞ·¨´´½¨¹²ÏíÄÚ´æ¶Î: %m"
 
-#: access/gist/gist.c:1666
+#: port/pg_shmem.c:95 port/sysv_shmem.c:95
 #, c-format
-msgid "initGISTstate: numberOfAttributes %d > %d"
-msgstr "initGISTstate: ÊôÐԺŠ%d > %d"
+msgid "Failed system call was shmget(key=%lu, size=%u, 0%o)."
+msgstr "shmget(key=%lu, size=%u, 0%o) ÏµÍ³µ÷ÓÃʧ°Ü."
 
-#: access/gist/gist.c:1928
+#: port/pg_shmem.c:99 port/sysv_shmem.c:99
 #, c-format
-msgid "%sPage: %d %s blk: %d maxoff: %d free: %d"
+msgid ""
+"This error usually means that PostgreSQL's request for a shared memory "
+"segment exceeded your kernel's SHMMAX parameter.  You can either reduce the "
+"request size or reconfigure the kernel with larger SHMMAX.  To reduce the "
+"request size (currently %u bytes), reduce PostgreSQL's shared_buffers "
+"parameter (currently %d) and/or its max_connections parameter (currently %"
+"d).\n"
+"If the request size is already small, it's possible that it is less than "
+"your kernel's SHMMIN parameter, in which case raising the request size or "
+"reconfiguring SHMMIN is called for.\n"
+"The PostgreSQL documentation contains more information about shared memory "
+"configuration."
 msgstr ""
 
-#: access/gist/gist.c:1938
+#: port/pg_shmem.c:112 port/sysv_shmem.c:112
 #, c-format
-msgid "%s  Tuple. blk: %d size: %d"
+msgid ""
+"This error usually means that PostgreSQL's request for a shared memory "
+"segment exceeded available memory or swap space. To reduce the request size "
+"(currently %u bytes), reduce PostgreSQL's shared_buffers parameter "
+"(currently %d) and/or its max_connections parameter (currently %d).\n"
+"The PostgreSQL documentation contains more information about shared memory "
+"configuration."
 msgstr ""
 
-#: access/gist/gist.c:1953
-msgid "gist_redo: unimplemented"
-msgstr "gist_redo: Î´ÊµÏÖ"
-
-#: access/gist/gist.c:1959
-msgid "gist_undo: unimplemented"
-msgstr "gist_undo: Î´ÊµÏÖ"
-
-#: access/gist/gistscan.c:254
+#: port/pg_shmem.c:121 port/sysv_shmem.c:121
 #, c-format
-msgid "GiST scan list corrupted -- cannot find 0x%p"
-msgstr "GiST É¨ÃèÁÐ±í±»»Ù»µ -- ÎÞ·¨ÕÒµ½ 0x%p"
+msgid ""
+"This error does *not* mean that you have run out of disk space. It occurs "
+"either if all available shared memory IDs have been taken, in which case you "
+"need to raise the SHMMNI parameter in your kernel, or because the system's "
+"overall limit for shared memory has been reached.  If you cannot increase "
+"the shared memory limit, reduce PostgreSQL's shared memory request "
+"(currently %u bytes), by reducing its shared_buffers parameter (currently %"
+"d) and/or its max_connections parameter (currently %d).\n"
+"The PostgreSQL documentation contains more information about shared memory "
+"configuration."
+msgstr ""
 
-#: access/gist/gistscan.c:390
+#: port/win32/signal.c:227
 #, c-format
-msgid "Bad operation in GiST scan adjust: %d"
-msgstr "ÔÚ GiST É¨Ãèµ÷ÕûµÄ´íÎó²Ù×÷: %d"
-
-#: access/hash/hash.c:504
-msgid "hash_redo: unimplemented"
-msgstr "hash_redo: Î´ÊµÏÖ"
-
-#: access/hash/hash.c:510
-msgid "hash_undo: unimplemented"
-msgstr "hash_undo: Î´ÊµÏÖ"
-
-#: access/hash/hashinsert.c:51
-msgid "Hash indices valid for only one index key."
+msgid "failed to create signal listener pipe: %d. Retrying.\n"
 msgstr ""
 
-#: access/hash/hashinsert.c:166
-msgid "hash item too large"
-msgstr "hash ÏîÄ¿Ì«´ó"
-
-#: access/hash/hashinsert.c:231
+#: port/win32/signal.c:239
 #, c-format
-msgid "_hash_pgaddtup: failed to add index item to %s"
-msgstr "_hash_pgaddtup: Ôö¼ÓË÷ÒýÏîÄ¿µ½ %s Ê§°Ü"
+msgid "failed to create signal dispatch thread: %d\n"
+msgstr "´´½¨É±ËÀÏ̵߳ÄÐźÅʧ°Ü: %d\n"
 
-#: access/hash/hashovfl.c:61
-msgid "_hash_addovflpage: problem with _hash_getovfladdr."
-msgstr "_hash_addovflpage: _hash_getovfladdr µÄÎÊÌâ."
+#: port/win32/security.c:39
+#, c-format
+msgid "failed to open process token: %d\n"
+msgstr "´ò¿ª½ø³ÌÁîÅÆ (token) Ê§°Ü: %d\n"
 
-#: access/hash/hashovfl.c:196
-msgid "overflow_page: problem with _hash_initbitmap."
-msgstr "overflow_page: _hash_initbitmap µÄÎÊÌâ."
+#: port/win32/security.c:46
+msgid "failed to get token information - got zero size!\n"
+msgstr "»ñÈ¡ÁîÅÆ (token) ÐÅϢʧ°Ü - »ñµÃµÄ´óСΪÁã!\n"
 
-#: access/hash/hashovfl.c:568
+#: port/win32/security.c:52 port/win32/security.c:69
 #, c-format
-msgid "_hash_squeezebucket: failed to add index item to %s"
-msgstr "_hash_squeezebucket: Ôö¼ÓË÷ÒýÏîÄ¿µ½ %s Ê§°Ü"
+msgid "failed to get token information: %d\n"
+msgstr "»ñÈ¡ÁîÅÆ (token) ÐÅϢʧ°Ü: %d\n"
 
-#: access/hash/hashpage.c:93
+#: port/win32/security.c:60
 #, c-format
-msgid "Cannot initialize non-empty hash table %s"
-msgstr "ÎÞ·¨³õʼ»¯·Ç¿ÕµÄ hash ±í %s"
+msgid "failed to allocate %i bytes for token information!\n"
+msgstr "ΪÁîÅÆ (token) ÐÅÏ¢·ÖÅä %i ×Ö½Úʧ°Ü!\n"
 
-#: access/hash/hashpage.c:151
-msgid "Problem with _hash_initbitmap."
-msgstr "_hash_initbitmap µÄÎÊÌâ."
-
-#: access/hash/hashpage.c:196
-msgid "_hash_getbuf: internal error: hash AM does not use P_NEW"
-msgstr "_hash_getbuf: ÄÚ²¿´íÎó: hash AM Î´Ê¹ÓàP_NEW"
-
-#: access/hash/hashpage.c:204
+#: port/win32/security.c:80
 #, c-format
-msgid "_hash_getbuf: invalid access (%d) on new blk: %s"
-msgstr ""
+msgid "failed to get SID for Administrators group: %d\n"
+msgstr "»ñÈ¡¹ÜÀíÔ±×éµÄ SID Ê§°Ü: %d\n"
 
-#: access/hash/hashpage.c:231
+#: port/win32/security.c:89
 #, c-format
-msgid "_hash_relbuf: invalid access (%d) on blk %x: %s"
-msgstr ""
+msgid "failed to get SID for PowerUsers group: %d\n"
+msgstr "»ñÈ¡³¬¼¶Óû§×éµÄ SID Ê§°Ü: %d\n"
 
-#: access/hash/hashpage.c:290
+#: port/sysv_sema.c:117 port/pg_sema.c:117
 #, c-format
-msgid "_hash_chgbufaccess: invalid access (%d) on blk %x: %s"
-msgstr ""
+msgid "could not create semaphores: %m"
+msgstr "ÎÞ·¨´´½¨ÐźÅÁ¿: %m"
 
-#: access/hash/hashpage.c:325
+#: port/sysv_sema.c:118 port/pg_sema.c:118
 #, c-format
-msgid "_hash_setpagelock: invalid access (%d) on blk %x: %s"
-msgstr ""
+msgid "Failed system call was semget(%lu, %d, 0%o)."
+msgstr "semget(%lu, %d, 0%o) ÏµÍ³µ÷ÓÃʧ°Ü."
 
-#: access/hash/hashpage.c:349
+#: port/sysv_sema.c:122 port/pg_sema.c:122
 #, c-format
-msgid "_hash_unsetpagelock: invalid access (%d) on blk %x: %s"
+msgid ""
+"This error does *not* mean that you have run out of disk space.\n"
+"It occurs when either the system limit for the maximum number of semaphore "
+"sets (SEMMNI), or the system wide maximum number of semaphores (SEMMNS), "
+"would be exceeded.  You need to raise the respective kernel parameter.  "
+"Alternatively, reduce PostgreSQL's consumption of semaphores by reducing its "
+"max_connections parameter (currently %d).\n"
+"The PostgreSQL documentation contains more information about configuring "
+"your system for PostgreSQL."
 msgstr ""
 
-#: access/hash/hashpage.c:537 access/hash/hashpage.c:674
+#: port/sysv_sema.c:151 port/pg_sema.c:151
 #, c-format
-msgid "_hash_splitpage: empty overflow page %d"
+msgid ""
+"You possibly need to raise your kernel's SEMVMX value to be at least %d.  "
+"Look into the PostgreSQL documentation for details."
 msgstr ""
+"Äã¿ÉÄÜÐèÒªÔö¼ÓÄں˵ĠSEMVMX ÖµÖÁÉÙΪ %d. ÏêϸÐÅÏ¢Çë²éÕÒ PostgreSQL Îĵµ."
 
-#: access/hash/hashpage.c:576
+#: tcop/fastpath.c:106 tcop/fastpath.c:449 tcop/fastpath.c:572
 #, c-format
-msgid "_hash_splitpage: empty ovfl page %d!"
+msgid "invalid argument size %d in function call message"
 msgstr ""
 
-#: access/hash/hashpage.c:629
+#: tcop/fastpath.c:186 tcop/fastpath.c:516 tcop/postgres.c:1480
+#: access/common/printtup.c:296
 #, c-format
-msgid "_hash_splitpage: failed to add index item to %s"
-msgstr "_hash_splitpage: Ôö¼ÓË÷ÒýÏîÄ¿µ½ %s Ê§°Ü"
+msgid "unsupported format code: %d"
+msgstr "²»Ö§³ÖµÄ¸ñʽ´úÂë: %d"
 
-#: access/hash/hashscan.c:105
+#: tcop/fastpath.c:230 catalog/aclchk.c:1548 catalog/aclchk.c:1973
 #, c-format
-msgid "hash scan list trashed; can't find 0x%p"
-msgstr ""
+msgid "function with OID %u does not exist"
+msgstr "OID Îª %u µÄº¯Êý²»´æÔÚ"
 
-#: access/hash/hashutil.c:81
-msgid "hash indices cannot include null keys"
-msgstr ""
+#: tcop/fastpath.c:291 tcop/postgres.c:284 tcop/postgres.c:307
+#: 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
+msgid ""
+"current transaction is aborted, commands ignored until end of transaction "
+"block"
+msgstr "µ±Ç°ÊÂÎñ±»ÖÕÖ¹, ÊÂÎñ¿é½áÊø֮ǰµÄ²éѯ±»ºöÂÔ"
 
-#: access/heap/heapam.c:138
+#: tcop/fastpath.c:419 tcop/fastpath.c:542
 #, c-format
-msgid "heapgettup(%s, tid=0x%x[%d,%d], dir=%d, ...)"
-msgstr ""
+msgid "function call message contains %d arguments but function requires %d"
+msgstr "º¯Êýµ÷ÓÃÐÅÏ¢°üº¬ %d ¸ö²ÎÊý, µ«º¯ÊýÐèÒª %d ¸ö"
 
-#: access/heap/heapam.c:144
+#: tcop/fastpath.c:427
 #, c-format
-msgid "heapgettup(%s, tid=0x%x, dir=%d, ...)"
-msgstr ""
+msgid "function call message contains %d argument formats but %d arguments"
+msgstr "º¯Êýµ÷ÓÃÐÅϢΪ°üº¬ %d ¸ö²ÎÊýµÄ¸ñʽ, µ«¸ø¶¨ÁË %d ¸ö²ÎÊý"
+
+#: tcop/fastpath.c:510 tcop/fastpath.c:595
+#, c-format
+msgid "incorrect binary data format in function argument %d"
+msgstr "º¯Êý²ÎÊý %d Îª²»ÕýÈ·µÄ¶þ½øÖÆÊý¾Ý¸ñʽ"
 
-#: access/heap/heapam.c:147
+#: tcop/pquery.c:409
 #, c-format
-msgid "heapgettup(..., b=0x%x, nkeys=%d, key=0x%x"
+msgid "bind message has %d result formats but query has %d columns"
 msgstr ""
 
-#: access/heap/heapam.c:149
+#: tcop/pquery.c:481 tcop/pquery.c:1021 commands/portalcmds.c:337
 #, c-format
-msgid "heapgettup: relation(%c)=`%s', %p"
-msgstr "heapgettup: ¹Øϵ(%c)=`%s', %p"
+msgid "portal \"%s\" cannot be run"
+msgstr "Èë¿Ú \"%s\" ²»¿ÉÒÔÔËÐÐ"
 
-#: access/heap/heapam.c:197 access/heap/heapam.c:232 access/heap/heapam.c:272
-#: access/heap/heapam.c:366
-msgid "heapgettup: failed ReadBuffer"
-msgstr "heapgettup: ReadBuffer Ê§°Ü"
+#: tcop/pquery.c:698
+msgid "cursor can only scan forward"
+msgstr "ÓαêÄܹ»Ö»ÏòǰɨÃè"
 
-#: access/heap/heapam.c:462
-#, c-format
-msgid "Relation %u does not exist"
-msgstr "¹Øϵ %u ²»´æÔÚ"
+#: tcop/pquery.c:699
+msgid "Declare it with SCROLL option to enable backward scan."
+msgstr "´ø SCROLL Ñ¡ÏîÉùÃ÷ÔÊÐíÏòºóɨÃè"
 
-#: access/heap/heapam.c:535 catalog/namespace.c:185 tcop/utility.c:153
+#: tcop/postgres.c:334 tcop/postgres.c:346 tcop/postgres.c:357
+#: tcop/postgres.c:369 tcop/postgres.c:3175
 #, c-format
-msgid "Relation \"%s\" does not exist"
-msgstr "¹Øϵ \"%s\" ²»´æÔÚ"
+msgid "invalid frontend message type %d"
+msgstr "ÎÞЧǰ¶ËÐÅÏ¢ÀàÐÍ %d"
 
-#: access/heap/heapam.c:581 access/heap/heapam.c:610 access/heap/heapam.c:639
+#: tcop/postgres.c:468 tcop/postgres.c:503 tcop/postgres.c:514
 #, c-format
-msgid "%s is an index relation"
-msgstr "%s ÎªË÷Òý¹Øϵ"
+msgid "statement: %s"
+msgstr "Óï¾ä: %s"
 
-#: access/heap/heapam.c:584 access/heap/heapam.c:613 access/heap/heapam.c:642
+#: tcop/postgres.c:1008
 #, c-format
-msgid "%s is a special relation"
-msgstr "%s ÎªÌرð¹Øϵ"
+msgid "duration: %ld.%03ld ms"
+msgstr "Ö´ÐÐʱ¼ä: %ld.%03ld ms"
 
-#: access/heap/heapam.c:587 access/heap/heapam.c:616 access/heap/heapam.c:645
+#: tcop/postgres.c:1021
 #, c-format
-msgid "%s is a composite type"
-msgstr "%s Îª»ìºÍÀàÐÍ"
+msgid "duration: %ld.%03ld ms  statement: %s"
+msgstr "Ö´ÐÐʱ¼ä: %ld.%03ld ms  Óï¾ä: %s"
 
-#: access/heap/heapam.c:668
-msgid "heap_beginscan: !RelationIsValid(relation)"
-msgstr ""
+#: tcop/postgres.c:1129
+msgid "cannot insert multiple commands into a prepared statement"
+msgstr "ÎÞ·¨²åÈë¶àÌõÃüÁîµ½Ò»¸ö×¼±¸ºÃµÄÓï¾äÖÐ"
 
-#: access/heap/heapam.c:770
+#: tcop/postgres.c:1194 parser/analyze.c:3141
 #, c-format
-msgid "heap_getnext([%s,nkeys=%d],dir=%d) called"
-msgstr ""
+msgid "could not determine data type of parameter $%d"
+msgstr "ÎÞ·¨È·¶¨²ÎÊý $%d µÄÊý¾ÝÀàÐÍ"
 
-#: access/heap/heapam.c:774
-msgid "heap_getnext returning EOS"
+#: tcop/postgres.c:1332
+#, c-format
+msgid "bind message has %d parameter formats but %d parameters"
 msgstr ""
 
-#: access/heap/heapam.c:777
-msgid "heap_getnext returning tuple"
-msgstr ""
+#: tcop/postgres.c:1345 tcop/postgres.c:1727
+msgid "unnamed prepared statement does not exist"
+msgstr "δÃüÃûµÄ×¼±¸Óï¾ä²»´æÔÚ"
 
-#: access/heap/heapam.c:794
-msgid "heap_getnext: NULL relscan"
+#: tcop/postgres.c:1351
+#, c-format
+msgid ""
+"bind message supplies %d parameters, but prepared statement \"%s\" requires %"
+"d"
 msgstr ""
 
-#: access/heap/heapam.c:878
+#: tcop/postgres.c:1473
 #, c-format
-msgid "heap_fetch: ReadBuffer(%s, %lu) failed"
-msgstr "heap_fetch: ReadBuffer(%s, %lu) Ê§°Ü"
+msgid "incorrect binary data format in bind parameter %d"
+msgstr ""
 
-#: access/heap/heapam.c:988
+#: tcop/postgres.c:1581 tcop/postgres.c:1780
 #, c-format
-msgid "heap_get_latest_tid: %s relation: ReadBuffer(%lx) failed"
-msgstr "heap_get_latest_tid: ¹Øϵ %s: ReadBuffer(%lx) Ê§°Ü"
+msgid "portal \"%s\" does not exist"
+msgstr "Èë¿Ú \"%s\" ²»´æÔÚ"
 
-#: access/heap/heapam.c:1222
-msgid "heap_delete: failed ReadBuffer"
-msgstr "heap_delete: ReadBuffer Ê§°Ü"
+#: tcop/postgres.c:1874
+msgid "terminating connection because of crash of another server process"
+msgstr "ÖжÏÁª½Ó, ÒòΪÆäËü·þÎñÆ÷½ø³Ì±ÀÀ£"
 
-#: access/heap/heapam.c:1241
-msgid "heap_delete: (am)invalid tid"
-msgstr "heap_delete: (am)ÎÞЧµÄ tid"
+#: tcop/postgres.c:1875
+msgid ""
+"The postmaster has commanded this server process to roll back the current "
+"transaction and exit, because another server process exited abnormally and "
+"possibly corrupted shared memory."
+msgstr ""
+"Postmaster ÃüÁî´Ë·þÎñÆ÷½ø³Ì»Ø¹öµ±Ç°ÊÂÎï²¢Í˳ö, ÒòΪÆäËü·þÎñÆ÷½ø³Ì²»Õý³£µÄÍ˳ö"
+"¿ÉÄܻٻµÁ˹²ÏíÄÚ´æ."
 
-#: access/heap/heapam.c:1374
-msgid "simple_heap_delete: tuple already updated by self"
-msgstr "simple_heap_delete: Ôª×éÒѾ­×Ô¼º¸üÐÂÁË"
+#: tcop/postgres.c:1879
+msgid ""
+"In a moment you should be able to reconnect to the database and repeat your "
+"command."
+msgstr "Ò»»á¶ùÄ㽫¿ÉÒÔÖØÁª½ÓÊý¾Ý¿â²¢ÇÒÖظ´ÄãµÄÃüÁî."
 
-#: access/heap/heapam.c:1382
-msgid "simple_heap_delete: tuple concurrently updated"
-msgstr "simple_heap_delete: Ôª×鱻ͬʱ¸üÐÂÁË"
+#: tcop/postgres.c:1995
+msgid "floating-point exception"
+msgstr "¸¡µãÒì³£"
 
-#: access/heap/heapam.c:1386 executor/execMain.c:1428
-#, c-format
-msgid "Unknown status %u from heap_delete"
-msgstr "À´×Ô heap_delete µÄδ֪״̬ %u"
+#: tcop/postgres.c:1996
+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 ""
 
-#: access/heap/heapam.c:1416
-msgid "heap_update: failed ReadBuffer"
-msgstr "heap_update: ReadBuffer Ê§°Ü"
+#: tcop/postgres.c:2032
+msgid "terminating connection due to administrator command"
+msgstr "ÓÉÓÚ¹ÜÀíÔ±ÃüÁîÖжÏÁª½Ó"
 
-#: access/heap/heapam.c:1441
-msgid "heap_update: (am)invalid tid"
-msgstr "heap_update: (am)ÎÞЧµÄ tid"
+#: tcop/postgres.c:2042
+msgid "canceling query due to user request"
+msgstr "ÓÉÓÚÓû§ÇëÇóÈ¡Ïû²éѯ"
 
-#: access/heap/heapam.c:1704
-msgid "simple_heap_update: tuple already updated by self"
-msgstr "simple_heap_update: Ôª×éÒѾ­×Ô¼º¸üÐÂÁË"
+#: tcop/postgres.c:2093
+msgid "stack depth limit exceeded"
+msgstr ""
 
-#: access/heap/heapam.c:1712
-msgid "simple_heap_update: tuple concurrently updated"
-msgstr "simple_heap_update: Ôª×鱻ͬʱ¸üÐÂÁË"
+#: tcop/postgres.c:2094
+msgid "Increase the configuration parameter \"max_stack_depth\"."
+msgstr "Ôö¼ÓÅäÖòÎÊý \"max_stack_depth\"."
 
-#: access/heap/heapam.c:1716 executor/execMain.c:1566
+#: tcop/postgres.c:2112
 #, c-format
-msgid "Unknown status %u from heap_update"
-msgstr "À´×Ô heap_update µÄÎÞЧ״̬ %u"
-
-#: access/heap/heapam.c:1736
-msgid "heap_mark4update: failed ReadBuffer"
-msgstr "heap_mark4update: ReadBuffer Ê§°Ü"
-
-#: access/heap/heapam.c:1753
-msgid "heap_mark4update: (am)invalid tid"
-msgstr "heap_mark4update: (am)ÎÞЧµÄ tid"
+msgid ""
+"%s is the PostgreSQL stand-alone backend.  It is not\n"
+"intended to be used by normal users.\n"
+"\n"
+msgstr ""
+"%s ÊÇ PostgreSQL ¶ÀÁ¢ÔËÐкó¶Ë.\n"
+" ²»ÊÇÆÕͨÓû§ÓÐÒâʹÓõÄ.\n"
+"\n"
 
-#: access/heap/heapam.c:2044
-msgid "heap_clean_redo: no block"
+#: tcop/postgres.c:2114
+#, c-format
+msgid ""
+"Usage:\n"
+"  %s [OPTION]... [DBNAME]\n"
+"\n"
 msgstr ""
+"Ó÷¨:\n"
+"  %s [Ñ¡Ïî]... [Êý¾Ý¿âÃû]\n"
+"\n"
 
-#: access/heap/heapam.c:2048
-msgid "heap_clean_redo: uninitialized page"
-msgstr "heap_clean_redo: Î´³õʼ»¯µÄÒ³"
+#: tcop/postgres.c:2115 postmaster/postmaster.c:1088
+#, c-format
+msgid "Options:\n"
+msgstr "Ñ¡Ïî:\n"
 
-#: access/heap/heapam.c:2102
+#: tcop/postgres.c:2117 postmaster/postmaster.c:1090
 #, c-format
-msgid "heap_delete_%sdo: no block"
-msgstr ""
+msgid "  -A 1|0          enable/disable run-time assert checking\n"
+msgstr "  -A 1|0          ´ò¿ª/¹Ø±ÕÔËÐÐʱ¶ÏÑÔ¼ì²é\n"
 
-#: access/heap/heapam.c:2106
+#: tcop/postgres.c:2119 postmaster/postmaster.c:1092
 #, c-format
-msgid "heap_delete_%sdo: uninitialized page"
-msgstr "heap_delete_%sdo: Î´³õʼ»¯µÄÒ³"
+msgid "  -B NBUFFERS     number of shared buffers\n"
+msgstr "  -B NBUFFERS     ¹²Ïí»º³åÇøµÄÊýÁ¿\n"
 
-#: access/heap/heapam.c:2118
-msgid "heap_delete_undo: bad page LSN"
-msgstr ""
+#: tcop/postgres.c:2120 postmaster/postmaster.c:1093
+#, c-format
+msgid "  -c NAME=VALUE   set run-time parameter\n"
+msgstr "  -c Ãû×Ö=ÊýÖµ    ÉèÖÃÔËÐÐʱ²ÎÊý\n"
 
-#: access/heap/heapam.c:2125
+#: tcop/postgres.c:2121
 #, c-format
-msgid "heap_delete_%sdo: invalid lp"
-msgstr ""
+msgid "  -d 0-5          debugging level (0 is off)\n"
+msgstr "  -d 0-5          µ÷ÊÔ¼¶±ð (0 ¹Ø±Õ)\n"
 
-#: access/heap/heapam.c:2145
-msgid "heap_delete_undo: unimplemented"
-msgstr "heap_delete_undo: Î´ÊµÏÖ"
+#: tcop/postgres.c:2122 postmaster/postmaster.c:1095
+#, c-format
+msgid "  -D DATADIR      database directory\n"
+msgstr "  -D Êý¾ÝĿ¼     Êý¾Ý¿âĿ¼\n"
 
-#: access/heap/heapam.c:2173
+#: tcop/postgres.c:2123
 #, c-format
-msgid "heap_insert_%sdo: uninitialized page"
-msgstr "heap_insert_%sdo: Î´³õʼ»¯µÄÒ³"
+msgid "  -e              use European date input format (DMY)\n"
+msgstr "  -e              Ê¹ÓÃÅ·ÖÞÈÕÆÚÊäÈë¸ñʽ (DMY)\n"
 
-#: access/heap/heapam.c:2197
-msgid "heap_insert_redo: invalid max offset number"
-msgstr ""
+#: tcop/postgres.c:2124
+#, c-format
+msgid "  -E              echo query before execution\n"
+msgstr "  -E              Ö´ÐÐÇ°ÏÔʾ²éѯ\n"
 
-#: access/heap/heapam.c:2221
-msgid "heap_insert_redo: failed to add tuple"
-msgstr "heap_insert_redo: Ôö¼ÓÔª×éʧ°Ü"
+#: tcop/postgres.c:2125 postmaster/postmaster.c:1096
+#, c-format
+msgid "  -F              turn fsync off\n"
+msgstr "  -F              ¹Ø±Õ fsync\n"
 
-#: access/heap/heapam.c:2231
-msgid "heap_insert_undo: bad page LSN"
-msgstr ""
+#: tcop/postgres.c:2126
+#, c-format
+msgid "  -N              do not use newline as interactive query delimiter\n"
+msgstr "  -N              ²»Ê¹ÓÃÐÂÐÐ×÷Ϊ½»»¥²éѯµÄ·Ö¸ô·û\n"
 
-#: access/heap/heapam.c:2233
-msgid "heap_insert_undo: unimplemented"
-msgstr "heap_insert_undo: Î´ÊµÏÖ"
+#: tcop/postgres.c:2127
+#, c-format
+msgid "  -o FILENAME     send stdout and stderr to given file\n"
+msgstr "  -o FILENAME     °Ñ±ê×¼Êä³öºÍ±ê×¼´íÎó·¢Ë͵½Ö¸¶¨µÄÎļþÖÐ\n"
 
-#: access/heap/heapam.c:2264
+#: tcop/postgres.c:2128
 #, c-format
-msgid "heap_update_%sdo: no block"
-msgstr ""
+msgid "  -P              disable system indexes\n"
+msgstr "  -P              ¹Ø±ÕϵͳË÷Òý\n"
 
-#: access/heap/heapam.c:2268
+#: tcop/postgres.c:2129
 #, c-format
-msgid "heap_update_%sdo: uninitialized old page"
-msgstr "heap_update_%sdo: Î´³õʼ»¯ÀϵÄÒ³"
+msgid "  -s              show statistics after each query\n"
+msgstr "  -s              Ã¿¸ö²éѯºóÏÔʾͳ¼ÆÐÅÏ¢\n"
 
-#: access/heap/heapam.c:2282
-msgid "heap_update_undo: bad old tuple page LSN"
-msgstr ""
+#: tcop/postgres.c:2130
+#, c-format
+msgid "  -S WORK-MEM     set amount of memory for sorts (in kbytes)\n"
+msgstr "  -S WORK-MEM     ÉèÖÃÅÅÐòÄÚ´æÊýÁ¿ (µ¥Î»Îª kbytes)\n"
 
-#: access/heap/heapam.c:2289
+#: tcop/postgres.c:2131
 #, c-format
-msgid "heap_update_%sdo: invalid lp"
-msgstr "heap_update_%sdo: ÎÞЧµÄ lp"
+msgid "  --describe-config  describe configuration parameters, then exit\n"
+msgstr "  --describe-config  ÃèÊöÅäÖòÎÊý, È»ºóÍ˳ö\n"
 
-#: access/heap/heapam.c:2324 access/heap/heapam.c:2424
-msgid "heap_update_undo: unimplemented"
-msgstr "heap_update_undo: Î´ÊµÏÖ"
+#: tcop/postgres.c:2132 postmaster/postmaster.c:1107
+#, c-format
+msgid "  --help          show this help, then exit\n"
+msgstr "  --help          ÏÔʾ´Ë°ïÖúÐÅÏ¢, È»ºóÍ˳ö\n"
 
-#: access/heap/heapam.c:2345
+#: tcop/postgres.c:2133 postmaster/postmaster.c:1108
 #, c-format
-msgid "heap_update_%sdo: uninitialized page"
-msgstr "heap_update_%sdo: Î´³õʼ»¯Ò³"
+msgid "  --version       output version information, then exit\n"
+msgstr "  --version       Êä³ö°æ±¾ÐÅÏ¢, È»ºóÍ˳ö\n"
 
-#: access/heap/heapam.c:2369
-msgid "heap_update_redo: invalid max offset number"
+#: tcop/postgres.c:2134 postmaster/postmaster.c:1110
+#, c-format
+msgid ""
+"\n"
+"Developer options:\n"
 msgstr ""
+"\n"
+"¿ª·¢ÈËԱѡÏî:\n"
 
-#: access/heap/heapam.c:2413
-msgid "heap_update_redo: failed to add tuple"
-msgstr "heap_update_redo: Ôö¼ÓÔª×éʧ°Ü"
-
-#: access/heap/heapam.c:2422
-msgid "heap_update_undo: bad new tuple page LSN"
-msgstr "heap_update_undo: »µµÄÐÂÔª×éÒ³ LSN"
+#: tcop/postgres.c:2135
+#, c-format
+msgid "  -f s|i|n|m|h    forbid use of some plan types\n"
+msgstr "  -f s|i|n|m|h    ½ûֹһЩ¹æ»®ÀàÐ͵ÄʹÓÃ\n"
 
-#: access/heap/heapam.c:2440
-msgid "_heap_unlock_tuple: can't open relation"
-msgstr "_heap_unlock_tuple: ÎÞ·¨´ò¿ª¹Øϵ"
+#: tcop/postgres.c:2136
+#, c-format
+msgid "  -i              do not execute queries\n"
+msgstr "  -i              ²»Ö´Ðвéѯ\n"
 
-#: access/heap/heapam.c:2445
-msgid "_heap_unlock_tuple: can't read buffer"
-msgstr "_heap_unlock_tuple: ÎÞ·¨¶ÁÈ¡»º³åÇø"
+#: tcop/postgres.c:2137
+#, c-format
+msgid "  -O              allow system table structure changes\n"
+msgstr "  -O              ÔÊÐí¸Ä±äϵͳ±í½á¹¹\n"
 
-#: access/heap/heapam.c:2449
-msgid "_heap_unlock_tuple: uninitialized page"
-msgstr "_heap_unlock_tuple: Î´³õʼ»¯Ò³"
+#: tcop/postgres.c:2138
+#, c-format
+msgid "  -t pa|pl|ex     show timings after each query\n"
+msgstr "  -t pa|pl|ex     Ã¿¸ö²éѯºóÏÔʾ¼Æʱ\n"
 
-#: access/heap/heapam.c:2453
-msgid "_heap_unlock_tuple: invalid itemid"
-msgstr "_heap_unlock_tuple: ÎÞЧµÄ itemid"
+#: tcop/postgres.c:2139
+#, c-format
+msgid "  -W NUM          wait NUM seconds to allow attach from a debugger\n"
+msgstr "  -W NUM          µÈ´ý NUM Ãë, ÒÔ±ãÔÊÐíµ÷ÊÔÆ÷¼ÓÈëµ÷ÊÔ\n"
 
-#: access/heap/heapam.c:2457
-msgid "_heap_unlock_tuple: unused/deleted tuple in rollback"
+#: tcop/postgres.c:2140
+#, c-format
+msgid ""
+"\n"
+"Report bugs to <pgsql-bugs@postgresql.org>.\n"
 msgstr ""
+"\n"
+"´íÎ󱨸æÖÁ <pgsql-bugs@postgresql.org>.\n"
 
-#: access/heap/heapam.c:2462
-msgid "_heap_unlock_tuple: invalid xmax in rollback"
-msgstr ""
+#: tcop/postgres.c:2265
+msgid "assert checking is not compiled in"
+msgstr "ûÓаѶÏÑÔ (assert) ¼ì²é±àÒë½øÀ´"
+
+#: tcop/postgres.c:2505 postmaster/postmaster.c:498 bootstrap/bootstrap.c:302
+#, c-format
+msgid "--%s requires a value"
+msgstr "--%s ÐèÒªÒ»¸öÖµ"
 
-#: access/heap/heapam.c:2486
+#: tcop/postgres.c:2510 postmaster/postmaster.c:503 bootstrap/bootstrap.c:307
 #, c-format
-msgid "heap_redo: unknown op code %u"
-msgstr "heap_redo: Î´ÖªµÄ op ´úÂë %u"
+msgid "-c %s requires a value"
+msgstr "-c %s ÐèÒªÒ»¸öÖµ"
 
-#: access/heap/heapam.c:2506
+#: tcop/postgres.c:2578 postmaster/postmaster.c:950 bootstrap/bootstrap.c:335
 #, c-format
-msgid "heap_undo: unknown op code %u"
-msgstr "heap_undo: Î´ÖªµÄ op ´úÂë %u"
+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"
 
-#: access/heap/hio.c:47
-msgid "RelationPutHeapTuple: failed to add tuple"
-msgstr "RelatioinPutHeapTuple: Ôö¼ÓÔª×éʧ°Ü"
+#: tcop/postgres.c:2655
+msgid "invalid command-line arguments for server process"
+msgstr "·þÎñÆ÷½ø³ÌµÄÎÞЧÃüÁîÐвÎÊý"
 
-#: access/heap/hio.c:107
+#: tcop/postgres.c:2656 tcop/postgres.c:2672
 #, c-format
-msgid "Tuple is too big: size %lu, max size %ld"
-msgstr "Ôª×éÌ«´ó: ´óС %lu, ×î´ó´óС %ld"
+msgid "Try \"%s --help\" for more information."
+msgstr "ÇëÓà\"%s --help\" »ñÈ¡¸ü¶àµÄÐÅÏ¢."
 
-#: access/heap/hio.c:271
+#: tcop/postgres.c:2670
 #, c-format
-msgid "Tuple is too big: size %lu"
-msgstr "Ôª×éÌ«´ó: ´óС %lu"
+msgid "%s: invalid command-line arguments"
+msgstr "%s: ÎÞЧµÄÃüÁîÐвÎÊý"
 
-#: access/heap/tuptoaster.c:899
-msgid "Failed to build TOAST tuple"
-msgstr "½¨Á¢ TOAST Ôª×éʧ°Ü"
+#: tcop/postgres.c:2680
+#, c-format
+msgid "%s: no database nor user name specified"
+msgstr "%s: Ã»ÓÐÖ¸¶¨Êý¾Ý¿â, Ò²Ã»ÓÐÖ¸¶¨Óû§Ãû"
 
-#: access/heap/tuptoaster.c:915
-msgid "Failed to insert index entry for TOAST tuple"
-msgstr "Ϊ TOAST Ôª×é²åÈëË÷Òý¼Ç¼ʧ°Ü"
+#: tcop/postgres.c:3088
+#, c-format
+msgid "invalid CLOSE message subtype %d"
+msgstr "ÎÞЧµÄ CLOSE ÐÅÏ¢×ÓÀàÐÍ %d"
 
-#: access/heap/tuptoaster.c:1074 access/heap/tuptoaster.c:1254
+#: tcop/postgres.c:3118
 #, c-format
-msgid "unexpected chunk number %d (expected %d) for toast value %u"
-msgstr ""
+msgid "invalid DESCRIBE message subtype %d"
+msgstr "ÎÞЧµÄ DESCRIBE ÐÅÏ¢×ÓÀàÐÍ %d"
 
-#: access/heap/tuptoaster.c:1080 access/heap/tuptoaster.c:1087
-#: access/heap/tuptoaster.c:1260 access/heap/tuptoaster.c:1267
+#: 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
 #, c-format
-msgid "unexpected chunk size %d in chunk %d for toast value %u"
+msgid "%s"
 msgstr ""
 
-#: access/heap/tuptoaster.c:1092
+#: tcop/postgres.c:3359
 #, c-format
-msgid "unexpected chunk number %d for toast value %u"
+msgid "disconnection: session time: %s%s%s%s%s"
 msgstr ""
 
-#: access/heap/tuptoaster.c:1110 access/heap/tuptoaster.c:1294
+#: tcop/utility.c:77
 #, c-format
-msgid "missing chunk number %d for toast value %u"
-msgstr ""
+msgid "table \"%s\" does not exist"
+msgstr "±í \"%s\" ²»´æÔÚ"
 
-#: access/index/genam.c:74
-msgid "RelationGetIndexScan: relation invalid"
-msgstr "RelationGetIndexScan: ¹ØϵÎÞЧ"
+#: 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
+#, c-format
+msgid "\"%s\" is not a table"
+msgstr "\"%s\" ²»ÊÇÒ»¸ö±í"
 
-#: access/index/genam.c:139
-msgid "IndexScanEnd: invalid scan"
-msgstr "IndexScanEnd: ÎÞЧµÄɨÃè"
+#: tcop/utility.c:79
+msgid "Use DROP TABLE to remove a table."
+msgstr "ÇëʹÓàDROP TABLE É¾³ýÒ»¸ö±í."
 
-#: access/index/indexam.c:92 access/index/indexam.c:101
+#: tcop/utility.c:82
 #, c-format
-msgid "index_%s: invalid %s regproc"
-msgstr ""
+msgid "sequence \"%s\" does not exist"
+msgstr "ÐòÁР\"%s\" ²»´æÔÚ"
 
-#: access/index/indexam.c:132 access/index/indexam.c:155
-#: access/index/indexam.c:178
+#: tcop/utility.c:83 commands/comment.c:334 commands/sequence.c:780
 #, c-format
-msgid "%s is not an index relation"
-msgstr "%s ²»ÊÇË÷Òý¹Øϵ"
+msgid "\"%s\" is not a sequence"
+msgstr "\"%s\" ²»ÊÇÒ»¸öÐòÁÐ"
 
-#: access/index/indexam.c:719
-#, c-format
-msgid "Missing support function %d for attribute %d of index %s"
-msgstr ""
+#: tcop/utility.c:84
+msgid "Use DROP SEQUENCE to remove a sequence."
+msgstr "ÇëʹÓàDROP SEQUENCE É¾³ýÒ»¸öÐòÁÐ."
 
-#: access/index/istrat.c:238
+#: tcop/utility.c:87
 #, c-format
-msgid "StrategyTermEvaluate: impossible case %d"
-msgstr ""
+msgid "view \"%s\" does not exist"
+msgstr "ÊÓͼ \"%s\" ²»´æÔÚ"
 
-#: access/index/istrat.c:313
+#: tcop/utility.c:88 commands/comment.c:348 commands/view.c:113
 #, c-format
-msgid "RelationGetStrategy: impossible case %d"
-msgstr ""
+msgid "\"%s\" is not a view"
+msgstr "\"%s\" ²»ÊÇÒ»¸öÊÓͼ"
 
-#: access/index/istrat.c:319
-msgid "RelationGetStrategy: corrupted evaluation"
-msgstr ""
+#: tcop/utility.c:89
+msgid "Use DROP VIEW to remove a view."
+msgstr "ÇëʹÓàDROP VIEW É¾³ýÒ»¸öÊÓͼ."
 
-#: access/index/istrat.c:438
+#: tcop/utility.c:92
 #, c-format
-msgid "RelationInvokeStrategy: cannot evaluate strategy %d"
-msgstr ""
+msgid "index \"%s\" does not exist"
+msgstr "Ë÷Òý \"%s\" ²»´æÔÚ"
 
-#: access/nbtree/nbtinsert.c:240
+#: 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
 #, c-format
-msgid "Cannot insert a duplicate key into unique index %s"
-msgstr ""
+msgid "\"%s\" is not an index"
+msgstr "\"%s\" ²»ÊÇÒ»¸öË÷Òý"
 
-#: access/nbtree/nbtinsert.c:294
+#: tcop/utility.c:94
+msgid "Use DROP INDEX to remove an index."
+msgstr "ÇëʹÓàDROP INDEX É¾³ýÒ»¸öË÷Òý."
+
+#: 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
+#: parser/parse_type.c:201 parser/parse_type.c:227 catalog/pg_type.c:517
 #, c-format
-msgid "_bt_check_unique: fell off the end of %s"
-msgstr ""
+msgid "type \"%s\" does not exist"
+msgstr "ÀàÐÍ \"%s\" ²»´æÔÚ"
 
-#: access/nbtree/nbtinsert.c:390
+#: tcop/utility.c:98
 #, c-format
-msgid "btree: index item size %lu exceeds maximum %lu"
-msgstr ""
+msgid "\"%s\" is not a type"
+msgstr "\"%s\" ²»ÊÇÒ»¸öÀàÐÍ"
 
-#: access/nbtree/nbtinsert.c:448
+#: tcop/utility.c:99
+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
 #, c-format
-msgid "_bt_insertonpg: fell off the end of %s"
-msgstr ""
+msgid "permission denied: \"%s\" is a system catalog"
+msgstr "ȨÏÞ²»¹»: \"%s\" ÊÇÒ»¸öϵͳ±í"
 
-#: access/nbtree/nbtinsert.c:708
-msgid "btree: failed to add hikey to the right sibling"
-msgstr ""
+#: tcop/utility.c:283 commands/copy.c:905 executor/execMain.c:468
+msgid "transaction is read-only"
+msgstr "ÊÂÎñÊÇÖ»¶Á"
 
-#: access/nbtree/nbtinsert.c:733
-msgid "btree: failed to add hikey to the left sibling"
-msgstr ""
+#: tcop/utility.c:934
+msgid "must be superuser to do CHECKPOINT"
+msgstr "Ö»Óг¬¼¶Óû§¿ÉÒÔ×ö CHECKPOINT"
 
-#: access/nbtree/nbtinsert.c:818
-msgid "btree: right sibling's left-link doesn't match"
-msgstr ""
+#: rewrite/rewriteManip.c:737 rewrite/rewriteManip.c:793
+msgid "conditional utility statements are not implemented"
+msgstr "Ìõ¼þ¹¤¾ßÓï¾äûÓÐʵÏÖ"
 
-#: access/nbtree/nbtinsert.c:1062
+#: rewrite/rewriteManip.c:749 rewrite/rewriteManip.c:805
+#: rewrite/rewriteHandler.c:177 parser/analyze.c:1687 parser/analyze.c:1759
+msgid "conditional UNION/INTERSECT/EXCEPT statements are not implemented"
+msgstr "Ìõ¼þ¹¤¾ßÓï¾ä UNION/INTERSECT/EXCEPT Ã»ÓÐʵÏÖ"
+
+#: rewrite/rewriteDefine.c:104 rewrite/rewriteDefine.c:589
 #, c-format
-msgid "_bt_findsplitloc: can't find a feasible split point for %s"
-msgstr ""
+msgid "rule \"%s\" for relation \"%s\" already exists"
+msgstr "¹Øϵ \"%2$s\" µÄ¹æÔò \"%1$s\" ÒѾ­´æÔÚ"
 
-#: access/nbtree/nbtinsert.c:1196
-msgid "_bt_insert_parent: concurrent ROOT page split"
-msgstr ""
+#: rewrite/rewriteDefine.c:234
+msgid "rule actions on OLD are not implemented"
+msgstr "ÔÚ OLD ÉϵĹæÔò¶¯×÷ûÓÐʵÏÖ"
 
-#: access/nbtree/nbtinsert.c:1235 access/nbtree/nbtpage.c:854
-#, c-format
-msgid ""
-"_bt_getstackbuf: my bits moved right off the end of the world!\n"
-"\tRecreate index %s."
-msgstr ""
+#: rewrite/rewriteDefine.c:235
+msgid "Use views or triggers instead."
+msgstr "ÇëʹÓÃÊÓͼ»ò´¥·¢Æ÷´úÌæ."
 
-#: access/nbtree/nbtinsert.c:1434
-msgid "btree: failed to add leftkey to new root page"
-msgstr ""
+#: rewrite/rewriteDefine.c:239
+msgid "rule actions on NEW are not implemented"
+msgstr "ÔÚ NEW ÉϵĹæÔò¶¯×÷ûÓÐʵÏÖ"
 
-#: access/nbtree/nbtinsert.c:1451
-msgid "btree: failed to add rightkey to new root page"
-msgstr ""
+#: rewrite/rewriteDefine.c:240
+msgid "Use triggers instead."
+msgstr "ÇëʹÓô¥·¢Æ÷´úÌæ."
 
-#: access/nbtree/nbtinsert.c:1536
+#: rewrite/rewriteDefine.c:257
+msgid "INSTEAD NOTHING rules on SELECT are not implemented"
+msgstr "ÔÚ SELECT ÉϵĠINSTEAD NOTHING ¹æÔòûÓÐʵÏÖ"
+
+#: rewrite/rewriteDefine.c:258
+msgid "Use views instead."
+msgstr "ÇëʹÓÃÊÓͼ´úÌæ."
+
+#: rewrite/rewriteDefine.c:266
+msgid "multiple actions for rules on SELECT are not implemented"
+msgstr "ÔÚ SELECT ÉϵĶද×÷¹æÔòûÓÐʵÏÖ"
+
+#: rewrite/rewriteDefine.c:275
+msgid "rules on SELECT must have action INSTEAD SELECT"
+msgstr "ÔÚ SELECT ÉϵĹæÔò±ØÐëÓРINSTEAD SELECT ¶¯×÷"
+
+#: rewrite/rewriteDefine.c:283
+msgid "event qualifications are not implemented for rules on SELECT"
+msgstr "ÔÚ SELECT ÉϹæÔòµÄʼþÌõ¼þûÓÐʵÏÖ"
+
+#: rewrite/rewriteDefine.c:303
+msgid "SELECT rule's target list has too many entries"
+msgstr "SELECT ¹æÔòµÄÄ¿±êÁбíµÄ¼Ç¼̫¶à"
+
+#: rewrite/rewriteDefine.c:319
+msgid "cannot convert relation containing dropped columns to view"
+msgstr "ÎÞ·¨×ª»»°üº¬ÒÑɾ³ý×ֶεĹØϵΪÊÓͼ"
+
+#: rewrite/rewriteDefine.c:324
 #, c-format
-msgid "btree: failed to add item to the %s for %s"
-msgstr "btree: Îª %2$s Ïò %1$s Ôö¼ÓÏîʧ°Ü"
+msgid "SELECT rule's target entry %d has different column name from \"%s\""
+msgstr "SELECT ¹æÔòµÄÄ¿±ê¼Ç¼ %d µÄ×Ö¶ÎÃûºÍ \"%s\" ²»Í¬"
 
-#: access/nbtree/nbtpage.c:47
+#: rewrite/rewriteDefine.c:329
 #, c-format
-msgid "Cannot initialize non-empty btree %s"
-msgstr "ÎÞ·¨³õʼ»¯·Ç¿ÕµÄ btree %s"
+msgid "SELECT rule's target entry %d has different type from column \"%s\""
+msgstr "SELECT ¹æÔòµÄÄ¿±ê¼Ç¼ %d ºÍ×ֶΠ\"%s\" µÄÀàÐͲ»Í¬"
 
-#: access/nbtree/nbtpage.c:148 access/nbtree/nbtpage.c:323
+#: rewrite/rewriteDefine.c:342
 #, c-format
-msgid "Index %s is not a btree"
-msgstr "Ë÷Òý %s ²»ÊÇÒ»¸ö btree"
+msgid "SELECT rule's target entry %d has different size from column \"%s\""
+msgstr "SELECT ¹æÔòµÄÄ¿±ê¼Ç¼ %d Óë×ֶΠ\"%s\" µÄ´óС²»Í¬"
 
-#: access/nbtree/nbtpage.c:152 access/nbtree/nbtpage.c:327
+#: rewrite/rewriteDefine.c:348
+msgid "SELECT rule's target list has too few entries"
+msgstr "SELECT ¹æÔòµÄÄ¿±êÁбí¼Ç¼ÊýÌ«ÉÙ"
+
+#: rewrite/rewriteDefine.c:363
 #, c-format
-msgid "Version mismatch on %s: version %d file, version %d code"
-msgstr ""
+msgid "\"%s\" is already a view"
+msgstr "\"%s\" ÒѾ­ÊÇÒ»¸öÊÓͼÁË"
 
-#: access/nbtree/nbtpage.c:268 access/nbtree/nbtpage.c:354
+#: rewrite/rewriteDefine.c:387
 #, c-format
-msgid "No live root page found in %s"
-msgstr ""
+msgid "view rule for \"%s\" must be named \"%s\""
+msgstr "ÓÃÓÚ \"%s\" µÄÊÓͼ¹æÔò±ØÐëÃüÃûΪ \"%s\""
 
-#: access/nbtree/nbtpage.c:277 access/nbtree/nbtpage.c:363
+#: rewrite/rewriteDefine.c:407
 #, c-format
-msgid "Root page %u of %s has level %u, expected %u"
-msgstr ""
+msgid "could not convert table \"%s\" to a view because it is not empty"
+msgstr "ÎÞ·¨°Ñ±í \"%s\" ×ª»¯ÎªÊÓͼ, ÒòΪËü²»ÊÇ¿ÕµÄ"
 
-#: access/nbtree/nbtpage.c:419
-msgid "_bt_getbuf: FSM returned nonrecyclable page"
-msgstr ""
+#: rewrite/rewriteDefine.c:414
+#, c-format
+msgid "could not convert table \"%s\" to a view because it has triggers"
+msgstr "ÎÞ·¨°Ñ±í \"%s\" ×ª»»ÎªÊÓͼ, ÒòΪËüÓд¥·¢Æ÷"
 
-#: access/nbtree/nbtpage.c:778
-msgid "_bt_pagedel: not enough stack items"
+#: rewrite/rewriteDefine.c:416
+msgid ""
+"In particular, the table may not be involved in any foreign key "
+"relationships."
 msgstr ""
 
-#: access/nbtree/nbtpage.c:808
-msgid "_bt_pagedel: no left sibling (concurrent deletion?)"
-msgstr ""
+#: rewrite/rewriteDefine.c:421
+#, c-format
+msgid "could not convert table \"%s\" to a view because it has indexes"
+msgstr "ÎÞ·¨°Ñ±í \"%s\" ×ª»»ÎªÊÓͼ, ÒòΪËüÓÐË÷Òý"
 
-#: access/nbtree/nbtpage.c:840
-msgid "_bt_pagedel: left link changed unexpectedly"
-msgstr ""
+#: rewrite/rewriteDefine.c:427
+#, c-format
+msgid "could not convert table \"%s\" to a view because it has child tables"
+msgstr "ÎÞ·¨°Ñ±í \"%s\" ×ª»»ÎªÊÓͼ, ÒòΪËüÓÐ×Ó±í"
 
-#: access/nbtree/nbtpage.c:957
-msgid "_bt_pagedel: right sibling is not next child"
-msgstr ""
+#: rewrite/rewriteDefine.c:582 rewrite/rewriteRemove.c:59
+#: commands/comment.c:619
+#, c-format
+msgid "rule \"%s\" for relation \"%s\" does not exist"
+msgstr "¹Øϵ \"%2$s\" µÄ \"%1$s\" ¹æÔò²»´æÔÚ"
 
-#: access/nbtree/nbtree.c:818
+#: rewrite/rewriteHandler.c:491 rewrite/rewriteHandler.c:510
 #, c-format
-msgid "btvacuumcleanup: FlushRelationBuffers returned %d"
+msgid "multiple assignments to same column \"%s\""
 msgstr ""
 
-#: access/nbtree/nbtree.c:931
+#: rewrite/rewriteHandler.c:646 catalog/heap.c:1827
+#, 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
+msgid "You will need to rewrite or cast the expression."
+msgstr "ÄãÐèÒªÖØд»òת»»±í´ïʽ"
+
+#: rewrite/rewriteHandler.c:967 rewrite/rewriteHandler.c:1252
 #, c-format
+msgid "infinite recursion detected in rules for relation \"%s\""
+msgstr "ÔÚ¹Øϵ \"%s\" µÄ¹æÔòÖз¢ÏÖÎÞÏÞÑ­»·"
+
+#: rewrite/rewriteHandler.c:1362
+msgid "cannot insert into a view"
+msgstr "ÎÞ·¨²åÈëµ½Ò»¸öÊÓͼ"
+
+#: rewrite/rewriteHandler.c:1363
+msgid "You need an unconditional ON INSERT DO INSTEAD rule."
+msgstr "ÄãÐèÒªÒ»¸öÎÞÌõ¼þµÄ ON INSERT DO INSTEAD ¹æÔò."
+
+#: rewrite/rewriteHandler.c:1368
+msgid "cannot update a view"
+msgstr "ÎÞ·¨¸üÐÂÒ»¸öÊÓͼ"
+
+#: rewrite/rewriteHandler.c:1369
+msgid "You need an unconditional ON UPDATE DO INSTEAD rule."
+msgstr "ÄãÐèÒªÒ»¸öÎÞÌõ¼þµÄ ON UPDATE DO INSTEAD ¹æÔò."
+
+#: rewrite/rewriteHandler.c:1374
+msgid "cannot delete from a view"
+msgstr "ÎÞ·¨´ÓÒ»¸öÊÓͼÖÐɾ³ý"
+
+#: rewrite/rewriteHandler.c:1375
+msgid "You need an unconditional ON DELETE DO INSTEAD rule."
+msgstr "ÄãÐèÒªÒ»¸öÎÞÌõ¼þµÄ ON DELETE DO INSTEAD ¹æÔò."
+
+#: libpq/crypt.c:62
 msgid ""
-"_bt_restscan: my bits moved right off the end of the world!\n"
-"\tRecreate index %s."
-msgstr ""
+"cannot use authentication method \"crypt\" because password is MD5-encrypted"
+msgstr "ÎÞ·¨Ê¹Óà\"crypt\" ÈÏÖ¤·½Ê½, ÒòΪ¿ÚÁîÊÇÓàMD5 ¼ÓÃܵÄ"
 
-#: access/nbtree/nbtree.c:946
+#: libpq/hba.c:162
 #, c-format
-msgid "_bt_restscan: fell off the end of %s"
-msgstr ""
+msgid "authentication file token too long, skipping: \"%s\""
+msgstr "ÈÏÖ¤Îļþ±ê¼Ç (token) Ì«³¤, ºöÂÔ: \"%s\""
 
-#: access/nbtree/nbtsearch.c:171
+#: libpq/hba.c:328
 #, c-format
-msgid "_bt_moveright: fell off the end of %s"
-msgstr ""
+msgid "could not open secondary authentication file \"@%s\" as \"%s\": %m"
+msgstr "ÎÞ·¨´ò¿ª´ÎÈÏÖ¤Îļþ \"@%s\" Îª \"%s\": %m"
 
-#: access/nbtree/nbtsearch.c:555
-msgid "_bt_first: btree doesn't support is(not)null, yet"
-msgstr ""
+#: 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"
 
-#: access/nbtree/nbtsearch.c:703
-msgid "_bt_first: equal items disappeared?"
-msgstr ""
+#: libpq/hba.c:775
+#, 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"
 
-#: access/nbtree/nbtsearch.c:994
+#: libpq/hba.c:789
 #, c-format
-msgid "_bt_walk_left: fell off the end of %s"
-msgstr ""
+msgid "IP address and mask do not match in pg_hba.conf file line %d"
+msgstr "ÔÚ pg_hba.conf ÎļþµÄµÚ %d ÐРIP µØÖ·ÓëÑÚÂëÎÞ·¨Æ¥Åä"
 
-#: access/nbtree/nbtsearch.c:1018
+#: libpq/hba.c:847
 #, c-format
-msgid "_bt_walk_left: can't find left sibling in %s"
-msgstr ""
+msgid "invalid entry in pg_hba.conf file at line %d, token \"%s\""
+msgstr "ÔÚ pg_hba.conf ÎļþµÄµÚ %d ÐÐΪÎÞЧ¼Ç¼, ±ê¼Ç \"%s\""
 
-#: access/nbtree/nbtsearch.c:1078
+#: libpq/hba.c:852
 #, c-format
-msgid "_bt_get_endpoint: fell off the end of %s"
-msgstr ""
+msgid "missing field in pg_hba.conf file at end of line %d"
+msgstr "ÔÚ pg_hba.conf ÎļþµÄµÚ %d ÐÐĩβȱÉÙ×Ö¶Î"
 
-#: access/nbtree/nbtsearch.c:1090
+#: 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
+#: access/transam/slru.c:638 access/transam/xlog.c:1632
 #, c-format
-msgid "_bt_get_endpoint: btree level %u not found"
-msgstr ""
+msgid "could not open file \"%s\": %m"
+msgstr "ÎÞ·¨´ò¿ªÎļþ \"%s\": %m"
 
-#: access/nbtree/nbtsearch.c:1179
+#: libpq/hba.c:1058 guc-file.l:188
 #, c-format
-msgid "Illegal scan direction %d"
-msgstr ""
+msgid "could not open configuration file \"%s\": %m"
+msgstr "ÎÞ·¨´ò¿ªÅäÖÃÎļþ \"%s\": %m"
 
-#: access/nbtree/nbtsort.c:335
-msgid "btree: failed to add item to the page in _bt_sort"
-msgstr ""
+#: libpq/hba.c:1119
+#, c-format
+msgid "invalid entry in pg_ident.conf file at line %d, token \"%s\""
+msgstr "ÔÚ pg_ident.conf ÎļþµÄµÚ %d ÐÐΪÎÞЧ¼Ç¼, ±ê¼Ç \"%s\""
 
-#: access/nbtree/nbtsort.c:400
+#: libpq/hba.c:1124
 #, c-format
-msgid "btree: index item size %lu exceeds maximum %ld"
-msgstr ""
+msgid "missing entry in pg_ident.conf file at end of line %d"
+msgstr "ÔÚ pg_ident.conf ÎļþµÄµÚ %d ÐÐĩβȱÉټǼ"
 
-#: access/nbtree/nbtutils.c:230
-msgid "_bt_orderkeys: key(s) for attribute 1 missed"
-msgstr ""
+#: libpq/hba.c:1155
+msgid "cannot use Ident authentication without usermap field"
+msgstr "ûÓÐÓû§Ó³Éä, ÎÞ·¨Ê¹ÓàIdent ÈÏÖ¤"
 
-#: access/nbtree/nbtutils.c:308
+#: libpq/hba.c:1213
 #, c-format
-msgid "_bt_orderkeys: key(s) for attribute %d missed"
-msgstr ""
+msgid "could not open Ident usermap file \"%s\": %m"
+msgstr "ÎÞ·¨´ò¿ª Ident Óû§Ó³ÉäÎļþ \"%s\": %m"
 
-#: access/nbtree/nbtutils.c:465
+#: libpq/hba.c:1392
 #, c-format
-msgid "_bt_getstrategynumber: unable to identify operator %u"
-msgstr ""
+msgid "could not create socket for Ident connection: %m"
+msgstr "ÎÞ·¨Îª Ident Áª½Ó´´½¨Ì×½Ó×Ö: %m"
 
-#: access/nbtree/nbtxlog.c:67
-msgid "forget_matching_split: block unfound"
-msgstr ""
+#: libpq/hba.c:1408
+#, c-format
+msgid "could not bind to local address \"%s\": %m"
+msgstr "ÎÞ·¨°ó¶¨µ½±¾µØµØÖ· \"%s\": %m"
 
-#: access/nbtree/nbtxlog.c:82
-msgid "forget_matching_split: fishy is_root data"
-msgstr ""
+#: libpq/hba.c:1420
+#, c-format
+msgid "could not connect to Ident server at address \"%s\", port %s: %m"
+msgstr "ÎÞ·¨Áª½Óµ½µØַΪ \"%s\", ¶Ë¿ÚΪ %s µÄ Ident ·þÎñÆ÷: %m"
 
-#: access/nbtree/nbtxlog.c:104
-msgid "_bt_restore_page: can't add item to page"
-msgstr ""
+#: libpq/hba.c:1440
+#, c-format
+msgid "could not send query to Ident server at address \"%s\", port %s: %m"
+msgstr "ÎÞ·¨·¢ËͲéѯµ½µØַΪ \"%s\", ¶Ë¿ÚΪ %s µÄ Ident ·þÎñÆ÷: %m"
 
-#: access/nbtree/nbtxlog.c:121
-msgid "_bt_restore_meta: no metapage"
-msgstr ""
+#: libpq/hba.c:1455
+#, c-format
+msgid ""
+"could not receive response from Ident server at address \"%s\", port %s: %m"
+msgstr "ÎÞ·¨´ÓµØַΪ \"%s\", ¶Ë¿ÚΪ %s µÄ Ident ·þÎñÆ÷½ÓÊÕÓ¦´ð: %m"
 
-#: access/nbtree/nbtxlog.c:177
+#: libpq/hba.c:1465
 #, c-format
-msgid "btree_insert_%sdo: block unfound"
-msgstr ""
+msgid "invalidly formatted response from Ident server: \"%s\""
+msgstr "´Ó Ident ·þÎñÆ÷½ÓÊÕµÄÎÞЧ¸ñʽӦ´ð: \"%s\""
 
-#: access/nbtree/nbtxlog.c:180
+#: libpq/hba.c:1500 libpq/hba.c:1531 libpq/hba.c:1599
 #, c-format
-msgid "btree_insert_%sdo: uninitialized page"
-msgstr ""
+msgid "could not get peer credentials: %m"
+msgstr "ÎÞ·¨»ñµÃͬµÈ (peer) Ö¤Êé: %m"
 
-#: access/nbtree/nbtxlog.c:194
-msgid "btree_insert_redo: failed to add item"
-msgstr ""
+#: libpq/hba.c:1509 libpq/hba.c:1540 libpq/hba.c:1610
+#, c-format
+msgid "local user with ID %d does not exist"
+msgstr "ID Îª %d µÄ±¾µØÓû§²»´æÔÚ"
 
-#: access/nbtree/nbtxlog.c:204
-msgid "btree_insert_undo: bad page LSN"
-msgstr ""
+#: libpq/hba.c:1622
+msgid ""
+"Ident authentication is not supported on local connections on this platform"
+msgstr "ÔÚ´Ëƽ̨Éϲ»Ö§³Ö±¾µØÁª½ÓµÄ Ident ÈÏÖ¤"
 
-#: access/nbtree/nbtxlog.c:212
-msgid "btree_insert_undo: unimplemented"
+#: libpq/hba.c:1665
+#, c-format
+msgid "IDENT code identifies remote user as \"%s\""
 msgstr ""
 
-#: access/nbtree/nbtxlog.c:260
+#: libpq/be-fsstubs.c:132 libpq/be-fsstubs.c:170 libpq/be-fsstubs.c:194
+#: libpq/be-fsstubs.c:222 libpq/be-fsstubs.c:274
 #, c-format
-msgid "btree_split_%s: lost left sibling"
-msgstr ""
+msgid "invalid large-object descriptor: %d"
+msgstr "ÎÞЧµÄ´ó¶ÔÏóÃèÊö·û: %d"
 
-#: access/nbtree/nbtxlog.c:266
-msgid "btree_split_undo: uninitialized left sibling"
-msgstr ""
+#: libpq/be-fsstubs.c:378
+msgid "must be superuser to use server-side lo_import()"
+msgstr "±ØÐëÊdz¬¼¶Óû§²Å¿ÉÒÔʹÓ÷þÎñÆ÷¶ËµÄ lo_import()"
 
-#: access/nbtree/nbtxlog.c:288
-msgid "btree_split_undo: bad left sibling LSN"
-msgstr ""
+#: libpq/be-fsstubs.c:379
+msgid "Anyone can use the client-side lo_import() provided by libpq."
+msgstr "ÈκÎÈ˶¼¿ÉÒÔʹÓàlibpq ÌṩµÄ¿Í»§¶Ë lo_import()."
 
-#: access/nbtree/nbtxlog.c:289 access/nbtree/nbtxlog.c:324
-msgid "btree_split_undo: unimplemented"
-msgstr ""
+#: libpq/be-fsstubs.c:400
+#, c-format
+msgid "could not open server file \"%s\": %m"
+msgstr "ÎÞ·¨´ò¿ª·þÎñÆ÷Îļþ \"%s\": %m"
 
-#: access/nbtree/nbtxlog.c:295
+#: libpq/be-fsstubs.c:421
 #, c-format
-msgid "btree_split_%s: lost right sibling"
-msgstr ""
+msgid "could not read server file \"%s\": %m"
+msgstr "ÎÞ·¨¶ÁÈ¡·þÎñÆ÷Îļþ \"%s\": %m"
 
-#: access/nbtree/nbtxlog.c:301
-msgid "btree_split_undo: uninitialized right sibling"
-msgstr ""
+#: libpq/be-fsstubs.c:451
+msgid "must be superuser to use server-side lo_export()"
+msgstr "±ØÐëÊdz¬¼¶Óû§²Å¿ÉÒÔʹÓ÷þÎñÆ÷¶ËµÄ lo_export()"
 
-#: access/nbtree/nbtxlog.c:323
-msgid "btree_split_undo: bad right sibling LSN"
-msgstr ""
+#: libpq/be-fsstubs.c:452
+msgid "Anyone can use the client-side lo_export() provided by libpq."
+msgstr "ÈκÎÈ˶¼¿ÉÒÔʹÓàlibpq ÌṩµÄ¿Í»§¶Ë lo_export()."
 
-#: access/nbtree/nbtxlog.c:334
-msgid "btree_split_redo: lost next right page"
-msgstr ""
-
-#: access/nbtree/nbtxlog.c:338
-msgid "btree_split_redo: uninitialized next right page"
-msgstr ""
-
-#: access/nbtree/nbtxlog.c:387
-msgid "btree_delete_redo: block unfound"
-msgstr ""
-
-#: access/nbtree/nbtxlog.c:390
-msgid "btree_delete_redo: uninitialized page"
-msgstr ""
-
-#: access/nbtree/nbtxlog.c:448
-msgid "btree_delete_page_redo: parent block unfound"
-msgstr ""
-
-#: access/nbtree/nbtxlog.c:452
-msgid "btree_delete_page_redo: uninitialized parent page"
-msgstr ""
-
-#: access/nbtree/nbtxlog.c:492
-msgid "btree_delete_page_redo: lost right sibling"
-msgstr ""
-
-#: access/nbtree/nbtxlog.c:495
-msgid "btree_delete_page_redo: uninitialized right sibling"
-msgstr ""
-
-#: access/nbtree/nbtxlog.c:518
-msgid "btree_delete_page_redo: lost left sibling"
-msgstr ""
-
-#: access/nbtree/nbtxlog.c:521
-msgid "btree_delete_page_redo: uninitialized left sibling"
-msgstr ""
-
-#: access/nbtree/nbtxlog.c:541
-#, c-format
-msgid "btree_delete_page_%s: lost target page"
-msgstr ""
-
-#: access/nbtree/nbtxlog.c:546
-msgid "btree_delete_page_undo: uninitialized target page"
-msgstr ""
-
-#: access/nbtree/nbtxlog.c:564
-msgid "btree_delete_page_undo: bad left sibling LSN"
-msgstr ""
-
-#: access/nbtree/nbtxlog.c:565
-msgid "btree_delete_page_undo: unimplemented"
-msgstr ""
-
-#: access/nbtree/nbtxlog.c:601
-msgid "btree_newroot_redo: no root page"
-msgstr ""
-
-#: access/nbtree/nbtxlog.c:671
-msgid "btree_newpage_redo: block unfound"
-msgstr ""
-
-#: access/nbtree/nbtxlog.c:730
-#, c-format
-msgid "btree_redo: unknown op code %u"
-msgstr ""
-
-#: access/nbtree/nbtxlog.c:781
-#, c-format
-msgid "btree_undo: unknown op code %u"
-msgstr ""
-
-#: access/nbtree/nbtxlog.c:946
-msgid "btree_xlog_cleanup: left block unfound"
-msgstr ""
-
-#: access/nbtree/nbtxlog.c:951
-msgid "btree_xlog_cleanup: right block unfound"
-msgstr ""
-
-#: access/rtree/rtree.c:331
-#, c-format
-msgid "rtdoinsert: failed to add index item to %s"
-msgstr ""
-
-#: access/rtree/rtree.c:523 access/rtree/rtree.c:547
-#, c-format
-msgid "rtdosplit: failed to add index item to %s"
-msgstr ""
-
-#: access/rtree/rtree.c:643
-msgid "Variable-length rtree keys are not supported."
-msgstr ""
-
-#: access/rtree/rtree.c:663
-#, c-format
-msgid "rtintinsert: failed to add index item to %s"
-msgstr ""
-
-#: access/rtree/rtree.c:689 access/rtree/rtree.c:694
-#, c-format
-msgid "rtnewroot: failed to add index item to %s"
-msgstr ""
-
-#: access/rtree/rtree.c:781
-#, c-format
-msgid "rtree: index item size %lu exceeds maximum %lu"
-msgstr ""
-
-#: access/rtree/rtree.c:1068
-msgid "rtpicksplit: failed to find a workable page split"
-msgstr ""
-
-#: access/rtree/rtree.c:1347
-msgid "rtree_redo: unimplemented"
-msgstr ""
-
-#: access/rtree/rtree.c:1353
-msgid "rtree_undo: unimplemented"
-msgstr ""
-
-#: access/rtree/rtscan.c:255
-#, c-format
-msgid "rtree scan list corrupted -- cannot find 0x%p"
-msgstr ""
-
-#: access/rtree/rtscan.c:391
-#, c-format
-msgid "Bad operation in rtree scan adjust: %d"
-msgstr ""
-
-#: access/transam/clog.c:546 access/transam/clog.c:598
-#, c-format
-msgid "open of %s failed: %m"
-msgstr "´ò¿ª %s Ê§°Ü: %m"
-
-#: access/transam/clog.c:547
-#, c-format
-msgid "clog file %s doesn't exist, reading as zeroes"
-msgstr ""
-
-#: access/transam/clog.c:553 access/transam/clog.c:606
-#, c-format
-msgid "lseek of clog file %u, offset %u failed: %m"
-msgstr ""
-
-#: access/transam/clog.c:558
-#, c-format
-msgid "read of clog file %u, offset %u failed: %m"
-msgstr ""
-
-#: access/transam/clog.c:602 access/transam/xlog.c:1377
-#, c-format
-msgid "creation of file %s failed: %m"
-msgstr "´´½¨Îļþ %s Ê§°Ü: %m"
-
-#: access/transam/clog.c:615
-#, c-format
-msgid "write of clog file %u, offset %u failed: %m"
-msgstr "дÈë clog Îļþ %u, Æ«ÒÆÁ¿ %u Ê§°Ü: %m"
-
-#: access/transam/clog.c:834
-msgid "unable to truncate commit log: apparent wraparound"
-msgstr ""
-
-#: access/transam/clog.c:889
-#, c-format
-msgid "could not open transaction-commit log directory (%s): %m"
-msgstr ""
-
-#: access/transam/clog.c:905
-#, c-format
-msgid "removing commit log file %s"
-msgstr ""
-
-#: access/transam/clog.c:914
-#, c-format
-msgid "could not read transaction-commit log directory (%s): %m"
-msgstr ""
-
-#: access/transam/xact.c:407
-msgid "You may only have 2^32-1 commands per transaction"
-msgstr ""
-
-#: access/transam/xact.c:690
-#, c-format
-msgid "RecordTransactionAbort: xact %u already committed"
-msgstr ""
-
-#: access/transam/xact.c:900
-msgid "CommitTransaction and not in in-progress state"
-msgstr ""
-
-#: access/transam/xact.c:1040
-msgid "AbortTransaction and not in in-progress state"
-msgstr ""
-
-#: access/transam/xact.c:1124
-msgid "CleanupTransaction and not in abort state"
-msgstr ""
-
-#: access/transam/xact.c:1155
-msgid "StartTransactionCommand: can't prevent chain"
-msgstr ""
-
-#: access/transam/xact.c:1174
-msgid "StartTransactionCommand: unexpected TBLOCK_BEGIN"
-msgstr ""
-
-#: access/transam/xact.c:1195
-msgid "StartTransactionCommand: unexpected TBLOCK_END"
-msgstr ""
-
-#: access/transam/xact.c:1218
-msgid "StartTransactionCommand: unexpected TBLOCK_ENDABORT"
-msgstr ""
-
-#. translator: %s represents an SQL statement name
-#: access/transam/xact.c:1431
-#, c-format
-msgid "%s cannot run inside a transaction block"
-msgstr ""
-
-#. translator: %s represents an SQL statement name
-#: access/transam/xact.c:1441
-#, c-format
-msgid "%s cannot be executed from a function"
-msgstr ""
-
-#: access/transam/xact.c:1445
-msgid "PreventTransactionChain: can't prevent chain"
-msgstr ""
-
-#. translator: %s represents an SQL statement name
-#: access/transam/xact.c:1452
-#, c-format
-msgid "%s will be committed automatically"
-msgstr ""
-
-#. translator: %s represents an SQL statement name
-#: access/transam/xact.c:1495
-#, c-format
-msgid "%s may only be used in begin/end transaction blocks"
-msgstr ""
-
-#: access/transam/xact.c:1516
-msgid "BEGIN: already a transaction in progress"
-msgstr ""
-
-#: access/transam/xact.c:1579
-msgid "COMMIT: no transaction in progress"
-msgstr ""
-
-#: access/transam/xact.c:1615 access/transam/xact.c:1661
-msgid "ROLLBACK: no transaction in progress"
-msgstr ""
-
-#: access/transam/xact.c:1739 access/transam/xact.c:1750
-#, c-format
-msgid "xact_redo: unknown op code %u"
-msgstr ""
-
-#: access/transam/xact.c:1748
-msgid "xact_undo: can't undo committed xaction"
-msgstr ""
-
-#: access/transam/xact.c:1785
-msgid "XactPushRollback: already installed"
-msgstr ""
-
-#: access/transam/xlog.c:505
-#, c-format
-msgid "XLogInsert: invalid info mask %02X"
-msgstr ""
-
-#: access/transam/xlog.c:610
-#, c-format
-msgid "XLogInsert: can backup %d blocks at most"
-msgstr ""
-
-#: access/transam/xlog.c:628
-#, c-format
-msgid "XLogInsert: invalid record length %u"
-msgstr ""
-
-#: access/transam/xlog.c:785 access/transam/xlog.c:2637 scan.l:36
-#: utils/adt/name.c:52 utils/adt/varchar.c:83 utils/adt/varchar.c:357
-#: utils/adt/varlena.c:226
-#, c-format
-msgid "%s"
-msgstr ""
-
-#: access/transam/xlog.c:1029
-#, c-format
-msgid "XLogWrite: write request %X/%X is past end of log %X/%X"
-msgstr ""
-
-#: access/transam/xlog.c:1046 access/transam/xlog.c:1156
-#: access/transam/xlog.c:3363
-#, c-format
-msgid "close of log file %u, segment %u failed: %m"
-msgstr ""
-
-#: access/transam/xlog.c:1081
-msgid "XLogWrite: time for a checkpoint, signaling postmaster"
-msgstr ""
-
-#: access/transam/xlog.c:1100
-#, c-format
-msgid "lseek of log file %u, segment %u, offset %u failed: %m"
-msgstr ""
-
-#: access/transam/xlog.c:1112
-#, c-format
-msgid "write of log file %u, segment %u, offset %u failed: %m"
-msgstr ""
-
-#: access/transam/xlog.c:1216
-#, c-format
-msgid "XLogFlush%s: request %X/%X; write %X/%X; flush %X/%X"
-msgstr ""
-
-#: access/transam/xlog.c:1312
-#, c-format
-msgid "XLogFlush: request %X/%X is not satisfied --- flushed only to %X/%X"
-msgstr ""
-
-#: access/transam/xlog.c:1355 access/transam/xlog.c:1436
-#: access/transam/xlog.c:1544 access/transam/xlog.c:1548
-#, c-format
-msgid "open of %s (log file %u, segment %u) failed: %m"
-msgstr ""
-
-#: access/transam/xlog.c:1404
-#, c-format
-msgid "ZeroFill failed to write %s: %m"
-msgstr ""
-
-#: access/transam/xlog.c:1409
-#, c-format
-msgid "fsync of file %s failed: %m"
-msgstr "fsync Îļþ %s Ê§°Ü: %m"
-
-#: access/transam/xlog.c:1512
-#, c-format
-msgid ""
-"link from %s to %s (initialization of log file %u, segment %u) failed: %m"
-msgstr ""
-
-#: access/transam/xlog.c:1517
-#, c-format
-msgid ""
-"rename from %s to %s (initialization of log file %u, segment %u) failed: %m"
-msgstr ""
-
-#: access/transam/xlog.c:1598
-#, c-format
-msgid "could not open transaction log directory (%s): %m"
-msgstr ""
-
-#: access/transam/xlog.c:1613
-#, c-format
-msgid "archiving transaction log file %s"
-msgstr ""
-
-#: access/transam/xlog.c:1615
-msgid "archiving log files is not implemented!"
-msgstr ""
-
-#: access/transam/xlog.c:1629
-#, c-format
-msgid "recycled transaction log file %s"
-msgstr ""
-
-#: access/transam/xlog.c:1635
-#, c-format
-msgid "removing transaction log file %s"
-msgstr "ɾ³ýÊÂÎñÈÕÖ¾Îļþ %s"
-
-#: access/transam/xlog.c:1644
-#, c-format
-msgid "could not read transaction log directory (%s): %m"
-msgstr "ÎÞ·¨¶ÁÈ¡ÊÂÎñÈÕ־Ŀ¼ (%s): %m"
-
-#: access/transam/xlog.c:1717
-#, c-format
-msgid "ReadRecord: bad resource manager data checksum in record at %X/%X"
-msgstr ""
-
-#: access/transam/xlog.c:1739
-#, c-format
-msgid "ReadRecord: bad checksum of backup block %d in record at %X/%X"
-msgstr ""
-
-#: access/transam/xlog.c:1808
-#, c-format
-msgid "ReadRecord: invalid record offset at %X/%X"
-msgstr ""
-
-#: access/transam/xlog.c:1831
-#, c-format
-msgid "ReadRecord: lseek of log file %u, segment %u, offset %u failed: %m"
-msgstr ""
-
-#: access/transam/xlog.c:1837 access/transam/xlog.c:1921
-#, c-format
-msgid "ReadRecord: read of log file %u, segment %u, offset %u failed: %m"
-msgstr ""
-
-#: access/transam/xlog.c:1847
-#, c-format
-msgid "ReadRecord: contrecord is requested by %X/%X"
-msgstr ""
-
-#: access/transam/xlog.c:1861
-#, c-format
-msgid "ReadRecord: record with zero length at %X/%X"
-msgstr ""
-
-#: access/transam/xlog.c:1885
-#, c-format
-msgid "ReadRecord: record length %u at %X/%X too long"
-msgstr ""
-
-#: access/transam/xlog.c:1891
-#, c-format
-msgid "ReadRecord: invalid resource manager id %u at %X/%X"
-msgstr ""
-
-#: access/transam/xlog.c:1929
-#, c-format
-msgid ""
-"ReadRecord: there is no ContRecord flag in log file %u, segment %u, offset %u"
-msgstr ""
-
-#: access/transam/xlog.c:1937
-#, c-format
-msgid ""
-"ReadRecord: invalid ContRecord length %u in log file %u, segment %u, offset %"
-"u"
-msgstr ""
-
-#: access/transam/xlog.c:2001
-#, c-format
-msgid ""
-"ReadRecord: invalid magic number %04X in log file %u, segment %u, offset %u"
-msgstr ""
-
-#: access/transam/xlog.c:2007
-#, c-format
-msgid ""
-"ReadRecord: invalid info bits %04X in log file %u, segment %u, offset %u"
-msgstr ""
-
-#: access/transam/xlog.c:2015
-#, c-format
-msgid ""
-"ReadRecord: unexpected pageaddr %X/%X in log file %u, segment %u, offset %u"
-msgstr ""
-
-#. translator: SUI = startup id
-#: access/transam/xlog.c:2037
-#, c-format
-msgid ""
-"ReadRecord: out-of-sequence SUI %u (after %u) in log file %u, segment %u, "
-"offset %u"
-msgstr ""
-
-#: access/transam/xlog.c:2096
-msgid "invalid LC_COLLATE setting"
-msgstr "ÎÞЧµÄ LC_COLLATE ÉèÖÃ"
-
-#: access/transam/xlog.c:2100
-msgid "invalid LC_CTYPE setting"
-msgstr "ÎÞЧµÄ LC_CTYPE ÉèÖÃ"
-
-#: access/transam/xlog.c:2118
-msgid "sizeof(ControlFileData) is larger than BLCKSZ; fix either one"
-msgstr ""
-
-#: access/transam/xlog.c:2126
-#, c-format
-msgid "WriteControlFile: could not create control file (%s): %m"
-msgstr ""
-
-#: access/transam/xlog.c:2135
-#, c-format
-msgid "WriteControlFile: write to control file failed: %m"
-msgstr ""
-
-#: access/transam/xlog.c:2139
-#, c-format
-msgid "WriteControlFile: fsync of control file failed: %m"
-msgstr ""
-
-#: access/transam/xlog.c:2155 access/transam/xlog.c:2278
-#, c-format
-msgid "could not open control file (%s): %m"
-msgstr ""
-
-#: access/transam/xlog.c:2158
-#, c-format
-msgid "read from control file failed: %m"
-msgstr ""
-
-#: access/transam/xlog.c:2170
-#, c-format
-msgid ""
-"The database cluster was initialized with PG_CONTROL_VERSION %d,\n"
-"\tbut the server was compiled with PG_CONTROL_VERSION %d.\n"
-"\tIt looks like you need to initdb."
-msgstr ""
-
-#: access/transam/xlog.c:2183
-msgid "invalid checksum in control file"
-msgstr ""
-
-#: access/transam/xlog.c:2199
-#, c-format
-msgid ""
-"The database cluster was initialized with CATALOG_VERSION_NO %d,\n"
-"\tbut the backend was compiled with CATALOG_VERSION_NO %d.\n"
-"\tIt looks like you need to initdb."
-msgstr ""
-
-#: access/transam/xlog.c:2205
-#, c-format
-msgid ""
-"The database cluster was initialized with BLCKSZ %d,\n"
-"\tbut the backend was compiled with BLCKSZ %d.\n"
-"\tIt looks like you need to initdb."
-msgstr ""
-
-#: access/transam/xlog.c:2211
-#, c-format
-msgid ""
-"The database cluster was initialized with RELSEG_SIZE %d,\n"
-"\tbut the backend was compiled with RELSEG_SIZE %d.\n"
-"\tIt looks like you need to recompile or initdb."
-msgstr ""
-
-#: access/transam/xlog.c:2218
-#, c-format
-msgid ""
-"The database cluster was initialized with NAMEDATALEN %d,\n"
-"\tbut the backend was compiled with NAMEDATALEN %d.\n"
-"\tIt looks like you need to recompile or initdb."
-msgstr ""
-
-#: access/transam/xlog.c:2225
-#, c-format
-msgid ""
-"The database cluster was initialized with FUNC_MAX_ARGS %d,\n"
-"\tbut the backend was compiled with FUNC_MAX_ARGS %d.\n"
-"\tIt looks like you need to recompile or initdb."
-msgstr ""
-
-#: access/transam/xlog.c:2233
-msgid ""
-"The database cluster was initialized without HAVE_INT64_TIMESTAMP\n"
-"\tbut the backend was compiled with HAVE_INT64_TIMESTAMP.\n"
-"\tIt looks like you need to recompile or initdb."
-msgstr ""
-
-#: access/transam/xlog.c:2239
-msgid ""
-"The database cluster was initialized with HAVE_INT64_TIMESTAMP\n"
-"\tbut the backend was compiled without HAVE_INT64_TIMESTAMP.\n"
-"\tIt looks like you need to recompile or initdb."
-msgstr ""
-
-#: access/transam/xlog.c:2246
-#, c-format
-msgid ""
-"The database cluster was initialized with LOCALE_NAME_BUFLEN %d,\n"
-"\tbut the backend was compiled with LOCALE_NAME_BUFLEN %d.\n"
-"\tIt looks like you need to initdb."
-msgstr ""
-
-#: access/transam/xlog.c:2253
-#, c-format
-msgid ""
-"The database cluster was initialized with LC_COLLATE '%s',\n"
-"\twhich is not recognized by setlocale().\n"
-"\tIt looks like you need to initdb."
-msgstr ""
-
-#: access/transam/xlog.c:2259
-#, c-format
-msgid ""
-"The database cluster was initialized with LC_CTYPE '%s',\n"
-"\twhich is not recognized by setlocale().\n"
-"\tIt looks like you need to initdb."
-msgstr ""
-
-#: access/transam/xlog.c:2286
-#, c-format
-msgid "write to control file failed: %m"
-msgstr "дÈë¿ØÖÆÎļþʧ°Ü: %m"
-
-#: access/transam/xlog.c:2290
-#, c-format
-msgid "fsync of control file failed: %m"
-msgstr ""
-
-#: access/transam/xlog.c:2430
-#, c-format
-msgid "BootStrapXLOG failed to write log file: %m"
-msgstr ""
-
-#: access/transam/xlog.c:2434
-#, c-format
-msgid "BootStrapXLOG failed to fsync log file: %m"
-msgstr ""
-
-#: access/transam/xlog.c:2500
-msgid "control file context is broken"
-msgstr ""
-
-#: access/transam/xlog.c:2503
-#, c-format
-msgid "database system was shut down at %s"
-msgstr ""
-
-#: access/transam/xlog.c:2506
-#, c-format
-msgid "database system shutdown was interrupted at %s"
-msgstr ""
-
-#: access/transam/xlog.c:2509
-#, c-format
-msgid ""
-"database system was interrupted being in recovery at %s\n"
-"\tThis probably means that some data blocks are corrupted\n"
-"\tand you will have to use the last backup for recovery."
-msgstr ""
-
-#: access/transam/xlog.c:2514
-#, c-format
-msgid "database system was interrupted at %s"
-msgstr ""
-
-#: access/transam/xlog.c:2531
-#, c-format
-msgid "checkpoint record is at %X/%X"
-msgstr ""
-
-#: access/transam/xlog.c:2540
-#, c-format
-msgid "using previous checkpoint record at %X/%X"
-msgstr ""
-
-#: access/transam/xlog.c:2545
-msgid "unable to locate a valid checkpoint record"
-msgstr ""
-
-#: access/transam/xlog.c:2551
-#, c-format
-msgid "redo record is at %X/%X; undo record is at %X/%X; shutdown %s"
-msgstr ""
-
-#: access/transam/xlog.c:2555
-#, c-format
-msgid "next transaction id: %u; next oid: %u"
-msgstr ""
-
-#: access/transam/xlog.c:2558
-msgid "invalid next transaction id"
-msgstr ""
-
-#: access/transam/xlog.c:2569
-msgid "invalid redo in checkpoint record"
-msgstr ""
-
-#: access/transam/xlog.c:2577
-msgid "invalid redo/undo record in shutdown checkpoint"
-msgstr ""
-
-#: access/transam/xlog.c:2588
-msgid ""
-"database system was not properly shut down; automatic recovery in progress"
-msgstr ""
-
-#: access/transam/xlog.c:2615
-#, c-format
-msgid "redo starts at %X/%X"
-msgstr ""
-
-#: access/transam/xlog.c:2646
-#, c-format
-msgid "redo done at %X/%X"
-msgstr ""
-
-#: access/transam/xlog.c:2652
-msgid "redo is not required"
-msgstr ""
-
-#: access/transam/xlog.c:2734
-#, c-format
-msgid "undo starts at %X/%X"
-msgstr ""
-
-#: access/transam/xlog.c:2744
-#, c-format
-msgid "undo done at %X/%X"
-msgstr ""
-
-#: access/transam/xlog.c:2748
-msgid "undo is not required"
-msgstr ""
-
-#: access/transam/xlog.c:2804
-msgid "database system is ready"
-msgstr "Êý¾Ý¿âϵͳ׼±¸¾ÍÐ÷"
-
-#: access/transam/xlog.c:2932
-msgid "shutting down"
-msgstr "ÕýÔڹرÕ"
-
-#: access/transam/xlog.c:2945
-msgid "database system is shut down"
-msgstr "Êý¾Ý¿âϵͳÒѹرÕ"
-
-#: access/transam/xlog.c:2966
-msgid "CreateCheckPoint: cannot be called inside transaction block"
-msgstr ""
-
-#: access/transam/xlog.c:3081
-msgid "active transaction while database system is shutting down"
-msgstr ""
-
-#: access/transam/xlog.c:3127
-msgid ""
-"concurrent transaction log activity while database system is shutting down"
-msgstr ""
-
-#: access/transam/xlog.c:3358 access/transam/xlog.c:3386
-#, c-format
-msgid "fsync of log file %u, segment %u failed: %m"
-msgstr ""
-
-#: access/transam/xlog.c:3392
-#, c-format
-msgid "fdatasync of log file %u, segment %u failed: %m"
-msgstr ""
-
-#: access/transam/xlog.c:3400
-#, c-format
-msgid "bogus wal_sync_method %d"
-msgstr ""
-
-#: access/transam/xlogutils.c:253
-msgid "_xl_remove_hash_entry: file was not found in cache"
-msgstr ""
-
-#: access/transam/xlogutils.c:350
-msgid "XLogOpenRelation: out of memory for cache"
-msgstr "XLogOpenRelation: »º³åÄÚ´æÓþ¡"
-
-#: access/transam/xlogutils.c:353
-msgid "XLogOpenRelation: file found on insert into cache"
-msgstr ""
-
-#: bootstrap/bootstrap.c:195
-msgid ""
-"Usage:\n"
-"  postgres -boot [-d level] [-D datadir] [-F] [-o file] [-x num] dbname\n"
-"  -d 1-5           debug mode\n"
-"  -D datadir       data directory\n"
-"  -F               turn off fsync\n"
-"  -o file          send debug output to file\n"
-"  -x num           internal use\n"
-msgstr ""
-"Ó÷¨:\n"
-"  postgres -boot [-d level] [-D datadir] [-F] [-o file] [-x num] dbname\n"
-"  -d 1-5           µ÷ÊÔģʽ\n"
-"  -D datadir       Êý¾ÝĿ¼\n"
-"  -F               ¹Ø±Õ fsync\n"
-"  -o file          °Ñµ÷ÊÔÐÅÏ¢Êä³öµ½Îļþ file\n"
-"  -x num           ÄÚ²¿Ê¹ÓÃ\n"
-
-#: bootstrap/bootstrap.c:309 postmaster/postmaster.c:309
-#, 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"
-"\n"
-msgstr ""
-"%s ²»ÖªµÀÔÚÄÄÀï¿ÉÒÔÕÒµ½Êý¾Ý¿âϵͳÊý¾Ý.\n"
-"Äã±ØÐëͨ¹ýÉùÃ÷ -D µ÷ÓÃÑ¡Ïî»òÕßͨ¹ýÉèÖÃ\n"
-"PGDATA »·¾³±äÁ¿ÉùÃ÷°üº¬Êý¾Ý¿âϵͳµÄĿ¼.\n"
-"\n"
-
-#: bootstrap/bootstrap.c:411
-#, c-format
-msgid "Unsupported XLOG op %d"
-msgstr ""
-
-#: bootstrap/bootstrap.c:514
-#, c-format
-msgid "open relation %s, attrsize %d"
-msgstr ""
-
-#: bootstrap/bootstrap.c:530
-#, c-format
-msgid "create attribute %d name %s len %d num %d type %u"
-msgstr ""
-
-#: bootstrap/bootstrap.c:549
-#, c-format
-msgid "closerel: close of '%s' when '%s' was expected"
-msgstr ""
-
-#: bootstrap/bootstrap.c:553
-#, c-format
-msgid "closerel: close of '%s' before any relation was opened"
-msgstr ""
-
-#: bootstrap/bootstrap.c:558
-msgid "no open relation to close"
-msgstr "ûÓÐÒÑ´ò¿ªµÄ¹ØϵҪ¹Ø±Õ"
-
-#: bootstrap/bootstrap.c:561
-#, c-format
-msgid "close relation %s"
-msgstr "¹Ø±Õ¹Øϵ %s"
-
-#: bootstrap/bootstrap.c:585
-msgid "warning: no open relations allowed with 'create' command"
-msgstr "¾¯¸æ: ´ò¿ªµÄ¹ØϵÀïûÓÐÔÊÐí 'create' ÃüÁî"
-
-#: bootstrap/bootstrap.c:594
-#, c-format
-msgid "column %s %s"
-msgstr "ÁР%s %s"
-
-#: bootstrap/bootstrap.c:684
-#, c-format
-msgid "inserting row oid %u, %d columns"
-msgstr "²åÈëÐРoid %u, %d ÁÐ"
-
-#: bootstrap/bootstrap.c:696
-msgid "row inserted"
-msgstr "ÐÐÒѲåÈë"
-
-#: bootstrap/bootstrap.c:718
-#, c-format
-msgid "inserting column %d value '%s'"
-msgstr "ÕýÔÚ²åÈëÊýֵΪ '%2$s' µÄ×ֶΠ%1$d"
-
-#: bootstrap/bootstrap.c:724
-msgid "Typ != NULL"
-msgstr ""
-
-#: bootstrap/bootstrap.c:731
-#, c-format
-msgid "unable to find atttypid %u in Typ list"
-msgstr "ÔÚÀàÐÍÁбíÖÐÎÞ·¨ÕÒµ½ atttypid %u"
-
-#: bootstrap/bootstrap.c:742 bootstrap/bootstrap.c:763
-#, c-format
-msgid " -> %s"
-msgstr " -> %s"
-
-#: bootstrap/bootstrap.c:753
-#, c-format
-msgid "type oid %u not found"
-msgstr "δÕÒµ½ÀàÐÍ oid %u"
-
-#: bootstrap/bootstrap.c:754
-#, c-format
-msgid "Typ == NULL, typeindex = %u"
-msgstr ""
-
-#: bootstrap/bootstrap.c:766
-msgid "inserted"
-msgstr "ÒѲåÈë"
-
-#: bootstrap/bootstrap.c:776
-#, c-format
-msgid "inserting column %d NULL"
-msgstr "ÕýÔÚ²åÈë×ֶΠ%d NULL"
-
-#: bootstrap/bootstrap.c:823
-msgid "Memory manager fault: cleanup called twice.\n"
-msgstr "´æ´¢Æ÷¹ÜÀíÆ÷ʧ°Ü: ÇåÀí¹ý³Ìµ÷ÓÃÁËÁ½´Î.\n"
-
-#: bootstrap/bootstrap.c:870
-#, c-format
-msgid "external type: %s"
-msgstr "ÍⲿÀàÐÍ: %s"
-
-#: bootstrap/bootstrap.c:894
-#, c-format
-msgid "Error: unknown type '%s'.\n"
-msgstr "´íÎó: Î´ÖªÀàÐÍ '%s'.\n"
-
-#: bootstrap/bootstrap.c:910
-msgid "AllocateAttribute: malloc failed"
-msgstr "AllocateAttribute: malloc Ê§°Ü"
-
-#: bootstrap/bootstrap.c:1061
-msgid ""
-"There are too many string constants and identifiers for the compiler to "
-"handle."
-msgstr "±àÒëÆ÷Òª´¦Àí¹ý¶àµÄ×Ö´®Ô¼ÊøºÍ±êʶ·û."
-
-#: bootparse.y:59
-msgid "start transaction"
-msgstr "Æô¶¯ÊÂÎñ"
-
-#: bootparse.y:67
-msgid "commit transaction"
-msgstr "Ìá½»ÊÂÎñ"
-
-#: bootparse.y:158
-#, c-format
-msgid "creating%s%s relation %s..."
-msgstr "´´½¨ %s%s ¹Øϵ %s..."
-
-#: bootparse.y:179
-msgid "create bootstrap: warning, open relation exists, closing first"
-msgstr "´´½¨Òýµ¼Êý¾Ý: ¾¯¸æ, ¹Øϵ´ò¿ªÒÑ´æÔÚ, ÏȹرÕ"
-
-#: bootparse.y:189
-msgid "bootstrap relation created"
-msgstr "Òýµ¼¹Øϵ´´½¨"
-
-#: bootparse.y:202
-#, c-format
-msgid "relation created with oid %u"
-msgstr "¹Øϵ´´½¨Îª oid Îª %u"
-
-#: bootparse.y:213
-#, c-format
-msgid "inserting row with oid %u..."
-msgstr "Óàoid %u ²åÈëÐÐ..."
-
-#: bootparse.y:215
-msgid "inserting row..."
-msgstr "²åÈëÐÐ..."
-
-#: bootparse.y:221
-#, c-format
-msgid "incorrect number of columns in row (expected %d, got %d)"
-msgstr "ÐÐÖÐ×Ö¶ÎÊýÄ¿´íÎó (Ô¤ÆÚ %d, Êµ¼Ê %d)"
-
-#: bootparse.y:225
-msgid "relation not open"
-msgstr "¹Øϵδ´ò¿ª"
-
-#: bootparse.y:306
-msgid "too many columns"
-msgstr "Ì«¶à×Ö¶Î"
-
-#: bootscanner.l:128
-#, c-format
-msgid "syntax error at line %d: unexpected character %s"
-msgstr "ÔÚµÚ %d Ðд¦Óï·¨´íÎó: Î´Öª×Ö·û %s"
-
-#: bootscanner.l:138
-#, c-format
-msgid "syntax error at line %d: unexpected token %s"
-msgstr "ÔÚµÚ %d Ðд¦Óï·¨´íÎó: Î´Öª¼ÇºÅ %s"
-
-#: catalog/aclchk.c:60
-#, c-format
-msgid "acl size = %d, # acls = %d"
-msgstr ""
-
-#: catalog/aclchk.c:64
-#, c-format
-msgid "\tacl[%d]: %s"
-msgstr ""
-
-#: catalog/aclchk.c:122
-msgid "grant options can only be granted to individual users"
-msgstr ""
-
-#: catalog/aclchk.c:166
-#, c-format
-msgid "bogus GrantStmt.objtype %d"
-msgstr ""
-
-#: catalog/aclchk.c:186
-#, c-format
-msgid "invalid privilege type %s for table object"
-msgstr ""
-
-#: catalog/aclchk.c:215
-#, c-format
-msgid "relation %u not found"
-msgstr "δÕÒµ½¹Øϵ %u"
-
-#: catalog/aclchk.c:224
-#, c-format
-msgid "\"%s\" is an index"
-msgstr "\"%s\" ÊÇÒ»¸öË÷Òý"
-
-#: catalog/aclchk.c:284
-#, c-format
-msgid "invalid privilege type %s for database object"
-msgstr ""
-
-#: catalog/aclchk.c:314
-#, c-format
-msgid "database \"%s\" not found"
-msgstr "δÕÒµ½Êý¾Ý¿â \"%s\""
-
-#: catalog/aclchk.c:378
-#, c-format
-msgid "invalid privilege type %s for function object"
-msgstr ""
-
-#: catalog/aclchk.c:408 parser/parse_func.c:885 parser/parse_func.c:1332
-#, c-format
-msgid "function %u not found"
-msgstr "δÕÒµ½º¯Êý %u"
-
-#: catalog/aclchk.c:474
-#, c-format
-msgid "invalid privilege type %s for language object"
-msgstr ""
-
-#: catalog/aclchk.c:500
-#, c-format
-msgid "language \"%s\" not found"
-msgstr "δÕÒµ½ÓïÑÔ \"%s\""
-
-#: catalog/aclchk.c:504
-#, c-format
-msgid "language \"%s\" is not trusted"
-msgstr "ÓïÑÔ \"%s\" ²»¿ÉÐÅ"
-
-#: catalog/aclchk.c:567
-#, c-format
-msgid "invalid privilege type %s for namespace object"
-msgstr ""
-
-#: catalog/aclchk.c:593
-#, c-format
-msgid "namespace \"%s\" not found"
-msgstr "δÕÒµ½Ãû×Ö¿Õ¼ä \"%s\""
-
-#: catalog/aclchk.c:672
-#, c-format
-msgid "privilege_to_string: unrecognized privilege %d"
-msgstr "privilege_to_string: ²»±»ÈϿɵÄȨÏÞ %d"
-
-#: catalog/aclchk.c:694
-#, c-format
-msgid "non-existent group \"%s\""
-msgstr ""
-
-#: catalog/aclchk.c:764
-#, c-format
-msgid "in_group: group %u not found"
-msgstr ""
-
-#: catalog/aclchk.c:789
-msgid "aclcheck: internal error -- null ACL"
-msgstr ""
-
-#: catalog/aclchk.c:835 commands/user.c:1304
-#, c-format
-msgid "%s: permission denied"
-msgstr "%s: È¨ÏÞ²»¹»"
-
-#: catalog/aclchk.c:838
-#, c-format
-msgid "%s: must be owner"
-msgstr "%s: ±ØÐèΪËùÓÐÕß"
-
-#: catalog/aclchk.c:841
-#, c-format
-msgid "%s: unexpected AclResult %d"
-msgstr ""
-
-#: catalog/aclchk.c:869
-#, c-format
-msgid "pg_class_aclcheck: invalid user id %u"
-msgstr "pg_class_aclcheck: ·Ç·¨Óû§ id %u"
-
-#: catalog/aclchk.c:884
-#, c-format
-msgid "pg_class_aclcheck: relation %u not found"
-msgstr "pg_class_aclcheck: Î´ÕÒµ½¹Øϵ %u"
-
-#: catalog/aclchk.c:897
-msgid "pg_class_aclcheck: catalog update: permission denied"
-msgstr "pg_class_aclcheck: catalog update: È¨ÏÞ²»¹»"
-
-#: catalog/aclchk.c:909
-#, c-format
-msgid "pg_class_aclcheck: %u is superuser"
-msgstr "pg_calss_aclcheck: %u Êdz¬¼¶Óû§"
-
-#: catalog/aclchk.c:977
-#, c-format
-msgid "pg_database_aclcheck: database %u not found"
-msgstr "pg_database_aclcheck: Î´ÕÒµ½Êý¾Ý¿â %u"
-
-#: catalog/aclchk.c:1032
-#, c-format
-msgid "pg_proc_aclcheck: function %u not found"
-msgstr "pg_proc_aclcheck: Î´ÕÒµ½º¯Êý %u"
-
-#: catalog/aclchk.c:1085
-#, c-format
-msgid "pg_language_aclcheck: language %u not found"
-msgstr "pg_language_aclcheck: Î´ÕÒµ½ÓïÑÔ %u"
-
-#: catalog/aclchk.c:1142
-#, c-format
-msgid "pg_namespace_aclcheck: namespace %u not found"
-msgstr "pg_namespace_aclcheck: Î´ÕÒµ½Ãû×Ö¿Õ¼ä %u"
-
-#: catalog/aclchk.c:1190
-#, c-format
-msgid "pg_class_ownercheck: relation %u not found"
-msgstr "pg_class_ownercheck: Î´ÕÒµ½¹Øϵ %u"
-
-#: catalog/aclchk.c:1216
-#, c-format
-msgid "pg_type_ownercheck: type %u not found"
-msgstr "pg_type_ownercheck: Î´ÕÒµ½ÀàÐÍ %u"
-
-#: catalog/aclchk.c:1242
-#, c-format
-msgid "pg_oper_ownercheck: operator %u not found"
-msgstr "pg_oper_ownercheck: Î´ÕÒµ½²Ù×÷·û %u"
-
-#: catalog/aclchk.c:1268
-#, c-format
-msgid "pg_proc_ownercheck: function %u not found"
-msgstr "pg_proc_ownercheck: Î´ÕÒµ½º¯Êý %u"
-
-#: catalog/aclchk.c:1294
-#, c-format
-msgid "pg_namespace_ownercheck: namespace %u not found"
-msgstr "pg_namespace_ownercheck: Î´ÕÒµ½Ãû×Ö¿Õ¼ä %u"
-
-#: catalog/aclchk.c:1321
-#, c-format
-msgid "pg_opclass_ownercheck: operator class %u not found"
-msgstr "pg_opclass_ownercheck: Î´ÕÒµ½²Ù×÷·û±í %u"
-
-#: catalog/dependency.c:171
-#, c-format
-msgid ""
-"Cannot drop %s because other objects depend on it\n"
-"\tUse DROP ... CASCADE to drop the dependent objects too"
-msgstr ""
-"ÎÞ·¨É¾³ý %s ÒòΪÓÐÆäËü¶ÔÏóÒÐÀµËü\n"
-"\tʹÓàDROP .. CASCADE °ÑÒÐÀµ¶ÔÏóÒ»²¢É¾³ý"
-
-#: catalog/dependency.c:229
-#, c-format
-msgid "Failed to drop all objects depending on %s"
-msgstr "ɾ³ýËùÓÐÒÐÀµÓÚ %s µÄ¶ÔÏóʧ°Ü"
-
-#: catalog/dependency.c:323 catalog/dependency.c:710
-#, c-format
-msgid "Cannot drop %s because it is required by the database system"
-msgstr "ÎÞ·¨É¾³ý %s, ÒòΪËüÊÇÊý¾Ý¿âϵͳËùÐèÒªµÄ"
-
-#: catalog/dependency.c:327
-#, c-format
-msgid "findAutoDeletableObjects: unknown dependency type '%c' for %s"
-msgstr ""
-
-#: catalog/dependency.c:457
-#, c-format
-msgid ""
-"Cannot drop %s because %s requires it\n"
-"\tYou may drop %s instead"
-msgstr ""
-"ÎÞ·¨É¾³ý %s, ÒòΪ %s ÐèÒªËü\n"
-"\tÄãÒ²Ðí¿ÉÒÔɾ³ý %s ´úÌæ"
-
-#: catalog/dependency.c:483
-#, c-format
-msgid "recursiveDeletion: multiple INTERNAL dependencies for %s"
-msgstr ""
-
-#: catalog/dependency.c:495
-#, c-format
-msgid "recursiveDeletion: incorrect use of PIN dependency with %s"
-msgstr ""
-
-#: catalog/dependency.c:499 catalog/dependency.c:714
-#, c-format
-msgid "recursiveDeletion: unknown dependency type '%c' for %s"
-msgstr ""
-
-#: catalog/dependency.c:525 catalog/dependency.c:672 catalog/dependency.c:697
-#, c-format
-msgid "Drop auto-cascades to %s"
-msgstr ""
-
-#: catalog/dependency.c:529 catalog/dependency.c:676
-#, c-format
-msgid "%s depends on %s"
-msgstr "%s ÒÐÀµÓÚ %s"
-
-#: catalog/dependency.c:535 catalog/dependency.c:682
-#, c-format
-msgid "Drop cascades to %s"
-msgstr ""
-
-#: catalog/dependency.c:803
-#, c-format
-msgid "doDeletion: Unsupported object class %u"
-msgstr ""
-
-#: catalog/dependency.c:886
-#, c-format
-msgid "find_expr_references_walker: bogus varlevelsup %d"
-msgstr ""
-
-#: catalog/dependency.c:890
-#, c-format
-msgid "find_expr_references_walker: bogus varno %d"
-msgstr ""
-
-#: catalog/dependency.c:910
-#, c-format
-msgid "find_expr_references_walker: bogus varattno %d"
-msgstr ""
-
-#: catalog/dependency.c:974
-msgid "find_expr_references_walker: already-planned subqueries not supported"
-msgstr ""
-
-#: catalog/dependency.c:1310
-#, c-format
-msgid "getObjectClass: Unknown object class %u"
-msgstr ""
-
-#: catalog/dependency.c:1367
-#, c-format
-msgid "getObjectDescription: Cast %u does not exist"
-msgstr "getObjectDescription: ×ª»» %u ²»´æÔÚ"
-
-#: catalog/dependency.c:1401
-#, c-format
-msgid "getObjectDescription: Constraint %u does not exist"
-msgstr "getObjectDescription: Ô¼Êø %u ²»´æÔÚ"
-
-#: catalog/dependency.c:1431
-#, c-format
-msgid "getObjectDescription: Conversion %u does not exist"
-msgstr "getObjectDescription: ×ª»» %u ²»´æÔÚ"
-
-#: catalog/dependency.c:1460
-#, c-format
-msgid "getObjectDescription: Default %u does not exist"
-msgstr "getObjectDescription: Ä¬ÈÏÖµ %u ²»´æÔÚ"
-
-#: catalog/dependency.c:1485
-#, c-format
-msgid "getObjectDescription: Language %u does not exist"
-msgstr "getObjectDescription: ÓïÑÔ %u ²»´æÔÚ"
-
-#: catalog/dependency.c:1510
-#, c-format
-msgid "cache lookup of opclass %u failed"
-msgstr "ÔÚ»º³åÖвéÕÒ²Ù×÷·û±í %u Ê§°Ü"
-
-#: catalog/dependency.c:1528 utils/adt/ruleutils.c:426
-#, c-format
-msgid "syscache lookup for AM %u failed"
-msgstr "ÔÚϵͳ»º³åÖвéÕÒ AM %u Ê§°Ü"
-
-#: catalog/dependency.c:1560
-#, c-format
-msgid "getObjectDescription: Rule %u does not exist"
-msgstr "getObjectDescription: ¹æÔò %u ²»´æÔÚ"
-
-#: catalog/dependency.c:1594
-#, c-format
-msgid "getObjectDescription: Trigger %u does not exist"
-msgstr "getObjectDescription: ´¥·¢Æ÷ %u ²»´æÔÚ"
-
-#: catalog/dependency.c:1614
-#, c-format
-msgid "getObjectDescription: Schema %u does not exist"
-msgstr "getObjectDescription: ´ó¸Ù %u ²»´æÔÚ"
-
-#: catalog/dependency.c:1646 catalog/heap.c:1655 catalog/pg_constraint.c:470
-#: utils/adt/ruleutils.c:3235
-#, c-format
-msgid "cache lookup of relation %u failed"
-msgstr "»º³åÇøÖйØϵ %u µÄ²éÕÒʧ°Ü"
-
-#: catalog/heap.c:156 catalog/heap.c:159
-#, c-format
-msgid "SystemAttributeDefinition: invalid attribute number %d"
-msgstr "SystemAttributeDefinition: ÎÞЧµÄÊôÐԺŠ%d"
-
-#: catalog/heap.c:226
-#, c-format
-msgid ""
-"cannot create %s.%s: system catalog modifications are currently disallowed"
-msgstr "ÎÞ·¨´´½¨ %s.%s: ÏµÍ³±íÐÞ¸ÄÊDz»±»Í¬Ê±ÔÊÐíµÄ"
-
-#: catalog/heap.c:353
-#, c-format
-msgid "Number of columns is out of range (0 to %d)"
-msgstr "×ֶαàºÅ³¬³ö·¶Î§ (0 µ½ %d)"
-
-#: catalog/heap.c:368
-#, c-format
-msgid "name of column \"%s\" conflicts with an existing system column"
-msgstr "×Ö¶ÎÃû \"%s\" ÓëÒÑ´æÔÚµÄϵͳ×ֶγåÍ»"
-
-#: catalog/heap.c:382
-#, c-format
-msgid "column name \"%s\" is duplicated"
-msgstr "×Ö¶ÎÃû \"%s\" ±»¸´ÖÆ"
-
-#: catalog/heap.c:420
-#, c-format
-msgid ""
-"Attribute \"%s\" has an unknown type\n"
-"\tProceeding with relation creation anyway"
-msgstr ""
-"ÊôÐÔ \"%s\" ÓÐÒ»¸öδ֪ÀàÐÍ\n"
-"\t¼ÌÐø¹ØϵµÄ´´½¨"
-
-#: catalog/heap.c:424
-#, c-format
-msgid "Attribute \"%s\" has pseudo-type %s"
-msgstr "ÊôÐÔ \"%s\" ÓРpseudo-type %s"
-
-#: catalog/heap.c:431
-#, c-format
-msgid "Attribute \"%s\" has composite type %s"
-msgstr "ÊôÐÔ \"%s\" ÓлìºÍÀàÐÍ %s"
-
-#: catalog/heap.c:714
-#, c-format
-msgid "Relation '%s' already exists"
-msgstr "¹Øϵ '%s' ÒѾ­´æÔÚ"
-
-#: catalog/heap.c:871
-#, c-format
-msgid "DeleteRelationTuple: cache lookup failed for relation %u"
-msgstr "DeleteRelationTuple: Îª¹Øϵ %u ²éÕÒ»º³åÇøʧ°Ü"
-
-#: catalog/heap.c:950
-#, c-format
-msgid "RemoveAttributeById: Failed to find attribute %d in relation %u"
-msgstr "RemoveAttributeById: ÔÚ¹Øϵ %2$u ÖвéÕÒÊôÐÔ %1$d Ê§°Ü"
-
-#: catalog/heap.c:1029
-#, c-format
-msgid "RemoveAttrDefault: no default found for rel %u attnum %d"
-msgstr "RemoveAttrDefault: Ã»Óз¢ÏÖ rel %u attnum %d µÄĬÈÏÖµ"
-
-#: catalog/heap.c:1065
-#, c-format
-msgid "RemoveAttrDefaultById: cache lookup failed for attrdef %u"
-msgstr "RemoveAttrDefaultById: Îª attrdef %u ²éÕÒ»º³åÇøʧ°Ü"
-
-#: catalog/heap.c:1088
-#, c-format
-msgid "RemoveAttrDefaultById: cache lookup failed for rel %u attr %d"
-msgstr "RemoveAttrDefaultById: Îª rel %u attr %d ²éÕÒ»º³åÇøʧ°Ü"
-
-#: catalog/heap.c:1143
-#, c-format
-msgid "heap_drop_with_catalog: FlushRelationBuffers returned %d"
-msgstr "heap_drop_with_catalog: FlushRelationBuffers ·µ»Ø %d"
-
-#: catalog/heap.c:1264 parser/parse_relation.c:1503 utils/adt/ruleutils.c:3415
-#, c-format
-msgid "cache lookup of attribute %d in relation %u failed"
-msgstr "ÔÚ¹Øϵ %2$u ÖвéÕÒÊôÐÔ %1$d »º³åÇøʧ°Ü"
-
-#: catalog/heap.c:1522 commands/tablecmds.c:2747 commands/tablecmds.c:2785
-#, c-format
-msgid "constraint \"%s\" already exists for relation \"%s\""
-msgstr "Ô¼Êø \"%s\" ÒѾ­´æÔÚÓÚ¹Øϵ \"%s\" ÖÐ"
-
-#: catalog/heap.c:1536 commands/tablecmds.c:206
-#, c-format
-msgid "Duplicate CHECK constraint name: '%s'"
-msgstr ""
-
-#: catalog/heap.c:1596
-#, c-format
-msgid "Only relation \"%s\" can be referenced in CHECK constraint expression"
-msgstr ""
-
-#: catalog/heap.c:1603 commands/tablecmds.c:2867 commands/typecmds.c:1624
-msgid "cannot use subselect in CHECK constraint expression"
-msgstr ""
-
-#: catalog/heap.c:1605 commands/tablecmds.c:2869 commands/typecmds.c:1626
-msgid "cannot use aggregate function in CHECK constraint expression"
-msgstr ""
-
-#: catalog/heap.c:1710
-msgid "cannot use column references in DEFAULT clause"
-msgstr ""
-
-#: catalog/heap.c:1716
-msgid "DEFAULT clause must not return a set"
-msgstr ""
-
-#: catalog/heap.c:1722
-msgid "cannot use subselects in DEFAULT clause"
-msgstr "ÔÚĬÈÏ×Ó¾äÖв»ÄÜ subselects"
-
-#: catalog/heap.c:1724
-msgid "cannot use aggregate functions in DEFAULT clause"
-msgstr "ÔÚĬÈÏ×Ó¾äÖв»ÄÜʹÓþۼ¯º¯Êý"
-
-#: catalog/heap.c:1745 rewrite/rewriteHandler.c:510
-#, c-format
-msgid ""
-"Column \"%s\" is of type %s but default expression is of type %s\n"
-"\tYou will need to rewrite or cast the expression"
-msgstr ""
-
-#: catalog/index.c:124
-#, c-format
-msgid "Function %u does not exist"
-msgstr "º¯Êý %u ²»´æÔÚ"
-
-#: catalog/index.c:143 catalog/index.c:280
-#, c-format
-msgid "Opclass %u does not exist"
-msgstr "Opclass %u ²»´æÔÚ"
-
-#: catalog/index.c:157 catalog/index.c:293
-#, c-format
-msgid "Type %u does not exist"
-msgstr "ÀàÐÍ %u ²»´æÔÚ"
-
-#: catalog/index.c:238
-#, c-format
-msgid "cannot create index: column %d does not exist"
-msgstr "ÎÞ·¨´´½¨Ë÷Òý: ×ֶΠ%d ²»´æÔÚ"
-
-#: catalog/index.c:543
-msgid "must index at least one column"
-msgstr "Ë÷Òý±ØÐèÖÁÉÙΪһ¸ö×Ö¶Î"
-
-#: catalog/index.c:548
-msgid "User-defined indexes on system catalogs are not supported"
-msgstr "ÔÚϵͳ±íÉÏÓû§¶¨ÒåµÄË÷ÒýÊDz»±»Ö§³ÖµÄ"
-
-#: catalog/index.c:558
-msgid "Shared indexes cannot be created after initdb"
-msgstr "ÔÚ initdb Ö®ºó, ²»ÄÜ´´½¨¹²ÏíË÷Òý"
-
-#: catalog/index.c:561
-#, c-format
-msgid "relation named \"%s\" already exists"
-msgstr "Ãû×ÖΪ \"%s\" µÄ¹ØϵÒѾ­´æÔÚ"
-
-#: catalog/index.c:674
-msgid "index_create: constraint must be PRIMARY or UNIQUE"
-msgstr "index_create: Ô¼Êø±ØÐèΪ PRIMARY »ò UNIQUE"
-
-#: catalog/index.c:824
-#, c-format
-msgid "index_drop: cache lookup failed for index %u"
-msgstr "index_drop: ÎªË÷Òý %u ²éÕÒ»º³åÇøʧ°Ü"
-
-#: catalog/index.c:837
-#, c-format
-msgid "index_drop: FlushRelationBuffers returned %d"
-msgstr "index_drop: FlushRelationBuffers ·µ»Ø %d"
-
-#: catalog/index.c:1039
-#, c-format
-msgid "relation %s isn't an indexable relation"
-msgstr ""
-
-#: catalog/index.c:1110
-#, c-format
-msgid "setRelhasindex: cannot find relation %u in pg_class"
-msgstr "setRelhasindex: ÔÚ pg_class ÖÐÎÞ·¨ÕÒµ½¹Øϵ %u"
-
-#: catalog/index.c:1226
-#, c-format
-msgid "setNewRelfilenode: cannot find relation %u in pg_class"
-msgstr "setNewRelfilenode: ÔÚ pg_class ÖÐÎÞ·¨ÕÒµ½¹Øϵ %u"
-
-#: catalog/index.c:1338
-#, c-format
-msgid "UpdateStats: cannot find relation %u in pg_class"
-msgstr "UpdateStats: ÔÚ pg_class ÖÐÎÞ·¨ÕÒµ½¹Øϵ %u"
-
-#: catalog/index.c:1617
-msgid "IndexBuildHeapScan: concurrent insert in progress"
-msgstr ""
-
-#: catalog/index.c:1632
-msgid "IndexBuildHeapScan: concurrent delete in progress"
-msgstr ""
-
-#: catalog/index.c:1637 commands/vacuum.c:1214 commands/vacuumlazy.c:353
-#: commands/vacuumlazy.c:841
-msgid "Unexpected HeapTupleSatisfiesVacuum result"
-msgstr ""
-
-#: catalog/index.c:1725
-#, c-format
-msgid "IndexGetRelation: can't find index id %u"
-msgstr ""
-
-#: catalog/index.c:1774
-msgid "reindex_index: can't open index relation"
-msgstr ""
-
-#: catalog/index.c:1785
-msgid "reindex_index: can't open heap relation"
-msgstr ""
-
-#: catalog/index.c:1799 catalog/index.c:1922
-#, c-format
-msgid "the target relation %u is shared"
-msgstr ""
-
-#: catalog/index.c:1805
-#, c-format
-msgid "the target relation %u is nailed"
-msgstr ""
-
-#: catalog/namespace.c:164 catalog/namespace.c:211 catalog/namespace.c:1150
-#: parser/parse_expr.c:938 parser/parse_target.c:147
-#, fuzzy
-msgid "Cross-database references are not implemented"
-msgstr "δʵÏÖÌõ¼þ¹¤¾ßÓï¾ä"
-
-#: catalog/namespace.c:182
-#, c-format
-msgid "Relation \"%s\".\"%s\" does not exist"
-msgstr "¹Øϵ \"%s\".\"%s\" ²»´æÔÚ"
-
-#: catalog/namespace.c:218
-msgid "TEMP tables may not specify a namespace"
-msgstr ""
-
-#: catalog/namespace.c:232 catalog/namespace.c:1179 catalog/namespace.c:1214
-#: catalog/namespace.c:1768
-#, c-format
-msgid "Namespace \"%s\" does not exist"
-msgstr "Ãû×Ö¿Õ¼ä \"%s\" ²»´æÔÚ"
-
-#: catalog/namespace.c:242 catalog/namespace.c:1224
-msgid "No namespace has been selected to create in"
-msgstr ""
-
-#: catalog/namespace.c:295
-#, c-format
-msgid "Cache lookup failed for relation %u"
-msgstr "Ϊ¹Øϵ %u ²éÕÒ»º³åÇøʧ°Ü"
-
-#: catalog/namespace.c:377
-#, c-format
-msgid "Cache lookup failed for type %u"
-msgstr "ΪÀàÐÍ %u ²éÕÒ»º³åÇøʧ°Ü"
-
-#: catalog/namespace.c:578
-#, c-format
-msgid "Cache lookup failed for procedure %u"
-msgstr "Ϊ¹ý³Ì %u ²éÕÒ»º³åÇøʧ°Ü"
-
-#: catalog/namespace.c:790
-#, c-format
-msgid "Cache lookup failed for operator %u"
-msgstr "ÔÚ»º³åÖвéÕÒ²Ù×÷·û %u Ê§°Ü"
-
-#: catalog/namespace.c:1003
-#, fuzzy, c-format
-msgid "Cache lookup failed for opclass %u"
-msgstr "ÔÚ»º³åÖвéÕÒÀàÐÍ %u Ê§°Ü"
-
-#: catalog/namespace.c:1084
-#, fuzzy, c-format
-msgid "Cache lookup failed for conversion %u"
-msgstr "SetRelationRuleStatus: Îª¹Øϵ %u ²éÕÒ»º³åÇøʧ°Ü"
-
-#: catalog/namespace.c:1153 gram.y:2293 gram.y:6848
-#, c-format
-msgid "Improper qualified name (too many dotted names): %s"
-msgstr "²»ºÏÊʵÄÌõ¼þÃû³Æ (Ãû×ÖÖÐÌ«¶àµÄµã·ûºÅ): %s"
-
-#: catalog/namespace.c:1257
-msgid "Improper relation name (too many dotted names)"
-msgstr "²»ºÏÊʵĹØϵÃû³Æ (Ãû×ÖÖÐÌ«¶àµÄµã·ûºÅ)"
-
-#: catalog/namespace.c:1469
-msgid "recomputeNamespacePath: invalid list syntax"
-msgstr ""
-
-#: catalog/namespace.c:1598
-#, fuzzy, c-format
-msgid "%s: not authorized to create temp tables"
-msgstr "´´½¨ÁÙʱÎļþ %s Ê§°Ü"
-
-#: catalog/pg_aggregate.c:62
-msgid "no aggregate name supplied"
-msgstr "ûÓÐÌṩ¾Û¼¯Ãû³Æ"
-
-#: catalog/pg_aggregate.c:65
-msgid "aggregate must have a transition function"
-msgstr "¾Û¼¯±ØÐèÓÐÒ»¸öת»»º¯Êý"
-
-#: catalog/pg_aggregate.c:87
-#, c-format
-msgid "return type of transition function %s is not %s"
-msgstr "ת»»º¯ÊýµÄ·µ»ØÀàÐÍ %s ²»ÊÇ %s"
-
-#: catalog/pg_aggregate.c:99
-msgid ""
-"must not omit initval when transfn is strict and transtype is not compatible "
-"with input type"
-msgstr ""
-
-#: catalog/pg_constraint.c:437
-#, c-format
-msgid "RemoveConstraintById: constraint %u not found"
-msgstr "RemoveConstraintById: Ô¼Êø %u Ã»ÕÒµ½"
-
-#: catalog/pg_constraint.c:475
-#, c-format
-msgid "RemoveConstraintById: relation %s has relchecks = 0"
-msgstr ""
-
-#: catalog/pg_constraint.c:502
-#, c-format
-msgid "RemoveConstraintById: Constraint %u is not a known type"
-msgstr "RemoveConstraintById: Ô¼Êø %u ÊÇÒ»¸öδ֪ÀàÐÍ"
-
-#: catalog/pg_conversion.c:57
-msgid "no conversion name supplied"
-msgstr "ûÓÐÌṩԼÊøÃû³Æ"
-
-#: catalog/pg_conversion.c:64
-#, c-format
-msgid "conversion name \"%s\" already exists"
-msgstr "ת»»Ãû³Æ \"%s\" ÒѾ­´æÔÚ"
-
-#: catalog/pg_conversion.c:75
-#, c-format
-msgid "default conversion for %s to %s already exists"
-msgstr "ĬÈϵĠ%s µ½ %s µÄת»»ÒѾ­´æÔÚ"
-
-#: catalog/pg_conversion.c:141 catalog/pg_conversion.c:308
-#, c-format
-msgid "Conversion %u search from syscache failed"
-msgstr ""
-
-#: catalog/pg_conversion.c:146
-msgid "DROP CONVERSION: permission denied"
-msgstr "DROP_CONVERSION: Ã»ÓÐ×㹻ȨÏÞ"
-
-#: catalog/pg_conversion.c:192
-#, c-format
-msgid "conversion %u does not exist"
-msgstr "ת»» %u ²»´æÔÚ"
-
-#: catalog/pg_conversion.c:302 commands/conversioncmds.c:97
-#, c-format
-msgid "conversion %s not found"
-msgstr "δÕÒµ½×ª»» %s"
-
-#: catalog/pg_largeobject.c:108
-#, c-format
-msgid "LargeObjectDrop: large object %u not found"
-msgstr "LargeObjectDrop: Î´ÕÒµ½´ó¶ÔÏó %u"
-
-#: catalog/pg_namespace.c:43
-msgid "no namespace name supplied"
-msgstr "ûÓÐÌṩÃû×Ö¿Õ¼äÃû³Æ"
-
-#: catalog/pg_namespace.c:49
-#, c-format
-msgid "namespace \"%s\" already exists"
-msgstr "Ãû×Ö¿Õ¼ä \"%s\" ÒѾ­´æÔÚ"
-
-#: catalog/pg_operator.c:215 catalog/pg_operator.c:401
-#, c-format
-msgid "\"%s\" is not a valid operator name"
-msgstr "\"%s\" ²»ÊÇÒ»¸öÓÐЧµÄ²Ù×÷·ûÃû³Æ"
-
-#: catalog/pg_operator.c:404
-msgid "at least one of leftarg or rightarg must be specified"
-msgstr ""
-
-#: catalog/pg_operator.c:410
-msgid "only binary operators can have commutators"
-msgstr ""
-
-#: catalog/pg_operator.c:412
-msgid "only binary operators can have join selectivity"
-msgstr ""
-
-#: catalog/pg_operator.c:414
-msgid "only binary operators can hash"
-msgstr ""
-
-#: catalog/pg_operator.c:416
-msgid "only binary operators can mergejoin"
-msgstr ""
-
-#: catalog/pg_operator.c:426
-#, c-format
-msgid "OperatorDef: operator \"%s\" already defined"
-msgstr "OperatorDef: ²Ù×÷·û \"%s\" ÒѾ­´æÔÚ"
-
-#: catalog/pg_operator.c:624
-#, c-format
-msgid "OperatorDef: operator %u not found"
-msgstr "OperatorDef: Î´ÕÒµ½²Ù×÷·û %u"
-
-#: catalog/pg_operator.c:712
-msgid "operator cannot be its own negator or sort operator"
-msgstr ""
-
-#: catalog/pg_operator.c:729
-#, c-format
-msgid "OperatorDef: can't create operator shell \"%s\""
-msgstr ""
-
-#: catalog/pg_proc.c:86 commands/functioncmds.c:140 parser/parse_func.c:1393
-#, c-format
-msgid "functions cannot have more than %d arguments"
-msgstr "º¯Êý²»Äܳ¬¹ý %d ¸ö²ÎÊý"
-
-#: catalog/pg_proc.c:127
-msgid "lookup for procedure by source needs fix (Jan)"
-msgstr ""
-
-#: catalog/pg_proc.c:139
-#, c-format
-msgid "method %s already an attribute of type %s"
-msgstr ""
-
-#: catalog/pg_proc.c:189
-#, c-format
-msgid "function %s already exists with same argument types"
-msgstr "º¯Êý %s ÒѾ­´æÔÚ²¢ÇÒÓÐÏàͬµÄ²ÎÊýÀàÐÍ"
-
-#: catalog/pg_proc.c:192
-#, c-format
-msgid "ProcedureCreate: you do not have permission to replace function %s"
-msgstr "ProcedureCreate: ÄúûÓÐȨÏÞÖØÖú¯Êý %s"
-
-#: catalog/pg_proc.c:201
-msgid ""
-"ProcedureCreate: cannot change return type of existing function.\n"
-"\tUse DROP FUNCTION first."
-msgstr ""
-"ProcedureCreate: ²»ÄܸıäÒѾ­´æÔڵĺ¯ÊýµÄ·µ»ØÖµÀàÐÍ.\n"
-"\tÏÈʹÓàDROP FUNCTION."
-
-#: catalog/pg_proc.c:208
-#, c-format
-msgid "function %s is an aggregate"
-msgstr "º¯Êý %s ÊÇÒ»¸ö¾Û¼¯º¯Êý"
-
-#: catalog/pg_proc.c:211
-#, c-format
-msgid "function %s is not an aggregate"
-msgstr "º¯Êý %s ²»ÊÇÒ»¸ö¾Û¼¯º¯Êý"
-
-#: catalog/pg_proc.c:323
-#, c-format
-msgid "function declared to return %s, but no SELECT provided"
-msgstr "º¯Êý±»ÉùÃ÷·µ»Ø %s, µ«ÊÇûÓРSELECT ±»Ìṩ"
-
-#: catalog/pg_proc.c:341
-msgid "function declared to return void, but final statement is a SELECT"
-msgstr "º¯Êý±»ÉùÃ÷·µ»Ø void, µ«ÊÇ×îÖÕÉùÃ÷ÊÇÒ»¸ö SELECT"
-
-#: catalog/pg_proc.c:347
-#, c-format
-msgid "function declared to return %s, but final statement is not a SELECT"
-msgstr "º¯Êý±»ÉùÃ÷·µ»Ø %s, µ«ÊÇ×îÖÕÉùÃ÷²»ÊÇÒ»¸ö SELECT"
-
-#: catalog/pg_proc.c:368
-#, c-format
-msgid "function declared to return %s returns multiple columns in final SELECT"
-msgstr "º¯Êý±»ÉùÃ÷·µ»Ø %s, ÔÚ×îÖÕ SELECT ·µ»Ø¶à¸ö×Ö¶Î"
-
-#: catalog/pg_proc.c:373
-#, c-format
-msgid "return type mismatch in function: declared to return %s, returns %s"
-msgstr "º¯Êý·µ»ØÀàÐͲ»Æ¥Åä: ÉùÃ÷·µ»Ø %s, Êµ¼Ê·µ»Ø %s"
-
-#: catalog/pg_proc.c:421 catalog/pg_proc.c:447
-#, c-format
-msgid ""
-"function declared to return %s does not SELECT the right number of columns (%"
-"d)"
-msgstr "º¯Êý±»ÉùÃ÷·µ»Ø %s, ÊÇ·ñ SELECT ÕýÈ·µÄ×ֶθöÊý (%d)"
-
-#: catalog/pg_proc.c:430
-#, c-format
-msgid "function declared to return %s returns %s instead of %s at column %d"
-msgstr "º¯Êý±»ÉùÃ÷·µ»Ø %1$s, ÔÚ×ֶΠ%4$d ·µ»Ø %2$s Ìæ´ú %3$s"
-
-#: catalog/pg_proc.c:486 catalog/pg_proc.c:525 catalog/pg_proc.c:568
-#: commands/functioncmds.c:739 utils/adt/ruleutils.c:3277
-#, c-format
-msgid "cache lookup of function %u failed"
-msgstr "ÔÚ»º³åÖвéÕÒº¯Êý %u Ê§°Ü"
-
-#: catalog/pg_proc.c:491 catalog/pg_proc.c:530 catalog/pg_proc.c:590
-msgid "null prosrc"
-msgstr "ûÓРprosrc"
-
-#: catalog/pg_proc.c:495
-#, c-format
-msgid "there is no built-in function named \"%s\""
-msgstr "ûÓÐÃûΪ \"%s\" µÄÄÚ½¨º¯Êý"
-
-#: catalog/pg_proc.c:535
-msgid "null probin"
-msgstr "ûÓРprobin"
-
-#: catalog/pg_proc.c:578
-#, c-format
-msgid "SQL functions cannot return type %s"
-msgstr "SQL º¯ÊýÎÞ·¨·µ»Ø %s ÀàÐÍ"
-
-#: catalog/pg_proc.c:584
-#, c-format
-msgid "SQL functions cannot have arguments of type %s"
-msgstr "SQL º¯Êý²»ÄÜÓР%s ÀàÐ͵IJÎÊý"
-
-#: catalog/pg_type.c:187 catalog/pg_type.c:191
-#, c-format
-msgid "TypeCreate: invalid type internal size %d"
-msgstr "TypeCreate: ÎÞЧÀàÐÍÄÚ²¿´óС %d"
-
-#: catalog/pg_type.c:196
-msgid "TypeCreate: fixed size types must have storage PLAIN"
-msgstr "TypeCreate: ¹Ì¶¨´óСÀàÐͱØÐèÓÐÃ÷È·µÄ´æ´¢"
-
-#: catalog/pg_type.c:273
-#, c-format
-msgid "type %s already exists"
-msgstr "ÀàÐÍ %s ÒѾ­´æÔÚ"
-
-#: catalog/pg_type.c:464
-#, c-format
-msgid "type %s does not exist"
-msgstr "ÀàÐÍ %s ²»´æÔÚ"
-
-#: catalog/pg_type.c:470
-#, c-format
-msgid "type named %s already exists"
-msgstr "ÀàÐÍÃû×Ö %s ÒѾ­´æÔÚ"
-
-#: commands/aggregatecmds.c:93
-#, c-format
-msgid "DefineAggregate: attribute \"%s\" not recognized"
-msgstr "DefineAggregate: ÊôÐÔ \"%s\" ²»±»ÈÏ¿É"
-
-#: commands/aggregatecmds.c:101
-msgid "Define: \"basetype\" unspecified"
-msgstr "Define: \"basetype\" Î´±»Ö¸¶¨"
-
-#: commands/aggregatecmds.c:103
-msgid "Define: \"stype\" unspecified"
-msgstr "Define: \"stype\" Î´±»Ö¸¶¨"
-
-#: commands/aggregatecmds.c:105
-msgid "Define: \"sfunc\" unspecified"
-msgstr "Define: \"sfunc\" Î´±»Ö¸¶¨"
-
-#: commands/aggregatecmds.c:123
-#, c-format
-msgid "Aggregate transition datatype cannot be %s"
-msgstr "¾Û¼¯×ª»»Êý¾ÝÀàÐͲ»ÄÜΪ %s"
-
-#: commands/aggregatecmds.c:174
-#, c-format
-msgid "RemoveAggregate: couldn't find pg_proc tuple for %s"
-msgstr "RemoveAggregate: ÎÞ·¨Îª %s ÕÒµ½ pg_proc Ôª×é"
-
-#: commands/analyze.c:199
-#, c-format
-msgid "Skipping \"%s\" --- only table or database owner can ANALYZE it"
-msgstr "ºöÂÔ \"%s\" --- Ö»Óбí»òÊý¾Ý¿âµÄËùÓÐÕßÄÜ ANALYZE Ëü"
-
-#: commands/analyze.c:213 commands/vacuum.c:791
-#, c-format
-msgid ""
-"Skipping \"%s\" --- can not process indexes, views or special system tables"
-msgstr "ºöÂÔ \"%s\" --- ÎÞ·¨´¦ÀíË÷Òý, ÊÓͼ»òÌØÊâµÄϵͳ±í"
-
-#: commands/analyze.c:242
-#, c-format
-msgid "Analyzing %s.%s"
-msgstr "ÕýÔÚ·ÖÎö %s.%s"
-
-#: commands/analyze.c:431 utils/adt/ruleutils.c:2605
-#, c-format
-msgid "cache lookup of type %u failed"
-msgstr "ΪÀàÐÍ %u ²éÕÒ»º³åÇøʧ°Ü"
-
-#: commands/analyze.c:638
-#, c-format
-msgid "acquire_sample_rows: ReadBuffer(%s,%u) failed"
-msgstr "acquire_sample_rows: ReadBuffer(%s,%u) Ê§°Ü"
-
-#: commands/async.c:153
-#, c-format
-msgid "Async_Notify: %s"
-msgstr "Async_Notify: %s"
-
-#: commands/async.c:201
-#, c-format
-msgid "Async_Listen: %s"
-msgstr "Async_Listen: %s"
-
-#: commands/async.c:224
-#, c-format
-msgid "Async_Listen: We are already listening on %s"
-msgstr "Async_Listen: ÎÒÃÇÕýÔÚ %s ÉϼàÌý"
-
-#: commands/async.c:296
-#, c-format
-msgid "Async_Unlisten %s"
-msgstr "Async_Unlisten %s"
-
-#: commands/async.c:354
-msgid "Async_UnlistenAll"
-msgstr "Async_UnlistenAll"
-
-#: commands/async.c:456
-msgid "AtCommit_Notify"
-msgstr "AtCommit_Notify"
-
-#: commands/async.c:488
-msgid "AtCommit_Notify: notifying self"
-msgstr "AtCommit_Notify: ÕýÔÚͨ¸æ×Ô¼º"
-
-#: commands/async.c:495
-#, c-format
-msgid "AtCommit_Notify: notifying pid %d"
-msgstr "AtCommit_Notify: ÕýÔÚͨ¸æ pid Îª %d"
-
-#: commands/async.c:544
-msgid "AtCommit_Notify: done"
-msgstr "AtCommit_Notify: Íê³É"
-
-#: commands/async.c:631
-msgid "Async_NotifyHandler: perform async notify"
-msgstr "Async_NotifyHandler: Ö´ÐРasync Í¨¸æ"
-
-#: commands/async.c:636
-msgid "Async_NotifyHandler: done"
-msgstr "Async_NotifyHandler: Íê³É"
-
-#: commands/async.c:710
-msgid "EnableNotifyInterrupt: perform async notify"
-msgstr "EnableNotifyInterrupt: Ö´ÐРasync Í¨¸æ"
-
-#: commands/async.c:715
-msgid "EnableNotifyInterrupt: done"
-msgstr "EnableNotifyInterrupt: Íê³É"
-
-#: commands/async.c:766
-msgid "ProcessIncomingNotify"
-msgstr "ProcessIncomingNotify"
-
-#: commands/async.c:802
-#, c-format
-msgid "ProcessIncomingNotify: received %s from %d"
-msgstr "ProcessIncomingNotify: ´Ó %2$d ½ÓÊÕµ½ %1$s"
-
-#: commands/async.c:837
-msgid "ProcessIncomingNotify: done"
-msgstr "ProcessIncomingNotify: Íê³É"
-
-#: commands/async.c:864
-#, c-format
-msgid "NOTIFY for %s"
-msgstr "Ϊ %s Í¨¸æ"
-
-#: commands/cluster.c:119
-#, c-format
-msgid "CLUSTER: You do not own relation %s"
-msgstr "CLUSTER: Äã²»ÊǹØϵ %s µÄËùÓÐÕß"
-
-#: commands/cluster.c:137 commands/cluster.c:570 commands/cluster.c:589
-#, c-format
-msgid "Cache lookup failed for index %u"
-msgstr "ΪË÷Òý %u ²éÕÒ»º³åÇøʧ°Ü"
-
-#: commands/cluster.c:150
-#, c-format
-msgid "CLUSTER: No previously clustered index found on table \"%s\""
-msgstr "CLUSTER: ÔÚ±í \"%s\" ÖÐδÕÒµ½ÏÈÇ°½¨´ØµÄË÷Òý"
-
-#: commands/cluster.c:159
-#, c-format
-msgid "CLUSTER: cannot find index \"%s\" for table \"%s\""
-msgstr "CLUSTER: ÔÚ±í \"%2$s\" ÖÐÎÞ·¨ÕÒµ½Ë÷Òý \"%1$s\""
-
-#: commands/cluster.c:313
-#, c-format
-msgid "CLUSTER: \"%s\" is not an index for table \"%s\""
-msgstr "CLUSTER: ¶ÔÓÚ±í \"%2$s\" \"%1$s\" ²»ÊÇÒ»¸öË÷Òý"
-
-#: commands/cluster.c:324
-msgid "CLUSTER: cannot cluster on partial index"
-msgstr "CLUSTER: ÎÞ·¨¶Ô²¿·ÖË÷Òý½¨´Ø"
-
-#: commands/cluster.c:336
-msgid ""
-"CLUSTER: cannot cluster on functional index when index access method does "
-"not handle nulls"
-msgstr ""
-
-#: commands/cluster.c:340
-#, c-format
-msgid ""
-"CLUSTER: cannot cluster when index access method does not handle nulls\n"
-"\tYou may be able to work around this by marking column \"%s\" NOT NULL"
-msgstr ""
-
-#: commands/cluster.c:353
-#, c-format
-msgid "CLUSTER: cannot cluster system relation \"%s\""
-msgstr "CLSTER: ²»Äܼ¯ÈºÏµÍ³¹Øϵ \"%s\""
-
-#: commands/cluster.c:361
-#, fuzzy
-msgid "CLUSTER cannot be used on temp tables of other processes"
-msgstr "²»ÄÜÔÚϵͳ±íÉÏʹÓàTRUNCATE. '%s' ÊÇÒ»¸öϵͳ±í"
-
-#: commands/cluster.c:656
-#, c-format
-msgid "cache lookup failed for index %u"
-msgstr "Ϊ¹Øϵ %u ²éÕÒ»º³åÇøʧ°Ü"
-
-#: commands/cluster.c:708 commands/cluster.c:715
-#, c-format
-msgid "CLUSTER: Cannot find tuple for relation %u"
-msgstr "CLUSTER: ÎÞ·¨Îª¹Øϵ %u ÕÒµ½Ôª×é"
-
-#: commands/cluster.c:727 commands/cluster.c:733
-#, c-format
-msgid "CLUSTER: FlushRelationBuffers returned %d"
-msgstr "CLUSTER: FlushRelationBuffers ·µ»Ø %d"
-
-#: commands/cluster.c:795
-msgid "CLUSTER: expected both swapped tables to have TOAST tables"
-msgstr ""
-
-#: commands/cluster.c:801 commands/cluster.c:806
-#, c-format
-msgid "CLUSTER: expected one dependency record for TOAST table, found %ld"
-msgstr ""
-
-#: commands/comment.c:111
-#, c-format
-msgid "An attempt was made to comment on a unknown type: %d"
-msgstr "Ϊ½âÊÍÒ»¸öδ֪ÀàÐÍ×öÁËÒ»´Î³¢ÊÔ: %d"
-
-#: commands/comment.c:306
-#, c-format
-msgid "relation \"%s\" is not an index"
-msgstr "¹Øϵ \"%s\" ²»ÊÇÒ»¸öË÷Òý"
-
-#: commands/comment.c:311
-#, c-format
-msgid "relation \"%s\" is not a sequence"
-msgstr "¹Øϵ \"%s\" ²»ÊÇÒ»¸öÐòÁÐ"
-
-#: commands/comment.c:316
-#, c-format
-msgid "relation \"%s\" is not a table"
-msgstr "¹Øϵ \"%s\" ²»ÊÇÒ»¸ö±í"
-
-#: commands/comment.c:321
-#, c-format
-msgid "relation \"%s\" is not a view"
-msgstr "¹Øϵ \"%s\" ²»ÊÇÒ»¸öÊÓͼ"
-
-#: commands/comment.c:357
-msgid "CommentAttribute: must specify relation.attribute"
-msgstr "CommentAttribute: ±ØÐèÖ¸¶¨ ¹Øϵ.ÊôÐÔ"
-
-#: commands/comment.c:374 commands/tablecmds.c:1951 commands/tablecmds.c:2085
-#: commands/tablecmds.c:2202 commands/tablecmds.c:2535
-#: optimizer/prep/prepunion.c:808 optimizer/prep/prepunion.c:985
-#: parser/parse_func.c:1176 parser/parse_relation.c:1551
-#: parser/parse_relation.c:1614 parser/parse_relation.c:1770
-#: parser/parse_type.c:88
-#, c-format
-msgid "Relation \"%s\" has no column \"%s\""
-msgstr "¹Øϵ \"%s\" Ã»ÓÐ×ֶΠ\"%s\""
-
-#: commands/comment.c:403
-msgid "CommentDatabase: database name may not be qualified"
-msgstr ""
-
-#: commands/comment.c:409 commands/dbcommands.c:531 utils/adt/acl.c:1123
-#, c-format
-msgid "database \"%s\" does not exist"
-msgstr "Êý¾Ý¿â \"%s\" ²»´æÔÚ"
-
-#: commands/comment.c:414
-#, c-format
-msgid "you are not permitted to comment on database \"%s\""
-msgstr "Äã²»±»ÔÊÐíΪÊý¾Ý¿â \"%s\" ×¢ÊÍ"
-
-#: commands/comment.c:419
-msgid "Database comments may only be applied to the current database"
-msgstr "Êý¾Ý¿â×¢ÊÍÖ»ÄÜÊÊÓõ±Ç°Êý¾Ý¿â"
-
-#: commands/comment.c:442
-msgid "CommentSchema: schema name may not be qualified"
-msgstr "CommentSchema: ´ó¸ÙÃû³ÆÒ²Ðí²»·ûºÏÌõ¼þ"
-
-#: commands/comment.c:449
-#, c-format
-msgid "CommentSchema: Schema \"%s\" could not be found"
-msgstr "CommentSchema: ÎÞ·¨ÕÒµ½´ó¸Ù \"%s\""
-
-#: commands/comment.c:521 commands/comment.c:555
-#, c-format
-msgid "rule \"%s\" does not exist"
-msgstr "¹æÔò \"%s\" ²»´æÔÚ"
-
-#: commands/comment.c:527
-#, c-format
-msgid ""
-"There are multiple rules \"%s\"\n"
-"\tPlease specify a relation name as well as a rule name"
-msgstr ""
-"Óжà¸ö \"%s\" ¹æÔò\n"
-"\tÇëÖ¸¶¨¹ØϵÃûºÍ¹æÔòÃû"
-
-#: commands/comment.c:732
-msgid "CommentTrigger: must specify relation and trigger"
-msgstr "CommentTrigger: ±ØÐèÖ¸¶¨¹ØϵºÍ´¥·¢Æ÷"
-
-#: commands/comment.c:765
-#, c-format
-msgid "trigger \"%s\" for relation \"%s\" does not exist"
-msgstr "¶ÔÓÚ¹Øϵ \"%2$s\" µÄ \"%1$s\" ´¥·¢Æ÷²»´æÔÚ"
-
-#: commands/comment.c:807
-msgid "CommentConstraint: must specify relation and constraint"
-msgstr "CommentConstraint: ±ØÐèÖ¸¶¨¹ØϵºÍÔ¼Êø"
-
-#: commands/comment.c:841
-#, c-format
-msgid "Relation \"%s\" has multiple constraints named \"%s\""
-msgstr "¹Øϵ \"%s\" Óжà¸öÃûΪ \"%s\" µÄÔ¼Êø"
-
-#: commands/comment.c:851
-#, c-format
-msgid "constraint \"%s\" for relation \"%s\" does not exist"
-msgstr "¹Øϵ \"%2$s\" µÄÔ¼Êø \"%1$s\" ²»´æÔÚ"
-
-#: commands/conversioncmds.c:58
-#, c-format
-msgid "Invalid for encoding name: %s"
-msgstr "ÎÞЧµÄ±àÂëÃû: %s"
-
-#: commands/conversioncmds.c:62
-#, c-format
-msgid "Invalid to encoding name: %s"
-msgstr "ÎÞЧµÄ±àÂëÃû: %s"
-
-#: commands/copy.c:128
-#, c-format
-msgid "CopySendData: %m"
-msgstr "CopySendData: %m"
-
-#: commands/copy.c:303
-msgid "COPY: BINARY option appears more than once"
-msgstr "COPY: BINARY Ñ¡Ïî³öÏÖÁ˶à´Î"
-
-#: commands/copy.c:310
-msgid "COPY: OIDS option appears more than once"
-msgstr "COPY: OIDS Ñ¡Ïî³öÏÖÁ˶à´Î"
-
-#: commands/copy.c:317
-msgid "COPY: DELIMITER string may only be defined once in query"
-msgstr "COPY: ÔÚ²éѯÖРDELIMITER Ö»Äܱ»¶¨ÒåÒ»´Î"
-
-#: commands/copy.c:324
-msgid "COPY: NULL representation may only be defined once in query"
-msgstr "COPY: ÔÚ²éѯÖРNULL ±íʾ·¨Ö»Äܱ»¶¨ÒåÒ»´Î"
-
-#: commands/copy.c:329
-#, c-format
-msgid "COPY: option \"%s\" not recognized"
-msgstr "COPY: Ñ¡Ïî \"%s\" ²»±»ÈÏ¿É"
-
-#: commands/copy.c:334
-msgid "You can not specify the DELIMITER in BINARY mode."
-msgstr "ÔÚ BINARY Ä£Ê½ÖÐÄã²»ÄÜÖ¸¶¨ DELIMITER."
-
-#: commands/copy.c:337
-msgid "You can not specify NULL in BINARY mode."
-msgstr "ÔÚ BINARY Ä£Ê½ÖÐÄã²»ÄÜÖ¸¶¨ NULL."
-
-#: commands/copy.c:353 executor/execMain.c:468 tcop/utility.c:222
-msgid "transaction is read-only"
-msgstr "ÊÂÎñÊÇÖ»¶Á"
-
-#: commands/copy.c:361
-msgid ""
-"You must have Postgres superuser privilege to do a COPY directly to or from "
-"a file.  Anyone can COPY to stdout or from stdin.  Psql's \\copy command "
-"also works for anyone."
-msgstr ""
-"Äã±ØÐèÓРPostgres ³¬¼¶Óû§È¨ÏÞ²ÅÄÜÖ±½Ó COPY µ½Ò»¸öÎļþ»ò´ÓÒ»¸öÎļþ COPY³öÀ´. "
-"ÈκÎÈË¿ÉÒÔ COPY µ½±ê×¼Êä³ö»òÀ´×Ô±ê×¼ÊäÈëµÄ COPY. ¿ÉÒÔʹÓàPsql µÄ \\copyÃüÁî."
-
-#: commands/copy.c:370
-msgid "COPY BINARY is not supported to stdout or from stdin"
-msgstr "COPOY BINARY ²»Ö§³ÖÊä³öµ½±ê×¼Êä³ö»òÀ´×Ô±ê×¼ÊäÈë"
-
-#: commands/copy.c:376
-msgid "COPY delimiter must be a single character"
-msgstr "COPY µÄ·Ö¸ô·û±ØÐèÊǵ¥¸ö×Ö·û"
-
-#: commands/copy.c:382
-#, c-format
-msgid "COPY: table \"%s\" does not have OIDs"
-msgstr "COPY: ±í \"%s\" Ã»ÓРOID"
-
-#: commands/copy.c:403 commands/copy.c:448
-#, c-format
-msgid "You cannot copy view %s"
-msgstr "Äã²»¿ÉÒÔ¿½±´ÊÓͼ %s"
-
-#: commands/copy.c:406
-#, c-format
-msgid "You cannot change sequence relation %s"
-msgstr "Äã²»¿ÉÒԸıäÐòÁйØϵ %s"
-
-#: commands/copy.c:409 commands/copy.c:454
-#, c-format
-msgid "You cannot copy object %s"
-msgstr "Äã²»¿ÉÒÔ¿½±´Ä¿±ê %s"
-
-#: commands/copy.c:429
-#, c-format
-msgid ""
-"COPY command, running in backend with effective uid %d, could not open file "
-"'%s' for reading.  Errno = %s (%d)."
-msgstr ""
-"COPY ÃüÁî, ÒÔÓÐЧ uid %d ÔÚºò¶ËÔËÐÐ, ÎÞ·¨Îª¶ÁÈ¡´ò¿ªÎļþ '%s'. Errno= %s (%d)."
-
-#: commands/copy.c:438 commands/copy.c:494
-#, c-format
-msgid "COPY: %s is a directory"
-msgstr "COPY: %s ÊÇÒ»¸öĿ¼"
-
-#: commands/copy.c:451
-#, c-format
-msgid "You cannot copy sequence %s"
-msgstr "Äã²»¿ÉÒÔ¿½±´ÐòÁР%s"
-
-#: commands/copy.c:478
-msgid "Relative path not allowed for server side COPY command"
-msgstr "·þÎñÆ÷¶Ë COPY ÃüÁî²»ÔÊÐíÏà¶Ô·¾¶"
-
-#: commands/copy.c:486
-#, c-format
-msgid ""
-"COPY command, running in backend with effective uid %d, could not open file "
-"'%s' for writing.  Errno = %s (%d)."
-msgstr ""
-"COPY ÃüÁî, ÒÔÓÐЧ uid %d ÔÚºò¶ËÔËÐÐ, ÎÞ·¨ÎªÐ´´ò¿ªÎļþ '%s'. Errno= %s (%d)."
-
-#: commands/copy.c:565
-#, c-format
-msgid "COPY: couldn't lookup info for type %u"
-msgstr "COPY: ÎÞ·¨ÎªÀàÐÍ %u ²éÕÒÐÅÏ¢"
-
-#: commands/copy.c:569 commands/copy.c:839
-msgid "COPY BINARY: cstring not supported"
-msgstr "COPY BINARY: ²»Ö§³Ö cstring"
-
-#: commands/copy.c:908
-msgid "COPY BINARY: file signature not recognized"
-msgstr "COPY BINARY: ÎļþÇ©×Ö²»±»ÈÏ¿É"
-
-#: commands/copy.c:912
-msgid "COPY BINARY: incompatible integer layout"
-msgstr "COPY BINARY: ÕûÌå²¼¾Ö²»¼æÈÝ"
-
-#: commands/copy.c:916
-msgid "COPY BINARY: bogus file header (missing flags)"
-msgstr "COPY BINARY: Î±ÎļþÍ· (ȱÉÙ±êÖ¾)"
-
-#: commands/copy.c:920
-msgid "COPY BINARY: unrecognized critical flags in header"
-msgstr "COPY BINARY: ÔÚÍ·²¿ÓÐΪÈϿɵÄΣÏÕ±êÖ¾"
-
-#: commands/copy.c:924
-msgid "COPY BINARY: bogus file header (missing length)"
-msgstr "COPY BINARY: Î±ÎļþÍ· (ȱÉÙ³¤¶È)"
-
-#: commands/copy.c:930
-msgid "COPY BINARY: bogus file header (wrong length)"
-msgstr "COPY BINARY: Î±ÎļþÍ· (´íÎ󳤶È)"
-
-#: commands/copy.c:981
-msgid "NULL Oid"
-msgstr "ûÓРOid"
-
-#: commands/copy.c:987
-msgid "Invalid Oid"
-msgstr "ÎÞЧ Oid"
-
-#: commands/copy.c:1004
-#, c-format
-msgid "Missing data for column \"%s\""
-msgstr "×ֶΠ\"%s\" È±ÉÙÊý¾Ý"
-
-#: commands/copy.c:1036
-msgid "Extra data after last expected column"
-msgstr "×îºóÆÚÍû×ֶκóÓжîÍâÊý¾Ý"
-
-#: commands/copy.c:1060
-#, c-format
-msgid "COPY BINARY: tuple field count is %d, expected %d"
-msgstr "COPY BINARY: Ôª×é×ֶμÆÊýÊÇ %d, ÆÚÍû¼ÆÊýÊÇ %d"
-
-#: commands/copy.c:1067 commands/copy.c:1073 commands/copy.c:1088
-#: commands/copy.c:1102 commands/copy.c:1111 commands/copy.c:1123
-#: commands/copy.c:1138
-msgid "COPY BINARY: unexpected EOF"
-msgstr "COPY BINARY: ÒâÍâµÄ EOF"
-
-#: commands/copy.c:1069
-#, c-format
-msgid "COPY BINARY: sizeof(Oid) is %d, expected %d"
-msgstr "COPY BINARY: sizeof(Oid) ÊÇ %d, ÆÚÍûÊÇ %d"
-
-#: commands/copy.c:1075
-msgid "COPY BINARY: Invalid Oid"
-msgstr "COPY BINARY: ÎÞЧµÄ Oid"
-
-#: commands/copy.c:1092
-#, c-format
-msgid "COPY BINARY: sizeof(field %d) is %d, expected %d"
-msgstr "COPY BINARY: sizeof(field %d) ÊÇ %d, ÆÚÍûÊÇ %d"
-
-#: commands/copy.c:1104
-msgid "COPY BINARY: bogus varlena length"
-msgstr "COPY BINARY: Î± varlena ³¤¶È"
-
-#: commands/copy.c:1286
-#, c-format
-msgid "GetInputFunction: Cache lookup of type %u failed"
-msgstr "GetInputFunction: ÀàÐÍ %u µÄ»º³åÇø²éÕÒʧ°Ü"
-
-#: commands/copy.c:1302
-#, c-format
-msgid "GetTypeElement: Cache lookup of type %u failed"
-msgstr "GetTypeElement: ÀàÐÍ %u µÄ»º³åÇø²éÕÒʧ°Ü"
-
-#: commands/copy.c:1444
-msgid "CopyReadAttribute: end of record marker corrupted"
-msgstr "CopyReadAttribute: ¼Ç¼β²¿±êÇ©±»ÆÆ»µ"
-
-#: commands/copy.c:1596
-#, c-format
-msgid "Attribute \"%s\" specified more than once"
-msgstr "ÊôÐÔ \"%s\" ±»Ö¸¶¨¶à´Î"
-
-#: commands/dbcommands.c:99 commands/dbcommands.c:105
-#: commands/dbcommands.c:111 commands/dbcommands.c:117
-msgid "CREATE DATABASE: conflicting options"
-msgstr "CREATE DATABASE: Ñ¡Ïî³åÍ»"
-
-#: commands/dbcommands.c:121
-#, c-format
-msgid "CREATE DATABASE: option \"%s\" not recognized"
-msgstr "CREATE DATABASE: Ñ¡Ïî \"%s\" ²»±»ÈÏ¿É"
-
-#: commands/dbcommands.c:141
-#, c-format
-msgid "%d is not a valid encoding code"
-msgstr "%d ÊÇÒ»¸öÎÞЧ±àÂë"
-
-#: commands/dbcommands.c:147
-#, c-format
-msgid "%s is not a valid encoding name"
-msgstr "%s ÊÇÒ»¸öÎÞЧ±àÂëÃû×Ö"
-
-#: commands/dbcommands.c:151
-msgid "CREATE DATABASE: bogus encoding parameter"
-msgstr "CREATE DATABASE: Î±±àÂë²ÎÊý"
-
-#: commands/dbcommands.c:164 commands/dbcommands.c:171
-msgid "CREATE DATABASE: permission denied"
-msgstr "CREATE DATABASE: È¨ÏÞ²»¹»"
-
-#: commands/dbcommands.c:186 commands/dbcommands.c:326
-#, c-format
-msgid "CREATE DATABASE: database \"%s\" already exists"
-msgstr "CREATE DATABASE: Êý¾Ý¿â \"%s\" ÒѾ­´æÔÚ"
-
-#: commands/dbcommands.c:198
-#, c-format
-msgid "CREATE DATABASE: template \"%s\" does not exist"
-msgstr "CREATE DATABASE: Ä£°å \"%s\" ²»´æÔÚ"
-
-#: commands/dbcommands.c:208
-#, c-format
-msgid "CREATE DATABASE: permission to copy \"%s\" denied"
-msgstr "CREATE DATABASE: ¿½±´ \"%s\" È¨ÏÞ²»¹»"
-
-#: commands/dbcommands.c:227
-#, c-format
-msgid ""
-"CREATE DATABASE: source database \"%s\" is being accessed by other users"
-msgstr "CREATE DATABASE: ÆäËûÓû§ÕýÔÚʹÓÃÔ´Êý¾Ý¿â \"%s\""
-
-#: commands/dbcommands.c:235
-msgid "CREATE DATABASE: invalid backend encoding"
-msgstr "CREATE DATABASE: ÎÞЧºó¶Ë±àÂë"
-
-#: commands/dbcommands.c:263 commands/dbcommands.c:265
-#: commands/dbcommands.c:267
-msgid "database path may not contain single quotes"
-msgstr "Êý¾Ý¿â·¾¶²»ÄÜ°üº¬µ¥ÒýºÅ"
-
-#: commands/dbcommands.c:290
-#, c-format
-msgid "CREATE DATABASE: unable to create database directory '%s': %m"
-msgstr "CREATE DATABASE: ÎÞ·¨´´½¨Êý¾Ý¿âĿ¼ '%s': %m"
-
-#: commands/dbcommands.c:293
-#, c-format
-msgid "CREATE DATABASE: unable to remove temp directory '%s': %m"
-msgstr "CREATE DATABASE: ÎÞ·¨É¾³ýÁÙʱĿ¼ '%s': %m"
-
-#: commands/dbcommands.c:300
-#, c-format
-msgid "CREATE DATABASE: could not link '%s' to '%s': %m"
-msgstr "CREATE DATABASE: ÎÞ·¨Á´½Ó '%s' µ½ '%s': %m"
-
-#: commands/dbcommands.c:310
-msgid "CREATE DATABASE: could not initialize database directory"
-msgstr "CREATE DATABASE: ÎÞ·¨³õʼ»¯Êý¾Ý¿âĿ¼"
-
-#: commands/dbcommands.c:312
-msgid ""
-"CREATE DATABASE: could not initialize database directory; delete failed as "
-"well"
-msgstr "CREATE DATABASE: ÎÞ·¨³õʼ»¯Êý¾Ý¿âĿ¼; É¾³ýҲʧ°ÜÁË"
-
-#: commands/dbcommands.c:402
-msgid "DROP DATABASE: cannot be executed on the currently open database"
-msgstr "DROP DATABASE: ÔÚµ±Ç°´ò¿ªµÄÊý¾Ý¿âÉÏÎÞ·¨Ö´ÐÐ"
-
-#: commands/dbcommands.c:419
-#, c-format
-msgid "DROP DATABASE: database \"%s\" does not exist"
-msgstr "DROP DATABASE: Êý¾Ý¿â \"%s\" ²»´æÔÚ"
-
-#: commands/dbcommands.c:422
-msgid "DROP DATABASE: permission denied"
-msgstr "DROP DATABASE: È¨ÏÞ²»¹»"
-
-#: commands/dbcommands.c:430
-msgid "DROP DATABASE: database is marked as a template"
-msgstr "DROP DATABASE: Êý¾Ý¿â±»±ê¼ÇΪһ¸öÄ£°å"
-
-#: commands/dbcommands.c:439
-#, c-format
-msgid "DROP DATABASE: database \"%s\" is being accessed by other users"
-msgstr "DROP DATABASE: ÆäËûÓû§ÕýÔÚʹÓÃÊý¾Ý¿â \"%s\""
-
-#: commands/dbcommands.c:456
-#, c-format
-msgid ""
-"DROP DATABASE: Database \"%s\" doesn't exist despite earlier reports to the "
-"contrary"
-msgstr "DROP DATABASE: Êý¾Ý¿â \"%s\" ²»´æÔÚ, ¾¡¹ÜÔÚ½ÏÔçµÄ±¨¸æÖдæÔÚ"
-
-#: commands/dbcommands.c:535
-msgid "ALTER DATABASE SET: permission denied"
-msgstr "ALTER DATABASE SET: Ã»ÓÐ×㹻ȨÏÞ"
-
-#: commands/dbcommands.c:700
-msgid "Relative paths are not allowed as database locations"
-msgstr "Êý¾Ý¿âλÖò»ÔÊÐíÓÃÏà¶Ô·¾¶"
-
-#: commands/dbcommands.c:702
-msgid "Absolute paths are not allowed as database locations"
-msgstr "Êý¾Ý¿âλÖò»ÔÊÐíÓþø¶Ô·¾¶"
-
-#: commands/dbcommands.c:712
-#, c-format
-msgid "Postmaster environment variable '%s' not set"
-msgstr "Postmaster »·¾³±äÁ¿ '%s' Ã»ÓÐÉèÖÃ"
-
-#: commands/dbcommands.c:714
-#, c-format
-msgid "Postmaster environment variable '%s' must be absolute path"
-msgstr "Postmaster »·¾³±äÁ¿ '%s' ±ØÐèΪ¾ø¶Ô·¾¶"
-
-#: commands/dbcommands.c:720
-msgid "Alternate path is too long"
-msgstr "½»»¥Â·¾¶Ì«³¤"
-
-#: commands/dbcommands.c:749
-#, c-format
-msgid "could not remove '%s': %m"
-msgstr "ÎÞ·¨É¾³ý '%s': %m"
-
-#: commands/dbcommands.c:758
-#, c-format
-msgid "database directory '%s' could not be removed"
-msgstr "Êý¾Ý¿âĿ¼ '%s' ²»ÄÜɾ³ý"
-
-#: commands/dbcommands.c:830 commands/vacuum.c:588
-#, c-format
-msgid "database %u does not exist"
-msgstr "Êý¾Ý¿â %u ²»´æÔÚ"
-
-#: commands/define.c:68 commands/define.c:157 commands/define.c:185
-#: commands/define.c:215
-#, c-format
-msgid "Define: \"%s\" requires a parameter"
-msgstr "Define: \"%s\" ÐèÒªÒ»¸ö²ÎÊý"
-
-#: commands/define.c:93 commands/define.c:239
-#, c-format
-msgid "Define: cannot interpret argument of \"%s\""
-msgstr "Define: ÎÞ·¨½âÊÍ \"%s\" µÄ²ÎÊý"
-
-#: commands/define.c:106 commands/define.c:115 commands/define.c:128
-#: commands/define.c:144
-#, c-format
-msgid "Define: \"%s\" requires a numeric value"
-msgstr "Define: \"%s\" ÐèÒªÒ»¸öÊý×ÖÖµ"
-
-#: commands/define.c:169
-#, c-format
-msgid "Define: argument of \"%s\" must be a name"
-msgstr "Define: \"%s\" µÄ²ÎÊý±ØÐëÊÇÒ»¸öÃû×Ö"
-
-#: commands/define.c:201
-#, c-format
-msgid "Define: argument of \"%s\" must be a type name"
-msgstr "Define: \"%s\" µÄ²ÎÊý±ØÐèÊÇÒ»¸öÀàÐÍÃû"
-
-#: commands/define.c:222
-#, c-format
-msgid "Define: \"%s\" requires an integral value"
-msgstr "Define: \"%s\" ÐèÒªÒ»¸öÕûÊýÖµ"
-
-#: commands/define.c:242
-#, c-format
-msgid "Define: invalid argument for \"%s\": \"%s\""
-msgstr "Define: \"%s\" µÄÎÞЧ²ÎÊý: \"%s\""
-
-#: commands/explain.c:149
-msgid "ExplainOneQuery: unexpected rewrite result"
-msgstr "ExplainOneQuery: ÒâÍâµÄÖØд½á¹û"
-
-#: commands/explain.c:1000
-#, c-format
-msgid "show_sort_keys: no tlist entry for key %d"
-msgstr "show_sort_keys: ¼ü %d Ã»ÓРtlist ¼Ç¼"
-
-#: commands/functioncmds.c:81
-#, c-format
-msgid "SQL function cannot return shell type \"%s\""
-msgstr "SQL º¯Êý²»ÄÜ·µ»Ø shell ÀàÐÍ \"%s\""
-
-#: commands/functioncmds.c:84
-#, c-format
-msgid "Return type \"%s\" is only a shell"
-msgstr "·µ»ØÀàÐÍ \"%s\" Ö»ÊÇÒ»¸ö shell"
-
-#: commands/functioncmds.c:103 commands/functioncmds.c:159
-#: commands/typecmds.c:353 commands/typecmds.c:360 commands/typecmds.c:697
-#: commands/typecmds.c:941 commands/typecmds.c:1056 commands/typecmds.c:1172
-#: commands/typecmds.c:1259 commands/typecmds.c:1824 parser/parse_func.c:1403
-#: parser/parse_oper.c:98 parser/parse_oper.c:107 parser/parse_type.c:191
-#: parser/parse_type.c:213 parser/parse_type.c:219
-#, c-format
-msgid "Type \"%s\" does not exist"
-msgstr "ÀàÐÍ \"%s\" ²»´æÔÚ"
-
-#: commands/functioncmds.c:106
-#, c-format
-msgid "ProcedureCreate: type %s is not yet defined"
-msgstr "ProcedureCreate: ÀàÐÍ %s ÈÔû±»¶¨Òå"
-
-#: commands/functioncmds.c:116
-#, c-format
-msgid "could not create type %s"
-msgstr "ÎÞ·¨´´½¨ÀàÐÍ %s"
-
-#: commands/functioncmds.c:150
-#, c-format
-msgid "SQL function cannot accept shell type \"%s\""
-msgstr "SQL º¯Êý²»ÄܽÓÊÕ shell ÀàÐÍ \"%s\""
-
-#: commands/functioncmds.c:153
-#, c-format
-msgid "Argument type \"%s\" is only a shell"
-msgstr "²ÎÊýÀàÐÍ \"%s\" Ö»ÊÇÒ»¸ö shell"
-
-#: commands/functioncmds.c:164
-msgid "Functions cannot accept set arguments"
-msgstr "º¯Êý²»ÄܽÓÊÕÉ趨²ÎÊý"
-
-#: commands/functioncmds.c:200 commands/functioncmds.c:206
-#: commands/functioncmds.c:212 commands/functioncmds.c:218
-#: commands/functioncmds.c:224
-msgid "conflicting or redundant options"
-msgstr "Ñ¡Ïî³åÍ»»ò¹ý¶à"
-
-#: commands/functioncmds.c:228
-msgid "invalid CREATE FUNCTION option"
-msgstr "ÎÞЧµÄ CREATE FUNCTION Ñ¡Ïî"
-
-#: commands/functioncmds.c:234
-msgid "no function body specified"
-msgstr "ûÓÐÖ¸¶¨º¯ÊýÌå"
-
-#: commands/functioncmds.c:239
-msgid "no language specified"
-msgstr "ûÓÐÖ¸¶¨ÓïÑÔ"
-
-#: commands/functioncmds.c:250
-msgid "invalid volatility"
-msgstr ""
-
-#: commands/functioncmds.c:297
-#, c-format
-msgid "Unrecognized function attribute '%s' ignored"
-msgstr "ºöÂÔδÈϿɵĺ¯ÊýÊôÐÔ '%s'"
-
-#: commands/functioncmds.c:339
-#, c-format
-msgid "CREATE FUNCTION: only one AS item needed for %s language"
-msgstr "CREATE FUNCTION: ¶ÔÓÚ %s ÓïÑÔÖ»ÄÜÒªÇóÒ»¸ö AS ÏîÄ¿"
-
-#: commands/functioncmds.c:399 utils/adt/acl.c:1535
-#, c-format
-msgid "language \"%s\" does not exist"
-msgstr "ÓïÑÔ \"%s\" ²»´æÔÚ"
-
-#: commands/functioncmds.c:505
-#, c-format
-msgid "RemoveFunction: couldn't find tuple for function %s"
-msgstr "RemoveFunction: ÎÞ·¨Îªº¯Êý %s ÕÒµ½Ôª×é"
-
-#: commands/functioncmds.c:515
-#, c-format
-msgid ""
-"RemoveFunction: function '%s' is an aggregate\n"
-"\tUse DROP AGGREGATE to remove it"
-msgstr ""
-"RemoveFunction: º¯Êý '%s' ÊÇÒ»¸ö¾Û¼¯º¯Êý\n"
-"\tÓàDROP AGGREGATE É¾³ý"
-
-#: commands/functioncmds.c:522
-#, c-format
-msgid "Removing built-in function \"%s\""
-msgstr "ɾ³ýÄÚ½¨º¯Êý \"%s\""
-
-#: commands/functioncmds.c:560
-#, c-format
-msgid "RemoveFunctionById: couldn't find tuple for function %u"
-msgstr "RemoveFunctionById: ÎÞ·¨ÕÒµ½º¯Êý %u µÄÔª×é"
-
-#: commands/functioncmds.c:582
-#, c-format
-msgid "RemoveFunctionById: couldn't find pg_aggregate tuple for %u"
-msgstr "RemoveFunctionById: ÎÞ·¨ÕÒµ½ %u µÄ pg_aggregate Ôª×é"
-
-#: commands/functioncmds.c:614
-#, c-format
-msgid "SetFunctionReturnType: couldn't find tuple for function %u"
-msgstr "SetFunctionreturnType: ÎÞ·¨ÕÒµ½º¯Êý %u µÄÔª×é"
-
-#: commands/functioncmds.c:619
-#, c-format
-msgid "SetFunctionReturnType: function %u doesn't return OPAQUE"
-msgstr "SetFunctionReturnType: º¯Êý %u Ã»Óзµ»Ø OPAQUE"
-
-#: commands/functioncmds.c:652
-#, c-format
-msgid "SetFunctionArgType: couldn't find tuple for function %u"
-msgstr "SetFunctionArgType: ÎÞ·¨ÕÒµ½º¯Êý %u µÄÔª×é"
-
-#: commands/functioncmds.c:658
-#, c-format
-msgid "SetFunctionArgType: function %u doesn't take OPAQUE"
-msgstr "SetFunctionArgType: º¯Êý %u Ã»ÓÐÈ¡µ½ OPAQUE"
-
-#: commands/functioncmds.c:693 commands/functioncmds.c:891
-#, c-format
-msgid "source data type %s does not exist"
-msgstr "Ô´Êý¾ÝÀàÐÍ %s ²»´æÔÚ"
-
-#: commands/functioncmds.c:698 commands/functioncmds.c:896
-#, c-format
-msgid "target data type %s does not exist"
-msgstr "Ä¿±êÊý¾ÝÀàÐÍ %s ²»´æÔÚ"
-
-#: commands/functioncmds.c:702
-msgid "source data type and target data type are the same"
-msgstr "Ô´Êý¾ÝÀàÐͺÍÄ¿±êÊý¾ÝÀàÐÍÏàͬ"
-
-#: commands/functioncmds.c:706
-#, c-format
-msgid "source data type %s is only a shell"
-msgstr "Ô´Êý¾ÝÀàÐÍ %s Ö»ÊÇÒ»¸ö shell"
-
-#: commands/functioncmds.c:710
-#, c-format
-msgid "target data type %s is only a shell"
-msgstr "Ä¿±êÊý¾ÝÀàÐÍ %s Ö»ÊÇÒ»¸ö shell"
-
-#: commands/functioncmds.c:714
-#, c-format
-msgid "source data type %s is a pseudo-type"
-msgstr "Ô´Êý¾ÝÀàÐÍ %s ÊÇÒ»¸ö pseudo-type"
-
-#: commands/functioncmds.c:718
-#, c-format
-msgid "target data type %s is a pseudo-type"
-msgstr "Ä¿±êÊý¾ÝÀàÐÍ %s ÊÇÒ»¸ö pseudo-type"
-
-#: commands/functioncmds.c:723 commands/functioncmds.c:911
-#, c-format
-msgid "must be owner of type %s or type %s"
-msgstr "Ö»ÄÜÊÇÀàÐÍ %s »ò %s µÄËùÓÉÕß"
-
-#: commands/functioncmds.c:743
-msgid "cast function must take 1 argument"
-msgstr "ת»»º¯ÊýÖ»ÄÜ´øÒ»¸ö²ÎÊý"
-
-#: commands/functioncmds.c:745
-msgid "argument of cast function must match source data type"
-msgstr "ת»»º¯Êý²ÎÊý±ØÐèÓëÔ´Êý¾ÝÀàÐÍÆ¥Åä"
-
-#: commands/functioncmds.c:747
-msgid "return data type of cast function must match target data type"
-msgstr "ת»»º¯Êý·µ»ØÊý¾ÝÀàÐͱØÐèÓëÄ¿±êÊý¾ÝÀàÐÍÆ¥Åä"
-
-#: commands/functioncmds.c:755
-msgid "cast function must not be volatile"
-msgstr ""
-
-#: commands/functioncmds.c:758
-msgid "cast function must not be an aggregate function"
-msgstr "ת»»º¯Êý²»ÄÜÊÇÒ»¸ö¾Û¼¯º¯Êý"
-
-#: commands/functioncmds.c:760
-msgid "cast function must not return a set"
-msgstr "ת»»º¯Êý²»ÄÜ·µ»ØÒ»¸ö×éºÏ"
-
-#: commands/functioncmds.c:781
-msgid "Must be superuser to create a cast WITHOUT FUNCTION"
-msgstr "Ö»Óг¬¼¶Óû§ÄÜ´´½¨Ò»¸ö·Çº¯ÊýÀàÐ͵Äת»»"
-
-#: commands/functioncmds.c:794
-msgid "source and target datatypes are not physically compatible"
-msgstr ""
-
-#: commands/functioncmds.c:810
-#, c-format
-msgid "CreateCast: bogus CoercionContext %c"
-msgstr "CreateCast: α CoercionContext %c"
-
-#: commands/functioncmds.c:827
-#, c-format
-msgid "cast from data type %s to data type %s already exists"
-msgstr "Êý¾ÝÀàÐÍ %s µ½ Êý¾ÝÀàÐÍ %s µÄת»»ÒѾ­´æÔÚ"
-
-#: commands/functioncmds.c:904
-#, c-format
-msgid "cast from type %s to type %s does not exist"
-msgstr "ÀàÐÍ %s µ½ÀàÐÍ %s µÄת»»²»´æÔÚ"
-
-#: commands/functioncmds.c:947
-#, c-format
-msgid "could not find tuple for cast %u"
-msgstr "ÎÞ·¨ÕÒµ½×ª»» %u µÄÔª×é"
-
-#: commands/indexcmds.c:94
-msgid "DefineIndex: must specify at least one attribute"
-msgstr "DefineIndex: ±ØÐèÖÁÉÙÖ¸¶¨Ò»¸öÊôÐÔ"
-
-#: commands/indexcmds.c:96
-#, c-format
-msgid "Cannot use more than %d attributes in an index"
-msgstr "ÔÚÒ»¸öË÷ÒýÖв»ÄÜʹÓó¬¹ý %d ¸öÊôÐÔ"
-
-#: commands/indexcmds.c:107
-#, c-format
-msgid "DefineIndex: relation \"%s\" is not a table"
-msgstr "DefineIndex: ¹Øϵ \"%s\" ²»ÊÇÒ»¸ö±í"
-
-#: commands/indexcmds.c:116
-msgid "Existing indexes are inactive. REINDEX first"
-msgstr "ÏÖ´æµÄË÷ÒýûÓ줻î. ÏÈ REINDEX"
-
-#: commands/indexcmds.c:144
-#, c-format
-msgid "DefineIndex: access method \"%s\" not found"
-msgstr "DefineIndex: ´æÈ¡·½·¨ \"%s\" Ã»ÓÐ"
-
-#: commands/indexcmds.c:150
-#, c-format
-msgid "DefineIndex: access method \"%s\" does not support UNIQUE indexes"
-msgstr "DefineIndex: ´æÈ¡·½·¨ \"%s\" ²»Ö§³Ö UNIQUE Ë÷Òý"
-
-#: commands/indexcmds.c:153
-#, c-format
-msgid "DefineIndex: access method \"%s\" does not support multi-column indexes"
-msgstr "DefineIndex: ´æÈ¡·½·¨ \"%s\" ²»Ö§³Ö¶à×Ö¶ÎË÷Òý"
-
-#: commands/indexcmds.c:208 commands/indexcmds.c:345
-#, c-format
-msgid "DefineIndex: column \"%s\" named in key does not exist"
-msgstr "DefineIndex: ÔÚ¼ü×ÖÖÐÃüÃûµÄ×ֶΠ\"%s\" ²»´æÔÚ"
-
-#: commands/indexcmds.c:231
-msgid "Functional index can only have one attribute"
-msgstr "¹¦ÄÜË÷ÒýÖ»ÄÜÓÐÒ»¸öÊôÐÔ"
-
-#: commands/indexcmds.c:235
-#, c-format
-msgid "Index function can take at most %d arguments"
-msgstr "Ë÷Òýº¯Êý×î¶à´ø %d ¸ö²ÎÊý"
-
-#: commands/indexcmds.c:290
-msgid "Partial-index predicates may refer only to the base relation"
-msgstr ""
-
-#: commands/indexcmds.c:298
-msgid "Cannot use subselect in index predicate"
-msgstr ""
-
-#: commands/indexcmds.c:300
-msgid "Cannot use aggregate in index predicate"
-msgstr ""
-
-#: commands/indexcmds.c:307
-msgid "Functions in index predicate must be marked IMMUTABLE"
-msgstr ""
-
-#: commands/indexcmds.c:370
-msgid "DefineIndex: functional index may not use an aggregate function"
-msgstr "DefineIndex: ¹¦ÄÜË÷Òý²»ÄÜʹÓþۼ¯º¯Êý"
-
-#: commands/indexcmds.c:372
-msgid ""
-"DefineIndex: functional index must use a real function, not a type coercion\n"
-"\tTry specifying the index opclass you want to use, instead"
-msgstr ""
-
-#: commands/indexcmds.c:380
-msgid "DefineIndex: cannot index on a function returning a set"
-msgstr ""
-
-#: commands/indexcmds.c:396
-msgid "DefineIndex: index function must be marked IMMUTABLE"
-msgstr "DefineIndex: Ë÷Òýº¯Êý±ØÐè±ê¼ÇΪ IMMUTABLE"
-
-#: commands/indexcmds.c:431
-msgid "missing attribute for define index"
-msgstr "¶¨ÒåË÷ÒýʱȱÉÙÊôÐÔ"
-
-#: commands/indexcmds.c:435
-#, c-format
-msgid "DefineIndex: attribute \"%s\" not found"
-msgstr "DefineIndex: ÊôÐÔ \"%s\" Ã»·¢ÏÖ"
-
-#: commands/indexcmds.c:464
-#, c-format
-msgid ""
-"data type %s has no default operator class for access method \"%s\"\n"
-"\tYou must specify an operator class for the index or define a\n"
-"\tdefault operator class for the data type"
-msgstr ""
-
-#: commands/indexcmds.c:495 commands/indexcmds.c:503
-#, c-format
-msgid ""
-"DefineIndex: operator class \"%s\" not supported by access method \"%s\""
-msgstr ""
-
-#: commands/indexcmds.c:514
-#, c-format
-msgid "operator class \"%s\" does not accept data type %s"
-msgstr ""
-
-#: commands/indexcmds.c:568
-#, c-format
-msgid "pg_opclass contains multiple default opclasses for data type %s"
-msgstr ""
-
-#: commands/indexcmds.c:590 commands/indexcmds.c:622 commands/indexcmds.c:665
-#, c-format
-msgid "relation \"%s\" is of type \"%c\""
-msgstr ""
-
-#: commands/indexcmds.c:619
-#, c-format
-msgid "index \"%s\" does not exist"
-msgstr "Ë÷Òý \"%s\" ²»´æÔÚ"
-
-#: commands/indexcmds.c:630
-#, c-format
-msgid ""
-"\"%s\" is a system index. call REINDEX under standalone postgres with -O -P "
-"options"
-msgstr ""
-"\"%s\" ÊǸöϵͳ±í. ÔÚ´øÓР-O -P Ñ¡ÏîÔËÐеĶÀÁ¢ postgres ½ø³Ìϵ÷ÓÃREINDEX"
-
-#: commands/indexcmds.c:633
-#, c-format
-msgid ""
-"\"%s\" is a system index. call REINDEX under standalone postgres with -P -O "
-"options"
-msgstr ""
-"\"%s\" ÊǸöϵͳË÷Òý. ÔÚ´øÓР-P -O Ñ¡ÏîÔËÐеĶÀÁ¢ postgres ½ø³Ìϵ÷ÓÃREINDEX"
-
-#: commands/indexcmds.c:648
-#, c-format
-msgid "index \"%s\" wasn't reindexed"
-msgstr "Ë÷Òý \"%s\" Ã»±»ÖØÐÂË÷Òý"
-
-#: commands/indexcmds.c:680
-#, c-format
-msgid "table \"%s\" wasn't reindexed"
-msgstr "±í \"%s\" Ã»±»ÖØÐÂË÷Òý"
-
-#: commands/indexcmds.c:704
-msgid "REINDEX DATABASE: Can be executed only on the currently open database."
-msgstr "REINDEX DATABASE: Ö»ÄÜÔÚµ±Ç°´ò¿ªµÄÊý¾Ý¿âÖ´ÐÐ"
-
-#: commands/indexcmds.c:707
-msgid "REINDEX DATABASE: Permission denied."
-msgstr "REINDEX DATABASE: È¨ÏÞ²»¹»."
-
-#: commands/indexcmds.c:710
-msgid "must be called under standalone postgres with -O -P options"
-msgstr "±ØÐëÔÚ´øÓР-O -P Ñ¡ÏîÔËÐеĶÀÁ¢ postgres ½ø³Ìϵ÷ÓÃ"
-
-#: commands/indexcmds.c:712
-msgid "must be called under standalone postgres with -P -O options"
-msgstr "±ØÐëÔÚ´øÓР-P -O Ñ¡ÏîÔËÐеĶÀÁ¢ postgres ½ø³Ìϵ÷ÓÃ"
-
-#: commands/indexcmds.c:778
-#, c-format
-msgid "relation %u was reindexed"
-msgstr "¹Øϵ %u ±»ÖØÐÂË÷Òý"
-
-#: commands/lockcmds.c:65
-#, c-format
-msgid "LOCK TABLE: %s is not a table"
-msgstr "LOCK TABLE: %s ²»ÊÇÒ»¸ö±í"
-
-#: commands/opclasscmds.c:88
-#, c-format
-msgid "DefineOpClass: access method \"%s\" not found"
-msgstr "DefineOpClass: ´æÈ¡·½·¨ \"%s\" Ã»·¢ÏÖ"
-
-#: commands/opclasscmds.c:107
-msgid "Must be superuser to create an operator class"
-msgstr ""
-
-#: commands/opclasscmds.c:146
-#, c-format
-msgid "DefineOpClass: invalid operator number %d, must be between 1 and %d"
-msgstr ""
-
-#: commands/opclasscmds.c:150
-#, c-format
-msgid "DefineOpClass: operator number %d appears more than once"
-msgstr ""
-
-#: commands/opclasscmds.c:167
-#, c-format
-msgid "DefineOpClass: Operator '%s' for types '%s' and '%s' does not exist"
-msgstr ""
-
-#: commands/opclasscmds.c:183
-#, c-format
-msgid "DefineOpClass: invalid procedure number %d, must be between 1 and %d"
-msgstr "DefineOpClass: ÎÞЧµÄ¹ý³ÌºÅ %d, ±ØÐèÔÚ 1 µ½ %d Ö®¼ä"
-
-#: commands/opclasscmds.c:187
-#, c-format
-msgid "DefineOpClass: procedure number %d appears more than once"
-msgstr "DefineOpClass: ¹ý³ÌºÅ %d ³öÏÖ¹ý¶à´Î"
-
-#: commands/opclasscmds.c:200
-msgid "DefineOpClass: storage type specified more than once"
-msgstr "DefineOpClass: ´æ´¢ÀàÐÍÖ¸¶¨Á˶à´Î"
-
-#: commands/opclasscmds.c:204
-#, c-format
-msgid "DefineOpClass: bogus item type %d"
-msgstr "DefineOpClass: Î±ÏîÄ¿ÀàÐÍ %d"
-
-#: commands/opclasscmds.c:226
-#, c-format
-msgid "Storage type may not be different from datatype for access method %s"
-msgstr ""
-
-#: commands/opclasscmds.c:242
-#, c-format
-msgid "Operator class \"%s\" already exists for access method \"%s\""
-msgstr ""
-
-#: commands/opclasscmds.c:266
-#, c-format
-msgid ""
-"Can't add class \"%s\" as default for type %s\n"
-"\tclass \"%s\" already is the default"
-msgstr ""
-
-#: commands/opclasscmds.c:474
-#, c-format
-msgid "RemoveOpClass: access method \"%s\" not found"
-msgstr "RemoveOpClass: ´æÈ¡·½·¨ \"%s\" Ã»·¢ÏÖ"
-
-#: commands/opclasscmds.c:501 commands/opclasscmds.c:509
-#, c-format
-msgid ""
-"RemoveOpClass: operator class \"%s\" not supported by access method \"%s\""
-msgstr ""
-
-#: commands/opclasscmds.c:553
-#, c-format
-msgid "RemoveOpClassById: couldn't find pg_class entry %u"
-msgstr ""
-
-#: commands/operatorcmds.c:103
-msgid "setof type not implemented for leftarg"
-msgstr ""
-
-#: commands/operatorcmds.c:109
-msgid "setof type not implemented for rightarg"
-msgstr ""
-
-#: commands/operatorcmds.c:135
-#, c-format
-msgid "DefineOperator: attribute \"%s\" not recognized"
-msgstr "DefineOperator: ÊôÐÔ \"%s\" ²»±»ÈÏ¿É"
-
-#: commands/operatorcmds.c:144
-msgid "Define: \"procedure\" unspecified"
-msgstr "Define: \"procedure\" Î´±»Ö¸¶¨"
-
-#: commands/operatorcmds.c:215
-#, c-format
-msgid "RemoveOperator: failed to find tuple for operator '%s'"
-msgstr ""
-
-#: commands/operatorcmds.c:251
-#, c-format
-msgid "RemoveOperatorById: failed to find tuple for operator %u"
-msgstr ""
-
-#: commands/portalcmds.c:59 commands/portalcmds.c:62
-msgid "PerformCursorOpen: unexpected rewrite result"
-msgstr ""
-
-#: commands/portalcmds.c:65
-msgid "DECLARE CURSOR may not specify INTO"
-msgstr "DECLARE CURSOR Ò²ÐíûÓÐÖ¸¶¨ INTO"
-
-#: commands/portalcmds.c:67
-msgid ""
-"DECLARE/UPDATE is not supported\n"
-"\tCursors must be READ ONLY"
-msgstr ""
-"²»Ö§³Ö DECLARE/UPDATE\n"
-"\tÓαê±ØÐèΪֻ¶Á"
-
-#: commands/portalcmds.c:133
-#, c-format
-msgid "PerformPortalFetch: portal \"%s\" not found"
-msgstr "PerformPortalFetch: Èë¿Ú \"%s\" Ã»·¢ÏÖ"
-
-#: commands/portalcmds.c:262
-msgid "DoPortalFetch: bogus direction"
-msgstr ""
-
-#: commands/portalcmds.c:411
-msgid ""
-"Cursor can only scan forward\n"
-"\tDeclare it with SCROLL option to enable backward scan"
-msgstr ""
-"ÓαêÄܹ»Ö»ÏòǰɨÃè\n"
-"\t´ø SCROLL Ñ¡ÏîÉùÃ÷ÔÊÐíÏòºóɨÃè"
-
-#: commands/portalcmds.c:488
-#, c-format
-msgid "PerformPortalClose: portal \"%s\" not found"
-msgstr "PerformPortalClose: Èë¿Ú \"%s\" Ã»·¢ÏÖ"
-
-#: commands/portalcmds.c:518
-#, c-format
-msgid "Closing pre-existing portal \"%s\""
-msgstr "¹Ø±ÕÔ¤´æÔÚµÄÈë¿Ú \"%s\""
-
-#: commands/prepare.c:67
-msgid "No statement name given"
-msgstr ""
-
-#: commands/prepare.c:70
-#, fuzzy
-msgid "Utility statements cannot be prepared"
-msgstr "δʵÏÖÌõ¼þ¹¤¾ßÓï¾ä"
-
-#: commands/prepare.c:145 commands/prepare.c:453
-msgid "INTO clause specified for non-SELECT query"
-msgstr ""
-
-#: commands/prepare.c:196
-msgid "EvaluateParams: wrong number of arguments"
-msgstr "EvaluateParams: ´íÎóµÄ²ÎÊý¸öÊý"
-
-#: commands/prepare.c:244
-msgid "InitQueryHashTable: unable to create hash table"
-msgstr "InitQueryHashTable: ÎÞ·¨´´½¨ hash ±í"
-
-#: commands/prepare.c:274
-#, fuzzy, c-format
-msgid "Prepared statement with name \"%s\" already exists"
-msgstr "ÊÔͼ¸ø¹æÔò \"%s\" ÖØÃüÃûʧ°Ü: \"%s\" ÒѾ­´æÔÚ"
-
-#: commands/prepare.c:304
-#, c-format
-msgid "Unable to store prepared statement \"%s\"!"
-msgstr ""
-
-#: commands/prepare.c:331 commands/prepare.c:348
-#, fuzzy, c-format
-msgid "Prepared statement with name \"%s\" does not exist"
-msgstr "RenameRewriteRule: ¹æÔò \"%s\" ²»´æÔÚ"
-
-#: commands/proclang.c:61
-msgid ""
-"Only users with superuser privilege are permitted to create procedural "
-"languages"
-msgstr "Ö»ÓÐÓг¬¼¶Óû§È¨ÏÞµÄÓû§²Å±»ÔÊÐíÔö¼Ó¹ý³ÌÓïÑÔ"
-
-#: commands/proclang.c:73
-#, c-format
-msgid "Language %s already exists"
-msgstr "ÓïÑÔ %s ÒѾ­´æÔÚ"
-
-#: commands/proclang.c:82
-#, c-format
-msgid "function %s() doesn't exist"
-msgstr "º¯Êý %s() ²»´æÔÚ"
-
-#: commands/proclang.c:94
-#, c-format
-msgid ""
-"CreateProceduralLanguage: changing return type of function %s() from OPAQUE "
-"to LANGUAGE_HANDLER"
-msgstr ""
-
-#: commands/proclang.c:99
-#, c-format
-msgid "CreateProceduralLanguage: function %s() must return LANGUAGE_HANDLER"
-msgstr "CreateProceduralLanguage: º¯Êý %s() ±ØÐè·µ»Ø LANGUAGE_HANDLER"
-
-#: commands/proclang.c:109
-#, c-format
-msgid "function %s(oid) doesn't exist"
-msgstr "º¯Êý %s(oid) ²»´æÔÚ"
-
-#: commands/proclang.c:183
-msgid ""
-"Only users with superuser privilege are permitted to drop procedural "
-"languages"
-msgstr "Ö»ÓÐÓг¬¼¶Óû§È¨ÏÞµÄÓû§²Å±»ÔÊÐíɾ³ý¹ý³ÌÓïÑÔ"
-
-#: commands/proclang.c:196
-#, c-format
-msgid "Language %s doesn't exist"
-msgstr "ÓïÑÔ %s ²»´æÔÚ"
-
-#: commands/proclang.c:225
-#, c-format
-msgid "DropProceduralLanguageById: language %u not found"
-msgstr "DropProceduralLanguageById: ÓïÑÔ %u Ã»·¢ÏÖ"
-
-#: commands/schemacmds.c:79
-#, c-format
-msgid ""
-"CREATE SCHEMA: permission denied\n"
-"\t\"%s\" is not a superuser, so cannot create a schema for \"%s\""
-msgstr ""
-"CREATE SCHEMA: È¨ÏÞ²»¹»\n"
-"\t\"%s\" ²»Êdz¬¼¶Óû§, Òò´Ë²»ÄÜΪ \"%s\" ´´½¨´ó¸Ù"
-
-#: commands/schemacmds.c:92
-#, c-format
-msgid ""
-"CREATE SCHEMA: Illegal schema name: \"%s\" -- pg_ is reserved for system "
-"schemas"
-msgstr "CREATE SCHEMA: ²»ºÏ¹æ¶¨µÄ´ó¸ÙÃû×Ö: \"%s\" -- pg_ ÊDZ£Áô¸øϵͳ´ó¸ÙµÄ"
-
-#: commands/schemacmds.c:162
-msgid "Schema name may not be qualified"
-msgstr ""
-
-#: commands/schemacmds.c:169
-#, c-format
-msgid "Schema \"%s\" does not exist"
-msgstr "´ó¸Ù \"%s\" ²»´æÔÚ"
-
-#: commands/schemacmds.c:206
-#, c-format
-msgid "RemoveSchemaById: schema %u not found"
-msgstr "RemoveSchemaById: ´ó¸Ù %u Ã»·¢ÏÖ"
-
-#: commands/sequence.c:208
-msgid "DefineSequence: ReadBuffer failed"
-msgstr "DefineSequence: ReadBuffer Ê§°Ü"
-
-#: commands/sequence.c:335
-#, c-format
-msgid "%s.nextval: you don't have permissions to set sequence %s"
-msgstr "%s.nextval: ÄãûÓÐȨÏÞÉèÖÃÐòÁР%s"
-
-#: commands/sequence.c:410
-#, c-format
-msgid "%s.nextval: reached MAXVALUE (%s)"
-msgstr "%s.nextval: ÒÑ´ïµ½×î´óÖµ (%s)"
-
-#: commands/sequence.c:431
-#, c-format
-msgid "%s.nextval: reached MINVALUE (%s)"
-msgstr "%s.nextval: ÒÑ´ïµ½×îСֵ (%s)"
-
-#: commands/sequence.c:521
-#, c-format
-msgid "%s.currval: you don't have permissions to read sequence %s"
-msgstr "%s.currval: ÄãûÓÐȨÏÞ¶ÁÈ¡ÐòÁР%s"
-
-#: commands/sequence.c:525
-#, c-format
-msgid "%s.currval is not yet defined in this session"
-msgstr "ÔÚ´ËÆÚ¼ä %s.currval ÈÔû±»¶¨Òå"
-
-#: commands/sequence.c:560
-#, c-format
-msgid "%s.setval: you don't have permissions to set sequence %s"
-msgstr "%s.setval: ÄãûÓÐȨÏÞÉèÖÃÐòÁР%s"
-
-#: commands/sequence.c:575
-#, c-format
-msgid "%s.setval: value %s is out of bounds (%s,%s)"
-msgstr "%s.setval: Öµ %s ³¬¹ý·¶Î§ (%s,%s)"
-
-#: commands/sequence.c:701
-#, c-format
-msgid "%s.%s: %s is not a sequence"
-msgstr "%s.%s: %s ²»ÊÇÒ»¸öÐòÁÐ"
-
-#: commands/sequence.c:719
-msgid "Memory exhausted in init_sequence"
-msgstr "init_sequence ÖÐÄÚ´æÓþ¡"
-
-#: commands/sequence.c:747
-#, c-format
-msgid "%s.%s: invalid number of blocks in sequence"
-msgstr "%s.%s: ÔÚÐòÁÐÖÐÎÞЧµÄ¿é¸öÊý"
-
-#: commands/sequence.c:752
-#, c-format
-msgid "%s.%s: ReadBuffer failed"
-msgstr "%s.%s: ReadBuffer Ê§°Ü"
-
-#: commands/sequence.c:761
-#, c-format
-msgid "%s.%s: bad magic (%08X)"
-msgstr ""
-
-#: commands/sequence.c:795
-msgid "DefineSequence: INCREMENT BY defined twice"
-msgstr "DefineSequence: INCREMENT BY ¶¨ÒåÁËÁ½´Î"
-
-#: commands/sequence.c:801
-msgid "DefineSequence: LAST VALUE defined twice"
-msgstr "DefineSequence: LAST VALUE ¶¨ÒåÁËÁ½´Î"
-
-#: commands/sequence.c:807
-msgid "DefineSequence: MAX VALUE defined twice"
-msgstr "DefineSequence: MAX VALUE ¶¨ÒåÁËÁ½´Î"
-
-#: commands/sequence.c:813
-msgid "DefineSequence: MIN VALUE defined twice"
-msgstr "DefineSequence: MIN VALUE ¶¨ÒåÁËÁ½´Î"
-
-#: commands/sequence.c:819
-msgid "DefineSequence: CACHE defined twice"
-msgstr "DefineSequence: CACHE ¶¨ÒåÁËÁ½´Î"
-
-#: commands/sequence.c:825
-msgid "DefineSequence: CYCLE defined twice"
-msgstr "DefineSequence: CYCLE ¶¨ÒåÁËÁ½´Î"
-
-#: commands/sequence.c:830
-#, c-format
-msgid "DefineSequence: option \"%s\" not recognized"
-msgstr "DefineSequence: Ñ¡Ïî \"%s\" ²»±»ÈÏ¿É"
-
-#: commands/sequence.c:837
-msgid "DefineSequence: can't INCREMENT by 0"
-msgstr "DefineSequence: ²»ÄÜÔÚ 0 Ö®Ç° INCREMENT"
-
-#: commands/sequence.c:866
-#, c-format
-msgid "DefineSequence: MINVALUE (%s) must be less than MAXVALUE (%s)"
-msgstr "DefineSequence: MINVALUE (%s) ±ØÐèСÓÚ MAXVALUE (%s)"
-
-#: commands/sequence.c:887
-#, c-format
-msgid "DefineSequence: START value (%s) can't be less than MINVALUE (%s)"
-msgstr "DefineSequence: START Öµ (%s) ²»ÄÜСÓÚ MINVALUE (%s)"
-
-#: commands/sequence.c:897
-#, c-format
-msgid "DefineSequence: START value (%s) can't be greater than MAXVALUE (%s)"
-msgstr "DefineSequence: START Öµ (%s) ²»ÄÜ´óÓÚ MAXVALUE (%s)"
-
-#: commands/sequence.c:908
-#, c-format
-msgid "DefineSequence: CACHE (%s) can't be <= 0"
-msgstr "DefineSequence: CACHE (%s) ²»ÄÜСÓÚµÈÓÚ 0"
-
-#: commands/sequence.c:928
-#, c-format
-msgid "seq_redo: unknown op code %u"
-msgstr "seq_redo: Î´ÖªµÄ op ´úÂë %u"
-
-#: commands/sequence.c:936
-#, c-format
-msgid "seq_redo: can't read block of %u/%u"
-msgstr "seq_redo: ²»ÄܶÁÈ¡ %u/%u µÄ¿é"
-
-#: commands/sequence.c:952
-msgid "seq_redo: failed to add item to page"
-msgstr "seq_redo: Ôö¼ÓÏîÄ¿µ½Ò³Ê§°Ü"
-
-#: commands/tablecmds.c:149
-msgid "ON COMMIT can only be used on TEMP tables"
-msgstr "ON COMMIT Ö»Äܱ»ÓÃÓÚ TEMP ±íÉÏ"
-
-#: commands/tablecmds.c:379
-#, c-format
-msgid "TRUNCATE cannot be used on sequences. '%s' is a sequence"
-msgstr "²»ÄÜÔÚÐòÁÐÉÏʹÓàTRUNCATE. '%s' ÊÇÒ»¸öÐòÁÐ"
-
-#: commands/tablecmds.c:382
-#, c-format
-msgid "TRUNCATE cannot be used on views. '%s' is a view"
-msgstr "²»ÄÜÔÚÊÓͼÉÏʹÓàTRUNCATE. '%s' ÊÇÒ»¸öÊÓͼ"
-
-#: commands/tablecmds.c:385
-#, c-format
-msgid "TRUNCATE can only be used on tables. '%s' is not a table"
-msgstr "TRUNCATE Ö»Äܱ»ÓÃÓÚ±íÉÏ. '%s' ²»ÊÇÒ»¸ö±í"
-
-#: commands/tablecmds.c:391
-#, c-format
-msgid "TRUNCATE cannot be used on system tables. '%s' is a system table"
-msgstr "²»ÄÜÔÚϵͳ±íÉÏʹÓàTRUNCATE. '%s' ÊÇÒ»¸öϵͳ±í"
-
-#: commands/tablecmds.c:402
-msgid "TRUNCATE cannot be used on temp tables of other processes"
-msgstr "TRUNCATE ²»ÄÜÓÃÓÚÆäËû³ÌÐòµÄÁÙʱ±íÉÏ"
-
-#: commands/tablecmds.c:426
-#, c-format
-msgid ""
-"TRUNCATE cannot be used as table %s references this one via foreign key "
-"constraint %s"
-msgstr ""
-
-#: commands/tablecmds.c:537
-#, c-format
-msgid "CREATE TABLE: attribute \"%s\" duplicated"
-msgstr "CREATE TABLE: ÊôÐÔ \"%s\" ±»¸´ÖÆ"
-
-#: commands/tablecmds.c:560
-#, c-format
-msgid "CREATE TABLE: inherited relation \"%s\" is not a table"
-msgstr "CREATE TABLE: ¼Ì³Ð¹Øϵ \"%s\" ²»ÊÇÒ»¸ö±í"
-
-#: commands/tablecmds.c:564
-#, c-format
-msgid "CREATE TABLE: cannot inherit from temp relation \"%s\""
-msgstr "CREATE TABLE: ÎÞ·¨´ÓÁÙʱ¹Øϵ \"%s\" ¼Ì³Ð"
-
-#: commands/tablecmds.c:579
-#, c-format
-msgid "CREATE TABLE: inherited relation \"%s\" duplicated"
-msgstr "CREATE TABLE: ¼Ì³Ð¹Øϵ \"%s\" ±»¸´ÖÆ"
-
-#: commands/tablecmds.c:631
-#, c-format
-msgid ""
-"CREATE TABLE: merging multiple inherited definitions of attribute \"%s\""
-msgstr "CREATE TABLE: ºÏ²¢ÊôÐÔ \"%s\" µÄ¶à¸ö¼Ì³Ð¶¨Òå"
-
-#: commands/tablecmds.c:636
-#, c-format
-msgid "CREATE TABLE: inherited attribute \"%s\" type conflict (%s and %s)"
-msgstr "CREATE TABLE: ¼Ì³ÐÊôÐÔ \"%s\" ÀàÐͳåÍ» (%s ºÍ %s)"
-
-#: commands/tablecmds.c:782
-#, c-format
-msgid "CREATE TABLE: merging attribute \"%s\" with inherited definition"
-msgstr "CREATE TABLE: ºÏ²¢ÊôÐÔ \"%s\" Á¬Í¬¼Ì³Ð¶¨Òå"
-
-#: commands/tablecmds.c:787
-#, c-format
-msgid "CREATE TABLE: attribute \"%s\" type conflict (%s and %s)"
-msgstr "CREATE TABLE: ÊôÐÔ \"%s\" ÀàÐͳåÍ» (%s ºÍ %s)"
-
-#: commands/tablecmds.c:825
-#, c-format
-msgid ""
-"CREATE TABLE: attribute \"%s\" inherits conflicting default values\n"
-"\tTo resolve the conflict, specify a default explicitly"
-msgstr ""
-"CREATE TABLE: ÊôÐÔ \"%s\" ¼Ì³ÐÓëĬÈÏÖµ³åÍ»\n"
-"\tÒª½â¾ö³åÍ», Ö¸¶¨Ã÷È·µÄĬÈÏÖµ"
-
-#: commands/tablecmds.c:1067
-#, c-format
-msgid "setRelhassubclassInRelation: cache lookup failed for relation %u"
-msgstr "setRelhassubclassInRelation: Îª¹Øϵ %u ²éÕÒ»º³åÇøʧ°Ü"
-
-#: commands/tablecmds.c:1122
-#, c-format
-msgid "renameatt: class \"%s\" is a system catalog"
-msgstr "renameatt: Àà \"%s\" ÊÇÒ»¸öϵͳ±í"
-
-#: commands/tablecmds.c:1168
-#, c-format
-msgid "Inherited attribute \"%s\" must be renamed in child tables too"
-msgstr "ÔÚ×Ó±íÖм̳ÐÊôÐÔ \"%s\" Ò²±ØÐèÖØÃüÃû"
-
-#: commands/tablecmds.c:1176
-#, c-format
-msgid "renameatt: attribute \"%s\" does not exist"
-msgstr "renameatt: ÊôÐÔ \"%s\" ²»´æÔÚ"
-
-#: commands/tablecmds.c:1181
-#, c-format
-msgid "renameatt: system attribute \"%s\" may not be renamed"
-msgstr "renameatt: ÏµÍ³ÊôÐÔ \"%s\" ²»Äܱ»ÖØÃüÃû"
-
-#: commands/tablecmds.c:1189
-#, c-format
-msgid "renameatt: inherited attribute \"%s\" may not be renamed"
-msgstr "renameatt: ¼Ì³ÐÊôÐÔ \"%s\" ²»Äܱ»ÖØÃüÃû"
-
-#: commands/tablecmds.c:1198
-#, c-format
-msgid "renameatt: attribute \"%s\" exists"
-msgstr "renameatt: ÊôÐÔ \"%s\" ÒÑ´æÔÚ"
-
-#: commands/tablecmds.c:1228
-#, c-format
-msgid "renameatt: can't find index id %u"
-msgstr "renameatt: ÎÞ·¨ÕÒµ½Ë÷Òý id %u"
-
-#: commands/tablecmds.c:1313
-#, c-format
-msgid "renamerel: system relation \"%s\" may not be renamed"
-msgstr "renamerel: ÏµÍ³¹Øϵ \"%s\" ²»Äܱ»ÖØÃüÃû"
-
-#: commands/tablecmds.c:1329
-#, c-format
-msgid "renamerel: relation \"%s\" does not exist"
-msgstr "renamerel: ¹Øϵ \"%s\" ²»´æÔÚ"
-
-#: commands/tablecmds.c:1333
-#, c-format
-msgid "renamerel: relation \"%s\" exists"
-msgstr "renamerel: ¹Øϵ \"%s\" ÒÑ´æÔÚ"
-
-#: commands/tablecmds.c:1631 commands/tablecmds.c:1906
-#: commands/tablecmds.c:2040 commands/tablecmds.c:2254
-#: commands/tablecmds.c:2400 commands/tablecmds.c:2519
-#: commands/tablecmds.c:2689 commands/tablecmds.c:3651
-#: commands/tablecmds.c:3826
-#, c-format
-msgid "ALTER TABLE: relation \"%s\" is not a table"
-msgstr "ALTER TABLE: ¹Øϵ \"%s\" ²»ÊÇÒ»¸ö±í"
-
-#: commands/tablecmds.c:1642 commands/tablecmds.c:1911
-#: commands/tablecmds.c:2045 commands/tablecmds.c:2162
-#: commands/tablecmds.c:2261 commands/tablecmds.c:2405
-#: commands/tablecmds.c:2524 commands/tablecmds.c:2694
-#: commands/tablecmds.c:3656
-#, c-format
-msgid "ALTER TABLE: relation \"%s\" is a system catalog"
-msgstr "ALTER TABLE: ¹Øϵ \"%s\" ÊÇÒ»¸öϵͳ±í"
-
-#: commands/tablecmds.c:1695
-#, c-format
-msgid "ALTER TABLE: child table \"%s\" has different type for column \"%s\""
-msgstr "ALTER TABLE: ×Ó±í \"%s\" µÄ×ֶΠ\"%s\" Óв»Í¬µÄÀàÐÍ"
-
-#: commands/tablecmds.c:1703
-#, c-format
-msgid "ALTER TABLE: merging definition of column \"%s\" for child %s"
-msgstr "ALTER TABLE: ºÏ²¢×Ó±í %2$s ×ֶΠ\"%1$s\" µÄ¶¨Òå"
-
-#: commands/tablecmds.c:1733
-msgid "Attribute must be added to child tables too"
-msgstr "ÊôÐÔÒ²±ØÐè¼ÓÈëµ½×Ó±íÖÐ"
-
-#: commands/tablecmds.c:1750
-msgid ""
-"Adding columns with defaults is not implemented.\n"
-"\tAdd the column, then use ALTER TABLE SET DEFAULT."
-msgstr ""
-"Ôö¼ÓÓÐĬÈÏÖµµÄ×Ö¶ÎδʵÏÖ.\n"
-"\tÏÈÔö¼Ó×Ö¶Î, È»ºóÓàALTER TABLE SET DEFAULT."
-
-#: commands/tablecmds.c:1754
-msgid ""
-"Adding NOT NULL columns is not implemented.\n"
-"\tAdd the column, then use ALTER TABLE ... SET NOT NULL."
-msgstr ""
-"Ôö¼Ó NOT NULL µÄ×Ö¶ÎδʵÏÖ.\n"
-"\tÏÈÔö¼Ó×Ö¶Î, È»ºóÓàALTER TABLE ... SET NOT NULL."
-
-#: commands/tablecmds.c:1763 commands/tablecmds.c:3968
-#, c-format
-msgid "ALTER TABLE: relation \"%s\" not found"
-msgstr "ALTER TABLE: ¹Øϵ \"%s\" Ã»·¢ÏÖ"
-
-#: commands/tablecmds.c:1775
-#, c-format
-msgid "ALTER TABLE: column name \"%s\" already exists in table \"%s\""
-msgstr "ALTER TABLE: ÔÚ±í \"%2$s\" ÖÐ×Ö¶ÎÃû \"%1$s\" ÒѾ­´æÔÚ"
-
-#: commands/tablecmds.c:1781
-#, c-format
-msgid "ALTER TABLE: relations limited to %d columns"
-msgstr ""
-
-#: commands/tablecmds.c:1956 commands/tablecmds.c:2090
-#: commands/tablecmds.c:2207
-#, c-format
-msgid "ALTER TABLE: Cannot alter system attribute \"%s\""
-msgstr "ALTER TABLE: ÎÞ·¨ÐÞ¸ÄϵͳÊôÐÔ \"%s\""
-
-#: commands/tablecmds.c:1977
-#, c-format
-msgid "ALTER TABLE: Index %u not found"
-msgstr "ALTER TABLE: Ë÷Òý %u Ã»·¢ÏÖ"
-
-#: commands/tablecmds.c:1992
-#, c-format
-msgid "ALTER TABLE: Attribute \"%s\" is in a primary key"
-msgstr "ALTER TABLE: ÊôÐÔ \"%s\" ÊÇÒ»¸öÖ÷¼ü"
-
-#: commands/tablecmds.c:2008 commands/tablecmds.c:2122
-#: commands/tablecmds.c:2349
-#, c-format
-msgid "ALTER TABLE: relation \"%s\" has no column \"%s\""
-msgstr "ALTER TABLE: ¹Øϵ \"%s\" Ã»ÓÐ×ֶΠ\"%s\""
-
-#: commands/tablecmds.c:2109
-#, c-format
-msgid "ALTER TABLE: Attribute \"%s\" contains NULL values"
-msgstr "ALTER TABLE: ÊôÐÔ \"%s\" °üº¬ NULL Öµ"
-
-#: commands/tablecmds.c:2157
-#, c-format
-msgid "ALTER TABLE: relation \"%s\" is not a table or view"
-msgstr "ALTER TABLE: ¹Øϵ \"%s\" ²»ÊÇÒ»¸ö±í»òÊÓͼ"
-
-#: commands/tablecmds.c:2281
-#, c-format
-msgid "ALTER TABLE: statistics target %d is too low"
-msgstr "ALTER TABLE: Ä¿±êͳ¼Æ %d Ì«µÍ"
-
-#: commands/tablecmds.c:2286
-msgid "ALTER TABLE: lowering statistics target to 1000"
-msgstr "ALTER TABLE: ½µµÍÄ¿±êͳ¼Æµ½ 1000"
-
-#: commands/tablecmds.c:2307
-#, fuzzy, c-format
-msgid "ALTER TABLE: \"%s\" storage not recognized"
-msgstr "ALTER TABLE: ¹Øϵ \"%s\" ÊÇÒ»¸öϵͳ±í"
-
-#: commands/tablecmds.c:2312
-#, c-format
-msgid "ALTER TABLE: Invalid column flag: %c"
-msgstr "ALTER TABLE: ÎÞЧ×ֶαêÖ¾: %c"
-
-#: commands/tablecmds.c:2354
-#, c-format
-msgid "ALTER TABLE: cannot change system attribute \"%s\""
-msgstr "ALTER TABLE: ÎÞ·¨¸Ä±äϵͳÊôÐÔ \"%s\""
-
-#: commands/tablecmds.c:2371
-#, c-format
-msgid "ALTER TABLE: Column datatype %s can only have storage \"plain\""
-msgstr "ALTER TABLE: ×Ö¶ÎÊý¾ÝÀàÐÍ %s Ö»Äܴ洢Ϊ \"plain\""
-
-#: commands/tablecmds.c:2419 commands/tablecmds.c:3731
-#, c-format
-msgid "ALTER TABLE: relation %u not found"
-msgstr "ALTER TABLE: Î´ÕÒµ½¹Øϵ %u"
-
-#: commands/tablecmds.c:2430
-#, c-format
-msgid "ALTER TABLE: Table is already %s"
-msgstr "ALTER TABLE: ±íÒѾ­ %s"
-
-#: commands/tablecmds.c:2473
-msgid "ALTER TABLE WITH OIDS is unsupported"
-msgstr "²»Ö§³Ö ALTER TABLE WITH OIDS"
-
-#: commands/tablecmds.c:2490
-#, c-format
-msgid "ALTER TABLE: relation %u doesn't have an Oid column to remove"
-msgstr "ALTER TABLE: ¹Øϵ %u Ã»ÓпÉɾ³ýµÄ Oid ×Ö¶Î"
-
-#: commands/tablecmds.c:2541
-#, c-format
-msgid "ALTER TABLE: Cannot drop system attribute \"%s\""
-msgstr "ALTER TABLE: ÎÞ·¨É¾³ýϵͳÊôÐÔ \"%s\""
-
-#: commands/tablecmds.c:2547
-#, c-format
-msgid "ALTER TABLE: Cannot drop inherited column \"%s\""
-msgstr "ALTER TABLE: ÎÞ·¨É¾³ý¼Ì³Ð×ֶΠ\"%s\""
-
-#: commands/tablecmds.c:2576 commands/tablecmds.c:2627
-#, c-format
-msgid "ALTER TABLE: relation %u has no column \"%s\""
-msgstr "ALTER TABLE: ¹Øϵ %u Ã»ÓÐ×ֶΠ\"%s\""
-
-#: commands/tablecmds.c:2581 commands/tablecmds.c:2632
-#, c-format
-msgid "ALTER TABLE: relation %u has non-inherited column \"%s\""
-msgstr "ALTER TABLE: ¹Øϵ %u ÓзǼ̳Ð×ֶΠ\"%s\""
-
-#: commands/tablecmds.c:2768
-msgid ""
-"ALTER TABLE / ADD CONSTRAINT is not implemented for that constraint type."
-msgstr ""
-
-#: commands/tablecmds.c:2800
-msgid ""
-"ALTER TABLE / ADD CONSTRAINT unable to determine type of constraint passed"
-msgstr ""
-
-#: commands/tablecmds.c:2860
-#, c-format
-msgid "Only relation '%s' can be referenced in CHECK"
-msgstr ""
-
-#: commands/tablecmds.c:2918
-#, c-format
-msgid "AlterTableAddConstraint: rejected due to CHECK constraint %s"
-msgstr ""
-
-#: commands/tablecmds.c:2974
-#, c-format
-msgid "referenced relation \"%s\" is not a table"
-msgstr "²Î¿¼¹Øϵ \"%s\" ²»ÊÇÒ»¸ö±í"
-
-#: commands/tablecmds.c:2979
-#, c-format
-msgid "%s: relation \"%s\" is a system catalog"
-msgstr "%s: ¹Øϵ \"%s\" ÊÇÒ»¸öϵͳ±í"
-
-#: commands/tablecmds.c:2994
-#, c-format
-msgid "%s: Unable to reference temporary table from permanent table constraint"
-msgstr ""
-
-#: commands/tablecmds.c:3036
-#, c-format
-msgid ""
-"%s: number of referencing and referenced attributes for foreign key disagree"
-msgstr ""
-
-#: commands/tablecmds.c:3117
-#, fuzzy, c-format
-msgid "%s: column \"%s\" referenced in foreign key constraint does not exist"
-msgstr "CREATE TABLE: ÔÚ¼ü×ÖÖÐÃüÃûµÄ×ֶΠ\"%s\" ²»´æÔÚ"
-
-#: commands/tablecmds.c:3120
-#, c-format
-msgid "Can only have %d keys in a foreign key"
-msgstr "ÔÚÒ»¸öÍâ¼üÖÐÖ»ÄÜÓР%d ¸ö¼ü"
-
-#: commands/tablecmds.c:3164
-#, c-format
-msgid "transformFkeyGetPrimaryKey: index %u not found"
-msgstr "transformFkeyGetPrimaryKey: Ë÷Òý %u Ã»·¢ÏÖ"
-
-#: commands/tablecmds.c:3182
-#, c-format
-msgid "PRIMARY KEY for referenced table \"%s\" not found"
-msgstr ""
-
-#: commands/tablecmds.c:3238
-#, c-format
-msgid "transformFkeyCheckAttrs: index %u not found"
-msgstr "transformFkeyCheckAttrs: Î´ÕÒµ½Ë÷Òý %u"
-
-#: commands/tablecmds.c:3296
-#, c-format
-msgid ""
-"UNIQUE constraint matching given keys for referenced table \"%s\" not found"
-msgstr ""
-
-#: commands/tablecmds.c:3459
-#, c-format
-msgid ""
-"number of key attributes in referenced table must be equal to foreign key\n"
-"\tIllegal FOREIGN KEY definition references \"%s\""
-msgstr ""
-
-#: commands/tablecmds.c:3515
-msgid "Unrecognized ON DELETE action for FOREIGN KEY constraint"
-msgstr ""
-
-#: commands/tablecmds.c:3581
-msgid "Unrecognized ON UPDATE action for FOREIGN KEY constraint"
-msgstr ""
-
-#: commands/tablecmds.c:3626
-#, c-format
-msgid "fkMatchTypeToString: Unknown MATCH TYPE '%c'"
-msgstr ""
-
-#: commands/tablecmds.c:3702
-#, c-format
-msgid "ALTER TABLE / DROP CONSTRAINT: %s does not exist"
-msgstr "ALTER TABLE / DROP CONSTRAINT: %s ²»´æÔÚ"
-
-#: commands/tablecmds.c:3706
-msgid "Multiple constraints dropped"
-msgstr ""
-
-#: commands/tablecmds.c:3793
-#, c-format
-msgid ""
-"ALTER TABLE: relation \"%s\" is not a table, TOAST table, index, view, or "
-"sequence"
-msgstr "ALTER TABLE: ¹Øϵ \"%s\" ²»ÊÇÒ»¸ö±í, TOAST ±í, Ë÷Òý, ÊÓͼ, »òÕßÐòÁÐ"
-
-#: commands/tablecmds.c:3843
-msgid "Shared relations cannot be toasted after initdb"
-msgstr ""
-
-#: commands/tablecmds.c:3856
-#, c-format
-msgid "ALTER TABLE: relation \"%s\" already has a toast table"
-msgstr ""
-
-#: commands/tablecmds.c:3871
-#, c-format
-msgid "ALTER TABLE: relation \"%s\" does not need a toast table"
-msgstr ""
-
-#: commands/trigger.c:132
-#, c-format
-msgid "Unable to find table for constraint \"%s\""
-msgstr ""
-
-#: commands/trigger.c:137
-#, c-format
-msgid "CreateTrigger: relation \"%s\" is not a table"
-msgstr "CreateTrigger: ¹Øϵ \"%s\" ²»ÊÇÒ»¸ö±í"
-
-#: commands/trigger.c:141
-#, c-format
-msgid "CreateTrigger: can't create trigger for system relation %s"
-msgstr "CreateTrigger: ²»ÄÜΪϵͳ¹Øϵ %s ´´½¨´¥·¢Æ÷"
-
-#: commands/trigger.c:208
-msgid "CreateTrigger: double INSERT event specified"
-msgstr "CreateTrigger: INSERT Ê¼þÖ¸¶¨ÁËÁ½±ß"
-
-#: commands/trigger.c:213
-msgid "CreateTrigger: double DELETE event specified"
-msgstr "CreateTrigger: DELETE Ê¼þÖ¸¶¨ÁËÁ½±ß"
-
-#: commands/trigger.c:218
-msgid "CreateTrigger: double UPDATE event specified"
-msgstr "CreateTRigger: UPDATE Ê¼þÖ¸¶¨ÁËÁ½±ß"
-
-#: commands/trigger.c:222
-msgid "CreateTrigger: unknown event specified"
-msgstr "CreateTrigger: Ö¸¶¨ÁËδ֪ʼþ"
-
-#: commands/trigger.c:248
-#, c-format
-msgid "CreateTrigger: trigger %s already defined on relation %s"
-msgstr "CreateTrigger: ÔÚ¹Øϵ %2$s Öд¥·¢Æ÷ %1$s ÒѾ­¶¨ÒåÁË"
-
-#: commands/trigger.c:260
-#, c-format
-msgid "CreateTrigger: function %s() does not exist"
-msgstr "CreateTrigger: º¯Êý %s() ²»´æÔÚ"
-
-#: commands/trigger.c:271
-#, c-format
-msgid ""
-"CreateTrigger: changing return type of function %s() from OPAQUE to TRIGGER"
-msgstr "CreateTrigger: ¸Ä±äº¯Êý %s() ·µ»ØÀàÐÍ, ´Ó OPAQUE µ½ TRIGGER"
-
-#: commands/trigger.c:276
-#, c-format
-msgid "CreateTrigger: function %s() must return TRIGGER"
-msgstr "CreateTrigger: º¯Êý %s() ±ØÐè·µ»Ø TRIGGER"
-
-#: commands/trigger.c:376
-#, c-format
-msgid "CreateTrigger: relation %s not found in pg_class"
-msgstr "CreateTrigger: ÔÚ pg_class ÖÐûÕÒµ½¹Øϵ %s"
-
-#: commands/trigger.c:461
-#, c-format
-msgid "DropTrigger: there is no trigger %s on relation %s"
-msgstr "DropTrigger: ¹Øϵ %2$s Ã»Óд¥·¢Æ÷ %1$s"
-
-#: commands/trigger.c:510
-#, c-format
-msgid "RemoveTriggerById: Trigger %u does not exist"
-msgstr "RemoveTriggerById: ´¥·¢Æ÷ %u ²»´æÔÚ"
-
-#: commands/trigger.c:521
-#, c-format
-msgid "DropTrigger: relation \"%s\" is not a table"
-msgstr "DropTrigger: ¹Øϵ \"%s\" ²»ÊÇÒ»¸ö±í"
-
-#: commands/trigger.c:525
-#, c-format
-msgid "DropTrigger: can't drop trigger for system relation %s"
-msgstr "DropTrigger: ²»ÄÜɾ³ýϵͳ¹Øϵ %s µÄ´¥·¢Æ÷"
-
-#: commands/trigger.c:550
-#, c-format
-msgid "DropTrigger: relation %s not found in pg_class"
-msgstr "DropTrigger: ÔÚ pg_class ÖÐûÓйØϵ %s"
-
-#: commands/trigger.c:555
-#, c-format
-msgid "DropTrigger: relation %s has reltriggers = 0"
-msgstr "DropTrigger: ¹Øϵ %s µÄ reltriggers = 0"
-
-#: commands/trigger.c:626
-#, c-format
-msgid "renametrig: trigger %s already defined on relation %s"
-msgstr "renametrig: ÔÚ¹Øϵ %2$s ÖÐ, ´¥·¢Æ÷ %1$s ÒѾ­¶¨ÒåÁË"
-
-#: commands/trigger.c:667
-#, c-format
-msgid "renametrig: trigger %s not defined on relation %s"
-msgstr "renametrig: ÔÚ¹Øϵ %2$s ÖÐ, ´¥·¢Æ÷ %1$s Î´±»¶¨Òå"
-
-#: commands/trigger.c:730
-#, c-format
-msgid "RelationBuildTriggers: unexpected record found for rel %s"
-msgstr ""
-
-#: commands/trigger.c:758
-#, c-format
-msgid "RelationBuildTriggers: tgargs IS NULL for rel %s"
-msgstr ""
-
-#: commands/trigger.c:778
-#, c-format
-msgid "RelationBuildTriggers: %d record(s) not found for rel %s"
-msgstr ""
-
-#: commands/trigger.c:1129
-#, c-format
-msgid "ExecCallTriggerFunc: function %u returned NULL"
-msgstr "ExecCallTriggerFunc: º¯Êý %u ·µ»ØÁË NULL"
-
-#: commands/trigger.c:1179 commands/trigger.c:1290 commands/trigger.c:1414
-msgid "BEFORE STATEMENT trigger cannot return a value."
-msgstr "BEFORE STATEMENT ´¥·¢Æ÷²»ÄÜ·µ»ØÖµ."
-
-#: commands/trigger.c:1536 executor/execMain.c:1119 executor/execMain.c:1412
-#: executor/execMain.c:1546
-msgid "Can't serialize access due to concurrent update"
-msgstr ""
-
-#: commands/trigger.c:1559 executor/execMain.c:1140
-#, c-format
-msgid "Unknown status %u from heap_mark4update"
-msgstr "À´×Ô heap_mark4update µÄδ֪״̬ %u"
-
-#: commands/trigger.c:1571
-msgid "GetTupleForTrigger: failed ReadBuffer"
-msgstr "GetTupleForTrigger: ReadBuffer Ê§°Ü"
-
-#: commands/trigger.c:1759
-msgid "DeferredTriggerExecute: failed to fetch old tuple"
-msgstr "DeferredTriggerExecute: È¡µÃ¾ÉÔª×éʧ°Ü"
-
-#: commands/trigger.c:1766
-msgid "DeferredTriggerExecute: failed to fetch new tuple"
-msgstr "DeferredTriggerExecute: È¡µÃÐÂÔª×éʧ°Ü"
-
-#: commands/trigger.c:1787
-#, c-format
-msgid "DeferredTriggerExecute: can't find trigger %u"
-msgstr "DeferredTriggerExecute: ÎÞ·¨ÕÒµ½´¥·¢Æ÷ %u"
-
-#: commands/trigger.c:1933
-#, c-format
-msgid "deferredTriggerInvokeEvents: relation %u has no triggers"
-msgstr "deferredTriggerInvokeEvents: ¹Øϵ %u Ã»Óд¥·¢Æ÷"
-
-#: commands/trigger.c:2038
-msgid "DeferredTriggerBeginXact() called while inside transaction"
-msgstr ""
-
-#: commands/trigger.c:2213
-msgid "unnamed constraints cannot be set explicitly"
-msgstr ""
-
-#: commands/trigger.c:2244
-#, c-format
-msgid "Constraint '%s' is not deferrable"
-msgstr ""
-
-#: commands/trigger.c:2258
-#, c-format
-msgid "Constraint '%s' does not exist"
-msgstr "Ô¼Êø '%s' ²»´æÔÚ"
-
-#: commands/trigger.c:2335
-msgid "DeferredTriggerSaveEvent() called outside of transaction"
-msgstr ""
-
-#: commands/typecmds.c:125
-#, c-format
-msgid "DefineType: type names must be %d characters or less"
-msgstr "DefineType: ÀàÐÍÃû±ØÐèΪ %d ¸ö×Ö·û»ò¸üÉÙ"
-
-#: commands/typecmds.c:155
-#, c-format
-msgid "Array element type cannot be %s"
-msgstr ""
-
-#: commands/typecmds.c:186
-#, c-format
-msgid "DefineType: \"%s\" alignment not recognized"
-msgstr ""
-
-#: commands/typecmds.c:202
-#, c-format
-msgid "DefineType: \"%s\" storage not recognized"
-msgstr "DefineType: \"%s\" ´æ´¢²»±»ÈÏ¿É"
-
-#: commands/typecmds.c:207
-#, c-format
-msgid "DefineType: attribute \"%s\" not recognized"
-msgstr "DefineType: ÊôÐÔ \"%s\" ²»±»ÈÏ¿É"
-
-#: commands/typecmds.c:216
-msgid "Define: \"input\" unspecified"
-msgstr "Define: \"input\" Î´±»Ö¸¶¨"
-
-#: commands/typecmds.c:218
-msgid "Define: \"output\" unspecified"
-msgstr "Define: \"output\" Î´±»Ö¸¶¨"
-
-#: commands/typecmds.c:251
-#, c-format
-msgid "TypeCreate: changing return type of function %s from OPAQUE to %s"
-msgstr "TypeCreate: º¯Êý %s µÄ·µ»ØÀàÐÍ OPAQUE ¸Ä±ä³É %s"
-
-#: commands/typecmds.c:256
-#, c-format
-msgid "Type input function %s must return %s"
-msgstr "ÀàÐÍÊäÈ뺯Êý %s ±ØÐè·µ»Ø %s"
-
-#: commands/typecmds.c:264
-#, c-format
-msgid "TypeCreate: changing return type of function %s from OPAQUE to CSTRING"
-msgstr "TypeCreate: º¯Êý %s µÄ·µ»ØÀàÐÍ OPAQUE ¸Ä±ä³É CSTRING"
-
-#: commands/typecmds.c:269
-#, c-format
-msgid "Type output function %s must return cstring"
-msgstr "ÀàÐÍÊä³öº¯Êý %s ±ØÐè·µ»Ø cstring"
-
-#: commands/typecmds.c:397
-#, c-format
-msgid "RemoveTypeById: type %u not found"
-msgstr "RemoveTypeById: Î´ÕÒµ½ÀàÐÍ %u"
-
-#: commands/typecmds.c:458
-#, c-format
-msgid "CREATE DOMAIN: domain names must be %d characters or less"
-msgstr "CREATE DOMAIN: domain Ãû×Ö±ØÐèΪ %d ¸ö×Ö·û»òÕ߸üÉÙ"
-
-#: commands/typecmds.c:477
-#, c-format
-msgid "DefineDomain: %s is not a basetype"
-msgstr "DefineDomain: %s ²»ÊÇÒ»¸ö»ù´¡ÀàÐÍ"
-
-#: commands/typecmds.c:530
-msgid "CREATE DOMAIN / FOREIGN KEY constraints not supported"
-msgstr ""
-
-#: commands/typecmds.c:534
-msgid "DefineDomain: unexpected constraint node type"
-msgstr ""
-
-#: commands/typecmds.c:546
-msgid "CREATE DOMAIN has multiple DEFAULT expressions"
-msgstr ""
-
-#: commands/typecmds.c:573 commands/typecmds.c:580
-msgid "CREATE DOMAIN has conflicting NULL / NOT NULL constraint"
-msgstr ""
-
-#: commands/typecmds.c:596
-msgid "CREATE DOMAIN / UNIQUE not supported"
-msgstr "²»Ö§³Ö CREATE DOMAIN / UNIQUE"
-
-#: commands/typecmds.c:600
-msgid "CREATE DOMAIN / PRIMARY KEY not supported"
-msgstr "²»Ö§³Ö  CREATE DOMAIN / PRIMARY KEY"
-
-#: commands/typecmds.c:607
-msgid ""
-"CREATE DOMAIN: DEFERRABLE, NON DEFERRABLE, DEFERRED and IMMEDIATE not "
-"supported"
-msgstr ""
-"CREATE DOMAIN: ²»Ö§³Ö DEFERRABLE, NON DEFERRABLE, DEFERRED ºÍ IMMEDIATE"
-
-#: commands/typecmds.c:612
-msgid "DefineDomain: unrecognized constraint subtype"
-msgstr ""
-
-#: commands/typecmds.c:704
-#, c-format
-msgid "RemoveDomain: type \"%s\" does not exist"
-msgstr "RemoveDomain: ÀàÐÍ \"%s\" ²»´æÔÚ"
-
-#: commands/typecmds.c:717 commands/typecmds.c:1540 commands/typecmds.c:1837
-#, c-format
-msgid "%s is not a domain"
-msgstr "%s ²»ÊÇÒ»¸öÓò"
-
-#: commands/typecmds.c:786
-#, c-format
-msgid "TypeCreate: changing argument type of function %s from OPAQUE to %s"
-msgstr "TypeCreate: º¯Êý %s ²ÎÊýÀàÐÍ OPAQUE ¸Ä±ä³É %s"
-
-#: commands/typecmds.c:845
-#, c-format
-msgid ""
-"TypeCreate: changing argument type of function %s from OPAQUE to CSTRING"
-msgstr "TypeCreate: º¯Êý %s ²ÎÊýÀàÐÍ OPAQUE ¸Ä±ä³É CSTRING"
-
-#: commands/typecmds.c:888
-msgid "attempted to define composite type relation with no attrs"
-msgstr ""
-
-#: commands/typecmds.c:949 commands/typecmds.c:1063 commands/typecmds.c:1180
-#: commands/typecmds.c:1266 commands/typecmds.c:1831
-#, c-format
-msgid "AlterDomain: type \"%s\" does not exist"
-msgstr "AlterDomain: ÀàÐÍ \"%s\" ²»´æÔÚ"
-
-#: commands/typecmds.c:1073
-#, c-format
-msgid "AlterDomain: %s is already set to %s"
-msgstr "AlterDomain: %s ÒѾ­ÉèÖóɠ%s"
-
-#: commands/typecmds.c:1115
-#, c-format
-msgid "ALTER DOMAIN: Relation \"%s\" attribute \"%s\" contains NULL values"
-msgstr "ALTER DOMAIN: ¹Øϵ \"%s\" ÊôÐÔ \"%s\" °üº¬ NULL Öµ"
-
-#: commands/typecmds.c:1275
-msgid "ALTER DOMAIN / FOREIGN KEY constraints not supported"
-msgstr ""
-
-#: commands/typecmds.c:1279
-msgid "AlterDomainAddConstraint: unexpected constraint node type"
-msgstr ""
-
-#: commands/typecmds.c:1286
-msgid "Use ALTER DOMAIN .. SET DEFAULT instead"
-msgstr "ÓàALTER DOMAIN .. SET DEFAULT Ìæ´ú"
-
-#: commands/typecmds.c:1291
-msgid "Use ALTER DOMAIN .. [ SET | DROP ] NOT NULL instead"
-msgstr "ÓàALTER DOMAIN .. [ SET | DROP ] NOT NULL Ìæ´ú"
-
-#: commands/typecmds.c:1299
-msgid "ALTER DOMAIN / UNIQUE indexes not supported"
-msgstr "ALTER DOMAIN / UNIQUE Ë÷Òý²»±»Ö§³Ö"
-
-#: commands/typecmds.c:1303
-msgid "ALTER DOMAIN / PRIMARY KEY indexes not supported"
-msgstr "ALTER DOMAIN / PRIMARY KEY Ë÷Òý²»±»Ö§³Ö"
-
-#: commands/typecmds.c:1310
-msgid ""
-"ALTER DOMAIN: DEFERRABLE, NON DEFERRABLE, DEFERRED and IMMEDIATE not "
-"supported"
-msgstr "ALTER DOMAIN: ²»Ö§³Ö DEFERRABLE, NON DEFERRABLE, DEFERRED ºÍ IMMEDIATE"
-
-#: commands/typecmds.c:1315
-msgid "AlterDomainAddConstraint: unrecognized constraint node type"
-msgstr ""
-
-#: commands/typecmds.c:1379
-#, c-format
-msgid ""
-"ALTER DOMAIN: Relation \"%s\" attribute \"%s\" contains values that fail the "
-"new constraint"
-msgstr ""
-
-#: commands/typecmds.c:1571
-#, c-format
-msgid "constraint \"%s\" already exists for domain \"%s\""
-msgstr ""
-
-#: commands/typecmds.c:1611
-msgid "Relations cannot be referenced in domain CHECK constraint"
-msgstr ""
-
-#: commands/typecmds.c:1618
-msgid "cannot use column references in domain CHECK clause"
-msgstr ""
-
-#: commands/typecmds.c:1704
-#, c-format
-msgid "GetDomainConstraints: failed to lookup type %u"
-msgstr "GetDomainConstraints: ²éÕÒÀàÐÍ %u Ê§°Ü"
-
-#: commands/typecmds.c:1736
-#, c-format
-msgid "GetDomainConstraints: domain %s constraint %s has NULL conbin"
-msgstr ""
-
-#: commands/user.c:147
-#, c-format
-msgid "write_group_file: unable to write %s: %m"
-msgstr "write_group_file: ÎÞ·¨Ð´Èë %s: %m"
-
-#: commands/user.c:181
-#, c-format
-msgid "Invalid group name '%s'"
-msgstr "ÎÞЧ×éÃû '%s'"
-
-#: commands/user.c:211 commands/user.c:335
-#, c-format
-msgid "Invalid user name '%s'"
-msgstr "ÎÞЧÓû§Ãû '%s'"
-
-#: commands/user.c:242 commands/user.c:364
-#, c-format
-msgid "%s: %m"
-msgstr "%s: %m"
-
-#: commands/user.c:250 commands/user.c:372
-#, c-format
-msgid "rename %s to %s: %m"
-msgstr "ÖØÃüÃû %s µ½ %s: %m"
-
-#: commands/user.c:286
-#, c-format
-msgid "write_user_file: unable to write %s: %m"
-msgstr "writer_user_file: ÎÞ·¨Ð´Èë %s: %m"
-
-#: commands/user.c:341
-#, c-format
-msgid "Invalid user password '%s'"
-msgstr "ÎÞЧÓû§¿ÚÁî '%s'"
-
-#: commands/user.c:505 commands/user.c:515 commands/user.c:521
-#: commands/user.c:527 commands/user.c:533 commands/user.c:539
-msgid "CREATE USER: conflicting options"
-msgstr "CREATE USER: Ñ¡Ïî³åÍ»"
-
-#: commands/user.c:543
-#, c-format
-msgid "CREATE USER: option \"%s\" not recognized"
-msgstr "CREATE USER: Ñ¡Ïî \"%s\" ²»±»ÈÏ¿É"
-
-#: commands/user.c:555
-msgid "user id must be positive"
-msgstr "Óû§ id ±ØÐèΪÕýÊý"
-
-#: commands/user.c:570
-msgid "CREATE USER: permission denied"
-msgstr "CREATE USER: È¨ÏÞ²»¹»"
-
-#: commands/user.c:573
-#, c-format
-msgid "CREATE USER: user name \"%s\" is reserved"
-msgstr "CREATE USER: Óû§Ãû \"%s\" ±»±£ÁôÁË"
-
-#: commands/user.c:608
-#, c-format
-msgid "CREATE USER: user name \"%s\" already exists"
-msgstr "CREATE USER: Óû§Ãû \"%s\" ÒѾ­´æÔÚ"
-
-#: commands/user.c:611
-#, c-format
-msgid "CREATE USER: sysid %d is already assigned"
-msgstr "CREATE USER: sysid %d ÒѾ­±»¸³Öµ"
-
-#: commands/user.c:642 commands/user.c:843
-msgid "CREATE USER: password encryption failed"
-msgstr "CREATE USER: ¿ÚÁî¼ÓÃÜʧ°Ü"
-
-#: commands/user.c:733 commands/user.c:743 commands/user.c:749
-#: commands/user.c:755
-msgid "ALTER USER: conflicting options"
-msgstr "ALTER USER: Ñ¡Ïî³åÍ»"
-
-#: commands/user.c:759
-#, c-format
-msgid "ALTER USER: option \"%s\" not recognized"
-msgstr "ALTER USER: Ñ¡Ïî \"%s\" ²»±»ÈÏ¿É"
-
-#: commands/user.c:782
-msgid "ALTER USER: permission denied"
-msgstr "ALTER USER: È¨ÏÞ²»¹»"
-
-#: commands/user.c:796
-#, c-format
-msgid "ALTER USER: user \"%s\" does not exist"
-msgstr "ALTER USER: Óû§ \"%s\" ²»´æÔÚ"
-
-#: commands/user.c:907 commands/variable.c:560 utils/cache/lsyscache.c:1564
-#: utils/init/miscinit.c:559
-#, c-format
-msgid "user \"%s\" does not exist"
-msgstr "Óû§ \"%s\" ²»´æÔÚ"
-
-#: commands/user.c:911
-msgid "ALTER USER SET: permission denied"
-msgstr "ALTER USER SET: È¨ÏÞ²»¹»"
-
-#: commands/user.c:968
-msgid "DROP USER: permission denied"
-msgstr "DROP USER: È¨ÏÞ²»¹»"
-
-#: commands/user.c:995
-#, c-format
-msgid "DROP USER: user \"%s\" does not exist (no users removed)"
-msgstr "DROP USER: Óû§ \"%s\" ²»´æÔÚ (ûÓÐÓû§±»É¾³ý)"
-
-#: commands/user.c:997
-#, c-format
-msgid "DROP USER: user \"%s\" does not exist"
-msgstr "DROP USER: Óû§ \"%s\" ²»´æÔÚ"
-
-#: commands/user.c:1003
-msgid "current user cannot be dropped"
-msgstr "µ±Ç°Óû§²»Äܱ»É¾³ý"
-
-#: commands/user.c:1005
-msgid "session user cannot be dropped"
-msgstr "»á»°Óû§²»Äܱ»É¾³ý"
-
-#: commands/user.c:1029
-#, c-format
-msgid "DROP USER: user \"%s\" owns database \"%s\", cannot be removed%s"
-msgstr "DROP USER: Óû§ \"%s\" ÓµÓÐÊý¾Ý¿â \"%s\", ²»Äܱ»É¾³ý %s"
-
-#: commands/user.c:1109
-#, c-format
-msgid "CheckPgUserAclNotNull: \"%s\" not found"
-msgstr "CheckPgUserAclNotNull: \"%s\" Ã»Óз¢ÏÖ"
-
-#: commands/user.c:1114
-#, c-format
-msgid ""
-"To use passwords, you have to revoke permissions on %s so normal users "
-"cannot read the passwords. Try 'REVOKE ALL ON \"%s\" FROM PUBLIC'."
-msgstr ""
-
-#: commands/user.c:1156 commands/user.c:1162
-msgid "CREATE GROUP: conflicting options"
-msgstr "CREATE GROUP: Ñ¡Ïî³åÍ»"
-
-#: commands/user.c:1166
-#, c-format
-msgid "CREATE GROUP: option \"%s\" not recognized"
-msgstr "CREATE GROUP: Ñ¡Ïî \"%s\" ²»±»ÈÏ¿É"
-
-#: commands/user.c:1174
-msgid "group id must be positive"
-msgstr ""
-
-#: commands/user.c:1185
-msgid "CREATE GROUP: permission denied"
-msgstr "CREATE GROUP: È¨ÏÞ²»¹»"
-
-#: commands/user.c:1188
-#, c-format
-msgid "CREATE GROUP: group name \"%s\" is reserved"
-msgstr "CREATE GROUP: ×éÃû \"%s\" ±»±£ÁôÁË"
-
-#: commands/user.c:1223
-#, c-format
-msgid "CREATE GROUP: group name \"%s\" already exists"
-msgstr "CREATE GROUP: ×éÃû \"%s\" ÒѾ­´æÔÚ"
-
-#: commands/user.c:1226
-#, c-format
-msgid "CREATE GROUP: group sysid %d is already assigned"
-msgstr "CREATE GROUP: ×é sysid %d ÒѾ­±»¸³Öµ"
-
-#: commands/user.c:1319
-#, c-format
-msgid "%s: group \"%s\" does not exist"
-msgstr "%s: ×é \"%s\" ²»´æÔÚ"
-
-#: commands/user.c:1360
-#, c-format
-msgid "AlterGroup: unknown tag %s"
-msgstr "AlterGroup: Î´Öª±êÖ¾ %s"
-
-#: commands/user.c:1372
-#, c-format
-msgid "%s: user \"%s\" is already in group \"%s\""
-msgstr "%s: Óû§ \"%s\" ÒѾ­ÔÚ×é \"%s\" ÖÐ"
-
-#: commands/user.c:1387
-#, c-format
-msgid "ALTER GROUP: group \"%s\" does not have any members"
-msgstr "ALTER GROUP: ×é \"%s\" Ã»ÓÐÈκγÉÔ±"
-
-#: commands/user.c:1412
-#, c-format
-msgid "ALTER GROUP: user \"%s\" is not in group \"%s\""
-msgstr "ALTER GROUP: Óû§ \"%s\" ²»ÔÚ×é \"%s\" ÖÐ"
-
-#: commands/user.c:1541
-msgid "DROP GROUP: permission denied"
-msgstr "DROP GROUP: È¨ÏÞ²»¹»"
-
-#: commands/user.c:1554
-#, c-format
-msgid "DROP GROUP: group \"%s\" does not exist"
-msgstr "DROP GROUP: ×é \"%s\" ²»´æÔÚ"
-
-#: commands/vacuum.c:466
-msgid ""
-"oldest Xmin is far in the past --- close open transactions soon to avoid "
-"wraparound problems"
-msgstr ""
-
-#: commands/vacuum.c:512 commands/vacuum.c:519
-#, c-format
-msgid "pg_class entry for relid %u vanished during vacuuming"
-msgstr ""
-
-#: commands/vacuum.c:672
-msgid ""
-"Some databases have not been vacuumed in over 2 billion transactions.\n"
-"\tYou may have already suffered transaction-wraparound data loss."
-msgstr ""
-
-#: commands/vacuum.c:683
-msgid ""
-"Some databases have not been vacuumed in over 1 billion transactions.\n"
-"\tBetter vacuum them soon, or you may have a wraparound failure."
-msgstr ""
-
-#: commands/vacuum.c:690
-#, c-format
-msgid ""
-"Some databases have not been vacuumed in %d transactions.\n"
-"\tBetter vacuum them within %d transactions,\n"
-"\tor you may have a wraparound failure."
-msgstr ""
-
-#: commands/vacuum.c:778
-#, c-format
-msgid "Skipping \"%s\" --- only table or database owner can VACUUM it"
-msgstr "ºöÂÔ \"%s\" --- Ö»Óбí»òÊý¾Ý¿âËùÓÐÕßÄܹ» VACUUM"
-
-#: commands/vacuum.c:984
-#, c-format
-msgid "VACUUM (full_vacuum_rel): FlushRelationBuffers returned %d"
-msgstr "VACUMM (full_vacuum_rel): FlushRelationBuffers ·µ»ØÁË %d"
-
-#: commands/vacuum.c:1051 commands/vacuumlazy.c:205
-#, c-format
-msgid "--Relation %s.%s--"
-msgstr "--¹Øϵ %s.%s--"
-
-#: commands/vacuum.c:1085 commands/vacuumlazy.c:262
-#, c-format
-msgid "Rel %s: Uninitialized page %u - fixing"
-msgstr ""
-
-#: commands/vacuum.c:1199
-#, c-format
-msgid ""
-"Rel %s: TID %u/%u: InsertTransactionInProgress %u - can't shrink relation"
-msgstr ""
-
-#: commands/vacuum.c:1209
-#, c-format
-msgid ""
-"Rel %s: TID %u/%u: DeleteTransactionInProgress %u - can't shrink relation"
-msgstr ""
-
-#: commands/vacuum.c:1227 commands/vacuumlazy.c:366
-#, c-format
-msgid "Rel %s: TID %u/%u: OID IS INVALID. TUPGONE %d."
-msgstr ""
-
-#: commands/vacuum.c:1365
-#, c-format
-msgid ""
-"Pages %u: Changed %u, reaped %u, Empty %u, New %u; Tup %.0f: Vac %.0f, Keep/"
-"VTL %.0f/%u, UnUsed %.0f, MinLen %lu, MaxLen %lu; Re-using: Free/Avail. "
-"Space %.0f/%.0f; EndEmpty/Avail. Pages %u/%u.\n"
-"\t%s"
-msgstr ""
-
-#: commands/vacuum.c:1589
-msgid "HEAP_MOVED_IN was not expected"
-msgstr ""
-
-#: commands/vacuum.c:1599
-msgid "Invalid XVAC in tuple header"
-msgstr ""
-
-#: commands/vacuum.c:1624
-msgid "HEAP_MOVED_OFF was expected"
-msgstr ""
-
-#: commands/vacuum.c:1678 commands/vacuum.c:1800
-msgid "Parent item in update-chain not found - can't continue repair_frag"
-msgstr ""
-
-#: commands/vacuum.c:1715
-msgid ""
-"Child itemid in update-chain marked as unused - can't continue repair_frag"
-msgstr ""
-
-#: commands/vacuum.c:1812
-msgid "Parent itemid marked as unused"
-msgstr ""
-
-#: commands/vacuum.c:1836
-msgid "Too old parent tuple found - can't continue repair_frag"
-msgstr ""
-
-#: commands/vacuum.c:1965
-#, c-format
-msgid "moving chain: failed to add item with len = %lu to page %u"
-msgstr ""
-
-#: commands/vacuum.c:2109
-#, c-format
-msgid ""
-"failed to add item with len = %lu to page %u (free space %lu, nusd %u, noff %"
-"u)"
-msgstr ""
-
-#: commands/vacuum.c:2198
-msgid "HEAP_MOVED_IN was not expected (2)"
-msgstr ""
-
-#: commands/vacuum.c:2202
-msgid "Invalid XVAC in tuple header (4)"
-msgstr ""
-
-#: commands/vacuum.c:2227
-msgid "HEAP_MOVED_OFF was expected (2)"
-msgstr ""
-
-#: commands/vacuum.c:2338
-msgid "HEAP_MOVED_OFF/HEAP_MOVED_IN was expected"
-msgstr ""
-
-#: commands/vacuum.c:2340
-msgid "Invalid XVAC in tuple header (2)"
-msgstr ""
-
-#: commands/vacuum.c:2358
-#, c-format
-msgid ""
-"Rel %s: Pages: %u --> %u; Tuple(s) moved: %u.\n"
-"\t%s"
-msgstr ""
-
-#: commands/vacuum.c:2419
-msgid "Invalid XVAC in tuple header (3)"
-msgstr ""
-
-#: commands/vacuum.c:2424
-msgid "HEAP_MOVED_OFF was expected (3)"
-msgstr ""
-
-#: commands/vacuum.c:2473
-#, c-format
-msgid "VACUUM (repair_frag): FlushRelationBuffers returned %d"
-msgstr "VACUUM (repari_frag): FlushRelationBuffers ·µ»ØÁË %d"
-
-#: commands/vacuum.c:2539
-#, c-format
-msgid "VACUUM (vacuum_heap): FlushRelationBuffers returned %d"
-msgstr "VACUUM (vacuum_heap): FlushRelationBuffers ·µ»ØÁË %d"
-
-#: commands/vacuum.c:2545
-#, c-format
-msgid "Rel %s: Pages: %u --> %u."
-msgstr ""
-
-#: commands/vacuum.c:2636 commands/vacuumlazy.c:585
-#, c-format
-msgid ""
-"Index %s: Pages %u, %u deleted, %u free; Tuples %.0f.\n"
-"\t%s"
-msgstr ""
-
-#: commands/vacuum.c:2650 commands/vacuum.c:2712
-#, c-format
-msgid ""
-"Index %s: NUMBER OF INDEX' TUPLES (%.0f) IS NOT THE SAME AS HEAP' (%.0f).\n"
-"\tRecreate the index."
-msgstr ""
-
-#: commands/vacuum.c:2698 commands/vacuumlazy.c:641
-#, c-format
-msgid ""
-"Index %s: Pages %u, %u deleted, %u free; Tuples %.0f: Deleted %.0f.\n"
-"\t%s"
-msgstr ""
-
-#: commands/vacuumlazy.c:428
-#, c-format
-msgid ""
-"Pages %u: Changed %u, Empty %u; Tup %.0f: Vac %.0f, Keep %.0f, UnUsed %.0f.\n"
-"\tTotal %s"
-msgstr ""
-
-#: commands/vacuumlazy.c:478
-#, c-format
-msgid ""
-"Removed %d tuples in %d pages.\n"
-"\t%s"
-msgstr ""
-
-#: commands/vacuumlazy.c:715
-#, c-format
-msgid "VACUUM (lazy_truncate_heap): FlushRelationBuffers returned %d"
-msgstr "VACUUM (lazy_truncate_heap): FlushRelationBuffers ·µ»ØÁË %d"
-
-#: commands/vacuumlazy.c:750
-#, c-format
-msgid ""
-"Truncated %u --> %u pages.\n"
-"\t%s"
-msgstr ""
-
-#: commands/variable.c:62
-msgid "SET DATESTYLE: invalid list syntax"
-msgstr ""
-
-#: commands/variable.c:141
-#, c-format
-msgid "SET DATESTYLE: unrecognized keyword %s"
-msgstr ""
-
-#: commands/variable.c:156
-msgid "SET DATESTYLE: conflicting specifications"
-msgstr ""
-
-#: commands/variable.c:288
-msgid "SET TIME ZONE: illegal INTERVAL; month not allowed"
-msgstr ""
-
-#: commands/variable.c:331
-msgid "Unable to clear TZ environment variable"
-msgstr ""
-
-#: commands/variable.c:351
-msgid "assign_timezone: putenv failed"
-msgstr "assign_timezone: putenv Ê§°Ü"
-
-#: commands/variable.c:420
-msgid "SET TRANSACTION ISOLATION LEVEL must be called before any query"
-msgstr ""
-
-#: commands/variable.c:495
-#, c-format
-msgid "Conversion between %s and %s is not supported"
-msgstr "²»Ö§³Ö %s ºÍ %s Ö®¼äµÄת»»"
-
-#: commands/variable.c:507
-msgid "SET SERVER_ENCODING is not supported"
-msgstr "²»Ö§³Ö SET SERVER_ENCODING"
-
-#: commands/view.c:87
-msgid "attempted to define virtual relation with no attrs"
-msgstr "³¢ÊÔ¶¨ÒåûÓÐÊôÐÔµÄÐéÄâ¹Øϵ"
-
-#: commands/view.c:109
-#, c-format
-msgid "%s is not a view"
-msgstr "%s ²»ÊÇÒ»¸öÊÓͼ"
-
-#: commands/view.c:162 commands/view.c:172
-msgid "Cannot change number of columns in view"
-msgstr "ÊÓͼÖв»Äܸıä×ֶθöÊý"
-
-#: commands/view.c:175
-#, c-format
-msgid "Cannot change name of view column \"%s\""
-msgstr "ÎÞ·¨¸Ä±äÊÓͼ×ֶΠ\"%s\" µÄÃû×Ö"
-
-#: commands/view.c:180
-#, c-format
-msgid "Cannot change datatype of view column \"%s\""
-msgstr "ÎÞ·¨¸Ä±äÊÓͼ×ֶΠ\"%s\" µÄÊý¾ÝÀàÐÍ"
-
-#: executor/execAmi.c:163
-#, c-format
-msgid "ExecReScan: node type %d not supported"
-msgstr ""
-
-#: executor/execAmi.c:211
-#, c-format
-msgid "ExecMarkPos: node type %d not supported"
-msgstr ""
-
-#: executor/execAmi.c:252
-#, c-format
-msgid "ExecRestrPos: node type %d not supported"
-msgstr ""
-
-#: executor/execGrouping.c:280
-#, c-format
-msgid "ComputeHashFunc: Invalid typLen %d"
-msgstr ""
-
-#: executor/execMain.c:414
-#, c-format
-msgid "ExecCheckRTEPerms: bogus operation %d"
-msgstr ""
-
-#: executor/execMain.c:844
-#, c-format
-msgid "You can't change sequence relation %s"
-msgstr ""
-
-#: executor/execMain.c:848
-#, c-format
-msgid "You can't change toast relation %s"
-msgstr ""
-
-#: executor/execMain.c:852
-#, c-format
-msgid "You can't change view relation %s"
-msgstr ""
-
-#: executor/execMain.c:1067
-msgid "ExecutePlan: NO (junk) `ctid' was found!"
-msgstr ""
-
-#: executor/execMain.c:1071
-msgid "ExecutePlan: (junk) `ctid' is NULL!"
-msgstr ""
-
-#: executor/execMain.c:1096
-#, c-format
-msgid "ExecutePlan: NO (junk) `%s' was found!"
-msgstr ""
-
-#: executor/execMain.c:1101
-#, c-format
-msgid "ExecutePlan: (junk) `%s' is NULL!"
-msgstr ""
-
-#: executor/execMain.c:1190
-msgid "ExecutePlan: unknown operation in queryDesc"
-msgstr ""
-
-#: executor/execMain.c:1476
-msgid "ExecUpdate: UPDATE can't run without transactions"
-msgstr ""
-
-#: executor/execMain.c:1676
-#, c-format
-msgid "%s: Fail to add null value in not null attribute %s"
-msgstr ""
-
-#: executor/execMain.c:1686
-#, c-format
-msgid "%s: rejected due to CHECK constraint \"%s\" on \"%s\""
-msgstr ""
-
-#: executor/execMain.c:1729
-#, c-format
-msgid "EvalPlanQual: can't find RTE %d"
-msgstr ""
-
-#: executor/execMain.c:1747
-msgid "EvalPlanQual: t_xmin is uncommitted ?!"
-msgstr ""
-
-#: executor/execProcnode.c:218
+#: libpq/be-fsstubs.c:484
 #, c-format
-msgid "ExecInitNode: node type %d unsupported"
-msgstr ""
+msgid "could not create server file \"%s\": %m"
+msgstr "ÎÞ·¨´´½¨·þÎñÆ÷Îļþ \"%s\": %m"
 
-#: executor/execProcnode.c:378
+#: libpq/be-fsstubs.c:496
 #, c-format
-msgid "ExecProcNode: node type %d unsupported"
-msgstr ""
+msgid "could not write server file \"%s\": %m"
+msgstr "ÎÞ·¨Ð´Èë·þÎñÆ÷Îļþ \"%s\": %m"
 
-#: executor/execProcnode.c:471
+#: libpq/be-secure.c:274 libpq/be-secure.c:359
 #, c-format
-msgid "ExecCountSlotsNode: node type %d unsupported"
-msgstr ""
+msgid "SSL SYSCALL error: %m"
+msgstr "SSL SYSCALL ´íÎó: %m"
 
-#: executor/execProcnode.c:600
-#, c-format
-msgid "ExecEndNode: node type %d unsupported"
-msgstr ""
+#: libpq/be-secure.c:279 libpq/be-secure.c:364
+msgid "SSL SYSCALL error: EOF detected"
+msgstr "SSL SYSCALL ´íÎó: ·¢ÏÖ EOF"
 
-#: executor/execProcnode.c:776
+#: libpq/be-secure.c:287 libpq/be-secure.c:372
 #, c-format
-msgid "ExecGetTupType: node type %d unsupported"
-msgstr ""
+msgid "SSL error: %s"
+msgstr "SSL ´íÎó: %s"
 
-#: executor/execQual.c:173 executor/execQual.c:195
+#: libpq/be-secure.c:296 libpq/be-secure.c:381
 #, c-format
-msgid "ExecEvalArrayRef: can only handle %d dimensions"
-msgstr ""
+msgid "unrecognized SSL error code %d"
+msgstr "δ֪µÄ SSL ´íÎó´úÂë %d"
 
-#: executor/execQual.c:217
-msgid "ExecEvalArrayRef: upper and lower indices mismatch"
-msgstr ""
+#: libpq/be-secure.c:327 libpq/be-secure.c:331 libpq/be-secure.c:341
+msgid "SSL renegotiation failure"
+msgstr "SSL Ð­ÉÌʧ°Ü"
 
-#: executor/execQual.c:298
-msgid "ExecEvalAggref: no aggregates in this expression context"
-msgstr ""
+#: libpq/be-secure.c:335
+msgid "SSL failed to send renegotiation request"
+msgstr "·¢ËÍ SSL Ð­ÉÌÏìӦʧ°Ü"
 
-#: executor/execQual.c:476
+#: libpq/be-secure.c:634
 #, c-format
-msgid "ExecEvalParam: invalid paramkind %d"
-msgstr ""
+msgid "could not create SSL context: %s"
+msgstr "ÎÞ·¨´´½¨ SSL »·¾³: %s"
 
-#: executor/execQual.c:488
+#: libpq/be-secure.c:644
 #, c-format
-msgid "ExecEvalParam: Unknown value for parameter %s"
-msgstr ""
+msgid "could not load server certificate file \"%s\": %s"
+msgstr "ÎÞ·¨×°ÔØ·þÎñÆ÷ÈÏÖ¤Îļþ \"%s\": %s"
 
-#: executor/execQual.c:491
+#: libpq/be-secure.c:651
 #, c-format
-msgid "ExecEvalParam: Unknown value for parameter %d"
-msgstr ""
-
-#: executor/execQual.c:523
-msgid "GetAttributeByNum: Invalid attribute number"
-msgstr ""
-
-#: executor/execQual.c:526
-msgid "GetAttributeByNum: cannot access system attributes here"
-msgstr ""
-
-#: executor/execQual.c:529
-msgid "GetAttributeByNum: a NULL isNull flag was passed"
-msgstr ""
-
-#: executor/execQual.c:557
-msgid "GetAttributeByName: Invalid attribute name"
-msgstr ""
-
-#: executor/execQual.c:560
-msgid "GetAttributeByName: a NULL isNull flag was passed"
-msgstr ""
+msgid "could not access private key file \"%s\": %m"
+msgstr "ÎÞ·¨´¦Àí˽ԿÎļþ \"%s\": %m"
 
-#: executor/execQual.c:582
+#: libpq/be-secure.c:667
 #, c-format
-msgid "GetAttributeByName: attribute %s not found"
-msgstr "GetAttributeByName: ÊôÐÔ %s Ã»·¢ÏÖ"
-
-#: executor/execQual.c:609
-msgid "init_fcache: too many arguments"
-msgstr "init_fcache: ²ÎÊýÌ«¶à"
-
-#: executor/execQual.c:651
-msgid "Functions and operators can take only one set argument"
-msgstr ""
+msgid "unsafe permissions on private key file \"%s\""
+msgstr "˽ԿÎļþ \"%s\" È¨ÏÞ²»°²È«"
 
-#: executor/execQual.c:701 executor/execQual.c:743 executor/execQual.c:928
-#: executor/execQual.c:2535 executor/functions.c:524 executor/functions.c:559
-#: utils/adt/sets.c:204
-msgid "Set-valued function called in context that cannot accept a set"
-msgstr ""
-
-#: executor/execQual.c:1039 executor/execQual.c:1074
+#: libpq/be-secure.c:669
 msgid ""
-"ExecMakeTableFunctionResult: Invalid result from function returning tuple"
-msgstr ""
-
-#: executor/execQual.c:1099
-msgid "ExecMakeTableFunctionResult: Materialize-mode protocol not followed"
-msgstr ""
-
-#: executor/execQual.c:1104
-#, c-format
-msgid "ExecMakeTableFunctionResult: unknown returnMode %d"
-msgstr ""
-
-#: executor/execQual.c:1216
-msgid "IS DISTINCT FROM does not support set arguments"
-msgstr ""
-
-#: executor/execQual.c:1494
-msgid "NULLIF does not support set arguments"
-msgstr ""
-
-#: executor/execQual.c:1554
-#, c-format
-msgid "ExecEvalNullTest: unexpected nulltesttype %d"
-msgstr ""
-
-#: executor/execQual.c:1639
-#, c-format
-msgid "ExecEvalBooleanTest: unexpected booltesttype %d"
-msgstr ""
-
-#: executor/execQual.c:1673
-#, c-format
-msgid "Domain %s does not allow NULL values"
-msgstr ""
+"File must be owned by the database user and must have no permissions for "
+"\"group\" or \"other\"."
+msgstr "ÎļþµÄÊôÖ÷±ØÐëÊÇÊý¾Ý¿âÓû§, ²¢ÇÒ¶Ô \"×é\" »ò \"ÆäËüÓû§\" Ã»ÓÐȨÏÞ."
 
-#: executor/execQual.c:1700
+#: libpq/be-secure.c:674
 #, c-format
-msgid "ExecEvalCoerceToDomain: Domain %s constraint %s failed"
-msgstr ""
-
-#: executor/execQual.c:1709
-msgid "ExecEvalCoerceToDomain: Constraint type unknown"
-msgstr ""
+msgid "could not load private key file \"%s\": %s"
+msgstr "ÎÞ·¨×°ÔØ˽ԿÎļþ \"%s\": %s"
 
-#: executor/execQual.c:1882
+#: libpq/be-secure.c:679
 #, c-format
-msgid "ExecEvalExpr: unknown boolop %d"
-msgstr "ExecEvalExpr: δ֪ boolop %d"
+msgid "check of private key failed: %s"
+msgstr "¼ì²é˽Կʧ°Ü: %s"
 
-#: executor/execQual.c:1946
+#: libpq/be-secure.c:697
 #, c-format
-msgid "ExecEvalExpr: unknown expression type %d"
-msgstr ""
-
-#: executor/execQual.c:2045 optimizer/util/clauses.c:403
-msgid "Aggregate function calls may not be nested"
-msgstr "¾Û¼¯º¯Êýµ÷Óò»ÔÊÐíǶÌ×"
-
-#: executor/execQual.c:2048
-msgid "ExecInitExpr: Aggref not expected here"
-msgstr ""
-
-#: executor/execQual.c:2117 executor/execQual.c:2284
-msgid "ExecInitExpr: SubPlan not expected here"
-msgstr ""
-
-#: executor/execQual.c:2260
-#, fuzzy, c-format
-msgid "ExecInitExpr: unknown expression type %d"
-msgstr "CreateOperationTag: Î´Öª²Ù×÷ÀàÐÍ %d"
-
-#: executor/execTuples.c:259
-msgid ""
-"Plan requires more slots than are available\n"
-"\tsend mail to your local executor guru to fix this"
-msgstr ""
+msgid "could not load root certificate file \"%s\": %s"
+msgstr "ÎÞ·¨×°Ôظù (root) ÈÏÖ¤Îļþ \"%s\": %s"
 
-#: executor/functions.c:154
-#, c-format
-msgid "init_sql_fcache: Cache lookup failed for procedure %u"
-msgstr ""
+#: libpq/be-secure.c:699
+msgid "Will not verify client certificates."
+msgstr "½«²»¼ìÑé¿Í»§¶ËµÄÈÏÖ¤Ö¤Êé."
 
-#: executor/functions.c:166
+#: libpq/be-secure.c:737
 #, c-format
-msgid "init_sql_fcache: Cache lookup failed for type %u"
-msgstr ""
+msgid "could not initialize SSL connection: %s"
+msgstr "ÎÞ·¨³õʼ»¯ SSL Áª½Ó: %s"
 
-#: executor/functions.c:228
+#: libpq/be-secure.c:761
 #, c-format
-msgid "init_sql_fcache: null prosrc for procedure %u"
-msgstr ""
-
-#: executor/instrument.c:40
-msgid "InstrStartTimer called twice in a row"
-msgstr ""
-
-#: executor/instrument.c:56
-msgid "InstrStopNode without start"
-msgstr ""
+msgid "SSL connection from \"%s\""
+msgstr "À´×Ô \"%s\" µÄ SSL Áª½Ó"
 
-#: executor/nodeAgg.c:1210
-#, fuzzy, c-format
-msgid "ExecAgg: cache lookup failed for aggregate %u"
-msgstr "SetRelationRuleStatus: Îª¹Øϵ %u ²éÕÒ»º³åÇøʧ°Ü"
-
-#: executor/nodeAgg.c:1265
+#: libpq/auth.c:113
 #, c-format
-msgid "Aggregate %u needs to have compatible input type and transition type"
-msgstr ""
+msgid "Kerberos error: %s"
+msgstr "Kerberos ´íÎó: %s"
 
-#: executor/nodeAgg.c:1317
+#: libpq/auth.c:119
 #, c-format
 msgid ""
-"GetAggInitVal: cache lookup failed on aggregate transition function return "
-"type %u"
+"unexpected Kerberos protocol version received from client (received \"%s\", "
+"expected \"%s\")"
 msgstr ""
+"´Ó¿Í»§¶Ë½ÓÊÕµ½ÒâÍâµÄ Kerberos Ð­Òé°æ±¾ (½ÓÊÕµ½µÄΪ \"%s\", Ô¤ÆÚµÄΪ \"%s\")"
 
-#: executor/nodeAgg.c:1425
+#: libpq/auth.c:126 libpq/auth.c:306
 #, c-format
-msgid "Aggregate function %u called as normal function"
-msgstr "¾Û¼¯º¯Êý %u ±»×÷ΪÆÕͨº¯Êýµ÷ÓÃ"
-
-#: executor/nodeFunctionscan.c:91
 msgid ""
-"Query-specified return tuple and actual function return tuple do not match"
-msgstr ""
-
-#: executor/nodeHashjoin.c:380
-#, c-format
-msgid "ExecInitHashJoin: unsupported join type %d"
-msgstr ""
-
-#: executor/nodeHashjoin.c:558 executor/nodeHashjoin.c:566
-msgid "Read from hashjoin temp file failed"
-msgstr "¶ÁÈ¡É¢ÁÐÁª½ÓÁÙʱÎļþʧ°Ü"
-
-#: executor/nodeHashjoin.c:622 executor/nodeHashjoin.c:627
-msgid "Failed to rewind hash temp file"
+"unexpected Kerberos user name received from client (received \"%s\", "
+"expected \"%s\")"
 msgstr ""
+"´Ó¿Í»§¶Ë½ÓÊÕµ½ÒâÍâµÄ Kerberos Óû§Ãû (½ÓÊÕµ½µÄΪ \"%s\", Ô¤ÆÚµÄΪ \"%s\")"
 
-#: executor/nodeHashjoin.c:676 executor/nodeHashjoin.c:679
-msgid "Write to hashjoin temp file failed"
-msgstr "дÈëÉ¢ÁÐÁª½ÓÁÙʱÎļþʧ°Ü"
-
-#: executor/nodeIndexscan.c:669
-msgid "ExecInitIndexScan: indxqual not an opclause!"
-msgstr ""
+#: libpq/auth.c:140
+msgid "Kerberos 4 not implemented on this server"
+msgstr "Kerberos 4 ÔÚ´Ë·þÎñÆ÷ÉÏûÓÐʵÏÖ"
 
-#: executor/nodeIndexscan.c:771 executor/nodeIndexscan.c:808
+#: libpq/auth.c:201
 #, c-format
-msgid "ExecInitIndexScan: %s"
-msgstr "ExecInitIndexScan: %s"
+msgid "Kerberos initialization returned error %d"
+msgstr "Kerberos ³õʼ»¯·µ»Ø´íÎó %d"
 
-#: executor/nodeIndexscan.c:881
+#: libpq/auth.c:211
 #, c-format
-msgid "indexes of the relation %u was inactivated"
-msgstr ""
-
-#: executor/nodeLimit.c:152 executor/nodeLimit.c:167
-msgid "ExecLimit: subplan failed to run backwards"
+msgid "Kerberos keytab resolving returned error %d"
 msgstr ""
 
-#: executor/nodeLimit.c:198
+#: libpq/auth.c:224
 #, c-format
-msgid "ExecLimit: impossible state %d"
-msgstr ""
-
-#: executor/nodeMergejoin.c:132
-msgid "MJFormSkipQuals: op not an OpExpr!"
-msgstr ""
+msgid "Kerberos sname_to_principal(\"%s\") returned error %d"
+msgstr "Kerberos sname_to_principal(\"%s\") ·µ»Ø´íÎó %d"
 
-#: executor/nodeMergejoin.c:401
+#: libpq/auth.c:269
 #, c-format
-msgid "ExecMergeJoin: unsupported join type %d"
-msgstr ""
+msgid "Kerberos recvauth returned error %d"
+msgstr "Kerberos recvauth ·µ»Ø´íÎó %d"
 
-#: executor/nodeMergejoin.c:1391
+#: libpq/auth.c:294
 #, c-format
-msgid "ExecMergeJoin: invalid join state %d, aborting"
-msgstr ""
-
-#: executor/nodeMergejoin.c:1479
-msgid "RIGHT JOIN is only supported with mergejoinable join conditions"
-msgstr ""
+msgid "Kerberos unparse_name returned error %d"
+msgstr "Kerberos unparse_name ·µ»Ø´íÎó %d"
 
-#: executor/nodeMergejoin.c:1494 optimizer/path/joinpath.c:818
-msgid "FULL JOIN is only supported with mergejoinable join conditions"
-msgstr ""
-
-#: executor/nodeMergejoin.c:1497
-#, c-format
-msgid "ExecInitMergeJoin: unsupported join type %d"
-msgstr ""
+#: libpq/auth.c:327
+msgid "Kerberos 5 not implemented on this server"
+msgstr "Kerberos 5 ÔÚ´Ë·þÎñÆ÷ÉÏûÓÐʵÏÖ"
 
-#: executor/nodeNestloop.c:336
+#: libpq/auth.c:366
 #, c-format
-msgid "ExecInitNestLoop: unsupported join type %d"
-msgstr ""
+msgid "Rejected host: authentication failed for user \"%s\""
+msgstr "¾Ü¾ø: Óû§ \"%s\" ÈÏ֤ʧ°Ü"
 
-#: executor/nodeSetOp.c:173
+#: libpq/auth.c:369
 #, c-format
-msgid "ExecSetOp: bogus command code %d"
-msgstr ""
-
-#: executor/nodeSort.c:52
-msgid "ExtractSortKeys: keycount <= 0"
-msgstr ""
-
-#: executor/nodeSubplan.c:53
-msgid "ExecSubPlan: can't set parent params from subquery"
-msgstr ""
-
-#: executor/nodeSubplan.c:77
-msgid "ExecHashSubPlan: direct correlation not supported"
-msgstr ""
-
-#: executor/nodeSubplan.c:281 executor/nodeSubplan.c:306
-#: executor/nodeSubplan.c:897
-msgid "More than one tuple returned by a subselect used as an expression."
-msgstr ""
-
-#: executor/nodeSubplan.c:868
-msgid "ExecSetParamPlan: ANY/ALL subselect unsupported"
-msgstr ""
-
-#: executor/nodeSubplan.c:988
-msgid "ExecReScanSetParamPlan: direct correlated subquery unsupported, yet"
-msgstr ""
-
-#: executor/nodeSubplan.c:990
-msgid "ExecReScanSetParamPlan: setParam list is empty"
-msgstr ""
+msgid "Kerberos4 authentication failed for user \"%s\""
+msgstr "Óû§ \"%s\" ÈÏÖ¤ Kerberos4 Ê§°Ü"
 
-#: executor/nodeSubplan.c:992
-msgid "ExecReScanSetParamPlan: extParam set of plan is empty"
-msgstr ""
-
-#: executor/spi.c:70
-msgid "SPI_connect: no connection(s) expected"
-msgstr ""
-
-#: executor/spi.c:76
-msgid "SPI_connect: some connection(s) expected"
-msgstr ""
-
-#: executor/spi.c:82
-msgid "Memory exhausted in SPI_connect"
-msgstr "ÔÚ SPI_connect ÖÐÄÚ´æÓþ¡"
-
-#: executor/spi.c:156
-msgid "Memory exhausted in SPI_finish"
-msgstr "ÔÚ SPI_finish ÖÐÄÚ´æÓþ¡"
-
-#: executor/spi.c:318 executor/spi.c:345 executor/spi.c:374 executor/spi.c:412
-#: executor/spi.c:656 executor/spi.c:1393
-msgid "SPI: stack corrupted"
-msgstr ""
-
-#: executor/spi.c:722
-msgid "cannot open multi-query plan as cursor"
-msgstr ""
-
-#: executor/spi.c:727
-msgid "plan in SPI_cursor_open() is not a SELECT"
-msgstr ""
-
-#: executor/spi.c:729
-msgid "plan in SPI_cursor_open() must NOT be a SELECT INTO"
-msgstr ""
-
-#: executor/spi.c:760
+#: libpq/auth.c:372
 #, c-format
-msgid "cursor \"%s\" already in use"
-msgstr "Óαê \"%s\" ÒѾ­Ê¹ÓÃ"
-
-#: executor/spi.c:867 executor/spi.c:1340
-msgid "invalid portal in SPI cursor operation"
-msgstr ""
-
-#: executor/spi.c:892 executor/spi.c:897
-msgid "SPI: improper call to spi_dest_setup"
-msgstr ""
-
-#: executor/spi.c:894
-msgid "SPI: stack corrupted in spi_dest_setup"
-msgstr ""
-
-#: executor/spi.c:934 executor/spi.c:940
-msgid "SPI: improper call to spi_printtup"
-msgstr ""
-
-#: executor/spi.c:936
-msgid "SPI: stack corrupted in spi_printtup"
-msgstr ""
-
-#: executor/spi.c:1302
-msgid "SPI_select: # of processed tuples check failed"
-msgstr ""
-
-#: executor/spi.c:1359
-msgid "SPI_fetch: # of processed tuples check failed"
-msgstr ""
-
-#: lib/dllist.c:41
-msgid "Memory exhausted in DLNewList"
-msgstr "ÔÚ DLNewList ÀïÄÚ´æºÄ¾¡"
+msgid "Kerberos5 authentication failed for user \"%s\""
+msgstr "ΪÓû§ \"%s\" ÈÏÖ¤ Kerberos5 Ê§°Ü"
 
-#: lib/dllist.c:84
-msgid "Memory exhausted in DLNewElem"
-msgstr "ÔÚ DLNewElem ÀïÄÚ´æºÄ¾¡"
-
-#: libpq/auth.c:112
+#: libpq/auth.c:375
 #, c-format
-msgid "pg_krb4_recvauth: kerberos error: %s"
-msgstr ""
+msgid "Trusted authentication failed for user \"%s\""
+msgstr "Óû§ \"%s\" ÈÏÖ¤ Trusted Ê§°Ü"
 
-#: libpq/auth.c:118
+#: libpq/auth.c:378
 #, c-format
-msgid "pg_krb4_recvauth: protocol version \"%s\" != \"%s\""
-msgstr ""
+msgid "IDENT authentication failed for user \"%s\""
+msgstr "Óû§ \"%s\" ÈÏÖ¤ IDENT Ê§°Ü"
 
-#: libpq/auth.c:124
+#: libpq/auth.c:383
 #, c-format
-msgid "pg_krb4_recvauth: name \"%s\" != \"%s\""
-msgstr ""
+msgid "Password authentication failed for user \"%s\""
+msgstr "Óû§ \"%s\" ÈÏÖ¤ Password Ê§°Ü"
 
-#: libpq/auth.c:136
-msgid "pg_krb4_recvauth: Kerberos not implemented on this server"
-msgstr ""
-
-#: libpq/auth.c:196
+#: libpq/auth.c:387
 #, c-format
-msgid "pg_krb5_init: krb5_init_context returned Kerberos error %d"
-msgstr ""
+msgid "PAM authentication failed for user \"%s\""
+msgstr "Óû§ \"%s\" ÈÏÖ¤ PAM Ê§°Ü"
 
-#: libpq/auth.c:205
+#: libpq/auth.c:391
 #, c-format
-msgid "pg_krb5_init: krb5_kt_resolve returned Kerberos error %d"
-msgstr ""
+msgid "Unknown auth method: authentication failed for user \"%s\""
+msgstr "δ֪ÈÏÖ¤·½·¨: Óû§ \"%s\" ÈÏ֤ʧ°Ü"
 
-#: libpq/auth.c:217
-#, c-format
-msgid "pg_krb5_init: krb5_sname_to_principal returned Kerberos error %d"
-msgstr ""
+#: libpq/auth.c:420
+msgid "missing or erroneous pg_hba.conf file"
+msgstr "ȱʧ»òÕßʱÄõ½´íÎóµÄ pg_hba.conf Îļþ"
 
-#: libpq/auth.c:261
-#, c-format
-msgid "pg_krb5_recvauth: krb5_recvauth returned Kerberos error %d"
-msgstr ""
+#: libpq/auth.c:421
+msgid "See server log for details."
+msgstr "ÏêϸÐÅÏ¢Çë²é¿´·þÎñÆ÷ÈÕÖ¾."
 
-#: libpq/auth.c:285
+#: libpq/auth.c:447
 #, c-format
-msgid "pg_krb5_recvauth: krb5_unparse_name returned Kerberos error %d"
+msgid "no pg_hba.conf entry for host \"%s\", user \"%s\", database \"%s\", %s"
 msgstr ""
+"ûÓÐÓÃÓÚÖ÷»ú \"%s\", Óû§ \"%s\", Êý¾Ý¿â \"%s\", %s µÄ pg_hba.conf ¼Ç¼"
 
-#: libpq/auth.c:296
-#, c-format
-msgid "pg_krb5_recvauth: user name \"%s\" != krb5 name \"%s\""
-msgstr ""
+#: libpq/auth.c:449
+msgid "SSL on"
+msgstr "SSL ¿ªÆô"
 
-#: libpq/auth.c:315
-msgid "pg_krb5_recvauth: Kerberos not implemented on this server"
-msgstr ""
+#: libpq/auth.c:449
+msgid "SSL off"
+msgstr "SSL ¹Ø±Õ"
 
-#: libpq/auth.c:380
+#: libpq/auth.c:453
 #, c-format
-msgid "%s authentication failed for user \"%s\""
-msgstr "ΪÓû§ \"%2$s\" %1$s ÈÏ֤ʧ°Ü"
-
-#: libpq/auth.c:402
-msgid "Missing or erroneous pg_hba.conf file, see postmaster log for details"
-msgstr "ȱʧ»òÕßʱÄõ½´íÎóµÄ pg_hba.conf Îļþ, ¼û postmaster ÈÕÖ¾»ñȡϸ½Ú"
+msgid "no pg_hba.conf entry for host \"%s\", user \"%s\", database \"%s\""
+msgstr "ûÓÐÓÃÓÚÖ÷»ú \"%s\", Óû§ \"%s\", Êý¾Ý¿â \"%s\" µÄ pg_hba.conf ¼Ç¼"
 
-#: libpq/auth.c:429
-#, c-format
-msgid "No pg_hba.conf entry for host %s, user %s, database %s"
-msgstr "ûÓÐÓÃÓÚÖ÷»ú %s, Óû§ %s, Êý¾Ý¿â %s µÄ pg_hba.conf ¼Ç¼"
+#: libpq/auth.c:465
+msgid "Kerberos 4 only supports IPv4 connections"
+msgstr "Kerberos 4 Ö»Ö§³Ö IPv4 Áª½Ó"
 
-#: libpq/auth.c:464
+#: libpq/auth.c:498
 #, c-format
-msgid "pg_local_sendauth: can't do setsockopt: %m"
-msgstr "pg_local_sendauth: ÎÞ·¨½øÐРsetsockopt: %m"
+msgid "could not enable credential reception: %m"
+msgstr "ÎÞ·¨ÆôÓÃÖ¤Êé½ÓÊÕ: %m"
 
-#: libpq/auth.c:553
+#: libpq/auth.c:585
 #, c-format
-msgid "pam_passwd_conv_proc: Error from underlying PAM layer: '%s'"
-msgstr ""
+msgid "error from underlying PAM layer: %s"
+msgstr "À´×Ô PAM ²ãÏÂÃæµÄ´íÎó: %s"
 
-#: libpq/auth.c:557
+#: libpq/auth.c:590
 #, c-format
-msgid "pam_passwd_conv_proc: Unexpected PAM conversation %d/'%s'"
-msgstr ""
-
-#: libpq/auth.c:587
-msgid "received PAM packet"
-msgstr "½ÓÊÕµ½ PAM °ü"
+msgid "unsupported PAM conversation %d/%s"
+msgstr "²»Ö§³Ö PAM »á»° %d/%s"
 
-#: libpq/auth.c:591
-msgid "pam_passwd_conv_proc: no password"
-msgstr "pam_passwd_conv_proc: Ã»ÓпÚÁî"
+#: libpq/auth.c:622
+msgid "empty password returned by client"
+msgstr "¿Í»§¶Ë·µ»ØÁË¿Õ¿ÚÁî"
 
-#: libpq/auth.c:604
-msgid "pam_passwd_conv_proc: Out of memory!"
-msgstr "pam_passwd_conv_proc: ÄÚ´æÒç³ö"
-
-#: libpq/auth.c:648
+#: libpq/auth.c:682
 #, c-format
-msgid "CheckPAMAuth: Failed to create PAM authenticator: '%s'"
-msgstr ""
+msgid "could not create PAM authenticator: %s"
+msgstr "ÎÞ·¨´´½¨ PAM ÀàÐÍÆ÷: %s"
 
-#: libpq/auth.c:658
+#: libpq/auth.c:693
 #, c-format
-msgid "CheckPAMAuth: pam_set_item(PAM_USER) failed: '%s'"
-msgstr "CheckPAMAuth: pam_set_item(PAM_USER) Ê§°Ü: '%s'"
+msgid "pam_set_item(PAM_USER) failed: %s"
+msgstr "pam_set_item(PAM_USER) Ê§°Ü: %s"
 
-#: libpq/auth.c:668
+#: libpq/auth.c:704
 #, c-format
-msgid "CheckPAMAuth: pam_set_item(PAM_CONV) failed: '%s'"
-msgstr "CheckPAMAuth: pam_set_item(PAM_CONV) Ê§°Ü: '%s'"
+msgid "pam_set_item(PAM_CONV) failed: %s"
+msgstr "pam_set_item(PAM_CONV) Ê§°Ü: %s"
 
-#: libpq/auth.c:678
+#: libpq/auth.c:715
 #, c-format
-msgid "CheckPAMAuth: pam_authenticate failed: '%s'"
-msgstr "CheckPAMAuth: pam_authenticate Ê§°Ü: '%s'"
+msgid "pam_authenticate failed: %s"
+msgstr "pam_authenticate Ê§°Ü: %s"
 
-#: libpq/auth.c:688
+#: libpq/auth.c:726
 #, c-format
-msgid "CheckPAMAuth: pam_acct_mgmt failed: '%s'"
-msgstr "CheckPAMAuth: pam_acct_mgmt Ê§°Ü: '%s'"
+msgid "pam_acct_mgmt failed: %s"
+msgstr "pam_acct_mgmt Ê§°Ü: %s"
 
-#: libpq/auth.c:698
+#: libpq/auth.c:737
 #, c-format
-msgid "CheckPAMAuth: Failed to release PAM authenticator: '%s'"
-msgstr ""
+msgid "could not release PAM authenticator: %s"
+msgstr "ÎÞ·¨ÊÍ·Å PAM ÀàÐÍÆ÷: %s"
 
-#: libpq/auth.c:738
+#: libpq/auth.c:775
 #, c-format
-msgid "unexpected password packet size: read %d, expected %d"
+msgid "expected password response, got message type %d"
 msgstr ""
 
-#: libpq/auth.c:742
+#: libpq/auth.c:803
+msgid "invalid password packet size"
+msgstr "ÎÞЧµÄ¿ÚÁî°ü³ß´ç"
+
+#: libpq/auth.c:807
 msgid "received password packet"
 msgstr "½ÓÊÕµ½¿ÚÁî°ü"
 
-#: libpq/be-fsstubs.c:84
+#: libpq/pqcomm.c:248
 #, c-format
-msgid "lo_open(%u,%d)"
-msgstr "lo_open(%u,%d)"
+msgid "could not translate host name \"%s\", service \"%s\" to address: %s"
+msgstr "ÎÞ·¨½âÎöÖ÷»úÃû \"%s\", ·þÎñ \"%s\" µ½µØÖ·: %s"
 
-#: libpq/be-fsstubs.c:102
+#: libpq/pqcomm.c:252
 #, c-format
-msgid "cannot open large object %u"
-msgstr "ÎÞ·¨´ò¿ª´ó¶ÔÏó %u"
+msgid "could not translate service \"%s\" to address: %s"
+msgstr "ÎÞ·¨½âÎö·þÎñ \"%s\" µ½µØÖ·: %s"
 
-#: libpq/be-fsstubs.c:122
-#, c-format
-msgid "lo_close: invalid large obj descriptor (%d)"
-msgstr "lo_close: ÎÞЧ´ó¶ÔÏóÃèÊö·û (%d)"
+#: libpq/pqcomm.c:286
+msgid "IPv4"
+msgstr "IPv4"
 
-#: libpq/be-fsstubs.c:126
-#, c-format
-msgid "lo_close(%d)"
-msgstr "lo_close(%d)"
+#: libpq/pqcomm.c:290
+msgid "IPv6"
+msgstr "IPv6"
 
-#: libpq/be-fsstubs.c:158
-#, c-format
-msgid "lo_read: invalid large obj descriptor (%d)"
-msgstr "lo_read: ÎÞЧ´ó¶ÔÏóÃèÊö·û (%d)"
+#: libpq/pqcomm.c:295
+msgid "Unix"
+msgstr "Unix"
 
-#: libpq/be-fsstubs.c:180
+#: libpq/pqcomm.c:300
 #, c-format
-msgid "lo_write: invalid large obj descriptor (%d)"
-msgstr "lo_write: ÎÞЧ´ó¶ÔÏóÃèÊö·û (%d)"
+msgid "unrecognized address family %d"
+msgstr "²»ÈϿɵĵØÖ·×å %d"
 
-#: libpq/be-fsstubs.c:206
+#. translator: %s is IPv4, IPv6, or Unix
+#: libpq/pqcomm.c:311
 #, c-format
-msgid "lo_lseek: invalid large obj descriptor (%d)"
-msgstr "lo_lseek: ÎÞЧ´ó¶ÔÏóÃèÊö·û (%d)"
+msgid "could not create %s socket: %m"
+msgstr "ÎÞ·¨´´½¨ %s Ì×½Ó×Ö: %m"
 
-#: libpq/be-fsstubs.c:261
+#: libpq/pqcomm.c:323
 #, c-format
-msgid "lo_tell: invalid large object descriptor (%d)"
-msgstr "lo_tell: ÎÞЧ´ó¶ÔÏóÃèÊö·û (%d)"
-
-#: libpq/be-fsstubs.c:363
-msgid ""
-"You must have Postgres superuser privilege to use server-side lo_import().\n"
-"\tAnyone can use the client-side lo_import() provided by libpq."
-msgstr ""
-"ҪʹÓ÷þÎñÆ÷¶ËµÄ lo_import(), Äã±ØÐëÓРPostgres ³¬¼¶Óû§È¨ÏÞ.\n"
-"\tÈκÎÈ˶¼¿ÉÒÔʹÓàlibpq ÌṩµÄ¿Í»§¶Ë lo_import()."
+msgid "setsockopt(SO_REUSEADDR) failed: %m"
+msgstr "setsockopt(SO_REUSEADDR) Ê§°Ü: %m"
 
-#: libpq/be-fsstubs.c:378
+#: libpq/pqcomm.c:337
 #, c-format
-msgid "lo_import: can't open unix file \"%s\": %m"
-msgstr "lo_import: ÎÞ·¨´ò¿ª unix Îļþ \"%s\": %m"
+msgid "setsockopt(IPV6_V6ONLY) failed: %m"
+msgstr "setsockopt(IPV6_V6ONLY) Ê§°Ü: %m"
 
-#: libpq/be-fsstubs.c:386
+#. translator: %s is IPv4, IPv6, or Unix
+#: libpq/pqcomm.c:356
 #, c-format
-msgid "lo_import: can't create inv object for \"%s\""
-msgstr "lo_import: ÎÞ·¨Îª \"%s\"´´½¨×ªÖôó¶ÔÏó"
+msgid "could not bind %s socket: %m"
+msgstr "ÎÞ·¨°ó¶¨ %s Ì×½Ó×Ö: %m"
 
-#: libpq/be-fsstubs.c:397
+#: libpq/pqcomm.c:359
 #, c-format
-msgid "lo_import: error while reading \"%s\""
-msgstr "lo_import: ¶ÁÈ¡ \"%s\" µÄʱºò·¢Éú´íÎó"
-
-#: libpq/be-fsstubs.c:426
 msgid ""
-"You must have Postgres superuser privilege to use server-side lo_export().\n"
-"\tAnyone can use the client-side lo_export() provided by libpq."
+"Is another postmaster already running on port %d? If not, remove socket file "
+"\"%s\" and retry."
 msgstr ""
-"ҪʹÓ÷þÎñÆ÷¶ËµÄ lo_export(), Äã±ØÐëÓРPostgres ³¬¼¶Óû§È¨ÏÞ.\n"
-"\tÈκÎÈ˶¼¿ÉÒÔʹÓàlibpq ÌṩµÄ¿Í»§¶Ë lo_export()."
+"ÊÇ·ñÓÐÆäËü postmaster ÒѾ­Ôڶ˿ڠ%d ÉÏÔËÐÐÁË? Èç¹ûûÓÐ, É¾³ýÌ×½Ó×ÖÎļþ \"%s"
+"\" È»ºóÔÙÖØÊÔ."
 
-#: libpq/be-fsstubs.c:436
+#: libpq/pqcomm.c:362
 #, c-format
-msgid "lo_export: can't open inv object %u"
-msgstr "lo_export: ÎÞ·¨´ò¿ª×ªÖöÔÏó %u"
-
-#: libpq/be-fsstubs.c:454
-#, c-format
-msgid "lo_export: can't open unix file \"%s\": %m"
-msgstr "lo_export: ÎÞ·¨´ò¿ª unix Îļþ \"%s\": %m"
-
-#: libpq/be-fsstubs.c:464
-#, c-format
-msgid "lo_export: error while writing \"%s\""
-msgstr "lo_export: Ð´³ö \"%s\" Ê±³ö´í"
-
-#: libpq/be-secure.c:290 libpq/be-secure.c:345
-#, c-format
-msgid "SSL SYSCALL error: %s"
-msgstr "SSL SYSCALL ´íÎó: %s"
-
-#: libpq/be-secure.c:293 libpq/be-secure.c:348
-#, c-format
-msgid "SSL error: %s"
-msgstr "SSL ´íÎó: %s"
-
-#: libpq/be-secure.c:325 libpq/be-secure.c:327 libpq/be-secure.c:330
-msgid "SSL renegotiation failure"
+msgid ""
+"Is another postmaster already running on port %d? If not, wait a few seconds "
+"and retry."
 msgstr ""
+"ÊÇ·ñÓÐÆäËü postmaster ÒѾ­Ôڶ˿ڠ%d ÉÏÔËÐÐÁË? Èç¹ûûÓÐ, ÇëµÈ´ý¼¸ÃëÖÓºóÈ»ºóÔÙ"
+"ÖØÊÔ."
 
-#: libpq/be-secure.c:396
+#. translator: %s is IPv4, IPv6, or Unix
+#: libpq/pqcomm.c:396
 #, c-format
-msgid "DH errors (%s): %d bits expected, %d bits found"
-msgstr ""
+msgid "could not listen on %s socket: %m"
+msgstr "ÎÞ·¨ÔÚ %s Ì×½Ó×ÖÉϼàÌý: %m"
 
-#: libpq/be-secure.c:406
+#: libpq/pqcomm.c:476 commands/user.c:1532 commands/user.c:1769
+#: commands/user.c:1804 catalog/aclchk.c:1229
 #, c-format
-msgid "DH_check error (%s): %s"
-msgstr "DH_check ´íÎó (%s): %s"
+msgid "group \"%s\" does not exist"
+msgstr "×é \"%s\" ²»´æÔÚ"
 
-#: libpq/be-secure.c:411
+#: libpq/pqcomm.c:486
 #, c-format
-msgid "DH error (%s): p is not prime"
-msgstr ""
+msgid "could not set group of file \"%s\": %m"
+msgstr "ÎÞ·¨ÉèÖÃÎļþ \"%s\" µÄ×é: %m"
 
-#: libpq/be-secure.c:418
+#: libpq/pqcomm.c:497
 #, c-format
-msgid "DH error (%s): neither suitable generator or safe prime"
-msgstr ""
+msgid "could not set permissions of file \"%s\": %m"
+msgstr "ÎÞ·¨ÉèÖÃÎļþ \"%s\" µÄȨÏÞ: %m"
 
-#: libpq/be-secure.c:444
+#: libpq/pqcomm.c:527
 #, c-format
-msgid "DH load buffer: %s"
-msgstr ""
+msgid "could not accept new connection: %m"
+msgstr "ÎÞ·¨·ÃÎÊÐÂÁª½Ó: %m"
 
-#: libpq/be-secure.c:516
+#: libpq/pqcomm.c:679
 #, c-format
-msgid "DH: generating parameters (%d bits)...."
-msgstr ""
+msgid "could not receive data from client: %m"
+msgstr "ÎÞ·¨´Ó¿Í»§¶Ë»ñµÃÊý¾Ý: %m"
 
-#: libpq/be-secure.c:550
-msgid "SSL: handshake start"
-msgstr "SSL: ÎÕÊÖ¿ªÊ¼"
+#: libpq/pqcomm.c:842
+msgid "unexpected EOF within message length word"
+msgstr "ÔÚÐÅÏ¢³¤¶È×ÖÀïÓÐÒâÍâµÄ EOF"
 
-#: libpq/be-secure.c:553
-msgid "SSL: handshake done"
-msgstr "SSL: ÎÕÊÖÍê³É"
+#: libpq/pqcomm.c:854
+msgid "invalid message length"
+msgstr "ÎÞЧµÄÐÅÏ¢³¤¶È"
 
-#: libpq/be-secure.c:556
-msgid "SSL: accept loop"
-msgstr ""
+#: libpq/pqcomm.c:868
+msgid "incomplete message from client"
+msgstr "´Ó¿Í»§¶Ë¹ýÀ´µÄ²»ÍêÕûÐÅÏ¢"
 
-#: libpq/be-secure.c:559
+#: libpq/pqcomm.c:947
 #, c-format
-msgid "SSL: accept exit (%d)"
-msgstr ""
+msgid "could not send data to client: %m"
+msgstr "ÎÞ·¨·¢ËÍÊý¾Ý¸ø¿Í»§¶Ë: %m"
 
-#: libpq/be-secure.c:562
-msgid "SSL: connect loop"
-msgstr ""
-
-#: libpq/be-secure.c:565
-#, c-format
-msgid "SSL: connect exit (%d)"
-msgstr ""
+#: libpq/pqformat.c:443
+msgid "no data left in message"
+msgstr "ÐÅÏ¢ÖÐÒѾ­Ã»ÓÐÊý¾ÝÁË"
 
-#: libpq/be-secure.c:568
-#, c-format
-msgid "SSL: read alert (0x%04x)"
-msgstr ""
+#: libpq/pqformat.c:591 libpq/pqformat.c:609 libpq/pqformat.c:630
+#: utils/adt/arrayfuncs.c:1258 utils/adt/rowtypes.c:523
+msgid "insufficient data left in message"
+msgstr "ÐÅÏ¢ÖÐʣϵÄÊý¾Ý²»¹»"
 
-#: libpq/be-secure.c:571
-#, c-format
-msgid "SSL: write alert (0x%04x)"
-msgstr ""
+#: libpq/pqformat.c:671
+msgid "invalid string in message"
+msgstr "ÐÅÏ¢ÖеÄÎÞЧ×Ö´®"
 
-#: libpq/be-secure.c:592
-#, c-format
-msgid "failed to create SSL context: %s"
-msgstr "´´½¨ SSL »·¾³Ê§°Ü: %s"
+#: libpq/pqformat.c:687
+msgid "invalid message format"
+msgstr "ÎÞЧµÄÐÅÏ¢¸ñʽ"
 
-#: libpq/be-secure.c:603
+#: nodes/params.c:114
 #, c-format
-msgid "failed to load server certificate (%s): %s"
-msgstr "×°ÔØ·þÎñÆ÷ÈÏÖ¤ (%s) Ê§°Ü: %s"
-
-#: libpq/be-secure.c:611
-#, fuzzy, c-format
-msgid "failed to stat private key file (%s): %s"
-msgstr "×°ÔØ˽ԿÎļþ (%s) Ê§°Ü: %s"
+msgid "no value found for parameter \"%s\""
+msgstr "ûÓÐÕÒµ½²ÎÊý \"%s\" µÄÖµ"
 
-#: libpq/be-secure.c:618
+#: nodes/params.c:119
 #, c-format
-msgid ""
-"bad permissions on private key file (%s)\n"
-"File must be owned by the proper user and must have no permissions for\n"
-"\"group\" or \"other\"."
-msgstr ""
+msgid "no value found for parameter %d"
+msgstr "ûÓÐÕÒµ½²ÎÊý %d µÄÖµ"
 
-#: libpq/be-secure.c:625
+#: utils/mb/mbutils.c:188 commands/variable.c:591
 #, c-format
-msgid "failed to load private key file (%s): %s"
-msgstr "×°ÔØ˽ԿÎļþ (%s) Ê§°Ü: %s"
+msgid "conversion between %s and %s is not supported"
+msgstr "²»Ö§³Ö %s ºÍ %s Ö®¼äµÄ±àÂëת»»"
 
-#: libpq/be-secure.c:631
+#: utils/mb/mbutils.c:252
 #, c-format
-msgid "check of private key failed: %s"
-msgstr "¼ì²é˽Կʧ°Ü: %s"
-
-#: libpq/be-secure.c:648
-#, fuzzy, c-format
-msgid "could not read root cert file (%s): %s"
-msgstr "ÎÞ·¨´´½¨Îļþ %s: %s"
-
-#: libpq/be-secure.c:682
-#, fuzzy, c-format
-msgid "failed to initialize SSL connection: %s"
-msgstr "³õʼ»¯ SSL Áª½Óʧ°Ü: %s (%s)"
+msgid ""
+"default conversion function for encoding \"%s\" to \"%s\" does not exist"
+msgstr "ĬÈϵĠ\"%s\" µ½ \"%s\" µÄ±àÂëת»»º¯Êý²»´æÔÚ"
 
-#: libpq/be-secure.c:704
+#: utils/mb/mbutils.c:326
 #, c-format
-msgid "secure connection from '%s'"
-msgstr ""
-
-#: libpq/crypt.c:61
-msgid "Password is stored MD5 encrypted.  'crypt' auth method cannot be used."
-msgstr "¿ÚÁîÒÑ MD5 ¼ÓÃÜ´æ´¢. 'crypt' ÈÏÖ¤·½·¨²»ÄÜÔÙ±»Ê¹ÓÃ."
+msgid "invalid source encoding name \"%s\""
+msgstr "ÎÞЧµÄÔ´±àÂëÃû³Æ \"%s\""
 
-#: libpq/hba.c:127
+#: utils/mb/mbutils.c:331
 #, c-format
-msgid "Token too long in authentication file, skipping, %s"
-msgstr ""
+msgid "invalid destination encoding name \"%s\""
+msgstr "ÎÞЧµÄÄ¿±ê±àÂëÃû³Æ \"%s\""
 
-#: libpq/hba.c:260
+#: utils/mb/conv.c:376
 #, c-format
-msgid ""
-"tokenize_inc_file: Unable to open secondary authentication file \"@%s\" as "
-"\"%s\": %m"
-msgstr ""
+msgid "ignoring unconvertible UTF-8 character 0x%04x"
+msgstr "ºöÂÔ²»ÄÜת»»µÄ UTF-8 ×Ö·û 0x%04x"
 
-#: libpq/hba.c:667
+#: utils/mb/conv.c:406
 #, c-format
-msgid "parse_hba: invalid syntax in pg_hba.conf file at line %d, token \"%s\""
-msgstr ""
+msgid "invalid encoding number: %d"
+msgstr "ÎÞЧ±àÂë±àºÅ: %d"
 
-#: libpq/hba.c:720 libpq/hba.c:742
+#: utils/mb/conv.c:445
 #, c-format
-msgid "could not open %s: %m"
-msgstr "ÎÞ·¨´ò¿ª %s: %m"
+msgid "ignoring unconvertible %s character 0x%04x"
+msgstr "ºöÂÔ²»ÄÜת»»µÄ %s ×Ö·û 0x%04x"
 
-#: libpq/hba.c:853
-#, c-format
-msgid "load_hba: Unable to open authentication config file \"%s\": %m"
-msgstr "load_hba: ÎÞ·¨´ò¿ªÈÏÖ¤ÅäÖÃÎļþ \"%s\": %m"
+#: utils/mb/wchar.c:832
+msgid "Unicode characters greater than or equal to 0x10000 are not supported"
+msgstr "²»Ö§³Ö´óÓÚ»òµÈÓÚ 0x10000 µÄ Unicode ×Ö·û"
 
-#: libpq/hba.c:913
+#: utils/mb/wchar.c:861
 #, c-format
-msgid ""
-"parse_ident_usermap: invalid syntax in pg_ident.conf file at line %d, token "
-"\"%s\""
-msgstr ""
-
-#: libpq/hba.c:945
-msgid ""
-"check_ident_usermap: hba configuration file does not have the usermap field "
-"filled in in the entry that pertains to this connection.  That field is "
-"essential for Ident-based authentication."
-msgstr ""
+msgid "invalid byte sequence for encoding \"%s\": 0x%s"
+msgstr "ÎÞЧµÄ \"%s\" ±àÂë×Ö½Ú˳Ðò: 0x%s"
 
-#: libpq/hba.c:995
-#, fuzzy, c-format
-msgid "load_ident: Unable to open usermap file \"%s\": %m"
-msgstr "lo_import: ÎÞ·¨´ò¿ª unix Îļþ \"%s\": %m"
-
-#: libpq/hba.c:1117
-#, c-format
-msgid "Failed to create socket on which to talk to Ident server: %m"
-msgstr ""
+#: utils/mb/encnames.c:445
+msgid "encoding name too long"
+msgstr "±àÂëÃû×ÖÌ«³¤"
 
-#: libpq/hba.c:1153
-#, c-format
-msgid ""
-"Unable to connect to Ident server on the host which is trying to connect to "
-"Postgres (IP address %s, Port %d): %s"
-msgstr ""
+#: utils/adt/numeric.c:397
+msgid "invalid length in external \"numeric\" value"
+msgstr "ÎÞЧµÄÍⲿ \"numeric\" Öµ³¤¶È"
 
-#: libpq/hba.c:1176
-#, c-format
-msgid ""
-"Unable to send query to Ident server on the host which is trying to connect "
-"to Postgres (Host %s, Port %d), even though we successfully connected to it: "
-"%s"
-msgstr ""
+#: utils/adt/numeric.c:408
+msgid "invalid sign in external \"numeric\" value"
+msgstr "ÎÞЧµÄÍⲿ \"numeric\" Öµ·ûºÅ"
 
-#: libpq/hba.c:1193
-#, c-format
-msgid ""
-"Unable to receive response from Ident server on the host which is trying to "
-"connect to Postgres (Host %s, Port %d), even though we successfully sent our "
-"query to it: %s"
-msgstr ""
+#: utils/adt/numeric.c:418
+msgid "invalid digit in external \"numeric\" value"
+msgstr "ÎÞЧµÄÍⲿ \"numeric\" ÖµÎ»Êý"
 
-#: libpq/hba.c:1234 libpq/hba.c:1262 libpq/hba.c:1327
-#, c-format
-msgid "ident_unix: error receiving credentials: %m"
-msgstr ""
+#: utils/adt/numeric.c:835
+msgid "count must be greater than zero"
+msgstr "×ÜÊý±ØÐë´óÓÚÁã"
 
-#: libpq/hba.c:1242 libpq/hba.c:1270 libpq/hba.c:1336
-#, c-format
-msgid "ident_unix: unknown local user with uid %d"
-msgstr ""
+#: utils/adt/numeric.c:848
+msgid "lower bound cannot equal upper bound"
+msgstr "ÏÂÏÞ²»ÄܵÈÓÚÉÏÏÞ"
 
-#: libpq/hba.c:1346
-msgid "'ident' auth is not supported on local connections on this platform"
-msgstr ""
+#: utils/adt/numeric.c:1704 utils/adt/float.c:1493
+msgid "invalid argument for power function"
+msgstr "power º¯ÊýµÄÎÞЧ²ÎÊý"
 
-#: libpq/ip.c:88
-#, c-format
-msgid "getaddrinfo2: gethostbyname(%s) failed\n"
-msgstr "getaddrinfo2: gethostbyname(%s) Ê§°Ü\n"
+#: utils/adt/numeric.c:1761 utils/adt/numeric.c:1829 utils/adt/numeric.c:1877
+msgid "cannot convert NaN to integer"
+msgstr "ÎÞ·¨×ª»¯ NaN ÎªÕûÊý"
 
-#: libpq/ip.c:164
-msgid "hints.ai_family is invalied getaddrinfo_unix()\n"
-msgstr ""
+#: 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
+msgid "integer out of range"
+msgstr "ÕûÊý³¬³ö·¶Î§"
 
-#: libpq/pqcomm.c:269
+#: 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
-msgid "server socket failure: getaddrinfo2()%s: %s"
-msgstr ""
+msgid "invalid input syntax for type numeric: \"%s\""
+msgstr "ÎÞЧµÄÊý×ÖÀàÐÍÊäÈëÓï·¨: \"%s\""
 
-#: libpq/pqcomm.c:282
-#, c-format
-msgid "server socket failure: socket(): %s"
-msgstr ""
+#: utils/adt/numeric.c:3086
+msgid "value overflows numeric format"
+msgstr "ÖµÒç³öÊý×Ö¸ñʽ"
 
-#: libpq/pqcomm.c:293
-#, c-format
-msgid "server socket failure: setsockopt(SO_REUSEADDR): %s"
-msgstr ""
+#: utils/adt/numeric.c:3156
+msgid "numeric field overflow"
+msgstr "Êý×Ö×Ö¶ÎÒç³ö"
 
-#: libpq/pqcomm.c:308
+#: utils/adt/numeric.c:3157
 #, c-format
 msgid ""
-"server socket failure: bind(): %s\n"
-"\tIs another postmaster already running on port %d?"
+"The absolute value is greater than or equal to 10^%d for field with "
+"precision %d, scale %d."
 msgstr ""
 
-#: libpq/pqcomm.c:312
+#: utils/adt/numeric.c:3298 utils/adt/numeric.c:3324 utils/adt/float.c:502
+#: utils/adt/float.c:526
 #, c-format
-msgid "\tIf not, remove socket node (%s) and retry."
-msgstr ""
+msgid "invalid input syntax for type double precision: \"%s\""
+msgstr "ÎÞЧµÄË«¾«¶ÈÀàÐÍÊäÈëÓï·¨: \"%s\""
 
-#: libpq/pqcomm.c:315
-msgid "\tIf not, wait a few seconds and retry."
-msgstr ""
+#: 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/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
+msgid "division by zero"
+msgstr "³ýÒÔÁã"
 
-#: libpq/pqcomm.c:343
-#, c-format
-msgid "server socket failure: listen(): %s"
-msgstr ""
+#: utils/adt/numeric.c:4220 utils/adt/float.c:1452
+msgid "cannot take square root of a negative number"
+msgstr "ÎÞ·¨Îª¸ºÊý×öƽ·½¸ù"
 
-#: libpq/pqcomm.c:418
-#, c-format
-msgid "server socket failure: no such group '%s'"
-msgstr ""
+#: utils/adt/numeric.c:4310
+msgid "argument for function \"exp\" too big"
+msgstr "¶ÔÓÚº¯Êý \"exp\" ²ÎÊýÌ«´ó"
 
-#: libpq/pqcomm.c:426
-#, c-format
-msgid "server socket failure: could not set group of %s: %s"
-msgstr ""
+#: utils/adt/numeric.c:4439 utils/adt/float.c:1561 utils/adt/float.c:1591
+msgid "cannot take logarithm of zero"
+msgstr "ÎÞ·¨È¡ÁãµÄ¶ÔÊý"
 
-#: libpq/pqcomm.c:434
-#, c-format
-msgid "server socket failure: could not set permissions on %s: %s"
-msgstr ""
+#: utils/adt/numeric.c:4443 utils/adt/float.c:1565 utils/adt/float.c:1595
+msgid "cannot take logarithm of a negative number"
+msgstr "ÎÞ·¨È¡¸ºÊýµÄ¶ÔÊý"
 
-#: libpq/pqcomm.c:465
-#, c-format
-msgid "StreamConnection: accept() failed: %m"
+#: utils/adt/numeric.c:4692
+msgid "zero raised to zero is undefined"
 msgstr ""
 
-#: libpq/pqcomm.c:483
+#: utils/adt/datum.c:80 utils/adt/datum.c:92
+msgid "invalid Datum pointer"
+msgstr "ÎÞЧµÄ Datum Ö¸Õë"
+
+#: utils/adt/timestamp.c:98 utils/adt/timestamp.c:339
 #, c-format
-msgid "StreamConnection: getsockname() failed: %m"
-msgstr ""
+msgid "timestamp out of range: \"%s\""
+msgstr "ʱ¼ä´Á³¬³ö·¶Î§: \"%s\""
 
-#: libpq/pqcomm.c:495
+#: utils/adt/timestamp.c:116 utils/adt/timestamp.c:357
+#: utils/adt/timestamp.c:536
 #, c-format
-msgid "StreamConnection: setsockopt(TCP_NODELAY) failed: %m"
-msgstr ""
+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/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
+msgid "timestamp out of range"
+msgstr "ʱ¼ä´Á³¬³ö·¶Î§"
 
-#: libpq/pqcomm.c:501
+#: utils/adt/timestamp.c:271
 #, c-format
-msgid "StreamConnection: setsockopt(SO_KEEPALIVE) failed: %m"
-msgstr ""
+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
+msgid "interval out of range"
+msgstr "interval ³¬³ö·¶Î§"
 
-#: libpq/pqcomm.c:601
+#: utils/adt/timestamp.c:882
 #, c-format
-msgid "pq_recvbuf: recv() failed: %m"
-msgstr "pq_recvbuf: recv() Ê§°Ü: %m"
+msgid "interval(%d) precision must be between %d and %d"
+msgstr "interval(%d) µÄ¾«È·¶È±ØÐèÔÚ %d µ½ %d Ö®¼ä"
 
-#: libpq/pqcomm.c:607
-msgid "pq_recvbuf: unexpected EOF on client connection"
+#: utils/adt/timestamp.c:1882
+msgid "cannot subtract infinite timestamps"
 msgstr ""
 
-#: libpq/pqcomm.c:805
+#: utils/adt/timestamp.c:2579
 #, c-format
-msgid "pq_flush: send() failed: %m"
-msgstr "pq_flush: send() Ê§°Ü: %m"
+msgid "invalid input syntax for type timestamp: \"%s\""
+msgstr "ÎÞЧµÄ timestamp ÀàÐÍÊäÈëÓï·¨: \"%s\""
 
-#: libpq/pqcomm.c:839
+#: utils/adt/timestamp.c:2639
 #, c-format
-msgid "pq_eof: recv() failed: %m"
-msgstr "pq_eof: recv() Ê§°Ü: %m"
+msgid "invalid input syntax for type timestamp with time zone: \"%s\""
+msgstr "ÎÞЧµÄ´øʱÇøµÄ timestamp ÀàÐÍÊäÈëÓï·¨: \"%s\""
 
-#: libpq/pqformat.c:159
+#: utils/adt/timestamp.c:2700
 #, c-format
-msgid "pq_sendint: unsupported size %d"
-msgstr "pq_sendint: ²»Ö§³ÖµÄ³ß´ç %d"
+msgid "invalid input syntax for type interval: \"%s\""
+msgstr "ÎÞЧµÄ interval ÀàÐÍÊäÈëÓï·¨: \"%s\""
 
-#: libpq/pqformat.c:241
+#: utils/adt/timestamp.c:2811 utils/adt/timestamp.c:3344
+#: utils/adt/timestamp.c:3401
 #, c-format
-msgid "pq_getint: unsupported size %d"
-msgstr "pq_getint: ²»Ö§³ÖµÄ³ß´ç %d"
+msgid "timestamp units \"%s\" not supported"
+msgstr "²»Ö§³Öʱ¼ä´Áµ¥Î» \"%s\""
 
-#: main/main.c:83
+#: utils/adt/timestamp.c:2825 utils/adt/timestamp.c:3411
 #, c-format
-msgid "%s: setsysinfo failed: %s\n"
-msgstr "%s: setsysinfo Ê§°Ü: %s\n"
+msgid "timestamp units \"%s\" not recognized"
+msgstr "ʱ¼ä´Áµ¥Î» \"%s\" ²»±»ÈÏ¿É"
 
-#: main/main.c:172
-msgid ""
-"\"root\" execution of the PostgreSQL server is not permitted.\n"
-"\n"
-"The server must be started under an unprivileged user id to prevent\n"
-"a possible system security compromise.  See the documentation for\n"
-"more information on how to properly start the server.\n"
-"\n"
-msgstr ""
-"²»ÔÊÐí \"root\" Ö´ÐРPostgreSQL ·þÎñÆ÷.\n"
-"\n"
-"·þÎñÆ÷±ØÐëÒÔÒ»¸ö·ÇÌØȨµÄÓû§Éí·ÝÆô¶¯ÒÔ±ÜÃâ\n"
-"¿ÉÄܵÄϵͳ°²È«ÐÔÎÊÌâ.²ÎÔÄÎĵµ»ñÈ¡¸ü¶à\n"
-"ÓйØÈçºÎÕýÈ·Æô¶¯·þÎñÆ÷µÄÐÅÏ¢.\n"
-"\n"
+#: utils/adt/timestamp.c:2939 utils/adt/timestamp.c:3565
+#: utils/adt/timestamp.c:3603
+#, c-format
+msgid "timestamp with time zone units \"%s\" not supported"
+msgstr "²»Ö§³Ö´øʱÇøµÄʱ¼ä´Áµ¥Î» \"%s\""
 
-#: main/main.c:192
+#: utils/adt/timestamp.c:2955 utils/adt/timestamp.c:3612
 #, c-format
-msgid "%s: real and effective user ids must match\n"
-msgstr "%s: ÕæʵºÍÓÐЧÓû§±êʶ±ØÐëÏ໥ƥÅä\n"
+msgid "timestamp with time zone units \"%s\" not recognized"
+msgstr "´øʱÇøµÄʱ¼ä´Áµ¥Î» \"%s\" ²»±»ÈÏ¿É"
 
-#: main/main.c:227
+#: utils/adt/timestamp.c:3034 utils/adt/timestamp.c:3718
 #, c-format
-msgid "%s: invalid current euid %d\n"
-msgstr "%s: ·Ç·¨µÄµ±Ç° euid %d\n"
+msgid "interval units \"%s\" not supported"
+msgstr "²»Ö§³Ö \"%s\" µÄ interval µ¥Î»"
 
-#: nodes/copyfuncs.c:1284
-#, fuzzy, c-format
-msgid "_copyAConst: unknown node type %d"
-msgstr "copyObject: ²»ÖªµÀÈçºÎ¿½±´½ÚµãÀàÐÍ %d"
+#: utils/adt/timestamp.c:3050 utils/adt/timestamp.c:3748
+#, c-format
+msgid "interval units \"%s\" not recognized"
+msgstr "interval µ¥Î» \"%s\" ²»±»ÈÏ¿É"
 
-#: nodes/copyfuncs.c:2383
-#, fuzzy, c-format
-msgid "_copyValue: unknown node type %d"
-msgstr "outValue: ²»ÖªµÀÈçºÎ´òÓ¡ÀàÐÍ %d"
+#: utils/adt/timestamp.c:3074
+msgid "cannot calculate week number without year information"
+msgstr "ûÓÐÄê·ÝÐÅÏ¢, ÎÞ·¨¼ÆËãÐÇÆÚ¸öÊý"
 
-#: nodes/copyfuncs.c:2894
+#: utils/adt/timestamp.c:3793 utils/adt/timestamp.c:3942 utils/adt/date.c:2510
 #, c-format
-msgid "copyObject: don't know how to copy node type %d"
-msgstr "copyObject: ²»ÖªµÀÈçºÎ¿½±´½ÚµãÀàÐÍ %d"
+msgid "time zone \"%s\" not recognized"
+msgstr "ʱÇø \"%s\" ²»±»ÈÏ¿É"
 
-#: nodes/equalfuncs.c:192
+#: utils/adt/timestamp.c:3819 utils/adt/timestamp.c:3968
 #, c-format
-msgid "_equalParam: Invalid paramkind value: %d"
-msgstr "equalParam: ·Ç·¨ paramkind Öµ: %d"
+msgid "interval time zone \"%s\" must not specify month"
+msgstr "ʱÇø \"%s\" ¼ä¸ô²»¿ÉÒÔÖ¸¶¨Ô·Ý"
 
-#: nodes/equalfuncs.c:1565
-#, fuzzy, c-format
-msgid "_equalValue: unknown node type %d"
-msgstr "outValue: ²»ÖªµÀÈçºÎ´òÓ¡ÀàÐÍ %d"
-
-#: nodes/equalfuncs.c:2018
+#: utils/adt/nabstime.c:244
 #, c-format
-msgid "equal: don't know whether nodes of type %d are equal"
-msgstr "equal: ²»ÖªµÀÀàÐÍΪ %d µÄ½ÚµãÊÇ·ñÏàµÈ"
-
-#: nodes/list.c:189
-#, fuzzy
-msgid "can't nconc a list to itself"
-msgstr "ÊÔͼ¸øÒ»¸öÁÐ±í±¾Éí½øÐРnconc"
+msgid "invalid time zone name: \"%s\""
+msgstr "ÎÞЧʱÇøÃû×Ö: \"%s\""
 
-#: nodes/list.c:241
-msgid "llast: empty list"
-msgstr ""
+#: utils/adt/nabstime.c:596 utils/adt/nabstime.c:669
+msgid "cannot convert abstime \"invalid\" to timestamp"
+msgstr "ÎÞ·¨°Ñ abstime \"invalid\" ×ª»»Îª timestamp."
 
-#: nodes/outfuncs.c:1275 nodes/readfuncs.c:875
+#: utils/adt/nabstime.c:823
 #, c-format
-msgid "bogus rte kind %d"
-msgstr ""
+msgid "invalid input syntax for type tinterval: \"%s\""
+msgstr "ÎÞЧµÄ tinterval ÀàÐÍÊäÈëÓï·¨: \"%s\""
 
-#: nodes/outfuncs.c:1353
-#, fuzzy, c-format
-msgid "_outValue: don't know how to print type %d"
-msgstr "outValue: ²»ÖªµÀÈçºÎ´òÓ¡ÀàÐÍ %d"
+#: utils/adt/nabstime.c:888
+msgid "invalid status in external \"tinterval\" value"
+msgstr "ÎÞЧµÄÍⲿ \"tinterval\" Öµ×´Ì¬"
 
-#: nodes/outfuncs.c:1755
-#, fuzzy, c-format
-msgid "_outNode: don't know how to print type %d"
-msgstr "outNode: ²»ÖªµÀÈçºÎ´òÓ¡ÀàÐÍ %d"
+#: utils/adt/nabstime.c:980
+msgid "cannot convert reltime \"invalid\" to interval"
+msgstr "ÎÞ·¨°Ñ reltime \"invalid\" ×ª»»Îª interval"
 
-#: nodes/print.c:85
-#, c-format
-msgid ""
-"%s:\n"
-"%s"
-msgstr ""
-"%s:\n"
-"%s"
+#: utils/adt/not_in.c:64 utils/adt/varlena.c:1636 utils/adt/varlena.c:1641
+#: utils/adt/regproc.c:1110 utils/adt/regproc.c:1115
+msgid "invalid name syntax"
+msgstr "ÎÞЧµÄÃû×ÖÓï·¨"
 
-#: nodes/print.c:353
-#, c-format
-msgid "Cache lookup for type %u failed"
-msgstr "ÔÚ»º³åÖвéÕÒÀàÐÍ %u Ê§°Ü"
+#: utils/adt/not_in.c:65
+msgid "Must provide \"relationname.columnname\"."
+msgstr "±ØÐëÌṩ \"¹ØϵÃû.×Ö¶ÎÃû\"."
 
-#: nodes/read.c:296
-#, fuzzy
-msgid "nodeRead: did not find '}' at end of node"
-msgstr "nodeRead: Ôڹ滮½ÚµãµÄ½áβûÓÐÕÒµ½ '}'"
+#: utils/adt/acl.c:109 utils/adt/name.c:90
+msgid "identifier too long"
+msgstr "±êʶ·ûÌ«³¤"
 
-#: nodes/read.c:376
+#: utils/adt/acl.c:110 utils/adt/name.c:91
 #, c-format
-msgid "nodeRead: Bad type %d"
-msgstr "nodeRead: ´íÎóµÄÀàÐÍ %d"
+msgid "Identifier must be less than %d characters."
+msgstr "±êʶ·û±ØÐëСÓÚ %d ¸ö×Ö·û."
 
-#: nodes/readfuncs.c:149
-msgid "toIntList: unexpected datatype"
-msgstr "toIntList: ·ÇÔ¤ÆÚÊý¾ÝÀàÐÍ"
+#: utils/adt/acl.c:197
+#, c-format
+msgid "unrecognized key word: \"%s\""
+msgstr "δ֪µÄ¼üÖµ: \"%s\""
+
+#: utils/adt/acl.c:198
+msgid "ACL key word must be \"group\" or \"user\"."
+msgstr "ACL ¼üÖµ±ØÐëΪ \"group\" »òÕß \"user\"."
 
-#: nodes/readfuncs.c:183
-msgid "toOidList: unexpected datatype"
-msgstr "toOidList: ·ÇÔ¤ÆÚÊý¾ÝÀàÐÍ"
+#: utils/adt/acl.c:203
+msgid "missing name"
+msgstr "ȱÉÙÃû×Ö"
 
-#: nodes/readfuncs.c:531
-#, fuzzy, c-format
-msgid "_readBoolExpr: unknown boolop \"%.*s\""
-msgstr "_readExpr: δ֪ opType \"%.*s\""
+#: utils/adt/acl.c:204
+msgid "A name must follow the \"group\" or \"user\" key word."
+msgstr "Ò»¸öÃû×Ö±ØÐëΪ \"group\" »òÕß \"user\" ¼üÖµ."
 
-#: nodes/readfuncs.c:986
-#, fuzzy, c-format
-msgid "badly formatted node string \"%.32s\"..."
-msgstr "´íÎóµÄ¹æ»®´®(planstring) \"%.10s\""
+#: utils/adt/acl.c:212
+msgid "missing \"=\" sign"
+msgstr "ȱÉÙ \"=\" ·ûºÅ"
 
-#: nodes/readfuncs.c:1019 nodes/readfuncs.c:1051
+#: utils/adt/acl.c:259
 #, c-format
-msgid "readDatum: expected '%s', got '%s'; length = %lu"
-msgstr "readDatum: Ô¤ÆÚ '%s', µÃµ½ '%s'; ³¤¶È = %lu"
+msgid "invalid mode character: must be one of \"%s\""
+msgstr "ÎÞЧµÄģʽ×Ö·û: ±ØÐëÊÇ \"%s\" ÆäÖеÄÒ»¸ö"
 
-#: nodes/readfuncs.c:1026
+#: utils/adt/acl.c:289
+msgid "a name must follow the \"/\" sign"
+msgstr "Ãû×Ö±ØÐëÔÙ \"/\" ·ûºÅºó"
+
+#: utils/adt/acl.c:298
 #, c-format
-msgid "readDatum: byval & length = %lu"
+msgid "defaulting grantor to user ID %u"
 msgstr ""
 
-#: nodes/bitmapset.c:187
-msgid "bms_make_singleton: negative set member not allowed"
+#: utils/adt/acl.c:357
+msgid "extra garbage at the end of the ACL specification"
 msgstr ""
 
-#: nodes/bitmapset.c:357
-msgid "bms_is_member: negative set member not allowed"
+#: utils/adt/acl.c:895
+msgid "grant options cannot be granted back to your own grantor"
 msgstr ""
 
-#: nodes/bitmapset.c:404 nodes/bitmapset.c:424
-msgid "bms_singleton_member: set is empty"
+#: utils/adt/acl.c:954
+msgid "dependent privileges exist"
 msgstr ""
 
-#: nodes/bitmapset.c:413
-msgid "bms_singleton_member: set has multiple members"
+#: utils/adt/acl.c:955
+msgid "Use CASCADE to revoke them too."
 msgstr ""
 
-#: nodes/bitmapset.c:531
-msgid "bms_add_member: negative set member not allowed"
-msgstr ""
+#: utils/adt/acl.c:1124
+#, c-format
+msgid "group with ID %u does not exist"
+msgstr "ID Îª %u µÄ×é²»´æÔÚ"
 
-#: nodes/bitmapset.c:571
-msgid "bms_del_member: negative set member not allowed"
-msgstr ""
+#: utils/adt/acl.c:1137
+msgid "aclinsert is no longer supported"
+msgstr "²»ÔÙÖ§³Ö aclinsert"
 
-#: optimizer/geqo/geqo_erx.c:336
-msgid "gimme_gene: Internal error - minimum_count not set"
-msgstr ""
+#: utils/adt/acl.c:1147
+msgid "aclremove is no longer supported"
+msgstr "²»ÔÙÖ§³Ö aclremove"
 
-#: optimizer/geqo/geqo_erx.c:362
-msgid "gimme_gene: neither shared nor minimum number nor random edge found"
-msgstr ""
+#: utils/adt/acl.c:1199
+msgid "cannot specify both user and group"
+msgstr "²»ÄÜͬʱָ¶¨Óû§ (user) ºÍ×é (group)"
 
-#: optimizer/geqo/geqo_erx.c:422
-msgid "edge_failure(1): no edge found via random decision and total_edges == 4"
-msgstr ""
+#: utils/adt/acl.c:1261 utils/adt/acl.c:1486 utils/adt/acl.c:1698
+#: utils/adt/acl.c:1902 utils/adt/acl.c:2106 utils/adt/acl.c:2315
+#: utils/adt/acl.c:2516
+#, c-format
+msgid "unrecognized privilege type: \"%s\""
+msgstr "δ֪µÄȨÏÞÀàÐÍ: \"%s\""
 
-#: optimizer/geqo/geqo_erx.c:447
-msgid "edge_failure(2): no edge found via random decision and remainig edges"
-msgstr ""
+#: 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
+#, c-format
+msgid "database \"%s\" does not exist"
+msgstr "Êý¾Ý¿â \"%s\" ²»´æÔÚ"
 
-#: optimizer/geqo/geqo_erx.c:465
-msgid "edge_failure(3): no edge found via looking for the last ununsed point"
-msgstr ""
+#: utils/adt/acl.c:1875 utils/adt/regproc.c:117 utils/adt/regproc.c:138
+#: utils/adt/regproc.c:290
+#, c-format
+msgid "function \"%s\" does not exist"
+msgstr "º¯Êý \"%s\" ²»´æÔÚ"
 
-#: optimizer/geqo/geqo_erx.c:470
-msgid "edge_failure: no edge detected"
-msgstr ""
+#: utils/adt/acl.c:2079 commands/comment.c:1001 commands/functioncmds.c:451
+#: commands/proclang.c:202 commands/proclang.c:257 catalog/aclchk.c:758
+#, c-format
+msgid "language \"%s\" does not exist"
+msgstr "ÓïÑÔ \"%s\" ²»´æÔÚ"
 
-#: optimizer/geqo/geqo_main.c:123
-msgid "geqo_main: using edge recombination crossover [ERX]"
-msgstr ""
+#: 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
+#: 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\" ²»´æÔÚ"
 
-#: optimizer/geqo/geqo_main.c:127
-msgid "geqo_main: using partially matched crossover [PMX]"
-msgstr ""
+#: 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
+#, c-format
+msgid "tablespace \"%s\" does not exist"
+msgstr "±í¿Õ¼ä \"%s\" ²»´æÔÚ"
 
-#: optimizer/geqo/geqo_main.c:131
-msgid "geqo_main: using cycle crossover [CX]"
-msgstr ""
+#: utils/adt/like_match.c:291 utils/adt/like.c:453 utils/adt/regexp.c:461
+msgid "invalid escape string"
+msgstr "ÎÞЧµÄÌÓÒÝ×Ö·û´®"
 
-#: optimizer/geqo/geqo_main.c:136
-msgid "geqo_main: using position crossover [PX]"
-msgstr ""
+#: utils/adt/like_match.c:292 utils/adt/like.c:454 utils/adt/regexp.c:462
+msgid "Escape string must be empty or one character."
+msgstr "ÌÓÒÝ×Ö·û´®±ØÐëΪ¿Õ»òÕßÒ»¸ö×Ö·û."
 
-#: optimizer/geqo/geqo_main.c:141
-msgid "geqo_main: using order crossover [OX1]"
-msgstr ""
+#: utils/adt/int.c:134
+msgid "int2vector has too many elements"
+msgstr "int2vector ÓÐÌ«¶àµÄÔªËØ"
 
-#: optimizer/geqo/geqo_main.c:146
-msgid "geqo_main: using order crossover [OX2]"
+#: utils/adt/int.c:1063 utils/adt/int8.c:981
+msgid "step size may not equal zero"
 msgstr ""
 
-#: optimizer/geqo/geqo_main.c:211
+#: utils/adt/mac.c:65
 #, c-format
-msgid "[GEQO] failures: %d, average: %d"
-msgstr ""
-
-#: optimizer/geqo/geqo_main.c:214
-msgid "[GEQO] No edge failures detected."
-msgstr ""
+msgid "invalid input syntax for type macaddr: \"%s\""
+msgstr "ÎÞЧµÄ macaddr ÀàÐÍÊäÈëÓï·¨: \"%s\""
 
-#: optimizer/geqo/geqo_main.c:220
+#: utils/adt/mac.c:72
 #, c-format
-msgid "[GEQO] mutations: %d, generations: %d"
-msgstr ""
+msgid "invalid octet value in \"macaddr\" value: \"%s\""
+msgstr "ÔÚ \"macaddr\" ÖµÖеÄÎÞЧ°Ëλֵ: \"%s\""
 
-#: optimizer/geqo/geqo_main.c:222
-msgid "[GEQO] No mutations processed."
-msgstr ""
+#: utils/adt/mac.c:190
+msgid "text too long to convert to MAC address"
+msgstr "Îı¾Ì«³¤ÒÔÖÁÓÚÎÞ·¨×ª»»³É MAC µØÖ·"
 
-#: optimizer/geqo/geqo_main.c:242
-msgid "geqo: failed to make a valid plan"
-msgstr ""
+#: utils/adt/oid.c:45
+msgid "deprecated input syntax for type oid: \"\""
+msgstr "ÎÞЧµÄ oid ÀàÐÍÊäÈëÓï·¨: \"\""
 
-#: optimizer/geqo/geqo_misc.c:41
-msgid "avg_pool: pool_size of zero"
+#: 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 ""
 
-#: optimizer/path/allpaths.c:204
-msgid "SELECT FOR UPDATE is not supported for inherit queries"
-msgstr ""
+#: utils/adt/oid.c:60 utils/adt/oid.c:66 utils/adt/oid.c:87
+#, c-format
+msgid "invalid input syntax for type oid: \"%s\""
+msgstr "ÎÞЧµÄ oid ÀàÐÍÊäÈëÓï·¨: \"%s\""
 
-#: optimizer/path/allpaths.c:619
+#: utils/adt/oid.c:72 utils/adt/oid.c:110
 #, c-format
-msgid "recurse_pushdown_safe: unexpected node %d"
-msgstr ""
+msgid "value \"%s\" is out of range for type oid"
+msgstr "Öµ \"%s\" ³¬³öÀàÐÍ oid ·¶Î§"
 
-#: optimizer/path/allpaths.c:687
-#, fuzzy, c-format
-msgid "recurse_push_qual: unexpected node %d"
-msgstr "QueryRewrite: ÒâÍâµÄ commandType %d"
+#: utils/adt/oid.c:188
+msgid "oidvector has too many elements"
+msgstr "oidvector ÓÐÌ«¶àÔªËØ"
 
-#: optimizer/path/clausesel.c:553
+#: utils/adt/tid.c:66 utils/adt/tid.c:74 utils/adt/tid.c:82
 #, c-format
-msgid "clause_selectivity: s1 %f"
-msgstr ""
+msgid "invalid input syntax for type tid: \"%s\""
+msgstr "ÎÞЧµÄ tid ÀàÐÍÊäÈëÓï·¨: \"%s\""
 
-#: optimizer/path/costsize.c:1479
-msgid "cost_qual_eval: can't handle unplanned sub-select"
-msgstr ""
+#: utils/adt/oracle_compat.c:99 utils/adt/oracle_compat.c:138
+msgid "invalid multibyte character for locale"
+msgstr "ÎÞЧµÄ¶à×Ö½Ú×Ö·û, ¶ÔÓÚ locale"
 
-#: optimizer/path/costsize.c:1771
-#, c-format
-msgid "set_joinrel_size_estimates: unsupported join type %d"
-msgstr ""
+#: utils/adt/oracle_compat.c:410 utils/adt/oracle_compat.c:507
+#: utils/adt/oracle_compat.c:1131
+msgid "requested length too large"
+msgstr "ÇëÇ󳤶ÈÌ«´ó"
 
-#: optimizer/path/indxpath.c:495
-msgid "extract_or_indexqual_conditions: no matching clause"
-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
+msgid "MATCH PARTIAL not yet implemented"
+msgstr "MATCH PARTIAL ÈÔδʵÏÖ"
 
-#: optimizer/path/indxpath.c:1260
-msgid "pred_test_simple_clause: unknown test_op"
-msgstr ""
+#: utils/adt/ri_triggers.c:337 utils/adt/ri_triggers.c:2739
+#: utils/adt/ri_triggers.c:3236 utils/adt/ri_triggers.c:3273
+#, c-format
+msgid "insert or update on table \"%s\" violates foreign key constraint \"%s\""
+msgstr "²åÈë»ò¸üбí \"%s\" Î¥·´Íâ¼üÔ¼Êø \"%s\""
 
-#: optimizer/path/indxpath.c:1301
-msgid "pred_test_simple_clause: null test result"
-msgstr ""
+#: utils/adt/ri_triggers.c:340 utils/adt/ri_triggers.c:2742
+msgid "MATCH FULL does not allow mixing of null and nonnull key values."
+msgstr "MATCH FULL ²»ÔÊÐí¿ÕºÍ·Ç¿Õ¼üÖµµÄ»ìºÏ."
 
-#: optimizer/path/indxpath.c:2093
+#: utils/adt/ri_triggers.c:2482 utils/adt/ri_triggers.c:2967
 #, c-format
-msgid "prefix_quals: unexpected operator %u"
-msgstr ""
+msgid "function \"%s\" called with wrong number of trigger arguments"
+msgstr "º¯Êý \"%s\" µ÷ÓÃÁË´íÎóµÄ´¥·¢Æ÷²ÎÊý¸öÊý"
 
-#: optimizer/path/indxpath.c:2109
+#: utils/adt/ri_triggers.c:2500 utils/adt/ri_triggers.c:2977
 #, c-format
-msgid "prefix_quals: no = operator for type %u"
+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
+msgid ""
+"Remove this referential integrity trigger and its mates, then do ALTER TABLE "
+"ADD CONSTRAINT."
 msgstr ""
 
-#: optimizer/path/indxpath.c:2124
+#: utils/adt/ri_triggers.c:2887 utils/adt/ri_triggers.c:2897
+#: utils/adt/ri_triggers.c:3335
 #, c-format
-msgid "prefix_quals: no >= operator for type %u"
-msgstr ""
+msgid ""
+"table \"%s\" does not have column \"%s\" referenced by constraint \"%s\""
+msgstr "±í \"%1$s\" Ã»ÓÐͨ¹ýÔ¼Êø \"%3$s\" µÄ×ֶΠ\"%2$s\" ¹ØÁª"
 
-#: optimizer/path/indxpath.c:2140
+#: utils/adt/ri_triggers.c:2917
 #, c-format
-msgid "prefix_quals: no < operator for type %u"
-msgstr ""
+msgid "function \"%s\" was not called by trigger manager"
+msgstr "º¯Êý \"%s\" Ã»Óб»´¥·¢Æ÷¹ÜÀíÆ÷µ÷ÓÃ"
 
-#: optimizer/path/indxpath.c:2186
+#: utils/adt/ri_triggers.c:2926
 #, c-format
-msgid "network_prefix_quals: unexpected operator %u"
+msgid "function \"%s\" must be fired AFTER ROW"
 msgstr ""
 
-#: optimizer/path/indxpath.c:2199
+#: utils/adt/ri_triggers.c:2934
 #, c-format
-msgid "network_prefix_quals: no %s operator for type %u"
+msgid "function \"%s\" must be fired for INSERT"
 msgstr ""
 
-#: optimizer/path/indxpath.c:2214
+#: utils/adt/ri_triggers.c:2940
 #, c-format
-msgid "network_prefix_quals: no <= operator for type %u"
+msgid "function \"%s\" must be fired for UPDATE"
 msgstr ""
 
-#: optimizer/path/joinpath.c:168
+#: utils/adt/ri_triggers.c:2947
 #, c-format
-msgid "sort_inner_and_outer: unexpected join type %d"
-msgstr "sort_inner_and_outer: Î´ÖªµÄÁ¬½ÓÀàÐÍ %d"
+msgid "function \"%s\" must be fired for INSERT or UPDATE"
+msgstr ""
 
-#: optimizer/path/joinpath.c:366
+#: utils/adt/ri_triggers.c:2954
 #, c-format
-msgid "match_unsorted_outer: unexpected join type %d"
+msgid "function \"%s\" must be fired for DELETE"
 msgstr ""
 
-#: optimizer/path/joinrels.c:230
+#: utils/adt/ri_triggers.c:3203
 #, c-format
-msgid "make_rels_by_joins: failed to build any %d-way joins"
+msgid ""
+"referential integrity query on \"%s\" from constraint \"%s\" on \"%s\" gave "
+"unexpected result"
 msgstr ""
 
-#: optimizer/path/joinrels.c:371
-msgid "make_jointree_rel: invalid join order!?"
+#: utils/adt/ri_triggers.c:3207
+msgid "This is most likely due to a rule having rewritten the query."
 msgstr ""
 
-#: optimizer/path/joinrels.c:388
+#: utils/adt/ri_triggers.c:3238
 #, c-format
-msgid "make_jointree_rel: unexpected node type %d"
-msgstr ""
+msgid "No rows were found in \"%s\"."
+msgstr "ÔÚ \"%s\" Ã»Óз¢ÏÖÐÐ."
 
-#: optimizer/path/joinrels.c:574
+#: utils/adt/ri_triggers.c:3275
 #, c-format
-msgid "make_join_rel: unsupported join type %d"
+msgid "Key (%s)=(%s) is not present in table \"%s\"."
 msgstr ""
 
-#: optimizer/path/pathkeys.c:1107
+#: utils/adt/ri_triggers.c:3281
+#, c-format
 msgid ""
-"make_pathkeys_for_mergeclauses: can't identify which side of mergeclause to "
-"use"
-msgstr ""
+"update or delete on \"%s\" violates foreign key constraint \"%s\" on \"%s\""
+msgstr "ÔÚ \"%1$s\" Éϸüлòɾ³ýÎ¥·´ÁËÔÚ \"%3$s\" ÉϵÄÍâ¼üÔ¼Êø \"%2$s\""
 
-#: optimizer/plan/createplan.c:160
+#: utils/adt/ri_triggers.c:3284
 #, c-format
-msgid "create_plan: unknown pathtype %d"
+msgid "Key (%s)=(%s) is still referenced from table \"%s\"."
 msgstr ""
 
-#: optimizer/plan/createplan.c:264
+#: utils/adt/ri_triggers.c:3629 utils/adt/arrayfuncs.c:2562
+#: parser/parse_oper.c:185
 #, c-format
-msgid "create_scan_plan: unknown node type: %d"
+msgid "could not identify an equality operator for type %s"
 msgstr ""
 
-#: optimizer/plan/createplan.c:403
+#: utils/adt/varchar.c:105 utils/adt/varchar.c:225
 #, c-format
-msgid "create_join_plan: unknown node type: %d"
+msgid "value too long for type character(%d)"
 msgstr ""
 
-#: optimizer/plan/createplan.c:1143
-msgid "fix_indxqual_sublist: indexqual clause is not binary opclause"
+#: utils/adt/varchar.c:383 utils/adt/varchar.c:475
+#, c-format
+msgid "value too long for type character varying(%d)"
 msgstr ""
 
-#: optimizer/plan/createplan.c:1232
-msgid "fix_indxqual_operand: var is not index attribute"
-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
+#: parser/parse_type.c:94
+#, c-format
+msgid "column \"%s\" of relation \"%s\" does not exist"
+msgstr "¹Øϵ \"%2$s\" µÄ \"%1$s\" ×ֶβ»´æÔÚ"
 
-#: optimizer/plan/createplan.c:1711
-msgid "make_sort_from_pathkeys: cannot find pathkey item to sort"
-msgstr ""
+#: utils/adt/ruleutils.c:1719
+#, c-format
+msgid "rule \"%s\" has unsupported event type %d"
+msgstr "¹æÔò \"%s\" ²»Ö§³ÖʼþÀàÐÍ %d"
 
-#: optimizer/plan/initsplan.c:99
-msgid "SELECT FOR UPDATE cannot be applied to a join"
-msgstr ""
+#: utils/adt/encode.c:55 utils/adt/encode.c:91
+#, c-format
+msgid "unrecognized encoding: \"%s\""
+msgstr "δ֪±àÂë: \"%s\""
 
-#: optimizer/plan/initsplan.c:102
-#, fuzzy, c-format
-msgid "add_base_rels_to_query: unexpected node type %d"
-msgstr "sort_inner_and_outer: Î´ÖªµÄÁ¬½ÓÀàÐÍ %d"
+#: utils/adt/encode.c:150
+#, c-format
+msgid "invalid hexadecimal digit: \"%c\""
+msgstr "ÎÞЧµÄÊ®Áù½øÖÆÊý×Ö: \"%c\""
 
-#: optimizer/plan/initsplan.c:266 optimizer/prep/prepjointree.c:337
-msgid "UNION JOIN is not implemented yet"
-msgstr ""
+#: utils/adt/encode.c:178
+msgid "invalid hexadecimal data: odd number of digits"
+msgstr "ÎÞЧµÄÊ®Áù½øÖÆÊý¾Ý: Ææ¹ÖµÄÊý×Ö¸öÊý"
 
-#: optimizer/plan/initsplan.c:270
-#, c-format
-msgid "distribute_quals_to_rels: unsupported join type %d"
-msgstr ""
+#: utils/adt/encode.c:295
+msgid "unexpected \"=\""
+msgstr "ÒâÍâµÄ \"=\""
 
-#: optimizer/plan/initsplan.c:284
-#, c-format
-msgid "distribute_quals_to_rels: unexpected node type %d"
-msgstr ""
+#: utils/adt/encode.c:307
+msgid "invalid symbol"
+msgstr "ÎÞЧ·ûºÅ"
 
-#: optimizer/plan/initsplan.c:322
-msgid ""
-"SELECT FOR UPDATE cannot be applied to the nullable side of an OUTER JOIN"
-msgstr ""
+#: utils/adt/encode.c:327
+msgid "invalid end sequence"
+msgstr "ÎÞЧµÄ½áÊø˳Ðò"
 
-#: optimizer/plan/initsplan.c:393
-msgid "JOIN qualification may not refer to other relations"
-msgstr ""
+#: utils/adt/encode.c:436 utils/adt/encode.c:501 utils/adt/varlena.c:118
+#: utils/adt/varlena.c:158
+msgid "invalid input syntax for type bytea"
+msgstr "ÎÞЧµÄ bytea ÀàÐÍÊäÈëÓï·¨"
 
-#: optimizer/plan/initsplan.c:585
-msgid "distribute_qual_to_rels: can't cope with variable-free clause"
-msgstr ""
+#: utils/adt/datetime.c:1313 utils/adt/datetime.c:2088 utils/adt/date.c:87
+msgid "date/time value \"current\" is no longer supported"
+msgstr "ÈÕÆÚ/ʱ¼äÖµ \"current\" ²»ÔÙ±»Ö§³ÖÁË"
 
-#: optimizer/plan/initsplan.c:727
+#: utils/adt/datetime.c:1495 utils/adt/datetime.c:2370
+#: utils/adt/formatting.c:3178
 #, c-format
-msgid "Unable to identify an equality operator for types '%s' and '%s'"
+msgid "inconsistent use of year %04d and \"BC\""
 msgstr ""
 
-#: optimizer/plan/initsplan.c:738
+#: utils/adt/datetime.c:3315 utils/adt/datetime.c:3322
 #, c-format
-msgid ""
-"Equality operator for types '%s' and '%s' should be mergejoinable, but isn't"
-msgstr ""
+msgid "date/time field value out of range: \"%s\""
+msgstr "ÈÕÆÚ/ʱ¼äÖµ³¬³ö·¶Î§: \"%s\""
 
-#: optimizer/plan/planmain.c:157
-msgid "query_planner: failed to construct a relation"
-msgstr ""
+#: utils/adt/datetime.c:3324
+msgid "Perhaps you need a different \"datestyle\" setting."
+msgstr "Ò²ÐíÄãÐèÒª²»Í¬µÄ \"datesytle\" ÉèÖÃ."
 
-#: optimizer/plan/planner.c:445
+#: utils/adt/datetime.c:3329
 #, c-format
-msgid "preprocess_qual_conditions: unexpected node type %d"
+msgid "interval field value out of range: \"%s\""
 msgstr ""
 
-#: optimizer/plan/planner.c:579 parser/analyze.c:1749 parser/analyze.c:1902
-#: parser/analyze.c:2432
-msgid "SELECT FOR UPDATE is not allowed with UNION/INTERSECT/EXCEPT"
+#: utils/adt/datetime.c:3335
+#, c-format
+msgid "time zone displacement out of range: \"%s\""
 msgstr ""
 
-#: optimizer/plan/planner.c:643
-msgid "SELECT FOR UPDATE is not allowed in subselects"
-msgstr ""
+#. translator: first %s is inet or cidr
+#: utils/adt/datetime.c:3342 utils/adt/network.c:93
+#, c-format
+msgid "invalid input syntax for type %s: \"%s\""
+msgstr "ÎÞЧµÄÀàÐÍ %s ÊäÈëÓï·¨: \"%s\""
 
-#: optimizer/plan/planner.c:1468
-msgid "locate_grouping_columns: failed"
-msgstr ""
+#: utils/adt/numutils.c:74 utils/adt/numutils.c:84 utils/adt/numutils.c:97
+#, c-format
+msgid "invalid input syntax for integer: \"%s\""
+msgstr "ÎÞЧµÄÕûÊýÀàÐÍÊäÈëÓï·¨: \"%s\""
 
-#: optimizer/plan/planner.c:1549 optimizer/plan/planner.c:1555
-msgid "postprocess_setop_tlist: resjunk output columns not implemented"
-msgstr ""
+#: utils/adt/numutils.c:111
+#, c-format
+msgid "value \"%s\" is out of range for type integer"
+msgstr "Öµ \"%s\" ³¬³öÕûÊýÀàÐÍ·¶Î§"
 
-#: optimizer/plan/setrefs.c:235
+#: utils/adt/numutils.c:117
 #, c-format
-msgid "set_plan_references: unknown plan type %d"
-msgstr ""
+msgid "value \"%s\" is out of range for type shortint"
+msgstr "Öµ \"%s\" ³¬³ö¶ÌÕûÊýÀàÐÍ·¶Î§"
 
-#: optimizer/plan/setrefs.c:584
-msgid "join_references: variable not in subplan target lists"
-msgstr ""
+#: utils/adt/numutils.c:123
+#, c-format
+msgid "value \"%s\" is out of range for 8-bit integer"
+msgstr "Öµ \"%s\" ³¬³ö 8 Î»ÕûÊý·¶Î§"
 
-#: optimizer/plan/setrefs.c:680
-msgid "replace_vars_with_subplan_refs: variable not in subplan target list"
-msgstr ""
+#: utils/adt/varlena.c:582 utils/adt/varlena.c:646 utils/adt/varlena.c:1312
+msgid "negative substring length not allowed"
+msgstr "²»ÔÊÐí×Ó´®³¤¶ÈΪ¸ºÊý"
 
-#: optimizer/plan/subselect.c:478 optimizer/plan/subselect.c:566
+#: utils/adt/varlena.c:1407 utils/adt/varlena.c:1438 utils/adt/varlena.c:1474
+#: utils/adt/varlena.c:1517
 #, c-format
-msgid "cache lookup failed for operator %u"
-msgstr ""
+msgid "index %d out of valid range, 0..%d"
+msgstr "Ë÷Òý %d ³¬³öÓÐЧ·¶Î§, 0..%d"
 
-#: optimizer/plan/subselect.c:928
-#, fuzzy, c-format
-msgid "finalize_plan: node %d unsupported"
-msgstr "ProcessUtility: ²»Ö§³Ö #%d ÃüÁî"
+#: utils/adt/varlena.c:1529
+msgid "new bit must be 0 or 1"
+msgstr "еÄλ±ØÐëΪ 0 »ò 1"
 
-#: optimizer/plan/subselect.c:948
-msgid "finalize_plan: plan shouldn't reference subplan's variable"
+#: utils/adt/varlena.c:2016
+msgid "field position must be greater than zero"
 msgstr ""
 
-#: optimizer/prep/preptlist.c:58
-msgid "preprocess_targetlist: subquery cannot be result relation"
-msgstr ""
+#: utils/adt/float.c:219
+msgid "type \"real\" value out of range: overflow"
+msgstr "ÀàÐÍ \"real\" Öµ³¬³ö·¶Î§: ÉÏÒç"
 
-#: optimizer/prep/preptlist.c:209
-msgid "expand_targetlist: unexpected command_type"
-msgstr ""
+#: utils/adt/float.c:223
+msgid "type \"real\" value out of range: underflow"
+msgstr "ÀàÐÍ \"ʵÊý (real)\" Öµ³¬³ö·¶Î§: ÏÂÒç"
 
-#: optimizer/prep/preptlist.c:239
-msgid "expand_targetlist: targetlist is not sorted correctly"
-msgstr ""
+#: utils/adt/float.c:238
+msgid "type \"double precision\" value out of range: overflow"
+msgstr "ÀàÐÍ \"Ë«¾«¶È (double precision)\" Öµ³¬³ö·¶Î§: ÉÏÒç"
 
-#: optimizer/prep/prepunion.c:189
-#, c-format
-msgid "recurse_set_operations: unexpected node %d"
-msgstr ""
+#: utils/adt/float.c:242
+msgid "type \"double precision\" value out of range: underflow"
+msgstr "ÀàÐÍ \"Ë«¾«¶È (double precision)\" Öµ³¬³ö·¶Î§: ÏÂÒç"
 
-#: optimizer/prep/prepunion.c:306
-msgid "generate_nonunion_plan: bogus operation code"
-msgstr ""
+#: utils/adt/float.c:280
+msgid "deprecated input syntax for type real: \"\""
+msgstr "ÎÞЧµÄʵÊýÀàÐÍÊäÈëÓï·¨: \"\""
 
-#: optimizer/prep/prepjointree.c:340
+#: utils/adt/float.c:320
 #, c-format
-msgid "pull_up_subqueries: unexpected join type %d"
-msgstr ""
+msgid "\"%s\" is out of range for type real"
+msgstr "\"%s\" ³¬³öʵÊýÀàÐ͵ķ¶Î§"
 
-#: optimizer/prep/prepjointree.c:346
+#: utils/adt/float.c:325 utils/adt/float.c:349
 #, c-format
-msgid "pull_up_subqueries: unexpected node type %d"
-msgstr ""
+msgid "invalid input syntax for type real: \"%s\""
+msgstr "ÎÞЧµÄʵÊýÀàÐÍÊäÈëÓï·¨: \"%s\""
 
-#: optimizer/prep/prepjointree.c:366
-msgid "is_simple_subquery: subquery is bogus"
-msgstr ""
+#: utils/adt/float.c:457
+msgid "deprecated input syntax for type double precision: \"\""
+msgstr "ÎÞЧµÄË«¾«¶ÈÀàÐÍÊäÈëÓï·¨: \"\""
 
-#: optimizer/prep/prepjointree.c:481
+#: utils/adt/float.c:497
 #, c-format
-msgid "resolvenew_in_jointree: unexpected node type %d"
-msgstr ""
-
-#: optimizer/prep/prepjointree.c:527
-msgid "reduce_outer_joins: so where are the outer joins?"
-msgstr ""
+msgid "\"%s\" is out of range for type double precision"
+msgstr "\"%s\" ³¬³öË«¾«¶ÈÀàÐ͵ķ¶Î§"
 
-#: optimizer/prep/prepjointree.c:594
-#, fuzzy, c-format
-msgid "reduce_outer_joins_pass1: unexpected node type %d"
-msgstr "sort_inner_and_outer: Î´ÖªµÄÁ¬½ÓÀàÐÍ %d"
+#: utils/adt/float.c:1508 utils/adt/float.c:1538
+msgid "result is out of range"
+msgstr "½á¹û³¬³ö·¶Î§"
 
-#: optimizer/prep/prepjointree.c:618
-msgid "reduce_outer_joins_pass2: reached empty jointree"
-msgstr ""
-
-#: optimizer/prep/prepjointree.c:621
-msgid "reduce_outer_joins_pass2: reached base rel"
-msgstr ""
+#: utils/adt/float.c:1622 utils/adt/float.c:1647 utils/adt/float.c:1672
+#: utils/adt/float.c:1698 utils/adt/float.c:1723 utils/adt/float.c:1748
+#: utils/adt/float.c:1774 utils/adt/float.c:1799
+msgid "input is out of range"
+msgstr "ÊäÈ볬³ö·¶Î§"
 
-#: optimizer/prep/prepjointree.c:738
-#, fuzzy, c-format
-msgid "reduce_outer_joins_pass2: unexpected node type %d"
-msgstr "sort_inner_and_outer: Î´ÖªµÄÁ¬½ÓÀàÐÍ %d"
+#: utils/adt/cash.c:198
+#, c-format
+msgid "invalid input syntax for type money: \"%s\""
+msgstr "ÎÞЧµÄ»õ±ÒÀàÐÍÊäÈëÓï·¨: \"%s\""
 
-#: optimizer/prep/prepjointree.c:975
-#, fuzzy, c-format
-msgid "simplify_jointree: unexpected node type %d"
-msgstr "sort_inner_and_outer: Î´ÖªµÄÁ¬½ÓÀàÐÍ %d"
+#: utils/adt/bool.c:80
+#, c-format
+msgid "invalid input syntax for type boolean: \"%s\""
+msgstr "ÎÞЧµÄ²¼¶ûÀàÐÍÊäÈëÓï·¨: \"%s\""
 
-#: optimizer/prep/prepjointree.c:1046
-#, fuzzy, c-format
-msgid "get_relids_in_jointree: unexpected node type %d"
-msgstr "sort_inner_and_outer: Î´ÖªµÄÁ¬½ÓÀàÐÍ %d"
+#: utils/adt/date.c:802
+msgid "cannot convert reserved abstime value to date"
+msgstr "²»ÄÜת»»±£Áô abstime ÖµÎª date"
 
-#: optimizer/prep/prepjointree.c:1064
+#: utils/adt/date.c:863
 #, c-format
-msgid "get_relids_for_join: join node %d not found"
-msgstr ""
+msgid "invalid input syntax for type date: \"%s\""
+msgstr "ÎÞЧµÄÈÕÆÚÀàÐÍÊäÈëÓï·¨: \"%s\""
 
-#: optimizer/prep/prepjointree.c:1111
-#, fuzzy, c-format
-msgid "find_jointree_node_for_rel: unexpected node type %d"
-msgstr "sort_inner_and_outer: Î´ÖªµÄÁ¬½ÓÀàÐÍ %d"
+#: utils/adt/date.c:1579
+#, c-format
+msgid "invalid input syntax for type time: \"%s\""
+msgstr "ÎÞЧµÄʱ¼äÀàÐÍÊäÈëÓï·¨: \"%s\""
 
-#: optimizer/util/clauses.c:976
-msgid "CommuteClause: applied to non-binary-operator clause"
-msgstr ""
+#: utils/adt/date.c:1671 utils/adt/date.c:1690
+#, c-format
+msgid "\"time\" units \"%s\" not recognized"
+msgstr "\"time\" µ¥Î» \"%s\" ²»±»ÈÏ¿É"
 
-#: optimizer/util/clauses.c:981
+#: utils/adt/date.c:2330
 #, c-format
-msgid "CommuteClause: no commutator for operator %u"
-msgstr ""
+msgid "invalid input syntax for type time with time zone: \"%s\""
+msgstr "ÎÞЧµÄ´øʱÇøµÄʱ¼äÀàÐÍÊäÈëÓï·¨: \"%s\""
 
-#: optimizer/util/clauses.c:1334
+#: utils/adt/date.c:2436 utils/adt/date.c:2455
 #, c-format
-msgid "eval_const_expressions: unexpected boolop %d"
-msgstr ""
+msgid "\"time with time zone\" units \"%s\" not recognized"
+msgstr "\"time with time zone\" µ¥Î» \"%s\" ²»±»ÈÏ¿É"
 
-#: optimizer/util/clauses.c:1562 utils/cache/lsyscache.c:592
-#: utils/cache/lsyscache.c:613 utils/cache/lsyscache.c:634
-#: utils/cache/lsyscache.c:655
+#: utils/adt/date.c:2532
 #, c-format
-msgid "Function OID %u does not exist"
+msgid "\"interval\" time zone \"%s\" not valid"
 msgstr ""
 
-#: optimizer/util/clauses.c:1779
+#: utils/adt/int8.c:96 utils/adt/int8.c:127
 #, c-format
-msgid "inline_function: null prosrc for procedure %u"
-msgstr ""
+msgid "invalid input syntax for type bigint: \"%s\""
+msgstr "ÎÞЧµÄ bigint ÀàÐÍÊäÈëÓï·¨: \"%s\""
 
-#: optimizer/util/clauses.c:1938
-msgid "substitute_actual_parameters_mutator: unexpected paramkind"
-msgstr ""
+#: utils/adt/int8.c:896
+msgid "OID out of range"
+msgstr "OID ³¬³ö·¶Î§"
 
-#: optimizer/util/clauses.c:1940
-msgid "substitute_actual_parameters_mutator: unexpected paramid"
-msgstr ""
+#: utils/adt/pseudotypes.c:94
+msgid "cannot accept a value of type any"
+msgstr "ÎÞ·¨½ÓÊÜÒ»¸ö any ÀàÐÍÖµ"
 
-#: optimizer/util/clauses.c:2252
-#, c-format
-msgid "expression_tree_walker: Unexpected node type %d"
-msgstr ""
+#: utils/adt/pseudotypes.c:107
+msgid "cannot display a value of type any"
+msgstr "ÎÞ·¨ÏÔʾһ¸ö any ÀàÐÍÖµ"
 
-#: optimizer/util/clauses.c:2693
-#, c-format
-msgid "expression_tree_mutator: Unexpected node type %d"
-msgstr ""
+#: utils/adt/pseudotypes.c:121 utils/adt/pseudotypes.c:149
+msgid "cannot accept a value of type anyarray"
+msgstr "ÎÞ·¨½ÓÊÜÒ»¸ö anyarray ÀàÐÍÖµ"
 
-#: optimizer/util/pathnode.c:136
-msgid "Unable to devise a query plan for the given query"
-msgstr ""
+#: utils/adt/pseudotypes.c:199
+msgid "cannot accept a value of type trigger"
+msgstr "ÎÞ·¨½ÓÊÜÒ»¸ö trigger ÀàÐÍÖµ"
 
-#: optimizer/util/plancat.c:230
-#, c-format
-msgid "restriction_selectivity: bad value %f"
+#: utils/adt/pseudotypes.c:212
+msgid "cannot display a value of type trigger"
+msgstr "ÎÞ·¨ÏÔʾһ¸ö trigger ÀàÐÍÖµ"
+
+#: utils/adt/pseudotypes.c:226
+msgid "cannot accept a value of type language_handler"
+msgstr "ÎÞ·¨½ÓÊÜÒ»¸ö language_handler ÀàÐÍÖµ"
+
+#: utils/adt/pseudotypes.c:239
+msgid "cannot display a value of type language_handler"
+msgstr "ÎÞ·¨ÏÔʾһ¸ö language_handler ÀàÐÍÖµ"
+
+#: utils/adt/pseudotypes.c:253
+msgid "cannot accept a value of type internal"
+msgstr "ÎÞ·¨½ÓÊÜÒ»¸ö internal ÀàÐÍÖµ"
+
+#: utils/adt/pseudotypes.c:266
+msgid "cannot display a value of type internal"
+msgstr "ÎÞ·¨ÏÔʾһ¸ö internal ÀàÐÍÖµ"
+
+#: utils/adt/pseudotypes.c:280
+msgid "cannot accept a value of type opaque"
+msgstr "ÎÞ·¨½ÓÊÜÒ»¸ö opaque ÀàÐÍÖµ"
+
+#: utils/adt/pseudotypes.c:293
+msgid "cannot display a value of type opaque"
+msgstr "ÎÞ·¨ÏÔʾһ¸ö opaque ÀàÐÍÖµ"
+
+#: utils/adt/pseudotypes.c:307
+msgid "cannot accept a value of type anyelement"
+msgstr "ÎÞ·¨½ÓÊÜÒ»¸ö anyelement ÀàÐÍÖµ"
+
+#: utils/adt/pseudotypes.c:320
+msgid "cannot display a value of type anyelement"
+msgstr "ÎÞ·¨ÏÔʾһ¸ö anyelement ÀàÐÍÖµ"
+
+#: utils/adt/geo_ops.c:292 utils/adt/geo_ops.c:3953 utils/adt/geo_ops.c:4843
+msgid "too many points requested"
 msgstr ""
 
-#: optimizer/util/plancat.c:265
+#: utils/adt/geo_ops.c:315
+msgid "could not format \"path\" value"
+msgstr "ÎÞ·¨¸ñʽ»¯ \"path\" Öµ"
+
+#: utils/adt/geo_ops.c:390
 #, c-format
-msgid "join_selectivity: bad value %f"
-msgstr ""
+msgid "invalid input syntax for type box: \"%s\""
+msgstr "ÎÞЧµÄ box ÀàÐÍÊäÈëÓï·¨: \"%s\""
 
-#: optimizer/util/plancat.c:337
+#: utils/adt/geo_ops.c:903
 #, c-format
-msgid "has_subclass: Relation %u not found"
-msgstr ""
+msgid "invalid input syntax for type line: \"%s\""
+msgstr "ÎÞЧµÄ line ÀàÐÍÊäÈëÓï·¨: \"%s\""
 
-#: optimizer/util/relnode.c:58
-msgid "build_base_rel: rel already exists"
-msgstr ""
+#: utils/adt/geo_ops.c:910 utils/adt/geo_ops.c:977 utils/adt/geo_ops.c:992
+#: utils/adt/geo_ops.c:1004
+msgid "type \"line\" not yet implemented"
+msgstr "ÀàÐÍ \"line\" Ã»ÓÐʵÏÖ"
 
-#: optimizer/util/relnode.c:66
-msgid "build_base_rel: rel already exists as 'other' rel"
-msgstr ""
+#: utils/adt/geo_ops.c:1352 utils/adt/geo_ops.c:1375
+#, c-format
+msgid "invalid input syntax for type path: \"%s\""
+msgstr "ÎÞЧµÄ path ÀàÐÍÊäÈëÓï·¨: \"%s\""
 
-#: optimizer/util/relnode.c:101
-msgid "build_other_rel: rel already exists as base rel"
+#: utils/adt/geo_ops.c:1412
+msgid "invalid number of points in external \"path\" value"
 msgstr ""
 
-#: optimizer/util/relnode.c:166
-#, fuzzy, c-format
-msgid "make_base_rel: unsupported RTE kind %d"
-msgstr "pq_sendint: ²»Ö§³ÖµÄ³ß´ç %d"
+#: utils/adt/geo_ops.c:1753
+#, c-format
+msgid "invalid input syntax for type point: \"%s\""
+msgstr "ÎÞЧµÄ point ÀàÐÍÊäÈëÓï·¨: \"%s\""
 
-#: optimizer/util/relnode.c:199
+#: utils/adt/geo_ops.c:1981
 #, c-format
-msgid "find_base_rel: no relation entry for relid %d"
-msgstr ""
+msgid "invalid input syntax for type lseg: \"%s\""
+msgstr "ÎÞЧµÄ lseg ÀàÐÍÊäÈëÓï·¨: \"%s\""
 
-#: optimizer/util/tlist.c:230
-msgid ""
-"get_sortgroupclause_tle: ORDER/GROUP BY expression not found in targetlist"
-msgstr ""
+#: utils/adt/geo_ops.c:2573
+msgid "function \"dist_lb\" not implemented"
+msgstr "º¯Êý \"dist_lb\" Ã»ÓÐʵÏÖ"
 
-#: parser/analyze.c:260
-msgid "CREATE VIEW specifies more column names than columns"
-msgstr ""
+#: utils/adt/geo_ops.c:3086
+msgid "function \"close_lb\" not implemented"
+msgstr "º¯Êý \"close_lb\" Ã»ÓÐʵÏÖ"
 
-#: parser/analyze.c:456
-msgid "INSERT ... SELECT may not specify INTO"
-msgstr ""
+#: utils/adt/geo_ops.c:3365
+msgid "cannot create bounding box for empty polygon"
+msgstr "ÎÞ·¨Îª¿Õ¶à±ßÐδ´½¨ bounding box"
 
-#: parser/analyze.c:544
-msgid "INSERT has more expressions than target columns"
-msgstr ""
+#: utils/adt/geo_ops.c:3389 utils/adt/geo_ops.c:3401
+#, c-format
+msgid "invalid input syntax for type polygon: \"%s\""
+msgstr "ÎÞЧµÄ polygon ÀàÐÍÊäÈëÓï·¨: \"%s\""
 
-#: parser/analyze.c:578
-msgid "INSERT has more target columns than expressions"
+#: utils/adt/geo_ops.c:3441
+msgid "invalid number of points in external \"polygon\" value"
 msgstr ""
 
-#: parser/analyze.c:774
-msgid "parser: unrecognized node (internal error)"
-msgstr ""
+#: utils/adt/geo_ops.c:3751
+msgid "function \"poly_distance\" not implemented"
+msgstr "º¯Êý \"poly_distance\" Ã»ÓÐʵÏÖ"
 
-#: parser/analyze.c:856
-#, c-format
-msgid "%s will create implicit sequence '%s' for SERIAL column '%s.%s'"
-msgstr ""
+#: utils/adt/geo_ops.c:4063
+msgid "function \"path_center\" not implemented"
+msgstr "º¯Êý \"path_center\" Ã»ÓÐʵÏÖ"
 
-#: parser/analyze.c:937 parser/analyze.c:945
-#, c-format
-msgid "%s/(NOT) NULL conflicting declaration for '%s.%s'"
+#: utils/adt/geo_ops.c:4080
+msgid "open path cannot be converted to polygon"
 msgstr ""
 
-#: parser/analyze.c:953
+#: utils/adt/geo_ops.c:4247 utils/adt/geo_ops.c:4257 utils/adt/geo_ops.c:4272
+#: utils/adt/geo_ops.c:4278
 #, c-format
-msgid "%s/DEFAULT multiple values specified for '%s.%s'"
-msgstr ""
+msgid "invalid input syntax for type circle: \"%s\""
+msgstr "ÎÞЧµÄ circle ÀàÐÍÊäÈëÓï·¨: \"%s\""
+
+#: utils/adt/geo_ops.c:4300 utils/adt/geo_ops.c:4308
+msgid "could not format \"circle\" value"
+msgstr "ÎÞ·¨¸ñʽ»¯ \"circle\" µÄÖµ"
 
-#: parser/analyze.c:995 parser/analyze.c:1034
-msgid "parser: unrecognized constraint (internal error)"
+#: utils/adt/geo_ops.c:4335
+msgid "invalid radius in external \"circle\" value"
 msgstr ""
 
-#: parser/analyze.c:1030
-msgid "parser: illegal context for constraint (internal error)"
+#: utils/adt/geo_ops.c:4829
+msgid "cannot convert circle with radius zero to polygon"
 msgstr ""
 
-#: parser/analyze.c:1074
-#, c-format
-msgid "%s / PRIMARY KEY multiple primary keys for table '%s' are not allowed"
+#: utils/adt/geo_ops.c:4834
+msgid "must request at least 2 points"
 msgstr ""
 
-#: parser/analyze.c:1144
-#, c-format
-msgid "inherited table \"%s\" is not a relation"
-msgstr "¼Ì³Ð±í \"%s\" ²»ÊÇÒ»¸ö¹Øϵ"
+#: utils/adt/geo_ops.c:4878 utils/adt/geo_ops.c:4901
+msgid "cannot convert empty polygon to circle"
+msgstr "ÎÞ·¨×ª»»¿ÕµÄ¶à±ßÐε½Ô²ÐÎ"
 
-#: parser/analyze.c:1188
-#, c-format
-msgid "%s: column \"%s\" named in key does not exist"
-msgstr "%s: ÔÚ¼ü×ÖÖÐÃüÃûµÄ×ֶΠ\"%s\" ²»´æÔÚ"
+#: utils/adt/misc.c:81
+msgid "must be superuser to signal other server processes"
+msgstr "Ö»Óг¬¼¶Óû§¿ÉÒÔ·¢ËÍÐźŵ½ÆäËû·þÎñÆ÷½ø³Ì"
 
-#: parser/analyze.c:1196
+#: utils/adt/misc.c:90
 #, c-format
-msgid "%s: column \"%s\" appears twice in %s constraint"
-msgstr ""
+msgid "PID %d is not a PostgreSQL server process"
+msgstr "PID %d ²»ÊÇ PostgreSQL ·þÎñÆ÷½ø³Ì"
 
-#: parser/analyze.c:1286
+#: utils/adt/misc.c:98
 #, c-format
-msgid "%s: failed to make implicit index name"
-msgstr ""
+msgid "could not send signal to process %d: %m"
+msgstr "ÎÞ·¨·¢ËÍÐźŵ½½ø³Ì %d: %m"
 
-#: parser/analyze.c:1289
-#, c-format
-msgid "%s / %s%s will create implicit index '%s' for table '%s'"
-msgstr ""
+#: utils/adt/misc.c:156
+msgid "global tablespace never has databases"
+msgstr "È«¾Ö±í¿Õ¼äûÓÐÊý¾Ý¿â"
 
-#: parser/analyze.c:1304
+#: utils/adt/misc.c:174 access/transam/slru.c:930 commands/tablespace.c:529
+#: commands/tablespace.c:694
 #, c-format
-msgid "%s will create implicit trigger(s) for FOREIGN KEY check(s)"
-msgstr ""
+msgid "could not open directory \"%s\": %m"
+msgstr "ÎÞ·¨´ò¿ªÄ¿Â¼ \"%s\": %m"
 
-#: parser/analyze.c:1446 parser/analyze.c:1568
+#: utils/adt/misc.c:177
 #, c-format
-msgid "transformRuleStmt: unexpected event type %d"
-msgstr ""
+msgid "%u is not a tablespace oid"
+msgstr "%u ²»ÊÇÒ»¸ö±í¿Õ¼ä oid"
 
-#: parser/analyze.c:1455
-msgid "Rule WHERE condition may not contain references to other relations"
-msgstr ""
+#: utils/adt/network.c:105
+#, c-format
+msgid "invalid cidr value: \"%s\""
+msgstr "ÎÞЧµÄ cidr Öµ: \"%s\""
 
-#: parser/analyze.c:1459
-msgid "Rule WHERE condition may not contain aggregate functions"
+#: utils/adt/network.c:106 utils/adt/network.c:233
+msgid "Value has bits set to right of mask."
 msgstr ""
 
-#: parser/analyze.c:1528
-msgid ""
-"Rules with WHERE conditions may only have SELECT, INSERT, UPDATE, or DELETE "
-"actions"
-msgstr ""
+#: utils/adt/network.c:153 utils/adt/network.c:528 utils/adt/network.c:554
+#: utils/adt/network.c:590
+#, c-format
+msgid "could not format inet value: %m"
+msgstr "ÎÞ·¨¸ñʽ»¯ inet Öµ: %m"
 
-#: parser/analyze.c:1552
-msgid "ON SELECT rule may not use OLD"
+#: utils/adt/network.c:198
+msgid "invalid address family in external \"inet\" value"
 msgstr ""
 
-#: parser/analyze.c:1554
-msgid "ON SELECT rule may not use NEW"
+#: utils/adt/network.c:203
+msgid "invalid bits in external \"inet\" value"
 msgstr ""
 
-#: parser/analyze.c:1561
-msgid "ON INSERT rule may not use OLD"
-msgstr ""
+#: utils/adt/network.c:209
+msgid "invalid type in external \"inet\" value"
+msgstr "ÎÞЧµÄÍⲿ \"inet\" ÖµÀàÐÍ"
 
-#: parser/analyze.c:1565
-msgid "ON DELETE rule may not use NEW"
-msgstr ""
+#: utils/adt/network.c:214
+msgid "invalid length in external \"inet\" value"
+msgstr "ÎÞЧµÄÍⲿ \"inet\" Öµ³¤¶È"
 
-#: parser/analyze.c:1865
-msgid ""
-"ORDER BY on a UNION/INTERSECT/EXCEPT result must be on one of the result "
-"columns"
-msgstr ""
+#: utils/adt/network.c:232
+msgid "invalid external \"cidr\" value"
+msgstr "ÎÞЧµÄÍⲿ \"cidr\" Öµ"
 
-#: parser/analyze.c:1899
-msgid "INTO is only allowed on first SELECT of UNION/INTERSECT/EXCEPT"
-msgstr ""
+#: utils/adt/network.c:319
+#, c-format
+msgid "invalid mask length: %d"
+msgstr "ÎÞЧÑÚÂ볤¶È: %d"
 
-#: parser/analyze.c:1956
-msgid ""
-"UNION/INTERSECT/EXCEPT member statement may not refer to other relations of "
-"same query level"
+#: utils/adt/selfuncs.c:3369 utils/adt/selfuncs.c:3756
+msgid "case insensitive matching not supported on type bytea"
 msgstr ""
 
-#: parser/analyze.c:2006
-#, c-format
-msgid "Each %s query must have the same number of columns"
-msgstr ""
+#: utils/adt/selfuncs.c:3474 utils/adt/selfuncs.c:3917
+msgid "regular-expression matching not supported on type bytea"
+msgstr "ÔÚ bytea ÀàÐÍÉϲ»Ö§³ÖÕýÔò±í´ïʽƥÅä"
 
-#: parser/analyze.c:2064
+#: utils/adt/ascii.c:68
 #, c-format
-msgid "getSetColTypes: unexpected node %d"
-msgstr ""
+msgid "encoding conversion from %s to ASCII not supported"
+msgstr "±àÂëת»»²»Ö§³Ö´Ó %s µ½ ASCII µÄת»»"
 
-#: parser/analyze.c:2075
-msgid "CREATE TABLE AS specifies too many column names"
-msgstr ""
+#: utils/adt/formatting.c:983
+msgid "\"9\" must be ahead of \"PR\""
+msgstr "\"9\" ±ØÐëÔÚ \"PR\" Ö®Ç°"
 
-#: parser/analyze.c:2158 parser/analyze.c:2167
-msgid "UPDATE target count mismatch --- internal error"
-msgstr "UPDATE Ä¿±êÊý²»Æ¥Åä --- ÄÚ²¿´íÎó"
-
-#: parser/analyze.c:2253
-msgid "Unexpected node type in ALTER TABLE ADD CONSTRAINT"
-msgstr ""
+#: utils/adt/formatting.c:1002
+msgid "\"0\" must be ahead of \"PR\""
+msgstr "\"0\" ±ØÐëÔÚ \"PR\" Ö®Ç°"
 
-#: parser/analyze.c:2302
-msgid "transformDeclareCursorStmt: internal error"
-msgstr "transformDeclareCursorStmt: ÄÚ²¿´íÎó"
+#: utils/adt/formatting.c:1031
+msgid "multiple decimal points"
+msgstr "¶à¸öСÊýµã"
 
-#: parser/analyze.c:2358
-msgid "transformPrepareStmt: internal error"
-msgstr "transformPrepareStmt: ÄÚ²¿´íÎó"
+#: utils/adt/formatting.c:1038 utils/adt/formatting.c:1143
+msgid "cannot use \"V\" and decimal point together"
+msgstr "²»ÄÜ \"V\" ºÍСÊýµãÒ»ÆðʹÓÃ"
 
-#: parser/analyze.c:2385
-#, fuzzy, c-format
-msgid "Wrong number of parameters, expected %d but got %d"
-msgstr "ÐÐÖÐ×Ö¶ÎÊýÄ¿´íÎó (Ô¤ÆÚ %d, Êµ¼Ê %d)"
+#: utils/adt/formatting.c:1053
+msgid "not unique \"S\""
+msgstr "²»ÊÇΨһµÄ \"S\""
 
-#: parser/analyze.c:2398
-msgid "Cannot use subselects in EXECUTE parameters"
-msgstr ""
+#: utils/adt/formatting.c:1060
+msgid "cannot use \"S\" and \"PL\"/\"MI\"/\"SG\"/\"PR\" together"
+msgstr "\"S\" ²»¿ÉÒԺ͠\"PL\"/\"MI\"/\"SG\"/\"PR\" Ò»ÆðʹÓÃ"
 
-#: parser/analyze.c:2400
-msgid "Cannot use aggregates in EXECUTE parameters"
-msgstr ""
+#: utils/adt/formatting.c:1084
+msgid "cannot use \"S\" and \"MI\" together"
+msgstr "\"S\" ²»¿ÉÒԺ͠\"MI\" Ò»ÆðʹÓÃ"
 
-#: parser/analyze.c:2411
-#, c-format
-msgid ""
-"Parameter $%d of type %s cannot be coerced into the expected type %s\n"
-"\tYou will need to rewrite or cast the expression"
-msgstr ""
+#: utils/adt/formatting.c:1097
+msgid "cannot use \"S\" and \"PL\" together"
+msgstr "\"S\" ²»¿ÉÒԺ͠\"PL\" Ò»ÆðʹÓÃ"
 
-#: parser/analyze.c:2434
-msgid "SELECT FOR UPDATE is not allowed with DISTINCT clause"
-msgstr "SELECT FOR UPDATE ²»ÔÊÐí´ø DISTINCT ×Ó¾ä"
+#: utils/adt/formatting.c:1110
+msgid "cannot use \"S\" and \"SG\" together"
+msgstr "\"S\" ²»¿ÉÒԺ͠\"SG\" Ò»ÆðʹÓÃ"
 
-#: parser/analyze.c:2436
-msgid "SELECT FOR UPDATE is not allowed with GROUP BY clause"
-msgstr "SELECT FOR UPDATE ²»ÔÊÐí´ø GROUP BY ×Ó¾ä"
+#: utils/adt/formatting.c:1122
+msgid "cannot use \"PR\" and \"S\"/\"PL\"/\"MI\"/\"SG\" together"
+msgstr "\"PR\" ²»¿ÉÒԺ͠\"S\"/\"PL\"/\"MI\"/\"SG\" Ò»ÆðʹÓÃ"
 
-#: parser/analyze.c:2438
-msgid "SELECT FOR UPDATE is not allowed with AGGREGATE"
-msgstr ""
+#: utils/adt/formatting.c:1152
+msgid "\"E\" is not supported"
+msgstr "²»Ö§³Ö \"E\""
 
-#: parser/analyze.c:2503
+#: utils/adt/formatting.c:1423
 #, c-format
-msgid "FOR UPDATE: relation \"%s\" not found in FROM clause"
-msgstr ""
+msgid "\"%s\" is not a number"
+msgstr "\"%s\" ²»ÊÇÒ»¸öÊý×Ö"
+
+#: utils/adt/formatting.c:1686
+msgid "invalid AM/PM string"
+msgstr "ÎÞЧµÄ AM/PM ×Ö·û´®"
 
-#: parser/analyze.c:2543
+#: utils/adt/formatting.c:2032
+msgid "\"TZ\"/\"tz\" not supported"
+msgstr "²»Ö§³Ö \"TZ\"/\"tz\""
+
+#: utils/adt/formatting.c:2042
 #, c-format
-msgid "relationHasPrimaryKey: index %u not found"
-msgstr "relationHasPrimaryKey: Î´ÕÒµ½Ë÷Òý %u"
+msgid "invalid value for %s"
+msgstr "%s µÄÎÞЧÊýÖµ"
 
-#: parser/analyze.c:2594
-msgid "Misplaced DEFERRABLE clause"
-msgstr "DEFERRABLE ×Ó¾äλÖôíÎó"
+#: utils/adt/formatting.c:3139
+msgid "AM/PM hour must be between 1 and 12"
+msgstr "AM/PM Ð¡Ê±±ØÐèÔÚ 1 µ½ 12 Ö®¼ä"
 
-#: parser/analyze.c:2596 parser/analyze.c:2605
-msgid "Multiple DEFERRABLE/NOT DEFERRABLE clauses not allowed"
-msgstr "²»ÔÊÐí¶à¸ö DEFERRABLE/NOT DEFERRABLE ×Ó¾ä"
+#: utils/adt/formatting.c:3213
+msgid "cannot calculate day of year without year information"
+msgstr "ûÓÐÄê·ÝÐÅÏ¢ÎÞ·¨¼ÆËãÄêµÄÌìÊý"
 
-#: parser/analyze.c:2603
-msgid "Misplaced NOT DEFERRABLE clause"
-msgstr "NOT DEFERRABLE ×Ó¾äλÖôíÎó"
+#: utils/adt/formatting.c:3992
+msgid "\"RN\" not supported"
+msgstr "²»Ö§³Ö \"RN\""
 
-#: parser/analyze.c:2610 parser/analyze.c:2628 gram.y:2152 gram.y:2166
-msgid "INITIALLY DEFERRED constraint must be DEFERRABLE"
-msgstr ""
+#: utils/adt/array_userfuncs.c:50
+msgid "could not determine input data types"
+msgstr "ÎÞ·¨È·¶¨ÊäÈëÊý¾ÝÀàÐÍ"
 
-#: parser/analyze.c:2615
-msgid "Misplaced INITIALLY DEFERRED clause"
-msgstr "INITIALLY DEFERRED ×Ó¾äλÖôíÎó"
+#: utils/adt/array_userfuncs.c:72
+msgid "neither input type is an array"
+msgstr "ûÓÐÊäÈëÀàÐÍÊÇÊý×é"
 
-#: parser/analyze.c:2617 parser/analyze.c:2635
-msgid "Multiple INITIALLY IMMEDIATE/DEFERRED clauses not allowed"
-msgstr "²»ÔÊÐí¶à¸ö INITIALLY IMMEDIATE/DEFERRED ×Ó¾ä"
+#: utils/adt/array_userfuncs.c:99
+msgid "argument must be empty or one-dimensional array"
+msgstr "²ÎÊý±ØÐëΪ¿Õ»òÕßһάÊý×é"
 
-#: parser/analyze.c:2633
-msgid "Misplaced INITIALLY IMMEDIATE clause"
-msgstr "INITIALLY IMMEDIATE ×Ó¾äλÖôíÎó"
+#: utils/adt/array_userfuncs.c:198 utils/adt/array_userfuncs.c:210
+#: utils/adt/array_userfuncs.c:247 utils/adt/array_userfuncs.c:280
+#: utils/adt/array_userfuncs.c:308
+msgid "cannot concatenate incompatible arrays"
+msgstr "ÎÞ·¨Á¬½á²»¼æÈݵÄÊý×é"
 
-#: parser/analyze.c:2742
+#: utils/adt/array_userfuncs.c:199
 #, c-format
-msgid ""
-"New table specifies a schema (%s) different from the one being created (%s)"
+msgid "Arrays of %d and %d dimensions are not compatible for concatenation."
 msgstr ""
 
-#: parser/analyze.c:2761
+#: utils/adt/array_userfuncs.c:211
 #, c-format
 msgid ""
-"New view specifies a schema (%s) different from the one being created (%s)"
+"Arrays with element types %s and %s are not compatible for concatenation."
 msgstr ""
 
-#: parser/analyze.c:2778
-msgid "parser: unsupported schema node (internal error)"
+#: utils/adt/array_userfuncs.c:248
+msgid ""
+"Arrays with differing element dimensions are not compatible for "
+"concatenation."
 msgstr ""
 
-#: parser/parse_agg.c:143
-#, c-format
-msgid "Attribute %s.%s must be GROUPed or used in an aggregate function"
+#: utils/adt/array_userfuncs.c:281 utils/adt/array_userfuncs.c:309
+msgid "Arrays with differing dimensions are not compatible for concatenation."
 msgstr ""
 
-#: parser/parse_agg.c:146
+#: utils/adt/array_userfuncs.c:354
 #, c-format
-msgid "Sub-SELECT uses un-GROUPed attribute %s.%s from outer query"
-msgstr ""
+msgid "invalid array element type OID: %u"
+msgstr "ÎÞЧµÄÊý×éÔªËØÀàÐÍ OID: %u"
 
-#: parser/parse_agg.c:196
-msgid "Aggregates not allowed in WHERE clause"
-msgstr ""
+#: utils/adt/array_userfuncs.c:358 utils/adt/arrayfuncs.c:1130
+#: utils/adt/arrayfuncs.c:2398
+#, c-format
+msgid "invalid number of dimensions: %d"
+msgstr "ÎÞЧµÄ´óСֵ: %d"
 
-#: parser/parse_agg.c:198
-msgid "Aggregates not allowed in JOIN conditions"
+#: 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
+#, c-format
+msgid "number of array dimensions (%d) exceeds the maximum allowed (%d)"
 msgstr ""
 
-#: parser/parse_agg.c:217
-msgid "Aggregates not allowed in GROUP BY clause"
-msgstr ""
+#: utils/adt/arrayfuncs.c:222 utils/adt/arrayfuncs.c:234
+msgid "missing dimension value"
+msgstr "ȱÉÙ´óСֵ"
 
-#: parser/parse_clause.c:194
-msgid "Bogus InhOption value"
-msgstr ""
+#: utils/adt/arrayfuncs.c:244
+msgid "missing \"]\" in array dimensions"
+msgstr "Êý×éÉùÃ÷ȱÉÙ ']'"
 
-#: parser/parse_clause.c:339
-#, c-format
-msgid "JOIN/ON clause refers to \"%s\", which is not part of JOIN"
-msgstr ""
+#: utils/adt/arrayfuncs.c:252
+msgid "upper bound cannot be less than lower bound"
+msgstr "ÉÏÏÞ²»ÄÜСÓÚµ×ÏÞ"
 
-#: parser/parse_clause.c:397
-msgid "sub-select in FROM must have an alias"
-msgstr ""
+#: utils/adt/arrayfuncs.c:264 utils/adt/arrayfuncs.c:290
+msgid "array value must start with \"{\" or dimension information"
+msgstr "Êý×éÖµ±ØÐëÒÔ \"{\" ¿ªÊ¼»òÕßάÊýÐÅÏ¢"
 
-#: parser/parse_clause.c:410 parser/parse_clause.c:413
-msgid "Unexpected parse analysis result for subselect in FROM"
-msgstr ""
+#: utils/adt/arrayfuncs.c:278
+msgid "missing assignment operator"
+msgstr "ȱÉÙÖ¸¶¨µÄ²Ù×÷·û"
 
-#: parser/parse_clause.c:416
-msgid "Expected SELECT query from subselect in FROM"
+#: utils/adt/arrayfuncs.c:295 utils/adt/arrayfuncs.c:301
+msgid "array dimensions incompatible with array literal"
 msgstr ""
 
-#: parser/parse_clause.c:418
-msgid "Subselect in FROM may not have SELECT INTO"
-msgstr ""
+#: utils/adt/arrayfuncs.c:327
+msgid "missing left brace"
+msgstr "ȱÉÙ×ó±ßµÄ´óÀ¨ºÅ"
 
-#: parser/parse_clause.c:436
-msgid "Subselect in FROM may not refer to other relations of same query level"
+#: 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
+#, c-format
+msgid "malformed array literal: \"%s\""
 msgstr ""
 
-#: parser/parse_clause.c:489
+#: utils/adt/arrayfuncs.c:505 executor/execQual.c:2050
 msgid ""
-"FROM function expression may not refer to other relations of same query level"
+"multidimensional arrays must have array expressions with matching dimensions"
 msgstr ""
 
-#: parser/parse_clause.c:499
-msgid "cannot use aggregate function in FROM function expression"
-msgstr ""
+#: utils/adt/arrayfuncs.c:1141
+msgid "invalid array flags"
+msgstr "ÎÞЧµÄÊý×é±ê¼Ç"
 
-#: parser/parse_clause.c:622 parser/parse_clause.c:634
-msgid "transformFromClauseItem: unexpected subtree type"
-msgstr ""
+#: utils/adt/arrayfuncs.c:1149
+msgid "wrong element type"
+msgstr "´íÎóµÄÔªËØÀàÐÍ"
 
-#: parser/parse_clause.c:717
+#: utils/adt/arrayfuncs.c:1192 utils/cache/lsyscache.c:1756
 #, c-format
-msgid "USING column name \"%s\" appears more than once"
-msgstr ""
+msgid "no binary input function available for type %s"
+msgstr "ûÓÐÀàÐÍ %s µÄÓÐЧ¶þ½øÖÆÊäÈ뺯Êý"
 
-#: parser/parse_clause.c:729
+#: utils/adt/arrayfuncs.c:1285
 #, c-format
-msgid "Common column name \"%s\" appears more than once in left table"
-msgstr ""
+msgid "improper binary format in array element %d"
+msgstr "Êý×éÔªËØ %d Îª²»ÕýÈ·µÄ¶þ½øÖƸñʽ"
 
-#: parser/parse_clause.c:735
+#: utils/adt/arrayfuncs.c:1364 utils/cache/lsyscache.c:1792
 #, c-format
-msgid "JOIN/USING column \"%s\" not found in left table"
+msgid "no binary output function available for type %s"
+msgstr "ûÓÐÀàÐÍ %s µÄÓÐЧ¶þ½øÖÆÊä³öº¯Êý"
+
+#: utils/adt/arrayfuncs.c:1638
+msgid "slices of fixed-length arrays not implemented"
 msgstr ""
 
-#: parser/parse_clause.c:747
-#, c-format
-msgid "Common column name \"%s\" appears more than once in right table"
+#: 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
+msgid "invalid array subscripts"
+msgstr "ÎÞЧµÄÊý×éϱê"
+
+#: utils/adt/arrayfuncs.c:1972
+msgid "updates on slices of fixed-length arrays not implemented"
 msgstr ""
 
-#: parser/parse_clause.c:753
+#: utils/adt/arrayfuncs.c:2007 utils/adt/arrayfuncs.c:2076
+msgid "source array too small"
+msgstr "Ô´Êý×é̫С"
+
+#: utils/adt/arrayfuncs.c:2300 utils/adt/arrayfuncs.c:3302
+msgid "null array elements not supported"
+msgstr "²»Ö§³Ö¿ÕÊý×éÔªËØ"
+
+#: utils/adt/arrayfuncs.c:2540 utils/adt/arrayfuncs.c:2695
+msgid "cannot compare arrays of different element types"
+msgstr "ÎÞ·¨±È½Ï²»Í¬ÔªËØÀàÐ͵ÄÊý×é"
+
+#: utils/adt/arrayfuncs.c:2712
 #, c-format
-msgid "JOIN/USING column \"%s\" not found in right table"
-msgstr ""
+msgid "could not identify a comparison function for type %s"
+msgstr "ÎÞ·¨ÎªÀàÐÍ %s È·ÈÏÒ»¸ö±È¶Ôº¯Êý"
 
-#: parser/parse_clause.c:802
-#, fuzzy, c-format
-msgid "Column alias list for \"%s\" has too many entries"
-msgstr "Ñ¡Ôñ¹æÔòµÄÄ¿±êÁбíµÄ¼Ç¼̫¶à"
+#: utils/adt/arrayfuncs.c:3111
+msgid "could not determine target array type"
+msgstr "ÎÞ·¨È·¶¨Ä¿±êÊý×éÀàÐÍ"
+
+#: utils/adt/arrayfuncs.c:3117
+msgid "target type is not an array"
+msgstr "Ä¿±êÀàÐͲ»ÊÇÒ»¸öÊý×é"
+
+#: utils/adt/arrayfuncs.c:3129
+msgid "array coercion to domain type elements not currently supported"
+msgstr ""
 
-#: parser/parse_clause.c:829
+#: utils/adt/varbit.c:109 utils/adt/varbit.c:263
 #, c-format
-msgid ""
-"transformFromClauseItem: unexpected node (internal error)\n"
-"\t%s"
+msgid "bit string length %d does not match type bit(%d)"
 msgstr ""
 
-#: parser/parse_clause.c:933
+#: utils/adt/varbit.c:131 utils/adt/varbit.c:370
 #, c-format
-msgid "buildMergedJoinVar: unexpected jointype %d"
-msgstr "buildMergedJoinVar: Î´ÖªµÄÁ¬½ÓÀàÐÍ %d"
+msgid "\"%c\" is not a valid binary digit"
+msgstr "\"%c\" ²»ÊÇÒ»¸öÓÐЧµÄ¶þ½øÖÆÊý"
 
-#: parser/parse_clause.c:1054
+#: utils/adt/varbit.c:156 utils/adt/varbit.c:395
 #, c-format
-msgid "%s '%s' is ambiguous"
-msgstr "%s '%s' ÊDz»Ã÷È·µÄ"
+msgid "\"%c\" is not a valid hexadecimal digit"
+msgstr "\"%c\" ²»ÊÇÒ»¸öÓÐЧµÄÊ®Áù½øÖÆÊý"
 
-#: parser/parse_clause.c:1073
+#: utils/adt/varbit.c:348 utils/adt/varbit.c:532
 #, c-format
-msgid "Non-integer constant in %s"
+msgid "bit string too long for type bit varying(%d)"
 msgstr ""
 
-#: parser/parse_clause.c:1086
+#: utils/adt/varbit.c:472
+msgid "invalid length in external bit string"
+msgstr "ÎÞЧµÄÍⲿλ´®³¤¶È"
+
+#: utils/adt/varbit.c:905
+msgid "cannot AND bit strings of different sizes"
+msgstr "ÎÞ·¨Îª²»Í¬´óСµÄ×Ö·û´®½øÐÐÓë (AND) Î»ÔËËã"
+
+#: utils/adt/varbit.c:946
+msgid "cannot OR bit strings of different sizes"
+msgstr "ÎÞ·¨Îª²»Í¬´óСµÄ×Ö·û´®½øÐлò (OR) Î»ÔËËã"
+
+#: utils/adt/varbit.c:992
+msgid "cannot XOR bit strings of different sizes"
+msgstr "ÎÞ·¨Îª²»Í¬´óСµÄ×Ö·û´®½øÐÐÒì»ò (XOR) Î»ÔËËã"
+
+#: utils/adt/rowtypes.c:78 utils/adt/rowtypes.c:442
+msgid "input of anonymous composite types is not implemented"
+msgstr "ÄäÃû¸´ºÏÀàÐÍÊäÈëÈÔδʵÏÖ"
+
+#: utils/adt/rowtypes.c:125 utils/adt/rowtypes.c:152 utils/adt/rowtypes.c:176
+#: utils/adt/rowtypes.c:184 utils/adt/rowtypes.c:234 utils/adt/rowtypes.c:242
 #, c-format
-msgid "%s position %d is not in target list"
+msgid "malformed record literal: \"%s\""
 msgstr ""
 
-#: parser/parse_clause.c:1227
-msgid "For SELECT DISTINCT, ORDER BY expressions must appear in target list"
-msgstr ""
+#: utils/adt/rowtypes.c:126
+msgid "Missing left parenthesis."
+msgstr "ȱÉÙÒ»¸ö×óÀ¨»¡"
 
-#: parser/parse_clause.c:1265
-msgid "SELECT DISTINCT ON expressions must match initial ORDER BY expressions"
-msgstr ""
+#: utils/adt/rowtypes.c:153
+msgid "Too few columns."
+msgstr "×Ö¶ÎÌ«ÉÙ."
 
-#: parser/parse_clause.c:1289
-msgid ""
-"transformDistinctClause: failed to add DISTINCT ON clause to target list"
+#: utils/adt/rowtypes.c:178 utils/adt/rowtypes.c:186
+msgid "Unexpected end of input."
+msgstr "ÒâÍâµÄÊäÈëĩβ"
+
+#: utils/adt/rowtypes.c:235
+msgid "Too many columns."
+msgstr "Ì«¶à×Ö¶Î."
+
+#: utils/adt/rowtypes.c:243
+msgid "Junk after right parenthesis."
 msgstr ""
 
-#: parser/parse_coerce.c:278
+#: utils/adt/rowtypes.c:491
 #, c-format
-msgid "coerce_type: no conversion function from %s to %s"
-msgstr "coerce_type: Ã»ÓаѠ%s ×ª»»³É %s µÄת»»º¯Êý"
+msgid "wrong number of columns: %d, expected %d"
+msgstr "´íÎóµÄ×ֶθöÊý: %d, ÆÚÍûΪ %d"
 
-#. translator: first %s is name of a SQL construct, eg WHERE
-#: parser/parse_coerce.c:535
+#: utils/adt/rowtypes.c:515
 #, c-format
-msgid "Argument of %s must be type boolean, not type %s"
-msgstr "%s µÄ²ÎÊý±ØÐèÊDz¼¶ûÀàÐÍ, ¶ø²»ÊÇ %s ÀàÐÍ"
+msgid "wrong data type: %u, expected %u"
+msgstr "´íÎóµÄÊý¾ÝÀàÐÍ: %u, ÆÚÍûΪ %u"
 
-#. translator: %s is name of a SQL construct, eg WHERE
-#: parser/parse_coerce.c:543
+#: utils/adt/rowtypes.c:574
 #, c-format
-msgid "Argument of %s must not be a set function"
-msgstr ""
+msgid "improper binary format in record column %d"
+msgstr "ÔڼǼ×ֶΠ%d Îª²»ÕýÈ·µÄ¶þ½øÖƸñʽ"
 
-#: parser/parse_coerce.c:590
-#, c-format
-msgid "%s types '%s' and '%s' not matched"
+#: 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 ""
 
-#: parser/parse_coerce.c:642
+#: utils/adt/regexp.c:178
 #, c-format
-msgid "%s unable to convert to type %s"
-msgstr "%s ²»ÄÜת»»³É %s ÀàÐÍ"
+msgid "invalid regular expression: %s"
+msgstr "ÎÞЧµÄÕýÔò±í´ïʽ: %s"
 
-#: parser/parse_coerce.c:924
+#: utils/adt/regproc.c:122 utils/adt/regproc.c:142
 #, c-format
-msgid "find_coercion_pathway: bogus castcontext %c"
-msgstr ""
+msgid "more than one function named \"%s\""
+msgstr "¶à¸öº¯ÊýÃûΪ \"%s\""
 
-#: parser/parse_expr.c:101
+#: utils/adt/regproc.c:467 utils/adt/regproc.c:487 utils/adt/regproc.c:665
+#: parser/parse_oper.c:84 parser/parse_oper.c:785
 #, c-format
-msgid "Expression too complex: nesting depth exceeds max_expr_depth = %d"
-msgstr ""
+msgid "operator does not exist: %s"
+msgstr "²Ù×÷·û²»´æÔÚ: %s"
 
-#: parser/parse_expr.c:120
+#: utils/adt/regproc.c:471 utils/adt/regproc.c:491
 #, c-format
-msgid "Parameter '$%d' is out of range"
-msgstr "²ÎÊý '$%d' ³¬³ö·¶Î§"
+msgid "more than one operator named %s"
+msgstr "¶à¸ö²Ù×÷·ûÃûΪ %s"
 
-#: parser/parse_expr.c:273
-msgid "IS DISTINCT FROM requires = operator to yield boolean"
-msgstr ""
+#: utils/adt/regproc.c:639 gram.y:3502
+msgid "missing argument"
+msgstr "ȱÉÙ²ÎÊý"
 
-#: parser/parse_expr.c:291
-msgid "NULLIF requires = operator to yield boolean"
-msgstr ""
+#: utils/adt/regproc.c:640 gram.y:3503
+msgid "Use NONE to denote the missing argument of a unary operator."
+msgstr "ʹÓàNONE ±íʾһԪ²Ù×÷·ûȱÉٵIJÎÊý."
 
-#: parser/parse_expr.c:380 parser/parse_expr.c:384
-msgid "Bad query in subselect"
-msgstr ""
+#: utils/adt/regproc.c:644 utils/adt/regproc.c:1276
+msgid "too many arguments"
+msgstr "Ì«¶à²ÎÊý"
 
-#: parser/parse_expr.c:408
-msgid "Subselect must have a field"
-msgstr ""
+#: utils/adt/regproc.c:645
+msgid "Provide two argument types for operator."
+msgstr "Ϊ²Ù×÷·ûÌṩÁ½¸ö²ÎÊýÀàÐÍ."
 
-#: parser/parse_expr.c:412
-msgid "Subselect must have only one field"
-msgstr ""
+#: utils/adt/regproc.c:837 catalog/namespace.c:200
+#, c-format
+msgid "relation \"%s\" does not exist"
+msgstr "¹Øϵ \"%s\" ²»´æÔÚ"
 
-#: parser/parse_expr.c:464
+#: utils/adt/regproc.c:1174
+msgid "expected a left parenthesis"
+msgstr "ÐèÒªÒ»¸ö×óÀ¨»¡"
+
+#: utils/adt/regproc.c:1190
+msgid "expected a right parenthesis"
+msgstr "ÐèÒªÒ»¸öÓÒÀ¨»¡"
+
+#: utils/adt/regproc.c:1209
+msgid "expected a type name"
+msgstr "ÐèÒªÒ»¸öÀàÐÍÃû×Ö"
+
+#: utils/adt/regproc.c:1241
+msgid "improper type name"
+msgstr "²»ÕýÈ·µÄÀàÐÍÃû×Ö"
+
+#: utils/fmgr/dfmgr.c:107 utils/fmgr/dfmgr.c:209 utils/fmgr/dfmgr.c:263
 #, c-format
-msgid "Row comparison cannot use operator %s"
-msgstr ""
+msgid "could not access file \"%s\": %m"
+msgstr "ÎÞ·¨·ÃÎÊÎļþ \"%s\": %m"
 
-#: parser/parse_expr.c:489
-msgid "Subselect has too many fields"
-msgstr ""
+#: utils/fmgr/dfmgr.c:145
+#, c-format
+msgid "could not load library \"%s\": %s"
+msgstr "ÎÞ·¨¼ÓÔØ¿â \"%s\": %s"
 
-#: parser/parse_expr.c:505
+#: utils/fmgr/dfmgr.c:175
 #, c-format
-msgid ""
-"%s has result type of %s, but must return %s to be used with quantified "
-"predicate subquery"
-msgstr ""
+msgid "could not find function \"%s\" in file \"%s\""
+msgstr "ÔÚÎļþ \"%2$s\" ÖÐÎÞ·¨ÕÒµ½º¯Êý \"%1$s\""
 
-#: parser/parse_expr.c:511
+#: utils/fmgr/dfmgr.c:354
 #, c-format
-msgid "%s must not return a set to be used with quantified predicate subquery"
+msgid "invalid macro name in dynamic library path: %s"
+msgstr "¶¯Ì¬¿â·¾¶ÖÐÎÞЧµÄºêÃû×Ö: %s"
+
+#: utils/fmgr/dfmgr.c:398
+msgid "zero-length component in parameter \"dynamic_library_path\""
 msgstr ""
 
-#: parser/parse_expr.c:521
-msgid "Subselect has too few fields"
+#: utils/fmgr/dfmgr.c:418
+msgid "component in parameter \"dynamic_library_path\" is not an absolute path"
 msgstr ""
 
-#: parser/parse_expr.c:709
+#: utils/fmgr/fmgr.c:247
 #, c-format
-msgid "transformExpr: unexpected booltesttype %d"
-msgstr ""
+msgid "internal function \"%s\" is not in internal lookup table"
+msgstr "ÄÚ²¿º¯Êý \"%s\" ²»ÔÚÄÚ²¿²éÕÒ±íÖÐ"
 
-#: parser/parse_expr.c:751
+#: utils/fmgr/fmgr.c:449
 #, c-format
-msgid "transformExpr: does not know how to transform node %d (internal error)"
+msgid "unrecognized API version %d reported by info function \"%s\""
 msgstr ""
 
-#: parser/parse_expr.c:856
+#: utils/fmgr/fmgr.c:764 utils/fmgr/fmgr.c:1628
 #, c-format
-msgid "Attribute \"%s\" not found"
-msgstr "δÕÒµ½ÊôÐÔ \"%s\""
+msgid "function %u has too many arguments (%d, maximum is %d)"
+msgstr "º¯Êý %u ²ÎÊýÌ«¶à (%d, ×î´ó¸öÊýΪ %d)"
 
-#: parser/parse_expr.c:968 parser/parse_target.c:153
-msgid "Invalid qualified name syntax (too many names)"
-msgstr ""
+#: 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
+#, c-format
+msgid "user \"%s\" does not exist"
+msgstr "Óû§ \"%s\" ²»´æÔÚ"
 
-#: parser/parse_expr.c:1028
-msgid "exprType: Cannot get type for untransformed sublink"
-msgstr ""
+#: utils/init/miscinit.c:377
+msgid "permission denied to set session authorization"
+msgstr "ÉèÖûỰÈÏ֤ȨÏÞ²»ÔÊÐí"
 
-#: parser/parse_expr.c:1103
+#: utils/init/miscinit.c:403
 #, c-format
-msgid "Relation reference \"%s\" cannot be used in an expression"
-msgstr ""
+msgid "invalid user ID: %d"
+msgstr "·Ç·¨Óû§ ID: %d"
 
-#: parser/parse_expr.c:1108
-#, fuzzy, c-format
-msgid "exprType: Do not know how to get type for %d node"
-msgstr "outNode: ²»ÖªµÀÈçºÎ´òÓ¡ÀàÐÍ %d"
+#: utils/init/miscinit.c:493
+#, c-format
+msgid "could not create lock file \"%s\": %m"
+msgstr "ÎÞ·¨´´½¨ËøÎļþ \"%s\": %m"
 
-#: parser/parse_expr.c:1308
+#: utils/init/miscinit.c:507
 #, c-format
-msgid "Cannot cast type %s to %s"
-msgstr "ÎÞ·¨°ÑÀàÐÍ %s ×ª»»Îª %s"
+msgid "could not open lock file \"%s\": %m"
+msgstr "ÎÞ·¨´ò¿ªËøÎļþ \"%s\": %m"
 
-#: parser/parse_func.c:97
+#: utils/init/miscinit.c:513
 #, c-format
-msgid "Cannot pass more than %d arguments to a function"
-msgstr ""
+msgid "could not read lock file \"%s\": %m"
+msgstr "ÎÞ·¨¶ÁÈ¡ËøÎļþ \"%s\": %m"
 
-#: parser/parse_func.c:104
+#: utils/init/miscinit.c:544
 #, c-format
-msgid "Function '%s' does not allow NULL input"
-msgstr ""
+msgid "lock file \"%s\" already exists"
+msgstr "ËøÎļþ \"%s\" ÒѾ­´æÔÚ"
 
-#: parser/parse_func.c:192
+#: utils/init/miscinit.c:547
 #, c-format
-msgid "Cannot find type OID for relation %u"
-msgstr ""
+msgid "Is another %s (PID %d) running in data directory \"%s\"?"
+msgstr "ÊÇ·ñÆäËü %s (PID %d) ÔËÐÐÔÚÊý¾ÝĿ¼ \"%s\"?"
 
-#: parser/parse_func.c:232
+#: utils/init/miscinit.c:550
 #, c-format
-msgid "Cannot pass result of sub-select or join %s to a function"
-msgstr ""
+msgid "Is another %s (PID %d) using socket file \"%s\"?"
+msgstr "ÊÇ·ñÆäËü %s (PID %d) Ê¹ÓÃÌ×½Ó×ÖÎļþ \"%s\"?"
 
-#: parser/parse_func.c:270
+#: utils/init/miscinit.c:579
 #, c-format
-msgid "%s(*) specified, but %s is not an aggregate function"
-msgstr ""
+msgid "pre-existing shared memory block (key %lu, ID %lu) is still in use"
+msgstr "ÏÈÇ°´æÔڵĹ²ÏíÄÚ´æ¿é (key %lu, ID %lu) ÈÔÔÚʹÓÃÖÐ"
 
-#: parser/parse_func.c:273
+#: utils/init/miscinit.c:582
 #, c-format
-msgid "DISTINCT specified, but %s is not an aggregate function"
+msgid ""
+"If you're sure there are no old server processes still running, remove the "
+"shared memory block with the command \"ipcrm\", or just delete the file \"%s"
+"\"."
 msgstr ""
+"Èç¹ûÄãÈ·ÈÏûÓоɵķþÎñÆ÷½ø³ÌÔÚÔËÐÐ, ÓÃÃüÁî \"ipcrm\" É¾³ý¹²ÏíÄÚ´æ¿é,»òÕßֻɾ"
+"³ýÎļþ \"%s\"."
 
-#: parser/parse_func.c:296
+#: utils/init/miscinit.c:599
 #, c-format
-msgid "Attribute notation .%s applied to type %s, which is not a complex type"
-msgstr ""
+msgid "could not remove old lock file \"%s\": %m"
+msgstr "ÎÞ·¨É¾³ý¾ÉµÄËøÎļþ \"%s\": %m"
 
-#: parser/parse_func.c:299
+#: utils/init/miscinit.c:601
+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
 #, c-format
-msgid "Attribute \"%s\" not found in datatype %s"
-msgstr ""
+msgid "could not write lock file \"%s\": %m"
+msgstr "ÎÞ·¨Ð´ÈëËøÎļþ \"%s\": %m"
 
-#: parser/parse_func.c:342
-msgid "Aggregates may not return sets"
-msgstr ""
+#: utils/init/miscinit.c:743 utils/misc/guc.c:4891
+#, c-format
+msgid "could not read from file \"%s\": %m"
+msgstr "ÎÞ·¨¶ÁÈ¡Îļþ \"%s\": %m"
 
-#: parser/parse_func.c:1257
+#: 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
 #, c-format
-msgid "No such attribute %s.%s.%s"
-msgstr ""
+msgid "could not write to file \"%s\": %m"
+msgstr "ÎÞ·¨Ð´ÈëÎļþ \"%s\": %m"
+
+#: utils/init/miscinit.c:834 utils/init/miscinit.c:847
+#, c-format
+msgid "\"%s\" is not a valid data directory"
+msgstr "\"%s\" ²»ÊÇÒ»¸öÓÐЧµÄÊý¾ÝĿ¼"
 
-#: parser/parse_func.c:1260
+#: utils/init/miscinit.c:836
 #, c-format
-msgid "No such attribute %s.%s"
-msgstr "ûÓР%s.%s ÊôÐÔ"
+msgid "File \"%s\" is missing."
+msgstr "Îļþ \"%s\" ¶ªÊ§."
 
-#: parser/parse_func.c:1287
+#: utils/init/miscinit.c:849
 #, c-format
-msgid "Function %s(%s) does not exist%s%s"
-msgstr "º¯Êý %s(%s) ²»´æÔÚ%s%s"
+msgid "File \"%s\" does not contain valid data."
+msgstr "Îļþ \"%s\" Ã»Óаüº¬ÓÐЧÊý¾Ý."
 
-#: parser/parse_func.c:1293
+#: utils/init/miscinit.c:851
+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
+msgid "database files are incompatible with server"
+msgstr "Êý¾Ý¿âÎļþºÍ·þÎñÆ÷²»¼æÈÝ"
+
+#: utils/init/miscinit.c:859
 #, c-format
-msgid "%s: function %s(%s) does not exist%s%s"
-msgstr "%s: º¯Êý %s(%s) ²»´æÔÚ%s%s"
+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
+msgid "invalid list syntax for parameter \"preload_libraries\""
+msgstr ""
 
-#: parser/parse_func.c:1319
+#: utils/init/miscinit.c:947
 #, c-format
-msgid "%s: aggregate %s(*) does not exist"
-msgstr "%s: ¾Û¼¯º¯Êý %s(*) ²»´æÔÚ"
+msgid "preloaded library \"%s\" with initialization function \"%s\""
+msgstr "ԤװÈë´ø³õʼ»¯º¯Êý \"%s\" ¿â \"%s\""
 
-#: parser/parse_func.c:1322
+#: utils/init/miscinit.c:951
 #, c-format
-msgid "%s: aggregate %s(%s) does not exist"
-msgstr "%s: ¾Û¼¯º¯Êý %s(%s) ²»´æÔÚ"
+msgid "preloaded library \"%s\""
+msgstr "ԤװÈë¿â \"%s\""
 
-#: parser/parse_func.c:1338
+#: utils/init/postinit.c:119
 #, c-format
-msgid "%s: function %s(*) is not an aggregate"
-msgstr "%s: º¯Êý %s(*) ²»ÊÇÒ»¸ö¾Û¼¯º¯Êý"
+msgid "database \"%s\", OID %u, has disappeared from pg_database"
+msgstr "Êý¾Ý¿â \"%s\", OID %u, ´Ó pg_database ÏûʧÁË"
 
-#: parser/parse_func.c:1341
+#: utils/init/postinit.c:130
 #, c-format
-msgid "%s: function %s(%s) is not an aggregate"
-msgstr "%s: º¯Êý %s(%s) ²»ÊÇÒ»¸ö¾Û¼¯º¯Êý"
+msgid "database \"%s\" is not currently accepting connections"
+msgstr "Êý¾Ý¿â \"%s\" µ±Ç°²»½ÓÊÜÁª½Ó"
 
-#: parser/parse_node.c:211
+#: utils/init/postinit.c:278
 #, c-format
-msgid "transformArraySubscripts: Cache lookup failed for array type %u"
-msgstr ""
+msgid "The database subdirectory \"%s\" is missing."
+msgstr "Êý¾Ý¿â×ÓĿ¼ \"%s\" ¶ªÊ§."
 
-#: parser/parse_node.c:217
+#: utils/init/postinit.c:283
 #, c-format
-msgid "transformArraySubscripts: type %s is not an array"
-msgstr ""
+msgid "could not access directory \"%s\": %m"
+msgstr "ÎÞ·¨·ÃÎÊĿ¼ \"%s\": %m"
 
-#: parser/parse_node.c:225
+#: utils/init/postinit.c:292
 #, c-format
-msgid "transformArraySubscripts: Cache lookup failed for array element type %u"
-msgstr ""
+msgid "could not change directory to \"%s\": %m"
+msgstr "ÎÞ·¨Ìøתµ½Ä¿Â¼ \"%s\" ÖÐ: %m"
 
-#: parser/parse_node.c:282 parser/parse_node.c:302
-msgid "array index expressions must be integers"
-msgstr ""
+#: utils/init/postinit.c:375
+msgid "no users are defined in this database system"
+msgstr "µ±Ç°Êý¾Ý¿âϵͳÖÐûÓж¨ÒåÓû§"
 
-#: parser/parse_node.c:321
+#: utils/init/postinit.c:376
 #, c-format
 msgid ""
-"Array assignment requires type %s but expression is of type %s\n"
-"\tYou will need to rewrite or cast the expression"
-msgstr ""
+"You should immediately run CREATE USER \"%s\" WITH SYSID %d CREATEUSER;."
+msgstr "ÄãÓ¦¸ÃÁ¢¼´ÔËÐРCREATE USER \"%s\" WITH SYSID %d CREATEUSER;."
 
-#: parser/parse_node.c:431
+#: utils/init/postinit.c:412
+msgid "connection limit exceeded for non-superusers"
+msgstr "³¬¹ýÁ˷dz¬¼¶Óû§µÄÁª½ÓÏÞÖÆ"
+
+#: guc-file.l:162
 #, c-format
-msgid "make_const: unknown type %d"
-msgstr "make_const: Î´ÖªÀàÐÍ %d"
+msgid "could not access configuration file \"%s\": %m"
+msgstr "ÎÞ·¨´¦ÀíÅäÖÃÎļþ \"%s\": %m"
 
-#: parser/parse_oper.c:116
+#: guc-file.l:306
 #, c-format
-msgid "%s: Prefix operator '%s' for type '%s' does not exist"
-msgstr ""
+msgid "syntax error in file \"%s\" line %u, near end of line"
+msgstr "ÔÚÎļþ \"%s\" µÚ %u ÐÐ, ÐÐβ¸½½üÓï·¨´íÎó"
 
-#: parser/parse_oper.c:120
+#: guc-file.l:311
 #, c-format
-msgid "%s: Postfix operator '%s' for type '%s' does not exist"
+msgid "syntax error in file \"%s\" line %u, near token \"%s\""
+msgstr "ÔÚÎļþ \"%s\" µÚ %u ÐÐ, ¼ÇºÅ \"%s\" ¸½½üÓï·¨´íÎó"
+
+#: utils/misc/guc.c:233
+msgid "Ungrouped"
+msgstr "È¡Ïû×é"
+
+#: utils/misc/guc.c:235
+msgid "Connections and Authentication"
+msgstr "Áª½ÓºÍÈÏÖ¤"
+
+#: utils/misc/guc.c:237
+msgid "Connections and Authentication / Connection Settings"
+msgstr "Áª½ÓºÍÈÏÖ¤ / Áª½ÓÉèÖÃ"
+
+#: utils/misc/guc.c:239
+msgid "Connections and Authentication / Security and Authentication"
+msgstr "Áª½ÓºÍÈÏÖ¤ / °²È«ºÍÈÏÖ¤"
+
+#: utils/misc/guc.c:241
+msgid "Resource Usage"
+msgstr "×ÊԴʹÓÃ"
+
+#: utils/misc/guc.c:243
+msgid "Resource Usage / Memory"
+msgstr "×ÊԴʹÓà/ ÄÚ´æ"
+
+#: utils/misc/guc.c:245
+msgid "Resource Usage / Free Space Map"
+msgstr "×ÊԴʹÓà/ ¿ÕÏпռä"
+
+#: utils/misc/guc.c:247
+msgid "Resource Usage / Kernel Resources"
+msgstr "×ÊԴʹÓà/ ÄÚºË×ÊÔ´"
+
+#: utils/misc/guc.c:249
+msgid "Write-Ahead Log"
+msgstr "Write-Ahead ÈÕÖ¾"
+
+#: utils/misc/guc.c:251
+msgid "Write-Ahead Log / Settings"
+msgstr "Write-Ahead ÈÕÖ¾ / ÉèÖÃ"
+
+#: utils/misc/guc.c:253
+msgid "Write-Ahead Log / Checkpoints"
+msgstr "Write-Ahead ÈÕÖ¾ / Checkpoints"
+
+#: utils/misc/guc.c:255
+msgid "Query Tuning"
+msgstr "²éѯµ÷Õû"
+
+#: utils/misc/guc.c:257
+msgid "Query Tuning / Planner Method Configuration"
+msgstr "²éѯµ÷Õû / ¹æ»®Æ÷·½·¨ÅäÖÃ"
+
+#: utils/misc/guc.c:259
+msgid "Query Tuning / Planner Cost Constants"
+msgstr "²éѯµ÷Õû / Planner Cost Constants"
+
+#: utils/misc/guc.c:261
+msgid "Query Tuning / Genetic Query Optimizer"
+msgstr "²éѯµ÷Õû / »ùÒò²éѯÓÅ»¯"
+
+#: utils/misc/guc.c:263
+msgid "Query Tuning / Other Planner Options"
+msgstr "²éѯµ÷Õû / ÆäËü¹æ»®Æ÷Ñ¡Ïî"
+
+#: utils/misc/guc.c:265
+msgid "Reporting and Logging"
+msgstr "±¨¸æºÍÈÕÖ¾"
+
+#: utils/misc/guc.c:267
+msgid "Reporting and Logging / Where to Log"
+msgstr "±¨¸æºÍÈÕÖ¾ / ÈÕ־λÖÃ"
+
+#: utils/misc/guc.c:269
+msgid "Reporting and Logging / When to Log"
+msgstr "±¨¸æºÍÈÕÖ¾ / ÈÕ־ʱ¼ä"
+
+#: utils/misc/guc.c:271
+msgid "Reporting and Logging / What to Log"
+msgstr "±¨¸æºÍÈÕÖ¾ / ÈÕÖ¾ÄÚÈÝ"
+
+#: utils/misc/guc.c:273
+msgid "Statistics"
+msgstr "ͳ¼ÆÐÅÏ¢"
+
+#: utils/misc/guc.c:275
+msgid "Statistics / Monitoring"
+msgstr "ͳ¼ÆÐÅÏ¢ / ¼à¿Ø"
+
+#: utils/misc/guc.c:277
+msgid "Statistics / Query and Index Statistics Collector"
+msgstr "ͳ¼ÆÐÅÏ¢ / ²éѯºÍË÷Òýͳ¼ÆÊÕ¼¯Æ÷"
+
+#: utils/misc/guc.c:279
+msgid "Client Connection Defaults"
+msgstr "¿Í»§¶ËÁª½ÓĬÈÏ"
+
+#: utils/misc/guc.c:281
+msgid "Client Connection Defaults / Statement Behavior"
+msgstr "¿Í»§¶ËÁª½ÓĬÈÏ / Óï¾ä¶¯×÷"
+
+#: utils/misc/guc.c:283
+msgid "Client Connection Defaults / Locale and Formatting"
+msgstr "¿Í»§¶ËÁª½ÓĬÈÏ / ±¾µØ»¯ºÍ¸ñʽ»¯"
+
+#: utils/misc/guc.c:285
+msgid "Client Connection Defaults / Other Defaults"
+msgstr "¿Í»§¶ËÁª½ÓĬÈÏ / ÆäËüĬÈÏ"
+
+#: utils/misc/guc.c:287
+msgid "Lock Management"
+msgstr "Ëø¹ÜÀí"
+
+#: utils/misc/guc.c:289
+msgid "Version and Platform Compatibility"
+msgstr "°æ±¾ºÍƽ̨¼æÈÝÐÔ"
+
+#: utils/misc/guc.c:291
+msgid "Version and Platform Compatibility / Previous PostgreSQL Versions"
+msgstr "°æ±¾ºÍƽ̨¼æÈÝÐÔ / ÉÏÒ»¸ö PostgreSQL °æ±¾"
+
+#: utils/misc/guc.c:293
+msgid "Version and Platform Compatibility / Other Platforms and Clients"
+msgstr "°æ±¾ºÍƽ̨¼æÈÝÐÔ / ÆäËüƽ̨ºÍ¿Í»§¶Ë"
+
+#: utils/misc/guc.c:295
+msgid "Developer Options"
+msgstr "¿ª·¢ÈËԱѡÏî"
+
+#: utils/misc/guc.c:297
+msgid "Compiled-in Options"
+msgstr "ÒѱàÒë½øµÄÑ¡Ïî"
+
+#: utils/misc/guc.c:352
+msgid "Enables the planner's use of sequential-scan plans."
 msgstr ""
 
-#: parser/parse_oper.c:124
-#, c-format
-msgid "%s: Operator '%s' for types '%s' and '%s' does not exist"
+#: utils/misc/guc.c:360
+msgid "Enables the planner's use of index-scan plans."
 msgstr ""
 
-#: parser/parse_oper.c:166
-#, c-format
-msgid "Unable to identify an equality operator for type %s"
+#: utils/misc/guc.c:368
+msgid "Enables the planner's use of TID scan plans."
 msgstr ""
 
-#: parser/parse_oper.c:204
-#, c-format
-msgid ""
-"Unable to identify an ordering operator for type %s\n"
-"\tUse an explicit ordering operator or modify the query"
+#: utils/misc/guc.c:376
+msgid "Enables the planner's use of explicit sort steps."
 msgstr ""
 
-#: parser/parse_oper.c:966
-#, c-format
-msgid ""
-"Left hand side of operator '%s' has an unknown type\n"
-"\tProbably a bad attribute name"
+#: utils/misc/guc.c:384
+msgid "Enables the planner's use of hashed aggregation plans."
 msgstr ""
 
-#: parser/parse_oper.c:971
-#, c-format
-msgid ""
-"Right hand side of operator %s has an unknown type\n"
-"\tProbably a bad attribute name"
+#: utils/misc/guc.c:392
+msgid "Enables the planner's use of nested-loop join plans."
 msgstr ""
 
-#: parser/parse_oper.c:975
-#, c-format
-msgid ""
-"Unable to identify an operator '%s' for types '%s' and '%s'\n"
-"\tYou will have to retype this query using an explicit cast"
+#: utils/misc/guc.c:400
+msgid "Enables the planner's use of merge join plans."
 msgstr ""
 
-#: parser/parse_oper.c:991
-#, c-format
-msgid ""
-"operand of prefix operator '%s' has an unknown type\n"
-"\t(probably an invalid column reference)"
+#: utils/misc/guc.c:408
+msgid "Enables the planner's use of hash join plans."
 msgstr ""
 
-#: parser/parse_oper.c:995
-#, c-format
-msgid ""
-"operand of postfix operator '%s' has an unknown type\n"
-"\t(probably an invalid column reference)"
+#: utils/misc/guc.c:416
+msgid "Enables genetic query optimization."
+msgstr "ÆôÓûùÒò²éѯÓÅ»¯."
+
+#: utils/misc/guc.c:417
+msgid "This algorithm attempts to do planning without exhaustive searching."
 msgstr ""
 
-#: parser/parse_oper.c:1002
-#, c-format
+#: utils/misc/guc.c:426
+msgid "Shows whether the current user is a superuser."
+msgstr "ÏÔʾµ±Ç°Óû§ÊÇ·ñÊdz¬¼¶Óû§."
+
+#: utils/misc/guc.c:435
+msgid "Enables SSL connections."
+msgstr "ÆôÓàSSL Áª½Ó."
+
+#: utils/misc/guc.c:443
+msgid "Forces synchronization of updates to disk."
+msgstr "Ç¿ÖƺʹÅÅÌͬ²½¸üÐÂ"
+
+#: utils/misc/guc.c:444
 msgid ""
-"Unable to identify a prefix operator '%s' for type '%s'\n"
-"\tYou may need to add parentheses or an explicit cast"
+"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 "
+"cluster will recover to a consistent state after an operating system or "
+"hardware crash."
 msgstr ""
 
-#: parser/parse_oper.c:1006
-#, c-format
+#: utils/misc/guc.c:454
+msgid "Continues processing past damaged page headers."
+msgstr ""
+
+#: utils/misc/guc.c:455
 msgid ""
-"Unable to identify a postfix operator '%s' for type '%s'\n"
-"\tYou may need to add parentheses or an explicit cast"
+"Detection of a damaged page header normally causes PostgreSQL to report an "
+"error, aborting the current transaction. Setting zero_damaged_pages to true "
+"causes the system to instead report a warning, zero out the damaged page, "
+"and continue processing. This behavior will destroy data, namely all the "
+"rows on the damaged page."
 msgstr ""
 
-#: parser/parse_relation.c:169 parser/parse_relation.c:181
-#, c-format
-msgid "Table reference \"%s\" is ambiguous"
+#: utils/misc/guc.c:467
+msgid "Runs the server silently."
+msgstr "ÒÔ°²¾²Ä£Ê½ (silently) ÔËÐзþÎñÆ÷."
+
+#: utils/misc/guc.c:468
+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
+msgid "Logs each successful connection."
+msgstr "¼Ç¼ÿһ¸ö³É¹¦µÄÁª½Ó."
+
+#: utils/misc/guc.c:484
+msgid "Logs end of a session, including duration"
 msgstr ""
 
-#: parser/parse_relation.c:185
-#, c-format
-msgid "scanNameSpaceForRefname: unexpected node type %d"
+#: utils/misc/guc.c:494
+msgid "Turns on various assertion checks."
+msgstr "´ò¿ª¸÷ÖÖÅжϼì²é."
+
+#: utils/misc/guc.c:495
+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
+msgid "no description available"
+msgstr "ûÓÐÓÐÓõÄÃèÊö"
+
+#: utils/misc/guc.c:515
+msgid "Logs the duration each completed SQL statement."
+msgstr "¼Ç¼ÿһÌõÍê³ÉÁ˵ĠSQL Óï¾ä¹ý³Ì."
+
+#: utils/misc/guc.c:523
+msgid "Prints the parse tree to the server log."
+msgstr "´òÓ¡·ÖÎöÊ÷µ½·þÎñÆ÷ÈÕÖ¾."
+
+#: utils/misc/guc.c:531
+msgid "Prints the parse tree after rewriting to server log."
+msgstr "ÖØд·þÎñÆ÷ÈÕÖ¾ºó´òÓ¡·ÖÎöÊ÷."
+
+#: utils/misc/guc.c:539
+msgid "Prints the execution plan to server log."
+msgstr "´òÓ¡Ö´Ðй滮µ½·þÎñÆ÷ÈÕÖ¾."
+
+#: utils/misc/guc.c:547
+msgid "Indents parse and plan tree displays."
 msgstr ""
 
-#: parser/parse_relation.c:239 parser/parse_relation.c:251
-#, c-format
-msgid "Table reference %u is ambiguous"
+#: utils/misc/guc.c:555
+msgid "Writes parser performance statistics to the server log."
+msgstr "°Ñ·ÖÎöÆ÷ÐÔÄÜͳ¼ÆÐÅϢдÈëµ½·þÎñÆ÷ÈÕÖ¾ÖÐ."
+
+#: utils/misc/guc.c:563
+msgid "Writes planner performance statistics to the server log."
+msgstr "°Ñ¹æ»®Æ÷ÐÔÄÜͳ¼ÆÐÅϢдÈëµ½·þÎñÆ÷ÈÕÖ¾ÖÐ."
+
+#: utils/misc/guc.c:571
+msgid "Writes executor performance statistics to the server log."
+msgstr "°ÑÖ´ÐÐÆ÷ (executor) ÐÔÄÜͳ¼ÆÐÅϢдÈëµ½·þÎñÆ÷ÈÕÖ¾ÖÐ."
+
+#: utils/misc/guc.c:579
+msgid "Writes cumulative performance statistics to the server log."
+msgstr "°Ñ cumulative ÐÔÄÜͳ¼ÆÐÅϢдÈëµ½·þÎñÆ÷ÈÕÖ¾ÖÐ."
+
+#: utils/misc/guc.c:599
+msgid "Uses the indented output format for EXPLAIN VERBOSE."
+msgstr "EXPLAIN VERBOSE Ê¹ÓÃËõ½øÊä³ö¸ñʽ."
+
+#: utils/misc/guc.c:607
+msgid "Starts the server statistics-collection subprocess."
+msgstr "Æô¶¯·þÎñÆ÷ͳ¼ÆÊÕ¼¯Æ÷×Ó½ø³Ì."
+
+#: utils/misc/guc.c:615
+msgid "Zeroes collected statistics on server restart."
+msgstr "µ±·þÎñÆ÷ÖØÆô, Çå¿ÕÒÑÊÕ¼¯µÄͳ¼ÆÐÅÏ¢."
+
+#: utils/misc/guc.c:623
+msgid "Collects statistics about executing commands."
+msgstr "ÊÕ¼¯Ö´ÐÐÃüÁîµÄͳ¼ÆÐÅÏ¢."
+
+#: utils/misc/guc.c:624
+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 ""
 
-#: parser/parse_relation.c:255
-#, fuzzy, c-format
-msgid "scanNameSpaceForRelid: unexpected node type %d"
-msgstr "sort_inner_and_outer: Î´ÖªµÄÁ¬½ÓÀàÐÍ %d"
+#: utils/misc/guc.c:633
+msgid "Collects row-level statistics on database activity."
+msgstr "ÔÚʹÓÃÖеÄÊý¾Ý¿âÉÏÊÕ¼¯Ð춱ð (row-level) Í³¼ÆÐÅÏ¢."
 
-#: parser/parse_relation.c:319
-#, c-format
-msgid "checkNameSpaceConflicts: unexpected node type %d"
+#: utils/misc/guc.c:641
+msgid "Collects block-level statistics on database activity."
+msgstr "ÔÚʹÓÃÖеÄÊý¾Ý¿âÉÏÊÕ¼¯¿é¼¶±ð (block-level) Í³¼ÆÐÅÏ¢."
+
+#: utils/misc/guc.c:650
+msgid "Generates debugging output for LISTEN and NOTIFY."
+msgstr "Ϊ LISTEN ºÍ NOTIFY Éú³É³ö´íÐÅÏ¢."
+
+#: utils/misc/guc.c:699
+msgid "Logs the host name in the connection logs."
+msgstr "ÔÚÁª½ÓÈÕÖ¾ÖмǼÖ÷»úÃû."
+
+#: utils/misc/guc.c:700
+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 "
+"on your host name resolution setup it might impose a non-negligible "
+"performance penalty."
 msgstr ""
 
-#: parser/parse_relation.c:342 parser/parse_relation.c:352
-#, c-format
-msgid "Table name \"%s\" specified more than once"
+#: utils/misc/guc.c:710
+msgid "Causes subtables to be included by default in various commands."
 msgstr ""
 
-#: parser/parse_relation.c:373
-#, c-format
-msgid "scanNameSpaceForConflict: unexpected node type %d"
+#: utils/misc/guc.c:718
+msgid "Interprets ACST, CST, EST, and SAT as Australian time zones."
 msgstr ""
 
-#: parser/parse_relation.c:408
-msgid "RTERangeTablePosn: RTE not found (internal error)"
+#: utils/misc/guc.c:719
+msgid ""
+"Otherwise they are interpreted as North/South American time zones and "
+"Saturday."
 msgstr ""
 
-#: parser/parse_relation.c:460 parser/parse_relation.c:553
-#, c-format
-msgid "Column reference \"%s\" is ambiguous"
+#: utils/misc/guc.c:727
+msgid "Encrypt passwords."
+msgstr "¼ÓÃÜ¿ÚÁî."
+
+#: utils/misc/guc.c:728
+msgid ""
+"When a password is specified in CREATE USER or ALTER USER without writing "
+"either ENCRYPTED or UNENCRYPTED, this parameter determines whether the "
+"password is to be encrypted."
 msgstr ""
+"µ±ÔÚ CREATE USER »òÕß ALTER USER Óï¾äÖÐÖ¸¶¨µÄ¿ÚÁîûÓÐÓàENCRYPTED »òÕß "
+"UNENCRYPTED, ´Ë²ÎÊýÈ·¶¨¿ÚÁîÊÇ·ñ¼ÓÃÜ."
 
-#: parser/parse_relation.c:547
-#, c-format
-msgid "colnameToVar: unexpected node type %d"
+#: utils/misc/guc.c:737
+msgid "Treats \"expr=NULL\" as \"expr IS NULL\"."
+msgstr "\"expr=NULL\" ¿´×÷Ϊ \"expr IS NULL\"."
+
+#: utils/misc/guc.c:738
+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 "
+"null value, and false otherwise. The correct behavior of expr = NULL is to "
+"always return null (unknown)."
 msgstr ""
 
-#: parser/parse_relation.c:646 parser/parse_relation.c:739
-#: parser/parse_relation.c:832 parser/parse_relation.c:946
-#, c-format
-msgid "Table \"%s\" has %d columns available but %d columns specified"
+#: utils/misc/guc.c:749
+msgid "Enables per-database user names."
 msgstr ""
 
-#: parser/parse_relation.c:907
-msgid "A column definition list is only allowed for functions returning RECORD"
+#: utils/misc/guc.c:758
+msgid "This parameter doesn't do anything."
+msgstr "Õâ¸ö²ÎÊý²»×öÈκÎÊÂÇé."
+
+#: utils/misc/guc.c:759
+msgid ""
+"It's just here so that we won't choke on SET AUTOCOMMIT TO ON from 7.3-"
+"vintage clients."
 msgstr ""
 
-#: parser/parse_relation.c:916
-msgid "A column definition list is required for functions returning RECORD"
+#: utils/misc/guc.c:767
+msgid "Sets the default read-only status of new transactions."
+msgstr "ΪÐÂÊÂÎïÉèÖÃĬÈϵÄÖ»¶Á״̬."
+
+#: utils/misc/guc.c:775
+msgid "Sets the current transaction's read-only status."
+msgstr "ÉèÖõ±Ç°ÊÂÎñµÄÖ»¶Á״̬."
+
+#: utils/misc/guc.c:784
+msgid "Automatically adds missing table references to FROM clauses."
 msgstr ""
 
-#: parser/parse_relation.c:972
-#, c-format
-msgid "Too many column aliases specified for function %s"
+#: utils/misc/guc.c:792
+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:808
+msgid "Start a subprocess to capture stderr output into log files"
 msgstr ""
 
-#: parser/parse_relation.c:993
-#, c-format
-msgid "Unknown kind of return type specified for function %s"
+#: utils/misc/guc.c:816
+msgid "Truncate existing log files of same name during log rotation"
 msgstr ""
 
-#: parser/parse_relation.c:1425
-#, fuzzy, c-format
-msgid "expandRTE: unsupported RTE kind %d"
-msgstr "pq_sendint: ²»Ö§³ÖµÄ³ß´ç %d"
+#: utils/misc/guc.c:826
+msgid "Emit WAL-related debugging output."
+msgstr ""
 
-#: parser/parse_relation.c:1515
-#, c-format
-msgid "Invalid attnum %d for rangetable entry %s"
+#: utils/misc/guc.c:837
+msgid "Datetimes are integer based"
 msgstr ""
 
-#: parser/parse_relation.c:1542 parser/parse_relation.c:1605
-#: parser/parse_relation.c:1683
-#, fuzzy, c-format
-msgid "Relation \"%s\" does not have attribute %d"
-msgstr "¹Øϵ '%s' ²»´æÔÚ"
+#: utils/misc/guc.c:860
+msgid "Sets the default statistics target."
+msgstr "ÉèÖÃĬÈÏͳ¼Æ¶ÔÏó."
 
-#: parser/parse_relation.c:1574
-#, c-format
-msgid "Subquery %s does not have attribute %d"
+#: utils/misc/guc.c:861
+msgid ""
+"This applies to table columns that have not had a column-specific target set "
+"via ALTER TABLE SET STATISTICS."
 msgstr ""
 
-#: parser/parse_relation.c:1655
-#, c-format
-msgid "get_rte_attribute_type: unsupported RTE kind %d"
+#: utils/misc/guc.c:869
+msgid "Sets the FROM-list size beyond which subqueries are not collapsed."
 msgstr ""
 
-#: parser/parse_relation.c:1716
-#, c-format
-msgid "Relation %s does not have attribute %d"
+#: utils/misc/guc.c:871
+msgid ""
+"The planner will merge subqueries into upper queries if the resulting FROM "
+"list would have no more than this many items."
 msgstr ""
 
-#: parser/parse_relation.c:1732
-#, c-format
-msgid "get_rte_attribute_is_dropped: unsupported RTE kind %d"
+#: utils/misc/guc.c:880
+msgid "Sets the FROM-list size beyond which JOIN constructs are not flattened."
 msgstr ""
 
-#: parser/parse_relation.c:1815
-#, c-format
-msgid "attnumAttName: invalid attribute number %d"
+#: utils/misc/guc.c:882
+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 ""
 
-#: parser/parse_relation.c:1837
-#, c-format
-msgid "attnumTypeId: invalid attribute number %d"
+#: utils/misc/guc.c:891
+msgid "Sets the threshold of FROM items beyond which GEQO is used."
 msgstr ""
 
-#: parser/parse_relation.c:1864
-#, c-format
-msgid "Adding missing FROM-clause entry%s for table \"%s\""
+#: utils/misc/guc.c:899
+msgid "GEQO: effort is used to set the default for other GEQO parameters."
 msgstr ""
 
-#: parser/parse_target.c:62
-msgid "You can't use relation names alone in the target list, try relation.*."
+#: utils/misc/guc.c:907
+msgid "GEQO: number of individuals in the population."
+msgstr "GEQO: ÈËȺ (population) ¸öÌå (individual) Êý"
+
+#: utils/misc/guc.c:908 utils/misc/guc.c:916
+msgid "Zero selects a suitable default value."
 msgstr ""
 
-#: parser/parse_target.c:236
-#, c-format
-msgid "Cannot assign to system attribute '%s'"
+#: utils/misc/guc.c:915
+msgid "GEQO: number of iterations of the algorithm."
+msgstr "GEQO: Ëã·¨µÄµü´ú´ÎÊý"
+
+#: utils/misc/guc.c:924
+msgid "The time in milliseconds to wait on lock before checking for deadlock."
 msgstr ""
 
-#: parser/parse_target.c:298
-#, c-format
+#: utils/misc/guc.c:940
+msgid "Sets the maximum number of concurrent connections."
+msgstr "ÉèÖò¢·¢Áª½ÓµÄ×î´ó¸öÊý."
+
+#: utils/misc/guc.c:949
+msgid "Sets the number of connection slots reserved for superusers."
+msgstr "ÉèÖÃΪ³¬¼¶Óû§±£ÁôµÄÁª½ÓÊý."
+
+#: utils/misc/guc.c:958
+msgid "Sets the number of shared memory buffers used by the server."
+msgstr "ÉèÖ÷þÎñÆ÷ʹÓõĹ²ÏíÄڴ滺³åÇøµÄÊýÁ¿."
+
+#: utils/misc/guc.c:967
+msgid "Sets the TCP port the server listens on."
+msgstr "ÉèÖ÷þÎñÆ÷¼àÌýµÄ TCP ¶Ë¿ÚºÅ."
+
+#: utils/misc/guc.c:976
+msgid "Sets the access permissions of the Unix-domain socket."
+msgstr "ÉèÖàUnix-domain Ì×½Ó×ֵķÃÎÊȨÏÞ."
+
+#: utils/misc/guc.c:977
 msgid ""
-"column \"%s\" is of type %s but expression is of type %s\n"
-"\tYou will need to rewrite or cast the expression"
+"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 "
+"accepted by the chmod and umask system calls. (To use the customary octal "
+"format the number must start with a 0 (zero).)"
 msgstr ""
 
-#: parser/parse_target.c:371
-#, c-format
-msgid "Attribute '%s' specified more than once"
-msgstr "ÊôÐÔ '%s' ±»Ö¸¶¨¹ý¶à´Î"
+#: utils/misc/guc.c:989
+msgid "Sets the maximum memory to be used for query workspaces."
+msgstr "ÉèÖòéѯ¹¤×÷¿Õ¼äʹÓõÄ×î´óÄÚ´æÊý."
 
-#: parser/parse_target.c:406
-#, c-format
+#: utils/misc/guc.c:990
 msgid ""
-"ExpandAllTables: unexpected node (internal error)\n"
-"\t%s"
-msgstr ""
+"This much memory may be used by each internal sort operation and hash table "
+"before switching to temporary disk files."
+msgstr "ÕâЩÄڴ潫¿ÉÄÜÓÃÓÚÄÚ²¿ÅÅÐò²Ù×÷ºÍת»¯µ½ÁÙʱ´ÅÅÌÎļþ֮ǰµÄÉ¢Áбí"
 
-#: parser/parse_target.c:424
-msgid "Wildcard with no tables specified not allowed"
-msgstr ""
+#: utils/misc/guc.c:1000
+msgid "Sets the maximum memory to be used for maintenance operations."
+msgstr "ÉèÖÃά»¤²Ù×÷ʹÓõÄ×î´óÄÚ´æÊý."
 
-#: parser/parse_type.c:60
-#, c-format
-msgid "Improper %%TYPE reference (too few dotted names): %s"
+#: utils/misc/guc.c:1001
+msgid "This includes operations such as VACUUM and CREATE INDEX."
 msgstr ""
 
-#: parser/parse_type.c:79
-#, c-format
-msgid "Improper %%TYPE reference (too many dotted names): %s"
+#: utils/misc/guc.c:1009
+msgid "Sets the maximum stack depth, in kilobytes."
 msgstr ""
 
-#: parser/parse_type.c:96
-#, c-format
-msgid "%s converted to %s"
+#: utils/misc/guc.c:1018
+msgid "Vacuum cost for a page found in the buffer cache."
 msgstr ""
 
-#: parser/parse_type.c:194 parser/parse_type.c:222
-#: utils/cache/lsyscache.c:1286
-#, c-format
-msgid "Type \"%s\" is only a shell"
+#: utils/misc/guc.c:1027
+msgid "Vacuum cost for a page not found in the buffer cache."
 msgstr ""
 
-#: parser/parse_type.c:247
-#, c-format
-msgid "Unable to locate type oid %u in catalog"
+#: utils/misc/guc.c:1036
+msgid "Vacuum cost for a page dirtied by vacuum."
 msgstr ""
 
-#: parser/parse_type.c:256
-msgid "typeTypeId() called with NULL type struct"
+#: utils/misc/guc.c:1045
+msgid "Vacuum cost amount available before napping."
 msgstr ""
 
-#: parser/parse_type.c:389
-#, c-format
-msgid "typeidOutfunc: Invalid type - oid = %u"
+#: utils/misc/guc.c:1054
+msgid "Vacuum cost delay in milliseconds."
 msgstr ""
 
-#: parser/parse_type.c:410
-#, c-format
-msgid "typeidTypeRelid: Invalid type - oid = %u"
-msgstr ""
+#: utils/misc/guc.c:1063
+msgid ""
+"Sets the maximum number of simultaneously open files for each server process."
+msgstr "ÉèÖÃÿһ¸ö·þÎñÆ÷½ø³Ìͬʱ´ò¿ªÎļþµÄ×î´ó¸öÊý."
 
-#: parser/parse_type.c:447 parser/parse_type.c:462 parser/parse_type.c:464
-#: parser/parse_type.c:470 parser/parse_type.c:476 parser/parse_type.c:480
-#, fuzzy, c-format
-msgid "Invalid type name '%s'"
-msgstr "ÎÞЧʱÇø '%s'"
+#: utils/misc/guc.c:1093
+msgid "Sets the maximum allowed duration (in milliseconds) of any statement."
+msgstr "ÉèÖÃÈκÎÓï¾äÖ´ÐÐʱ¼äµÄ×î´óÖµ (µ¥Î»ºÁÃë)."
 
-#: scan.l:295
-msgid "unterminated /* comment"
-msgstr ""
+#: utils/misc/guc.c:1094
+msgid "A value of 0 turns off the timeout."
+msgstr "ֵΪ 0 µÄʱºò¹Ø±Õ³¬Ê±."
 
-#: scan.l:323
-msgid "unterminated bit string literal"
+#: utils/misc/guc.c:1102
+msgid ""
+"Sets the maximum number of tables and indexes for which free space is "
+"tracked."
 msgstr ""
 
-#: scan.l:342
-msgid "unterminated hexadecimal string literal"
+#: utils/misc/guc.c:1111
+msgid "Sets the maximum number of disk pages for which free space is tracked."
 msgstr ""
 
-#: scan.l:388
-msgid "unterminated quoted string"
-msgstr ""
+#: utils/misc/guc.c:1121
+msgid "Sets the maximum number of locks per transaction."
+msgstr "ÉèÖÃÿһ¸öÊÂÎïËøµÄ×î´ó¸öÊý."
 
-#: scan.l:399
-msgid "zero-length delimited identifier"
+#: utils/misc/guc.c:1122
+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 ""
 
-#: scan.l:406 scan.l:562
-#, c-format
-msgid "identifier \"%s\" will be truncated to \"%.*s\""
+#: utils/misc/guc.c:1132
+msgid "Sets the maximum time in seconds to complete client authentication."
+msgstr "ÉèÖÃÍê³É¿Í»§¶ËÈÏÖ¤µÄ×î´óÃëÊý."
+
+#: utils/misc/guc.c:1152
+msgid ""
+"Sets the maximum distance in log segments between automatic WAL checkpoints."
 msgstr ""
 
-#: scan.l:420
-msgid "unterminated quoted identifier"
+#: utils/misc/guc.c:1161
+msgid "Sets the maximum time in seconds between automatic WAL checkpoints."
 msgstr ""
 
-#: scan.l:580
-#, c-format
-msgid "parser: %s at end of input"
+#: utils/misc/guc.c:1170
+msgid ""
+"Logs if filling of checkpoint segments happens more frequently than this (in "
+"seconds)."
 msgstr ""
 
-#: scan.l:582
-#, c-format
-msgid "parser: %s at or near \"%s\" at character %d"
+#: utils/misc/guc.c:1172
+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 ""
 
-#: /usr/share/bison/bison.simple:179
-msgid "parse error: cannot back up"
+#: utils/misc/guc.c:1182
+msgid "Sets the number of disk-page buffers in shared memory for WAL."
 msgstr ""
 
-#: gram.y:957 gram.y:974
-msgid "Time zone interval must be HOUR or HOUR TO MINUTE"
+#: utils/misc/guc.c:1191
+msgid ""
+"Sets the delay in microseconds between transaction commit and flushing WAL "
+"to disk."
 msgstr ""
 
-#: gram.y:968 gram.y:4990 gram.y:6954 utils/adt/timestamp.c:674
-#, c-format
-msgid "INTERVAL(%d) precision must be between %d and %d"
+#: utils/misc/guc.c:1201
+msgid ""
+"Sets the minimum concurrent open transactions before performing commit_delay."
 msgstr ""
 
-#: gram.y:1415 gram.y:1421 gram.y:4397 gram.y:4404
-msgid "GLOBAL TEMPORARY TABLE is not currently supported"
+#: utils/misc/guc.c:1211
+msgid "Sets the number of digits displayed for floating-point values."
+msgstr "ÉèÖø¡µãÊýÏÔʾµÄλÊý."
+
+#: utils/misc/guc.c:1212
+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 ""
 
-#: gram.y:1459
-#, c-format
-msgid "CREATE TABLE / COLLATE %s not yet implemented; clause ignored"
+#: utils/misc/guc.c:1222
+msgid ""
+"Sets the minimum execution time in milliseconds above which statements will "
+"be logged."
 msgstr ""
 
-#: gram.y:1643
-#, fuzzy
-msgid "LIKE in table definitions not yet supported"
-msgstr "²»Ö§³Öµ¥Î»Îª '%s' µÄʱ¼ä¼ä¸ô"
+#: utils/misc/guc.c:1224
+msgid "Zero prints all queries. The default is -1 (turning this feature off)."
+msgstr "Áã´òÓ¡ËùÓвéѯ. Ä¬ÈÏֵΪ -1 (¹Ø±Õ´Ë¹¦ÄÜ)."
 
-#: gram.y:1747
-msgid "FOREIGN KEY/MATCH PARTIAL not yet implemented"
+#: utils/misc/guc.c:1232
+msgid "Interval to report shared buffer status in seconds"
 msgstr ""
 
-#: gram.y:1827
-msgid "CREATE TABLE AS may not specify INTO"
-msgstr ""
+#: utils/misc/guc.c:1241
+msgid "Background writer sleep time between rounds in milliseconds"
+msgstr "ºǫ́дÈëÆ÷ (Background writer) Á½´ÎÖ®¼äµÄÐÝÃßʱ¼ä, ºÁÃ뼶"
 
-#: gram.y:2216
-#, fuzzy
-msgid "CREATE ASSERTION is not yet supported"
-msgstr "CREATE VERSION ÊµÏֵò»ÕýÈ·"
+#: utils/misc/guc.c:1250
+msgid "Background writer percentage of dirty buffers to flush per round"
+msgstr "ºǫ́дÈëÆ÷ (Background writer) Ã¿´ÎˢеÄÔ໺³åÇø±ÈÂÊ"
 
-#: gram.y:2230
-msgid "DROP ASSERTION is not yet supported"
-msgstr ""
+#: utils/misc/guc.c:1259
+msgid "Background writer maximum number of pages to flush per round"
+msgstr "ºǫ́дÈëÆ÷ (Background writer) Ã¿´Î×î´óË¢ÐÂÒ³Êý"
 
-#: gram.y:3060
-msgid "CREATE FUNCTION / OUT parameters are not supported"
+#: utils/misc/guc.c:1268
+msgid "Automatic logfile rotation will occur after N minutes"
 msgstr ""
 
-#: gram.y:3066
-msgid "CREATE FUNCTION / INOUT parameters are not supported"
+#: utils/misc/guc.c:1277
+msgid "Automatic logfile rotation will occur after N kilobytes"
 msgstr ""
 
-#: gram.y:3218
-msgid "parser: argument type missing (use NONE for unary operators)"
-msgstr ""
+#: utils/misc/guc.c:1286
+msgid "Shows the maximum number of function arguments"
+msgstr "ÏÔʾº¯Êý²ÎÊýµÄ×î´ó¸öÊý"
 
-#: gram.y:3745
-#, c-format
-msgid "CREATE DOMAIN / COLLATE %s not yet implemented; clause ignored"
-msgstr ""
+#: utils/misc/guc.c:1296
+msgid "Shows the maximum number of index keys"
+msgstr "ÏÔʾË÷Òý¼üÖµµÄ×î´ó¸öÊý"
 
-#: gram.y:4483
-msgid ""
-"LIMIT #,# syntax not supported.\n"
-"\tUse separate LIMIT and OFFSET clauses."
-msgstr ""
+#: utils/misc/guc.c:1306
+msgid "Shows the maximum identifier length"
+msgstr "ÏÔʾ±êʶ·û×î´ó³¤¶È"
 
-#: gram.y:4499
-msgid "LIMIT must not be negative"
-msgstr ""
+#: utils/misc/guc.c:1316
+msgid "Shows size of a disk block"
+msgstr "ÏÔʾһ¸ö´ÅÅÌ¿éµÄ³ß´ç"
 
-#: gram.y:4537
-msgid "OFFSET must not be negative"
+#: utils/misc/guc.c:1335
+msgid "Sets the planner's assumption about size of the disk cache."
 msgstr ""
 
-#: gram.y:4679
+#: utils/misc/guc.c:1336
 msgid ""
-"sub-SELECT in FROM must have an alias\n"
-"\tFor example, FROM (SELECT ...) [AS] foo"
+"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 ""
 
-#: gram.y:5084
-msgid "precision for FLOAT must be at least 1"
+#: utils/misc/guc.c:1345
+msgid ""
+"Sets the planner's estimate of the cost of a nonsequentially fetched disk "
+"page."
 msgstr ""
 
-#: gram.y:5091
-msgid "precision for FLOAT must be less than 16"
+#: utils/misc/guc.c:1347
+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 ""
 
-#: gram.y:5104 gram.y:5117
-#, c-format
-msgid "NUMERIC precision %d must be between 1 and %d"
+#: utils/misc/guc.c:1357
+msgid "Sets the planner's estimate of the cost of processing each tuple (row)."
 msgstr ""
 
-#: gram.y:5108
-#, c-format
-msgid "NUMERIC scale %d must be between 0 and precision %d"
+#: utils/misc/guc.c:1358 utils/misc/guc.c:1368 utils/misc/guc.c:1377
+msgid "This is measured as a fraction of the cost of a sequential page fetch."
 msgstr ""
 
-#: gram.y:5134 gram.y:5147
-#, c-format
-msgid "DECIMAL precision %d must be between 1 and %d"
+#: utils/misc/guc.c:1366
+msgid ""
+"Sets the planner's estimate of processing cost for each index tuple (row) "
+"during index scan."
 msgstr ""
 
-#: gram.y:5138
-#, c-format
-msgid "DECIMAL scale %d must be between 0 and precision %d"
+#: utils/misc/guc.c:1376
+msgid ""
+"Sets the planner's estimate of processing cost of each operator in WHERE."
 msgstr ""
 
-#: gram.y:5195 gram.y:5269
-#, c-format
-msgid "length for type '%s' must be at least 1"
+#: utils/misc/guc.c:1386
+msgid "GEQO: selective pressure within the population."
 msgstr ""
 
-#: gram.y:5198 gram.y:5272
-#, c-format
-msgid "length for type '%s' cannot exceed %d"
-msgstr ""
+#: utils/misc/guc.c:1396
+msgid "Sets the seed for random-number generation."
+msgstr "ÉèÖÃÉú³ÉËæ»úÊýµÄÖÖ×Ó."
 
-#: gram.y:5349
-#, c-format
-msgid "TIMESTAMP(%d)%s precision must be between %d and %d"
+#: utils/misc/guc.c:1415
+msgid "WAL archiving command."
 msgstr ""
 
-#: gram.y:5381
-#, c-format
-msgid "TIME(%d)%s precision must be between %d and %d"
+#: utils/misc/guc.c:1416
+msgid "The shell command that will be called to archive a WAL file."
 msgstr ""
 
-#: gram.y:5523 gram.y:7512 gram.y:7564
-msgid "Unequal number of entries in row expression"
-msgstr ""
+#: utils/misc/guc.c:1424
+msgid "Sets the client's character set encoding."
+msgstr "ÉèÖÿͻ§¶Ë±àÂë"
 
-#: gram.y:5936
-msgid "UNIQUE predicate is not yet implemented"
-msgstr ""
+#: utils/misc/guc.c:1434
+msgid "Sets the message levels that are sent to the client."
+msgstr "ÉèÖ÷¢Ë͵½¿Í»§¶ËµÄÐÅÏ¢¼¶±ð."
 
-#: gram.y:6165
-#, c-format
-msgid "CURRENT_TIME(%d) precision must be between %d and %d"
+#: utils/misc/guc.c:1435
+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 ""
 
-#: gram.y:6210
-#, c-format
-msgid "CURRENT_TIMESTAMP(%d) precision must be between %d and %d"
-msgstr ""
+#: utils/misc/guc.c:1446
+msgid "Sets the message levels that are logged."
+msgstr "ÉèÖÃÈÕÖ¾¼Ç¼µÄÐÅÏ¢¼¶±ð."
 
-#: gram.y:6255
-#, c-format
-msgid "LOCALTIME(%d) precision must be between %d and %d"
+#: utils/misc/guc.c:1447
+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 ""
 
-#: gram.y:6300
-#, c-format
-msgid "LOCALTIMESTAMP(%d) precision must be between %d and %d"
-msgstr ""
+#: utils/misc/guc.c:1457
+msgid "Sets the verbosity of logged messages."
+msgstr "ÉèÖÃÈÕÖ¾ÐÅÏ¢µÄÈß³¤."
 
-#: gram.y:7385
-msgid "OLD used in non-rule query"
-msgstr ""
+#: utils/misc/guc.c:1458
+msgid "Valid values are \"terse\", \"default\", and \"verbose\"."
+msgstr "ÓÐЧֵΪ \"terse\", \"default\", ºÍ \"verbose\"."
 
-#: gram.y:7392
-msgid "NEW used in non-rule query"
-msgstr ""
+#: utils/misc/guc.c:1465
+msgid "Sets the type of statements logged."
+msgstr "ÉèÖüǼÓï¾äµÄÀàÐÍ."
 
-#: /usr/share/bison/bison.simple:795
-msgid "parse error; also virtual memory exhausted"
-msgstr ""
+#: utils/misc/guc.c:1466
+msgid "Valid values are \"none\", \"mod\", \"ddl\", and \"all\"."
+msgstr "ÓÐЧֵΪ \"none\", \"mod\", \"ddl\", ºÍ \"all\"."
 
-#: /usr/share/bison/bison.simple:799
-#, fuzzy
-msgid "parse error"
-msgstr "·ÖÎöÊ÷:"
+#: utils/misc/guc.c:1474
+msgid ""
+"Causes all statements generating error at or above this level to be logged."
+msgstr ""
 
-#: /usr/share/bison/bison.simple:924
-msgid "parser stack overflow"
+#: utils/misc/guc.c:1475
+msgid ""
+"All SQL statements that cause an error of the specified level or a higher "
+"level are logged."
 msgstr ""
 
-#: gram.y:7546
-#, c-format
-msgid "Operator '%s' not implemented for row expressions"
+#: utils/misc/guc.c:1484
+msgid "Controls information prefixed to each log line"
 msgstr ""
 
-#: gram.y:7619
-msgid "Wrong number of parameters on left side of OVERLAPS expression"
+#: utils/misc/guc.c:1485
+msgid "if blank no prefix is used"
 msgstr ""
 
-#: gram.y:7624
-msgid "Wrong number of parameters on right side of OVERLAPS expression"
+#: utils/misc/guc.c:1494
+msgid "Sets the display format for date and time values."
+msgstr "ÉèÖÃÈÕÆÚºÍʱ¼äÖµµÄÏÔʾ¸ñʽ."
+
+#: utils/misc/guc.c:1495
+msgid "Also controls interpretation of ambiguous date inputs."
 msgstr ""
 
-#: gram.y:7661
-msgid "Multiple ORDER BY clauses not allowed"
-msgstr "²»ÔÊÐí¶à¸ö ORDER BY ×Ó¾ä"
+#: utils/misc/guc.c:1505
+msgid "Sets the transaction isolation level of each new transaction."
+msgstr "ÉèÖÃÿһ¸öÐÂÊÂÎïµÄ¸ôÀë (isolation) ¼¶±ð."
 
-#: gram.y:7667
-msgid "Multiple FOR UPDATE clauses not allowed"
-msgstr "²»ÔÊÐí¶à¸ö FOR UPDATE ×Ó¾ä"
+#: utils/misc/guc.c:1506
+msgid ""
+"Each SQL transaction has an isolation level, which can be either \"read "
+"uncommitted\", \"read committed\", \"repeatable read\", or \"serializable\"."
+msgstr ""
+"ÿһ¸ö SQL ÊÂÎﶼÓÐÒ»¸ö¸ôÀ뼶±ð, ¼¶±ð¿ÉÒÔÊÇ \"read uncommitted\", \"read "
+"committed\", \"repeatable read\", »òÕß \"serializable\"."
 
-#: gram.y:7673
-msgid "Multiple OFFSET clauses not allowed"
-msgstr "²»ÔÊÐí¶à¸ö OFFSET ×Ó¾ä"
+#: utils/misc/guc.c:1515
+msgid "Sets the path for dynamically loadable modules."
+msgstr "ÉèÖö¯Ì¬¼ÓÔØÃþ×éµÄ·¾¶."
 
-#: gram.y:7679
-msgid "Multiple LIMIT clauses not allowed"
-msgstr "²»ÔÊÐí¶à¸ö LIMIT ×Ó¾ä"
+#: utils/misc/guc.c:1516
+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 "
+"slash), the system will search this path for the specified file."
+msgstr ""
+"Èç¹ûÒ»¸ö¶¯Ì¬¼ÓÔØÄ£¿éÐèÒª´ò¿ª²¢ÇÒÖ¸¶¨Ãû×ÖûÓз¾¶ (ÀýÈç, Ãû×ÖÖÐû°üº¬Ð±¸Ü), Ïµ"
+"ͳ½«ÔÚ´Ë·¾¶ÖвéÕÒÖ¸¶¨µÄÎļþ."
+
+#: utils/misc/guc.c:1527
+msgid "Sets the location of the Kerberos server key file."
+msgstr "ÉèÖàKerberos ·þÎñÆ÷ÃÜÔ¿ÎļþλÖÃ."
 
-#: port/ipc_test.c:93 storage/ipc/ipc.c:171
-msgid "Out of on_shmem_exit slots"
+#: utils/misc/guc.c:1536
+msgid "Sets the Rendezvous broadcast service name."
 msgstr ""
 
-#: port/posix_sema.c:168 port/sysv_sema.c:319 port/pg_sema.c:319
-msgid "Out of memory in PGReserveSemaphores"
+#: utils/misc/guc.c:1547
+msgid "Shows the collation order locale."
 msgstr ""
 
-#: port/posix_sema.c:205 port/sysv_sema.c:358 port/pg_sema.c:358
-msgid "PGSemaphoreCreate: too many semaphores created"
+#: utils/misc/guc.c:1557
+msgid "Shows the character classification and case conversion locale."
 msgstr ""
 
-#: port/beos/sem.c:158
-msgid "beos : semctl error : GETNCNT not implemented"
-msgstr "beos : semctl ´íÎó : GETNCNT ÉÐδʵÏÖ"
+#: utils/misc/guc.c:1567
+msgid "Sets the language in which messages are displayed."
+msgstr "ÉèÖÃÐÅÏ¢ÏÔʾÓïÑÔ."
 
-#: port/beos/sem.c:173
-msgid "beos : semctl error : unknown flag"
-msgstr "beos : semctl ´íÎó : Î´Öª±êÖ¾"
+#: utils/misc/guc.c:1576
+msgid "Sets the locale for formatting monetary amounts."
+msgstr "Ϊ»õ±ÒÊýÁ¿¸ñʽÉèÖàlocale."
 
-#: port/beos/support.c:45
-msgid "Error loading BeOS support server : can't create communication ports"
-msgstr "×°ÔØ BeOS Ö§³Ö·þÎñÆ÷´íÎó : ÎÞ·¨´´½¨Í¨Ñ¶¶Ë¿Ú"
+#: utils/misc/guc.c:1585
+msgid "Sets the locale for formatting numbers."
+msgstr "ΪÊý×Ö¸ñʽÉèÖàlocale"
 
-#: port/beos/support.c:71
-msgid "Can't load this add-on "
-msgstr "ÎÞ·¨×°ÔØÕâ¸ö¸½¼þ "
+#: utils/misc/guc.c:1594
+msgid "Sets the locale for formatting date and time values."
+msgstr "ΪÈÕÆÚºÍʱ¼äÖµ¸ñʽÉèÖàlocale"
 
-#: port/beos/support.c:95
-msgid "Can't load this add-on : map text error"
-msgstr "ÎÞ·¨×°ÔØÕâ¸ö¸½¼þ : Îı¾Ó³Éä´íÎó"
+#: utils/misc/guc.c:1603
+msgid "Lists shared libraries to preload into server."
+msgstr "ÁгöԤװÈë·þÎñÆ÷µÄ¹²Ïí¿â."
 
-#: port/beos/support.c:111
-msgid "Can't load this add-on : map data error"
-msgstr "ÎÞ·¨×°ÔØÕâ¸ö¸½¼þ : Êý¾ÝÓ³Éä´íÎó"
+#: utils/misc/guc.c:1613
+msgid "Sets the regular expression \"flavor\"."
+msgstr "ÉèÖÃÕýÔò±í´ïʽ \"flavor\"."
 
-#: port/beos/support.c:129
-#, c-format
-msgid "loading symbol '%s' failed "
-msgstr "×°Èë·ûºÅ %s Ê§°Ü"
+#: utils/misc/guc.c:1614
+msgid "This can be set to advanced, extended, or basic."
+msgstr "Õâ¸ö¿ÉÒÔÉèÖÃΪ advanced, extended, »òÕß basic."
+
+#: utils/misc/guc.c:1622
+msgid "Sets the schema search order for names that are not schema-qualified."
+msgstr ""
 
-#: port/dynloader.c:35 port/dynloader/linux.c:35
-msgid "dynamic load not supported"
-msgstr "²»Ö§³Ö¶¯Ì¬×°ÔØ"
+#: utils/misc/guc.c:1633
+msgid "Sets the server (database) character set encoding."
+msgstr "ÉèÖ÷þÎñÆ÷ (Êý¾Ý¿â) ×Ö·û±àÂë."
 
-#: port/dynloader.c:71 port/dynloader/bsdi.c:59 port/dynloader/linux.c:71
-msgid "dld: Cannot link C library!"
-msgstr "dld: ÎÞ·¨Á´½Ó C ¿â!"
+#: utils/misc/guc.c:1644
+msgid "Shows the server version."
+msgstr "ÏÔʾ·þÎñÆ÷°æ±¾ÐÅÏ¢."
 
-#: port/dynloader.c:78 port/dynloader/bsdi.c:66 port/dynloader/linux.c:78
-msgid "dld: Cannot link math library!"
-msgstr "dld: ÎÞ·¨Á´½ÓÊýѧ¿â!"
+#: utils/misc/guc.c:1655
+msgid "Sets the session user name."
+msgstr "ÉèÖûỰÓû§Ãû³Æ."
 
-#: port/dynloader.c:87 port/dynloader/bsdi.c:75 port/dynloader/linux.c:87
-msgid "dld: Undefined:"
-msgstr "dld: Î´¶¨Òå:"
+#: utils/misc/guc.c:1665
+msgid "Sets the destination for server log output."
+msgstr "ÉèÖ÷þÎñÆ÷ÈÕÖ¾Êä³öÄ¿±ê."
 
-#: port/dynloader.c:90 port/dynloader/bsdi.c:78 port/dynloader/linux.c:90
-#: port/dynloader/ultrix4.c:61
-#, c-format
-msgid "  %s"
-msgstr "  %s"
+#: utils/misc/guc.c:1666
+msgid ""
+"Valid values are combinations of stderr, syslog and eventlog, depending on "
+"platform."
+msgstr "ÓÐЧֵΪ stderr, syslog ºÍ eventlog µÄ×éºÏ, ÒÀÀµ²»Í¬Æ½Ì¨."
 
-#: port/dynloader/beos.c:55
-msgid "add-on not loaded correctly"
-msgstr "¸½¼þûÓÐÕýÈ·×°ÔØ"
+#: utils/misc/guc.c:1675
+msgid "Sets the destination directory for log files."
+msgstr "ÉèÖÃÈÕÖ¾ÎļþÄ¿µÄĿ¼."
 
-#: port/dynloader/beos.c:66
-msgid "error while unloading add-on"
-msgstr "жÔظ½¼þʱ³ö´í"
+#: utils/misc/guc.c:1676
+msgid ""
+"May be specified as relative to the cluster directory or as absolute path."
+msgstr ""
 
-#: port/dynloader/ultrix4.c:58
-msgid "dl: Undefined:"
-msgstr "dl: Î´¶¨Òå:"
+#: utils/misc/guc.c:1684
+msgid "Sets the file name pattern for log files."
+msgstr "ÉèÖÃÈÕÖ¾ÎļþµÄÎļþÃû×Öģʽ."
 
-#: postmaster/pgstat.c:178
-#, fuzzy, c-format
-msgid "PGSTAT: socket() failed: %m"
-msgstr "pq_flush: send() Ê§°Ü: %m"
+#: utils/misc/guc.c:1694
+msgid "Sets the syslog \"facility\" to be used when syslog enabled."
+msgstr "µ±ÆôÓÃϵͳÈÕÖ¾ (syslog), ÉèÖÃϵͳÈÕ־ʹÓà\"facility\"."
 
-#: postmaster/pgstat.c:192
-#, c-format
-msgid "PGSTAT: bind(127.0.0.1) failed: %m"
+#: utils/misc/guc.c:1695
+msgid ""
+"Valid values are LOCAL0, LOCAL1, LOCAL2, LOCAL3, LOCAL4, LOCAL5, LOCAL6, "
+"LOCAL7."
 msgstr ""
+"ÓÐЧֵΪ LOCAL0, LOCAL1, LOCAL2, LOCAL3, LOCAL4, LOCAL5, LOCAL6, LOCAL7."
 
-#: postmaster/pgstat.c:197
-#, c-format
-msgid "PGSTAT: getsockname() failed: %m"
-msgstr ""
+#: utils/misc/guc.c:1703
+msgid "Sets the program name used to identify PostgreSQL messages in syslog."
+msgstr "ÉèÖÃÔÚϵͳÈÕÖ¾ (syslog) ÖÐÈ·ÈÏ PostgreSQL ÐÅÏ¢µÄ³ÌÐòÃû."
 
-#: postmaster/pgstat.c:209
-#, fuzzy, c-format
-msgid "PGSTAT: connect() failed: %m"
-msgstr "pq_eof: recv() Ê§°Ü: %m"
+#: utils/misc/guc.c:1714
+msgid "Sets the time zone for displaying and interpreting time stamps."
+msgstr "ÉèÖÃÏÔʾºÍ½âÊÍʱ¼ä´ÁµÄʱÇø."
 
-#: postmaster/pgstat.c:221
-#, fuzzy, c-format
-msgid "PGSTAT: fcntl() failed: %m"
-msgstr "pq_eof: recv() Ê§°Ü: %m"
+#: utils/misc/guc.c:1723
+msgid "Sets the current transaction's isolation level."
+msgstr "ÉèÖõ±Ç°ÊÂÎïµÄ¸ôÀ뼶±ð."
 
-#: postmaster/pgstat.c:230 postmaster/pgstat.c:1158
-#, fuzzy, c-format
-msgid "PGSTAT: pipe() failed: %m"
-msgstr "pq_eof: recv() Ê§°Ü: %m"
+#: utils/misc/guc.c:1733
+msgid "Sets the owning group of the Unix-domain socket."
+msgstr "ÉèÖàUnix-domain Ì×½Ó×ÖµÄÊô×é."
 
-#: postmaster/pgstat.c:273
-msgid "PGSTAT: statistics collector startup skipped"
-msgstr ""
+#: utils/misc/guc.c:1734
+msgid ""
+"(The owning user of the socket is always the user that starts the server.)"
+msgstr "(Ì×½Ó×ÖµÄÊôÖ÷Óû§Í¨³£Ò²ÊÇÆ𶯷þÎñµÄÓû§.)"
 
-#: postmaster/pgstat.c:296 postmaster/pgstat.c:1165
-#, fuzzy, c-format
-msgid "PGSTAT: fork() failed: %m"
-msgstr "fork Ê§°Ü: %s"
+#: utils/misc/guc.c:1743
+msgid "Sets the directory where the Unix-domain socket will be created."
+msgstr "ÉèÖô´½¨ Unix-domain Ì×½Ó×ÖµÄĿ¼."
 
-#: postmaster/pgstat.c:697
-msgid "Only database superusers can reset statistic counters"
-msgstr ""
+#: utils/misc/guc.c:1752
+msgid "Sets the host name or IP address(es) to listen to."
+msgstr "ÉèÖüàÌýµÄÖ÷»úÃû»ò IP µØÖ·."
 
-#: postmaster/pgstat.c:764 postmaster/pgstat.c:773 postmaster/pgstat.c:820
-#: postmaster/pgstat.c:830
-msgid "PGSTATBE: malloc() failed"
+#: utils/misc/guc.c:1762
+msgid "Selects the method used for forcing WAL updates out to disk."
 msgstr ""
 
-#: postmaster/pgstat.c:1219
-msgid "PGSTAT: Creation of dead backend hash table failed"
+#: utils/misc/guc.c:1771
+msgid "Sets the list of known custom variable classes"
 msgstr ""
 
-#: postmaster/pgstat.c:1230
-msgid "PGSTAT: Allocation of backend table failed"
-msgstr ""
+#: utils/misc/guc.c:1780
+msgid "Sets the location of the data directory"
+msgstr "ÉèÖÃÊý¾ÝĿ¼µÄλÖÃ"
 
-#: postmaster/pgstat.c:1294
-#, fuzzy, c-format
-msgid "PGSTAT: select() failed: %m"
-msgstr "ServerLoop: select Ê§°Ü: %s"
+#: utils/misc/guc.c:1786
+msgid "Sets the location of the \"hba\" configuration file"
+msgstr "ÉèÖà\"hba\" ÅäÖÃÎļþλÖÃ"
 
-#: postmaster/pgstat.c:1334
-#, fuzzy, c-format
-msgid "PGSTAT: read() failed: %m"
-msgstr "pq_eof: recv() Ê§°Ü: %m"
+#: utils/misc/guc.c:1792
+msgid "Sets the location of the \"ident\" configuration file"
+msgstr "ÉèÖà\"ident\" ÅäÖÃÎļþλÖÃ"
 
-#: postmaster/pgstat.c:1352
-msgid "PGSTAT: bogus message length"
-msgstr ""
+#: utils/misc/guc.c:1798
+msgid "Writes the postmaster PID to the specified file"
+msgstr "°Ñ postmaster PID Ð´µ½Ö¸¶¨Îļþ"
 
-#: postmaster/pgstat.c:1502
+#: 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
 #, c-format
-msgid "PGSTATBUFF: fcntl() failed: %m"
-msgstr ""
+msgid "unrecognized configuration parameter \"%s\""
+msgstr "δÈϿɵÄÅäÖòÎÊý \"%s\""
 
-#: postmaster/pgstat.c:1512
-msgid "PGSTATBUFF: malloc() failed"
-msgstr ""
+#: utils/misc/guc.c:3117
+#, c-format
+msgid "parameter \"%s\" cannot be changed"
+msgstr "²ÎÊý \"%s\" ²»¿ÉÒԸıä"
 
-#: postmaster/pgstat.c:1539
-msgid "PGSTATBUFF: Warning - receive buffer full"
-msgstr ""
+#: utils/misc/guc.c:3129
+#, c-format
+msgid "parameter \"%s\" cannot be changed after server start"
+msgstr "·þÎñÆ÷Æô¶¯ºó, ²ÎÊý \"%s\" ²»Äܸıä"
 
-#: postmaster/pgstat.c:1570
-#, fuzzy, c-format
-msgid "PGSTATBUFF: select() failed: %m"
-msgstr "ServerLoop: select Ê§°Ü: %s"
+#: utils/misc/guc.c:3139
+#, c-format
+msgid "parameter \"%s\" cannot be changed now"
+msgstr "²ÎÊý \"%s\" ÏÖÔÚ²»Äܸıä"
 
-#: postmaster/pgstat.c:1586
-#, fuzzy, c-format
-msgid "PGSTATBUFF: recvfrom() failed: %m"
-msgstr "pq_eof: recv() Ê§°Ü: %m"
+#: utils/misc/guc.c:3169
+#, c-format
+msgid "parameter \"%s\" cannot be set after connection start"
+msgstr "Áª½ÓÆô¶¯ºó, ²ÎÊý \"%s\" ²»ÄÜÉèÖÃ"
 
-#: postmaster/pgstat.c:1661
-#, fuzzy, c-format
-msgid "PGSTATBUFF: write() failed: %m"
-msgstr "pq_eof: recv() Ê§°Ü: %m"
+#: utils/misc/guc.c:3179 utils/misc/guc.c:3713
+#, c-format
+msgid "permission denied to set parameter \"%s\""
+msgstr "ÉèÖòÎÊý \"%s\" È¨ÏÞ²»ÔÊÐí"
 
-#: postmaster/pgstat.c:1714
+#: utils/misc/guc.c:3236
 #, c-format
-msgid "PGSTAT: Invalid backend ID %d"
-msgstr ""
+msgid "parameter \"%s\" requires a Boolean value"
+msgstr "²ÎÊý \"%s\" ÐèÒªÒ»¸ö²¼¶ûÖµ"
 
-#: postmaster/pgstat.c:1770
-msgid "PGSTAT: DB hash table out of memory - abort"
-msgstr ""
+#: utils/misc/guc.c:3268 utils/misc/guc.c:3376
+#, c-format
+msgid "invalid value for parameter \"%s\": %d"
+msgstr "²ÎÊý \"%s\" µÄÖµÎÞЧ: %d"
 
-#: postmaster/pgstat.c:1799 postmaster/pgstat.c:2214 postmaster/pgstat.c:2221
-msgid "PGSTAT: failed to initialize hash table for new database entry"
-msgstr ""
+#: utils/misc/guc.c:3328
+#, c-format
+msgid "parameter \"%s\" requires an integer value"
+msgstr "²ÎÊý \"%s\" ÐèÒªÒ»¸öÕûÊýÖµ"
 
-#: postmaster/pgstat.c:1851
-msgid "PGSTAT: dead backend hash table out of memory"
-msgstr ""
+#: utils/misc/guc.c:3336
+#, c-format
+msgid "%d is outside the valid range for parameter \"%s\" (%d .. %d)"
+msgstr "%d ³¬³öÁ˲ÎÊý \"%s\" (%d .. %d) µÄÓÐЧ·¶Î§"
 
-#: postmaster/pgstat.c:1898
-#, fuzzy, c-format
-msgid "PGSTAT: cannot open temp stats file %s: %m"
-msgstr "ÎÞ·¨´´½¨Îļþ %s: %s"
+#: utils/misc/guc.c:3436
+#, c-format
+msgid "parameter \"%s\" requires a numeric value"
+msgstr "²ÎÊý \"%s\" ÐèÒªÒ»¸öÊý×ÖÖµ"
 
-#: postmaster/pgstat.c:1924
-msgid "PGSTAT: database hash table corrupted during cleanup - abort"
-msgstr ""
+#: utils/misc/guc.c:3444
+#, c-format
+msgid "%g is outside the valid range for parameter \"%s\" (%g .. %g)"
+msgstr "%g ³¬³öÁ˲ÎÊý \"%s\" (%g .. %g) µÄÓÐЧ·¶Î§"
 
-#: postmaster/pgstat.c:1960
+#: utils/misc/guc.c:3477
 #, c-format
-msgid ""
-"PGSTAT: tables hash table for database %d corrupted during cleanup - abort"
-msgstr ""
+msgid "invalid value for parameter \"%s\": %g"
+msgstr "²ÎÊý \"%s\" µÄÖµÎÞЧ: %g"
 
-#: postmaster/pgstat.c:2007
+#: utils/misc/guc.c:3609
 #, c-format
-msgid "PGSTAT: Error closing temp stats file %s: %m"
-msgstr ""
+msgid "invalid value for parameter \"%s\": \"%s\""
+msgstr "²ÎÊý \"%s\" µÄÖµÎÞЧ: \"%s\""
 
-#: postmaster/pgstat.c:2014
-#, fuzzy, c-format
-msgid "PGSTAT: Cannot rename temp stats file %s: %m"
-msgstr "ÎÞ·¨´´½¨Îļþ %s: %s"
+#: utils/misc/guc.c:3716
+msgid "Must be superuser to change this value to false."
+msgstr "±ØÐëΪ³¬¼¶Óû§²Å¿ÉÒԸıä´ËֵΪ false"
 
-#: postmaster/pgstat.c:2035
-msgid "PGSTAT: dead backend hash table corrupted during cleanup - abort"
-msgstr ""
+#: utils/misc/guc.c:3718
+msgid "Must be superuser to increase this value or turn it off."
+msgstr "Ö»Óг¬¼¶Óû§ÄÜÔö¼Ó´ËÖµ»ò¹Ø±ÕËü."
 
-#: postmaster/pgstat.c:2100 postmaster/pgstat.c:2104
-msgid "PGSTAT: Creation of DB hash table failed"
-msgstr ""
+#: utils/misc/guc.c:3719
+msgid "Must be superuser to increase this value."
+msgstr "Ö»Óг¬¼¶Óû§ÄÜÔö¼ÓÕâ¸öÖµ."
 
-#: postmaster/pgstat.c:2142 postmaster/pgstat.c:2148 postmaster/pgstat.c:2177
-#: postmaster/pgstat.c:2183 postmaster/pgstat.c:2248 postmaster/pgstat.c:2254
-#: postmaster/pgstat.c:2287 postmaster/pgstat.c:2293 postmaster/pgstat.c:2316
-#: postmaster/pgstat.c:2322 postmaster/pgstat.c:2370 postmaster/pgstat.c:2376
-#: postmaster/pgstat.c:2411 postmaster/pgstat.c:2417
-msgid "PGSTAT: corrupted pgstat.stat file"
-msgstr ""
+#: utils/misc/guc.c:3888
+#, c-format
+msgid "SET %s takes only one argument"
+msgstr "SET %s Ö»ÄÜ´øÒ»¸ö²ÎÊý"
 
-#: postmaster/pgstat.c:2164 postmaster/pgstat.c:2170
-msgid "PGSTAT: DB hash table out of memory"
-msgstr ""
+#: utils/misc/guc.c:3992
+msgid "SET requires parameter name"
+msgstr "SET ÐèÒª²ÎÊýÃû×Ö"
 
-#: postmaster/pgstat.c:2273 postmaster/pgstat.c:2279
-msgid "PGSTAT: Tab hash table out of memory"
-msgstr ""
+#: utils/misc/guc.c:4056
+#, c-format
+msgid "attempt to redefine parameter \"%s\""
+msgstr "³¢ÊÔÖØж¨Òå²ÎÊý \"%s\""
 
-#: postmaster/pgstat.c:2526
+#: utils/misc/guc.c:5002
 #, c-format
-msgid "PGSTAT: tables hash table out of memory for database %d - abort"
-msgstr ""
+msgid "could not parse setting for parameter \"%s\""
+msgstr "ÎÞ·¨·ÖÎö²ÎÊý \"%s\" µÄÉèÖÃ"
 
-#: postmaster/pgstat.c:2706
-msgid "PGSTAT: failed to reinitialize hash table for database entry"
-msgstr ""
+#: utils/misc/guc.c:5200
+msgid "invalid list syntax for parameter \"log_destination\""
+msgstr "ÎÞЧµÄ \"log_destination\" ²ÎÊýÁбíÓï·¨"
 
-#: postmaster/postmaster.c:329
+#: utils/misc/guc.c:5223
 #, c-format
-msgid "data directory %s was not found"
-msgstr "δÕÒµ½Êý¾ÝĿ¼ %s"
+msgid "unrecognised \"log_destination\" key word: \"%s\""
+msgstr "²»ÈϿɵĠ\"log_destination\" ¹Ø¼ü×Ö: \"%s\""
 
-#: postmaster/postmaster.c:331
-#, c-format
-msgid "could not read permissions of directory %s: %m"
-msgstr ""
+#: utils/misc/guc.c:5457
+msgid "SET AUTOCOMMIT TO OFF is no longer supported"
+msgstr "SET AUTOCOMMIT TO OFF ²»ÔÙ±»Ö§³Ö"
 
-#: postmaster/postmaster.c:336
+#: utils/misc/guc.c:5505
 #, c-format
-msgid ""
-"data directory %s has group or world access; permissions should be u=rwx "
-"(0700)"
-msgstr ""
+msgid "invalid syntax for custom_variable_classes: \"%s\""
+msgstr "²»ºÏ·¨µÄ custom_variable_classes Óï·¨: \"%s\""
 
-#: postmaster/postmaster.c:349
-#, c-format
+#: utils/misc/guc.c:5534
+msgid "cannot enable parameter when \"log_statement_stats\" is true"
+msgstr "µ± \"log_statement_stats\" Îª true Ê±, ²»ÄÜÆô¶¯²ÎÊý."
+
+#: utils/misc/guc.c:5550
 msgid ""
-"%s does not find the database system.\n"
-"Expected to find it in the PGDATA directory \"%s\",\n"
-"but unable to open file \"%s\": %s\n"
-"\n"
+"cannot enable \"log_statement_stats\" when \"log_parser_stats\", "
+"\"log_planner_stats\", or \"log_executor_stats\" is true"
 msgstr ""
-"%s Î´ÕÒµ½Êý¾Ý¿âϵͳ.\n"
-"Ô¤ÆÚÔÚ PGDATA Ä¿Â¼ \"%s\" ÕÒµ½,\n"
-"µ«ÊÇÎÞ·¨´ò¿ªÎļþ \"%s\": %s\n"
-"\n"
+"µ± \"log_parser_stats\", \"log_planner_stats\", »òÕß "
+"\"log_executor_stats\" Îª true Ê±, ²»ÄÜÆô¶¯ \"log_statement_stats\"."
 
-#: postmaster/postmaster.c:434
-msgid "Assert checking is not compiled in."
-msgstr "ûÓаѶÏÑÔ¼ì²é±àÒëµ½³ÌÐòÀï."
+#: utils/misc/guc.c:5568
+msgid "cannot set transaction read-write mode inside a read-only transaction"
+msgstr "²»ÄÜÔÚÒ»¸öÖ»¶ÁÊÂÎïÀïÃæÉèÖöÁдģʽ"
 
-#: postmaster/postmaster.c:540 tcop/postgres.c:1575
-#, c-format
-msgid "--%s requires argument"
-msgstr "--%s ÐèÒª²ÎÊý"
+#: utils/misc/help_config.c:125
+msgid "internal error: unrecognized run-time parameter type\n"
+msgstr "ÄÚ²¿´íÎó: Î´ÖªµÄÔËÐÐʱ²ÎÊýÀàÐÍ\n"
 
-#: postmaster/postmaster.c:542 tcop/postgres.c:1577
+#: utils/mmgr/aset.c:336
 #, c-format
-msgid "-c %s requires argument"
-msgstr "-c %s ÐèÒª²ÎÊý"
+msgid "Failed while creating memory context \"%s\"."
+msgstr "´´½¨ÄÚ´æÉÏÏÂÎÄ \"%s\" Ê§°Ü."
 
-#: postmaster/postmaster.c:553 postmaster/postmaster.c:564
-#: postmaster/postmaster.c:641
+#: utils/mmgr/aset.c:502 utils/mmgr/aset.c:699 utils/mmgr/aset.c:892
 #, c-format
-msgid "Try '%s --help' for more information.\n"
-msgstr "Óà'%s --help' »ñÈ¡¸ü¶àµÄÐÅÏ¢.\n"
+msgid "Failed on request of size %lu."
+msgstr "·ÖÅäÄÚ´æ %lu ´óСʧ°Ü."
 
-#: postmaster/postmaster.c:563
+#: utils/mmgr/portalmem.c:170
 #, c-format
-msgid "invalid argument -- %s"
-msgstr "ÎÞЧ²ÎÊý -- %s"
+msgid "cursor \"%s\" already exists"
+msgstr "Óαê \"%s\" ÒѾ­´æÔÚ"
 
-#: postmaster/postmaster.c:587
-msgid ""
-"The number of buffers (-B) must be at least twice the number of allowed "
-"connections (-N) and at least 16."
-msgstr "»º³åÇøµÄÊýÁ¿ (-B) ±ØÐëÖÁÉÙÊÇÔÊÐíµÄÁª½ÓÊý (-N)µÄÁ½±¶²¢ÇÒÖÁÉÙΪ 16."
+#: utils/mmgr/portalmem.c:174
+#, c-format
+msgid "closing existing cursor \"%s\""
+msgstr "¹Ø±ÕÒÑ´æÔÚµÄÓαê \"%s\""
 
-#: postmaster/postmaster.c:593
-msgid "superuser_reserved_connections must be less than max_connections."
-msgstr ""
+#: utils/sort/tuplesort.c:2082
+msgid "could not create unique index"
+msgstr "ÎÞ·¨´´½¨Î¨Ò»Ë÷Òý"
 
-#: postmaster/postmaster.c:602
-msgid "Invalid datetoken tables, please fix."
-msgstr ""
+#: utils/sort/tuplesort.c:2083
+msgid "Table contains duplicated values."
+msgstr "±í°üº¬Öظ´Öµ."
 
-#: postmaster/postmaster.c:620
+#: utils/sort/logtape.c:202
 #, c-format
-msgid "%s: PostmasterMain: initial environ dump:"
-msgstr ""
+msgid "could not write block %ld of temporary file: %m"
+msgstr "ÎÞ·¨Ð´ÈëÁÙʱÎļþ¿é %ld: %m"
 
-#: postmaster/postmaster.c:621 postmaster/postmaster.c:624
-msgid "-----------------------------------------"
-msgstr ""
+#: utils/sort/logtape.c:204
+msgid "Perhaps out of disk space?"
+msgstr "¿ÉÄܳ¬³ö´ÅÅÌ¿Õ¼ä?"
 
-#: postmaster/postmaster.c:623 postmaster/postmaster.c:2325
+#: utils/sort/logtape.c:221
 #, c-format
-msgid "\t%s"
-msgstr ""
+msgid "could not read block %ld of temporary file: %m"
+msgstr "ÎÞ·¨¶ÁÈ¡ÁÙʱÎļþ¿é %ld: %m"
 
-#: postmaster/postmaster.c:631 tcop/postgres.c:1720
+#: utils/cache/typcache.c:155 parser/parse_type.c:206 parser/parse_type.c:237
 #, c-format
-msgid "%s: could not locate executable, bailing out..."
-msgstr "%s: ÎÞ·¨¶¨Î»¿ÉÖ´ÐÐÎļþ, Í˳ö..."
-
-#: postmaster/postmaster.c:640
-msgid "For SSL, TCP/IP connections must be enabled."
-msgstr "¶ÔÓÚ SSL ¶øÑÔ, ±ØÐë´ò¿ª TCP/IP Áª½Ó."
+msgid "type \"%s\" is only a shell"
+msgstr "ÀàÐÍ \"%s\" Ö»ÊÇÒ»¸ö shell"
 
-#: postmaster/postmaster.c:689
-msgid "IPv6 support disabled --- perhaps the kernel does not support IPv6"
-msgstr ""
-
-#: postmaster/postmaster.c:697
-msgid "cannot create INET stream port"
-msgstr "ÎÞ·¨´´½¨ INET Á÷¶Ë¿Ú"
+#: utils/cache/typcache.c:369 commands/indexcmds.c:680
+#, c-format
+msgid "there are multiple default operator classes for data type %s"
+msgstr "Êý¾ÝÀàÐÍ %s Óжà¸öĬÈϵIJÙ×÷·û±í"
 
-#: postmaster/postmaster.c:702
-msgid "IPv4 socket created"
-msgstr ""
+#: utils/cache/typcache.c:414
+#, c-format
+msgid "type %s is not composite"
+msgstr "ÀàÐÍ %s ²»ÊǸ´ºÏÀàÐÍ"
 
-#: postmaster/postmaster.c:714
-msgid "cannot create UNIX stream port"
-msgstr "ÎÞ·¨´´½¨ UNIX Á÷¶Ë¿Ú"
+#: utils/cache/typcache.c:428
+msgid "record type has not been registered"
+msgstr "¼Ç¼ÀàÐÍûÓÐ×¢²á"
 
-#: postmaster/postmaster.c:834
+#: utils/cache/lsyscache.c:1679 utils/cache/lsyscache.c:1715
+#: utils/cache/lsyscache.c:1751 utils/cache/lsyscache.c:1787
 #, c-format
-msgid "fork failed: %s"
-msgstr "fork Ê§°Ü: %s"
+msgid "type %s is only a shell"
+msgstr "ÀàÐÍ %s Ö»ÊÇÒ»¸ö shell"
 
-#: postmaster/postmaster.c:856
+#: utils/cache/lsyscache.c:1684
 #, c-format
-msgid "cannot disassociate from controlling TTY: %s"
-msgstr "ÎÞ·¨Óë¿ØÖÆ TTY: %s ¶Ï¿ªÁªÏµ"
+msgid "no input function available for type %s"
+msgstr "ûÓÐÓÐЧµÄ %s ÀàÐÍÊäÈ뺯Êý"
 
-#: postmaster/postmaster.c:876
+#: utils/cache/lsyscache.c:1720
 #, c-format
-msgid ""
-"%s is the PostgreSQL server.\n"
-"\n"
-msgstr ""
-"%s ÊÇ PostgreSQL ·þÎñÆ÷.\n"
-"\n"
+msgid "no output function available for type %s"
+msgstr "ûÓÐÓÐЧµÄ %s ÀàÐÍÊä³öº¯Êý"
 
-#: postmaster/postmaster.c:877
+#: utils/cache/relcache.c:3264
 #, c-format
-msgid ""
-"Usage:\n"
-"  %s [OPTION]...\n"
-"\n"
-msgstr ""
-"Ó÷¨:\n"
-"  %s [Ñ¡Ïî]...\n"
-"\n"
+msgid "could not create relation-cache initialization file \"%s\": %m"
+msgstr "ÎÞ·¨´´½¨ relation-cache ³õʼ»¯Îļþ \"%s\": %m"
 
-#: postmaster/postmaster.c:878
-msgid "Options:\n"
-msgstr "Ñ¡Ïî:\n"
+#: utils/cache/relcache.c:3266
+msgid "Continuing anyway, but there's something wrong."
+msgstr "ÈÔ¼ÌÐø, µ«¿Ï¶¨ÓÐЩ´íÎó´æÔÚ."
 
-#: postmaster/postmaster.c:880
-msgid "  -A 1|0          enable/disable run-time assert checking\n"
-msgstr "  -A 1|0          ´ò¿ª/¹Ø±ÕÔËÐÐʱ¶ÏÑÔ¼ì²é\n"
+#: utils/error/elog.c:1128
+#, c-format
+msgid "could not reopen file \"%s\" as stderr: %m"
+msgstr "ÎÞ·¨×÷Ϊ±ê×¼´íÎóÖØдò¿ªÎļþ \"%s\": %m"
 
-#: postmaster/postmaster.c:882
+#: utils/error/elog.c:1141
 #, c-format
-msgid "  -B NBUFFERS     number of shared buffers (default %d)\n"
-msgstr "  -B »º³åÇøÊýÁ¿   ¹²Ïí»º³åÇøµÄÊýÁ¿ (ȱʡÊÇ %d)\n"
+msgid "could not reopen file \"%s\" as stdout: %m"
+msgstr "ÎÞ·¨×÷Ϊ±ê×¼Êä³öÖØдò¿ªÎļþ \"%s\": %m"
 
-#: postmaster/postmaster.c:883
-msgid "  -c NAME=VALUE   set run-time parameter\n"
-msgstr "  -c Ãû×Ö=ÊýÖµ   ÉèÖÃÔËÐÐʱ²ÎÊý\n"
+#: utils/error/elog.c:1350 utils/error/elog.c:1360
+msgid "[unknown]"
+msgstr "[δ֪]"
 
-#: postmaster/postmaster.c:884
-msgid "  -d 1-5          debugging level\n"
-msgstr "  -d 1-5         µ÷ÊÔ¼¶±ð\n"
+#: utils/error/elog.c:1474 utils/error/elog.c:1667 utils/error/elog.c:1743
+msgid "missing error text"
+msgstr "ȱÉÙ´íÎóÐÅÏ¢"
 
-#: postmaster/postmaster.c:885
-msgid "  -D DATADIR      database directory\n"
-msgstr "  -D Êý¾ÝĿ¼     Êý¾Ý¿âĿ¼\n"
+#: utils/error/elog.c:1477 utils/error/elog.c:1480 utils/error/elog.c:1746
+#: utils/error/elog.c:1749
+#, c-format
+msgid " at character %d"
+msgstr " µÚ %d ¸ö×Ö·û´¦"
 
-#: postmaster/postmaster.c:886
-msgid "  -F              turn fsync off\n"
-msgstr "  -F              ¹Ø±Õ fsync\n"
+#: utils/error/elog.c:1490
+msgid "DETAIL:  "
+msgstr "ÏêϸÐÅÏ¢:  "
 
-#: postmaster/postmaster.c:887
-msgid "  -h HOSTNAME     host name or IP address to listen on\n"
-msgstr "  -h Ö÷»úÃû       ÕìÌýµÄÖ÷»úÃû»òÕß IP µØÖ·\n"
+#: utils/error/elog.c:1497
+msgid "HINT:  "
+msgstr "Ìáʾ:  "
 
-#: postmaster/postmaster.c:888
-msgid "  -i              enable TCP/IP connections\n"
-msgstr "  -i              ´ò¿ª TCP/IP Áª½Ó\n"
+#: utils/error/elog.c:1504
+msgid "QUERY:  "
+msgstr "²éѯ:  "
 
-#: postmaster/postmaster.c:889
-msgid "  -k DIRECTORY    Unix-domain socket location\n"
-msgstr "  -k Ä¿Â¼         Unix ÓòÌ×½Ó×ÖµÄλÖÃ\n"
+#: utils/error/elog.c:1511
+msgid "CONTEXT:  "
+msgstr "ÉÏÏÂÎÄ:  "
 
-#: postmaster/postmaster.c:891
-msgid "  -l              enable SSL connections\n"
-msgstr "  -l              ´ò¿ª SSL Áª½Ó\n"
+#: utils/error/elog.c:1521
+#, c-format
+msgid "LOCATION:  %s, %s:%d\n"
+msgstr "λÖÃ:  %s, %s:%d\n"
 
-#: postmaster/postmaster.c:893
+#: utils/error/elog.c:1528
 #, c-format
-msgid "  -N MAX-CONNECT  maximum number of allowed connections (default %d)\n"
-msgstr "  -N ×î´óÁª½Ó     ÔÊÐí½¨Á¢µÄ×î´óÁª½ÓÊýÄ¿ (ȱʡÊÇ %d)\n"
+msgid "LOCATION:  %s:%d\n"
+msgstr "λÖÃ:  %s:%d\n"
 
-#: postmaster/postmaster.c:895
-msgid "  -o OPTIONS      pass 'OPTIONS' to each backend server\n"
-msgstr "  -o Ñ¡Ïî         °Ñ'Ñ¡Ïî'´«µÝ¸øÿһ¸öºó¶Ë·þÎñÆ÷\n"
+#: utils/error/elog.c:1541
+msgid "STATEMENT:  "
+msgstr "Óï¾ä:  "
 
-#: postmaster/postmaster.c:896
+#: utils/error/elog.c:1859
 #, c-format
-msgid "  -p PORT         port number to listen on (default %d)\n"
-msgstr "  -p PORT         ÕìÌýµÄ¶Ë¿ÚºÅ (ȱʡÊÇ %d)\n"
-
-#: postmaster/postmaster.c:897
-msgid ""
-"  -S              silent mode (start in background without logging output)\n"
-msgstr "  -S              °²¾²Ä£Ê½(ºó¶ËÆô¶¯Ö®ºó²»ÔټǼÈÕÖ¾Êä³ö)\n"
+msgid "operating system error %d"
+msgstr "²Ù×÷ϵͳ´íÎó %d"
 
-#: postmaster/postmaster.c:898
-msgid "  --help          show this help, then exit\n"
-msgstr "  --help          ÏÔʾ´Ë°ïÖúÐÅÏ¢, È»ºóÍ˳ö\n"
+#: utils/error/elog.c:1882
+msgid "DEBUG"
+msgstr "µ÷ÊÔ"
 
-#: postmaster/postmaster.c:899
-msgid "  --version       output version information, then exit\n"
-msgstr "  --version       Êä³ö°æ±¾ÐÅÏ¢, È»ºóÍ˳ö\n"
+#: utils/error/elog.c:1886
+msgid "LOG"
+msgstr "ÈÕÖ¾"
 
-#: postmaster/postmaster.c:901
-msgid ""
-"\n"
-"Developer options:\n"
-msgstr ""
-"\n"
-"¿ª·¢ÈËԱѡÏî:\n"
+#: utils/error/elog.c:1889
+msgid "INFO"
+msgstr "ÐÅÏ¢"
 
-#: postmaster/postmaster.c:902
-msgid ""
-"  -n              do not reinitialize shared memory after abnormal exit\n"
-msgstr "  -n              ÔÚÒì³£Í˳öÖ®ºó²»ÔÙÖØгõʼ»¯¹²ÏíÄÚ´æ\n"
+#: utils/error/elog.c:1892
+msgid "NOTICE"
+msgstr "×¢Òâ"
 
-#: postmaster/postmaster.c:903
-msgid "  -s              send SIGSTOP to all backend servers if one dies\n"
-msgstr "  -s              Èç¹ûÒ»¸öºó¶ËÍ˳ö, ÄÇôÏòËùÓкó¶Ë·¢ËÍ SIGSTOP\n"
+#: utils/error/elog.c:1895
+msgid "WARNING"
+msgstr "¾¯¸æ"
 
-#: postmaster/postmaster.c:905
-msgid ""
-"\n"
-"Please read the documentation for the complete list of run-time\n"
-"configuration settings and how to set them on the command line or in\n"
-"the configuration file.\n"
-"\n"
-"Report bugs to <pgsql-bugs@postgresql.org>.\n"
-msgstr ""
-"\n"
-"ÇëÔĶÁÎĵµ»ñÈ¡ÔËÐÐʱÅäÖÃÉèÖõÄÍêÕûÁбí\n"
-"ÒÔ¼°ÈçºÎÔÚÃüÁîÐлòÕßÔÚÅäÖÃÎļþÀïÉèÖÃËüÃǵÄÏêϸÐÅÏ¢.\n"
-"\n"
-"ÇëÏò <pgsql-bugs@postgresql.org> ±¨¸æ³ô³æ.\n"
+#: utils/error/elog.c:1898
+msgid "ERROR"
+msgstr "´íÎó"
 
-#: postmaster/postmaster.c:987
-#, c-format
-msgid "ServerLoop: select failed: %m"
-msgstr "ServerLoop: select Ê§°Ü: %m"
+#: utils/error/elog.c:1901
+msgid "FATAL"
+msgstr "ÖÂÃü´íÎó"
 
-#: postmaster/postmaster.c:1113 postmaster/postmaster.c:1128
-msgid "incomplete startup packet"
-msgstr "²»ÍêÕûµÄÆô¶¯°ü"
+#: utils/error/elog.c:1904
+msgid "PANIC"
+msgstr "±ÈÖÂÃü´íÎó»¹¹ý·ÖµÄ´íÎó"
 
-#: postmaster/postmaster.c:1121
-msgid "invalid length of startup packet"
-msgstr "ÎÞЧµÄÆô¶¯°ü³¤¶È"
+#: utils/error/assert.c:34
+msgid "TRAP: ExceptionalCondition: bad arguments\n"
+msgstr "TRAP: ExceptionalCondition: ´íÎó²ÎÊý\n"
 
-#: postmaster/postmaster.c:1161
+#: utils/error/assert.c:37
 #, c-format
-msgid "failed to send SSL negotiation response: %m"
-msgstr "·¢ËÍ SSL Ð­ÉÌÏìӦʧ°Ü: %m"
-
-#: postmaster/postmaster.c:1183
-msgid "unsupported frontend protocol"
-msgstr ""
+msgid "TRAP: %s(\"%s\", File: \"%s\", Line: %d)\n"
+msgstr "TRAP: %s(\"%s\", Îļþ: \"%s\", ÐÐÊý: %d)\n"
 
-#: postmaster/postmaster.c:1210
-msgid "no PostgreSQL user name specified in startup packet"
-msgstr "ÔÚÆô¶¯°üÖÐûÓÐÖ¸¶¨ PostgreSQL Óû§Ãû"
+#: access/hash/hashovfl.c:522
+#, c-format
+msgid "out of overflow pages in hash index \"%s\""
+msgstr "É¢ÁÐË÷Òý \"%s\" ÖÐÒ³Òç³ö"
 
-#: postmaster/postmaster.c:1243
-msgid "The database system is starting up"
-msgstr "Êý¾Ý¿âϵͳÆô¶¯ÖÐ"
+#: access/hash/hashutil.c:46
+msgid "hash indexes cannot contain null keys"
+msgstr "É¢ÁÐË÷Òý²»ÄÜ°üº¬¿Õ¼üÖµ"
 
-#: postmaster/postmaster.c:1246
-msgid "The database system is shutting down"
-msgstr "Êý¾Ý¿âϵͳֹͣÖÐ"
+#: access/hash/hashutil.c:127
+#, c-format
+msgid "index \"%s\" is not a hash index"
+msgstr "Ë÷Òý \"%s\" ²»ÊÇÒ»¸öÉ¢ÁÐË÷Òý"
 
-#: postmaster/postmaster.c:1249
-msgid "The database system is in recovery mode"
-msgstr "Êý¾Ý¿âϵͳÔÚ»Ö¸´Ä£Ê½ÖÐ"
+#: access/hash/hashutil.c:133
+#, c-format
+msgid "index \"%s\" has wrong hash version"
+msgstr "Ë÷Òý \"%s\" ÓдíÎóµÄÉ¢Áа汾"
 
-#: postmaster/postmaster.c:1252 storage/ipc/sinval.c:52
-#: storage/lmgr/proc.c:219
-msgid "Sorry, too many clients already"
-msgstr "¶Ô²»Æð, ÒѾ­ÓÐÌ«¶àµÄ¿Í»§"
+#: access/hash/hashutil.c:134
+msgid "Please REINDEX it."
+msgstr "ÇëÖؽ¨Ë÷Òý (REINDEX)."
 
-#: postmaster/postmaster.c:1282
-#, c-format
-msgid "processCancelRequest: CheckPointPID in cancel request for process %d"
-msgstr ""
+#: access/hash/hashsearch.c:146
+msgid "hash indexes do not support whole-index scans"
+msgstr "É¢ÁÐË÷Òý²»Ö§³ÖÍêÕûË÷Òý (whole-index) É¨Ãè"
 
-#: postmaster/postmaster.c:1296
+#: access/hash/hashinsert.c:90
 #, c-format
-msgid "processing cancel request: sending SIGINT to process %d"
-msgstr ""
+msgid "index row size %lu exceeds hash maximum %lu"
+msgstr "Ë÷ÒýÁдóС %lu ³¬¹ýÉ¢ÁÐ×î´óÖµ %lu"
 
-#: postmaster/postmaster.c:1302
+#: access/heap/hio.c:109
 #, c-format
-msgid "bad key in cancel request for process %d"
-msgstr ""
+msgid "row is too big: size %lu, maximum size %lu"
+msgstr "ÐÐÌ«´ó: ³ß´ç %lu, ×î´óÖµ %lu"
 
-#: postmaster/postmaster.c:1309
+#: access/heap/heapam.c:608 access/heap/heapam.c:643 access/heap/heapam.c:678
+#: catalog/aclchk.c:286
 #, c-format
-msgid "bad pid in cancel request for process %d"
-msgstr ""
-
-#: postmaster/postmaster.c:1352
-msgid "ConnCreate: malloc failed"
-msgstr ""
+msgid "\"%s\" is an index"
+msgstr "\"%s\" ÊÇÒ»¸öË÷Òý"
 
-#: postmaster/postmaster.c:1447
-msgid "Received SIGHUP, reloading configuration files"
-msgstr ""
+#: access/heap/heapam.c:613 access/heap/heapam.c:648 access/heap/heapam.c:683
+#, c-format
+msgid "\"%s\" is a special relation"
+msgstr "\"%s\" ÎªÌرð¹Øϵ"
 
-#: postmaster/postmaster.c:1471
+#: access/heap/heapam.c:618 access/heap/heapam.c:653 access/heap/heapam.c:688
+#: catalog/aclchk.c:293
 #, c-format
-msgid "pmdie %d"
-msgstr ""
+msgid "\"%s\" is a composite type"
+msgstr "\"%s\" Îª»ìºÍÀàÐÍ"
 
-#: postmaster/postmaster.c:1485
-msgid "smart shutdown request"
-msgstr ""
+#: access/rtree/rtree.c:646
+msgid "variable-length rtree keys are not supported"
+msgstr "²»Ö§³Ö±ä³¤ rtree ¼ü"
 
-#: postmaster/postmaster.c:1497 postmaster/postmaster.c:1541
+#: access/rtree/rtree.c:786
 #, c-format
-msgid "shutdown process %d already running"
-msgstr "Í£Ö¹½ø³Ì %d ÒѾ­ÔÚÔËÐÐ"
-
-#: postmaster/postmaster.c:1515
-msgid "fast shutdown request"
-msgstr "¿ìËÙÍ£Ö¹ÇëÇó"
+msgid "index row size %lu exceeds rtree maximum, %lu"
+msgstr "Ë÷ÒýÁР(row) ´óС %lu ³¬³öÁË rtree µÄ×î´óÖµ, %lu"
 
-#: postmaster/postmaster.c:1521
-msgid "aborting any active transactions"
-msgstr "ÖжÏÈκ줻îÊÂÎñ"
+#: access/common/indextuple.c:57
+#, c-format
+msgid "number of index columns (%d) exceeds limit (%d)"
+msgstr "Ë÷Òý×ֶθöÊý (%d) ³¬³öÏÞÖÆ (%d)"
 
-#: postmaster/postmaster.c:1557
-msgid "immediate shutdown request"
-msgstr "Á¢¼´Í£Ö¹ÇëÇó"
+#: access/common/indextuple.c:165
+#, c-format
+msgid "index row requires %lu bytes, maximum size is %lu"
+msgstr "Ë÷ÒýÐÐÐèÒª %lu ×Ö½Ú, ×î´óֵΪ %lu"
 
-#: postmaster/postmaster.c:1592
-msgid "reaping dead processes"
-msgstr ""
+#: access/common/heaptuple.c:580
+#, c-format
+msgid "number of columns (%d) exceeds limit (%d)"
+msgstr "×ֶθöÊý (%d) ³¬³öÏÞÖÆ (%d)"
 
-#: postmaster/postmaster.c:1609
-msgid "statistics collector process"
-msgstr ""
+#: access/common/tupdesc.c:511
+#, c-format
+msgid "column \"%s\" cannot be declared SETOF"
+msgstr "×ֶΠ\"%s\" ²»Äܱ»ÉùÃ÷Ϊ SETOF"
 
-#: postmaster/postmaster.c:1622
-msgid "shutdown process"
-msgstr "Í£Ö¹½ø³Ì"
+#: access/common/tupdesc.c:630 access/common/tupdesc.c:661
+msgid "number of aliases does not match number of columns"
+msgstr "±ðÃû¸öÊýÓë×ֶθöÊý²»Æ¥Åä"
 
-#: postmaster/postmaster.c:1633
-msgid "startup process"
-msgstr "Æô¶¯½ø³Ì"
+#: access/common/tupdesc.c:655
+msgid "no column alias was provided"
+msgstr "ûÓÐÌṩ×ֶαðÃû"
 
-#: postmaster/postmaster.c:1635
-msgid "aborting startup due to startup process failure"
-msgstr ""
+#: access/common/tupdesc.c:679
+msgid "could not determine row description for function returning record"
+msgstr "ÎÞ·¨È·¶¨º¯Êý·µ»Ø¼Ç¼µÄÐÐÃèÊö"
 
-#: postmaster/postmaster.c:1663
+#: access/transam/slru.c:452
 #, c-format
-msgid "startup process %d died while shutdown process %d already running"
-msgstr ""
+msgid "file \"%s\" doesn't exist, reading as zeroes"
+msgstr "Îļþ \"%s\" ²»´æÔÚ, ¼ÙÉè¶ÁÈ¡ÁË 0 ×Ö½Ú"
 
-#: postmaster/postmaster.c:1684
-msgid ""
-"all server processes terminated; reinitializing shared memory and semaphores"
-msgstr "ËùÓеķþÎñÆ÷½ø³Ì±»ÖÐÖ¹; ÖØгõʼ»¯¹²ÏíÄÚ´æºÍÐźÅ"
+#: access/transam/slru.c:637 access/transam/slru.c:644
+#: access/transam/slru.c:651 access/transam/slru.c:658
+#: access/transam/slru.c:665 access/transam/slru.c:672
+#: access/transam/slru.c:679
+#, c-format
+msgid "could not access status of transaction %u"
+msgstr "ÎÞ·¨´¦ÀíÊÂÎï %u µÄ״̬"
 
-#: postmaster/postmaster.c:1722
-msgid "child process"
-msgstr "×Ó½ø³Ì"
+#: 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
+#, c-format
+msgid "could not create file \"%s\": %m"
+msgstr "ÎÞ·¨´´½¨Îļþ \"%s\": %m"
 
-#: postmaster/postmaster.c:1767
-msgid "server process"
-msgstr "·þÎñÆ÷½ø³Ì"
+#: access/transam/slru.c:652
+#, c-format
+msgid "could not seek in file \"%s\" to offset %u: %m"
+msgstr "ÎÞ·¨ÔÚÎļþ \"%s\" Æ«ÒÆÁ¿ %u ²éÕÒ: %m"
 
-#: postmaster/postmaster.c:1768
-msgid "terminating any other active server processes"
-msgstr "ÖжÏÈκÎÆäËüÒѼ¤»îµÄ·þÎñÆ÷½ø³Ì"
+#: access/transam/slru.c:659
+#, c-format
+msgid "could not read from file \"%s\" at offset %u: %m"
+msgstr "ÎÞ·¨´ÓÎļþ \"%s\" Æ«ÒÆÁ¿ %u ¶ÁÈ¡: %m"
 
-#: postmaster/postmaster.c:1789
+#: access/transam/slru.c:666
 #, c-format
-msgid "CleanupProc: sending %s to process %d"
-msgstr "CleanupProc: ·¢ËÍ %s µ½½ø³Ì %d"
+msgid "could not write to file \"%s\" at offset %u: %m"
+msgstr "ÎÞ·¨ÍùÎļþ \"%s\" Æ«ÒÆÁ¿ %u Ð´Èë: %m"
 
-#: postmaster/postmaster.c:1833
+#: access/transam/slru.c:673 access/transam/xlog.c:1563
+#: access/transam/xlog.c:1688 access/transam/xlog.c:3011
 #, c-format
-msgid "%s (pid %d) exited with exit code %d"
-msgstr "%s (pid %d) ÒÑÍ˳ö, Í˳ö´úÂë %d"
+msgid "could not fsync file \"%s\": %m"
+msgstr "ÎÞ·¨ fsync Îļþ \"%s\": %m"
 
-#: postmaster/postmaster.c:1836
+#: access/transam/slru.c:680 access/transam/xlog.c:1568
+#: access/transam/xlog.c:1693 access/transam/xlog.c:3016
 #, c-format
-msgid "%s (pid %d) was terminated by signal %d"
-msgstr "%s (pid %d) ±»ÐźŠ%d ÖжÏ"
+msgid "could not close file \"%s\": %m"
+msgstr "ÎÞ·¨¹Ø±ÕÎļþ \"%s\": %m"
 
-#: postmaster/postmaster.c:1839
+#: access/transam/slru.c:862
 #, c-format
-msgid "%s (pid %d) exited with unexpected status %d"
-msgstr "%s (pid %d) ÒÑÍ˳ö, ÒâÍâ״̬ %d"
+msgid "could not truncate directory \"%s\": apparent wraparound"
+msgstr ""
 
-#: postmaster/postmaster.c:1861
+#: access/transam/slru.c:948
 #, c-format
-msgid "SignalChildren: sending signal %d to process %d"
-msgstr "SignalChildren: ·¢ËÍÐźŠ%d µ½½ø³Ì %d"
+msgid "removing file \"%s\""
+msgstr "ɾ³ýÎļþ \"%s\""
 
-#: postmaster/postmaster.c:1899
-msgid "out of memory; connection startup aborted"
-msgstr "ÄÚ´æÒç³ö; Áª½ÓÆô¶¯ÖÐÖ¹"
+#: access/transam/slru.c:967 commands/tablespace.c:577
+#: commands/tablespace.c:721
+#, c-format
+msgid "could not read directory \"%s\": %m"
+msgstr "ÎÞ·¨¶ÁȡĿ¼ \"%s\": %m"
 
-#: postmaster/postmaster.c:1950
-msgid "connection startup failed"
-msgstr "Áª½ÓÆô¶¯Ê§°Ü"
+#: access/transam/xact.c:402
+msgid "cannot have more than 2^32-1 commands in a transaction"
+msgstr "ÔÚÒ»¸öÊÂÎïÖв»¿ÉÒÔ³¬¹ý 2^32-1 ¸öÃüÁî"
 
-#: postmaster/postmaster.c:1967
+#. translator: %s represents an SQL statement name
+#: access/transam/xact.c:1996
 #, c-format
-msgid "connection startup failed (fork failure): %s"
-msgstr "Áª½ÓÆô¶¯Ê§°Ü (fork Ê§°Ü): %s"
+msgid "%s cannot run inside a transaction block"
+msgstr "%s ÎÞ·¨ÔÚÊÂÎï¿éÖÐÔËÐÐ"
 
-#: postmaster/postmaster.c:1974
+#. translator: %s represents an SQL statement name
+#: access/transam/xact.c:2006
 #, c-format
-msgid "BackendStartup: forked pid=%d socket=%d"
-msgstr "BackendStartup: forked pid=%d socket=%d"
-
-#: postmaster/postmaster.c:2008
-msgid "Server process fork() failed: "
-msgstr "·þÎñÆ÷½ø³Ì fork() Ê§°Ü: "
+msgid "%s cannot run inside a subtransaction"
+msgstr "%s ÎÞ·¨ÔÚÒ»¸ö×ÓÊÂÎïÖÐÔËÐÐ"
 
-#: postmaster/postmaster.c:2161
+#. translator: %s represents an SQL statement name
+#: access/transam/xact.c:2018
 #, c-format
-msgid "connection received: host=%s port=%hu"
-msgstr "Áª½Ó½ÓÊÕµ½: Ö÷»ú=%s ¶Ë¿Ú=%hu"
+msgid "%s cannot be executed from a function"
+msgstr "À´×ÔÒ»¸öº¯ÊýµÄ %s ²»Äܱ»Ö´ÐÐ"
 
-#: postmaster/postmaster.c:2181
+#. translator: %s represents an SQL statement name
+#: access/transam/xact.c:2069
 #, c-format
-msgid "connection received: host=%s"
-msgstr "Áª½Ó½ÓÊÕµ½: Ö÷»ú=%s"
+msgid "%s may only be used in transaction blocks"
+msgstr "%s Ö»¿ÉÒÔÔÚÊÂÎï¿éÖÐʹÓÃ"
+
+#: access/transam/xact.c:2197
+msgid "there is already a transaction in progress"
+msgstr "ÒѾ­ÓÐÒ»¸öÊÂÎïÔÚÔËÐÐÖÐ"
 
-#: postmaster/postmaster.c:2201
-msgid "DoBackend: Unable to set timer for auth timeout"
-msgstr "DoBackend: ÎÞ·¨ÎªÈÏÖ¤³¬Ê±ÉèÖüÆʱÆ÷"
+#: access/transam/xact.c:2290 access/transam/xact.c:2377
+msgid "there is no transaction in progress"
+msgstr "ûÓÐÊÂÎïÔÚÔËÐÐÖÐ"
 
-#: postmaster/postmaster.c:2230
-msgid "DoBackend: Unable to disable timer for auth timeout"
-msgstr "DoBackend: ÎÞ·¨È¡ÏûÈÏÖ¤³¬Ê±µÄ¼ÆʱÆ÷"
+#: 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
+msgid "no such savepoint"
+msgstr ""
 
-#: postmaster/postmaster.c:2234
+#: access/transam/xlog.c:906
 #, c-format
-msgid "connection authorized: user=%s database=%s"
-msgstr "Áª½ÓÈÏÖ¤: Ö÷»ú=%s Êý¾Ý¿â=%s"
+msgid "could not create archive status file \"%s\": %m"
+msgstr "ÎÞ·¨´´½¨¹éµµ×´Ì¬Îļþ \"%s\": %m"
 
-#: postmaster/postmaster.c:2323
+#: access/transam/xlog.c:914
 #, c-format
-msgid "%s child[%d]: starting with ("
-msgstr "%s child[%d]: ¿ªÊ¼ÓÚ ("
+msgid "could not write archive status file \"%s\": %m"
+msgstr "ÎÞ·¨Ð´Èë¹éµµ×´Ì¬Îļþ \"%s\": %m"
 
-#: postmaster/postmaster.c:2326
-msgid ")"
-msgstr ")"
+#: access/transam/xlog.c:1179 access/transam/xlog.c:1303
+#: access/transam/xlog.c:5171
+#, c-format
+msgid "could not close log file %u, segment %u: %m"
+msgstr "ÎÞ·¨¹Ø±ÕÈÕÖ¾Îļþ %u, ¶Î %u: %m"
 
-#: postmaster/postmaster.c:2388
+#: access/transam/xlog.c:1237 access/transam/xlog.c:2407
 #, c-format
-msgid ""
-"Checkpoint segments are being created too frequently (%d secs)\n"
-"\tConsider increasing CHECKPOINT_SEGMENTS"
-msgstr ""
+msgid "could not seek in log file %u, segment %u to offset %u: %m"
+msgstr "ÎÞ·¨ÔÚÈÕÖ¾Îļþ %u ÖвéÕÒ, ¶Î %u Æ«ÒÆÁ¿ %u: %m"
 
-#: postmaster/postmaster.c:2646
+#: access/transam/xlog.c:1251
 #, c-format
-msgid "could not launch startup process (fork failure): %m"
-msgstr "ÎÞ·¨¿ªÊ¼Æô¶¯½ø³Ì (fork Ê§°Ü): %m"
+msgid "could not write to log file %u, segment %u at offset %u: %m"
+msgstr "ÎÞ·¨Ð´ÈëÈÕÖ¾Îļþ %u, ¶Î %u Æ«ÒÆÁ¿ %u: %m"
 
-#: postmaster/postmaster.c:2649
+#: 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
 #, c-format
-msgid "could not launch checkpoint process (fork failure): %m"
-msgstr "ÎÞ·¨¿ªÊ¼¼ì²é½ø³Ì (fork Ê§°Ü): %m"
+msgid "could not open file \"%s\" (log file %u, segment %u): %m"
+msgstr "ÎÞ·¨´ò¿ªÎļþ \"%s\" (ÈÕÖ¾Îļþ %u, ¶Î %u): %m"
 
-#: postmaster/postmaster.c:2652
+#: 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
 #, c-format
-msgid "could not launch shutdown process (fork failure): %m"
-msgstr "ÎÞ·¨¿ªÊ¼Í£Ö¹½ø³Ì (fork Ê§°Ü): %m"
+msgid "could not read file \"%s\": %m"
+msgstr "ÎÞ·¨¶ÁÈ¡Îļþ \"%s\": %m"
 
-#: postmaster/postmaster.c:2676
-msgid "CheckPointDataBase: malloc failed"
-msgstr "CheckPointDataBase: malloc Ê§°Ü"
+#: access/transam/xlog.c:1664
+#, c-format
+msgid "insufficient data in file \"%s\""
+msgstr "Îļþ \"%s\" ÖеÄÊý¾Ý²»×ã"
 
-#: postmaster/postmaster.c:2716
+#: access/transam/xlog.c:1776
 #, c-format
-msgid "cannot create file %s: %s"
-msgstr "ÎÞ·¨´´½¨Îļþ %s: %s"
+msgid ""
+"could not link file \"%s\" to \"%s\" (initialization of log file %u, segment "
+"%u): %m"
+msgstr "ÎÞ·¨Á´½ÓÎļþ \"%s\" µ½ \"%s\" (ÈÕÖ¾Îļþ %u µÄ³õʼ»¯, ¶Î %u): %m"
 
-#: postmaster/postmaster.c:2728
+#: access/transam/xlog.c:1783
 #, c-format
-msgid "writing file %s failed"
-msgstr "дÈëÎļþ %s Ê§°Ü"
+msgid ""
+"could not rename file \"%s\" to \"%s\" (initialization of log file %u, "
+"segment %u): %m"
+msgstr "ÎÞ·¨ÖØÃüÃûÎļþ \"%s\" Îª \"%s\" (ÈÕÖ¾Îļþ %u µÄ³õʼ»¯, ¶Î %u): %m"
 
-#: rewrite/rewriteDefine.c:100
+#: access/transam/xlog.c:1938 access/transam/xlog.c:2040
+#: access/transam/xlog.c:5294
 #, c-format
-msgid "Attempt to insert rule \"%s\" failed: already exists"
-msgstr "ÊÔͼ²åÈë¹æÔò \"%s\" Ê§°Ü: ÒѾ­´æÔÚ"
+msgid "could not stat \"%s\": %m"
+msgstr "ÎÞ·¨È¡ \"%s\" µÄ״̬: %m"
 
-#: rewrite/rewriteDefine.c:227
-msgid ""
-"rule actions on OLD currently not supported\n"
-"\tuse views or triggers instead"
-msgstr ""
-"Ä¿Ç°²»Ö§³ÖÔÚ OLD ÉϵĹæÔò¶¯×÷\n"
-"\tÓÃÊÓͼ»òÕß´¥·¢Æ÷´úÌæ"
+#: access/transam/xlog.c:1946 access/transam/xlog.c:5456
+#: access/transam/xlog.c:5610 postmaster/postmaster.c:3569
+#, c-format
+msgid "could not remove file \"%s\": %m"
+msgstr "ÎÞ·¨É¾³ýÎļþ \"%s\": %m"
 
-#: rewrite/rewriteDefine.c:230
-msgid ""
-"rule actions on NEW currently not supported\n"
-"\tuse triggers instead"
+#: access/transam/xlog.c:2021
+#, c-format
+msgid "archive file \"%s\" has wrong size: %lu instead of %lu"
 msgstr ""
-"Ä¿Ç°²»Ö§³ÖÔÚ NEW ÉϵĹæÔò¶¯×÷\n"
-"\tÓô¥·¢Æ÷´úÌæ"
 
-#: rewrite/rewriteDefine.c:247
-msgid ""
-"instead nothing rules on select currently not supported\n"
-"\tuse views instead"
-msgstr ""
-"Ä¿Ç°²»Ö§³ÖÔÚ select ÉϵĠinstead nothing  ¹æÔò\n"
-"\tÓÃÊÓͼ´úÌæ"
+#: access/transam/xlog.c:2028
+#, c-format
+msgid "restored log file \"%s\" from archive"
+msgstr "´Ó¹éµµÖлָ´ÈÕÖ¾Îļþ \"%s\""
 
-#: rewrite/rewriteDefine.c:255
-msgid "multiple action rules on select currently not supported"
-msgstr "Ä¿Ç°²»Ö§³ÖÔÚ select ÉϵĶද×÷¹æÔò"
+#: access/transam/xlog.c:2053
+#, c-format
+msgid "could not restore \"%s\" from archive: return code %d"
+msgstr "ÎÞ·¨´Ó¹éµµÖлָ´ \"%s\": ·µ»ØÂëΪ %d"
 
-#: rewrite/rewriteDefine.c:262
-msgid "only instead-select rules currently supported on select"
-msgstr "Ä¿Ç°Ö»Ö§³ÖÔÚ select ÉϵĠinstead-select ¹æÔò"
+#: access/transam/xlog.c:2113
+#, c-format
+msgid "could not open transaction log directory \"%s\": %m"
+msgstr "ÎÞ·¨´ò¿ªÊÂÎñÈÕ־Ŀ¼ \"%s\": %m"
 
-#: rewrite/rewriteDefine.c:268
-msgid "event qualifications not supported for rules on select"
-msgstr "²»Ö§³ÖÔÚ select ÉϹæÔòµÄʼþÌõ¼þ"
+#: access/transam/xlog.c:2158
+#, c-format
+msgid "recycled transaction log file \"%s\""
+msgstr "»ØÊÕÊÂÎñÈÕÖ¾Îļþ \"%s\""
 
-#: rewrite/rewriteDefine.c:286
-msgid "select rule's target list has too many entries"
-msgstr "Ñ¡Ôñ¹æÔòµÄÄ¿±êÁбíµÄ¼Ç¼̫¶à"
+#: access/transam/xlog.c:2165
+#, c-format
+msgid "removing transaction log file \"%s\""
+msgstr "ɾ³ýÊÂÎñÈÕÖ¾Îļþ \"%s\""
 
-#: rewrite/rewriteDefine.c:300
-msgid "cannot convert relation containing dropped columns to view"
-msgstr "ÎÞ·¨×ª»»°üº¬ÒÑɾ³ý×ֶεĹØϵΪÊÓͼ"
+#: access/transam/xlog.c:2187
+#, c-format
+msgid "could not read transaction log directory \"%s\": %m"
+msgstr "ÎÞ·¨¶ÁÈ¡ÊÂÎñÈÕ־Ŀ¼ \"%s\": %m"
 
-#: rewrite/rewriteDefine.c:303
+#: access/transam/xlog.c:2271
 #, c-format
-msgid "select rule's target entry %d has different column name from %s"
-msgstr "Ñ¡Ôñ¹æÔòµÄÄ¿±ê¼Ç¼ %d µÄÃû×ֺ͠%s ²»Í¬"
+msgid "incorrect resource manager data checksum in record at %X/%X"
+msgstr "ÔڼǼµÄ %X/%X ÖеIJ»ÕýÈ·×ÊÔ´¹ÜÀíÊý¾ÝУÑéÖµ"
 
-#: rewrite/rewriteDefine.c:306
+#: access/transam/xlog.c:2294
 #, c-format
-msgid "select rule's target entry %d has different type from attribute %s"
-msgstr "Ñ¡Ôñ¹æÔòµÄÄ¿±ê¼Ç¼ %d ºÍÊôÐÔ %s µÄÀàÐͲ»Í¬"
+msgid "incorrect checksum of backup block %d in record at %X/%X"
+msgstr "¼Ç¼λÖà%2$X/%3$X µÄ±¸·Ý (backup) ¿é %1$d Ð£ÑéÖµ²»ÕýÈ·"
 
-#: rewrite/rewriteDefine.c:317
+#: access/transam/xlog.c:2367 access/transam/xlog.c:2437
 #, c-format
-msgid "select rule's target entry %d has different size from attribute %s"
-msgstr "Ñ¡Ôñ¹æÔòµÄÄ¿±ê¼Ç¼ %d ÓëÊôÐÔ %s µÄ´óС²»Í¬"
+msgid "invalid record offset at %X/%X"
+msgstr "ÎÞЧµÄ¼Ç¼ƫÒÆÁ¿ %X/%X"
 
-#: rewrite/rewriteDefine.c:321
-msgid "select rule's target list has too few entries"
-msgstr "Ñ¡Ôñ¹æÔòµÄÄ¿±êÁбí¼Ç¼ÊýÄ¿Ì«ÉÙ"
+#: access/transam/xlog.c:2415
+#, c-format
+msgid "could not read from log file %u, segment %u at offset %u: %m"
+msgstr "ÎÞ·¨´ÓÈÕÖ¾Îļþ %u ¶ÁÈ¡, ¶Î %u Æ«ÒÆÁ¿ %u: %m"
 
-#: rewrite/rewriteDefine.c:334
+#: access/transam/xlog.c:2445
 #, c-format
-msgid "\"%s\" is already a view"
-msgstr "\"%s\" ÒѾ­ÊÇÒ»¸öÊÓͼÁË"
+msgid "contrecord is requested by %X/%X"
+msgstr "%X/%X ÐèÒª contrecord"
 
-#: rewrite/rewriteDefine.c:356
+#: access/transam/xlog.c:2460
 #, c-format
-msgid "view rule for \"%s\" must be named \"%s\""
-msgstr "ÓÃÓÚ \"%s\" µÄÊÓͼ¹æÔò±ØÐëÃüÃûΪ \"%s\""
+msgid "record with zero length at %X/%X"
+msgstr "ÔÚ %X/%X Î»ÖÃÓÐÁ㳤¶ÈµÄ¼Ç¼"
 
-#: rewrite/rewriteDefine.c:373
+#: access/transam/xlog.c:2467
 #, c-format
-msgid "Relation \"%s\" is not empty. Cannot convert it to view"
-msgstr "¹Øϵ \"%s\" ²»Îª¿Õ. ÎÞ·¨°ÑËüת»»³ÉÊÓͼ"
+msgid "invalid resource manager ID %u at %X/%X"
+msgstr "ÔÚ %2$X/%3$X Î»ÖÃ, ÎªÎÞЧµÄ×ÊÔ´¹ÜÀí ID %1$u"
 
-#: rewrite/rewriteDefine.c:512
+#: access/transam/xlog.c:2505
 #, c-format
-msgid "RenameRewriteRule: rule \"%s\" does not exist"
-msgstr "RenameRewriteRule: ¹æÔò \"%s\" ²»´æÔÚ"
+msgid "record length %u at %X/%X too long"
+msgstr "ÔÚ %2$X/%3$X, ¼Ç¼³¤¶È %1$u Ì«³¤"
 
-#: rewrite/rewriteDefine.c:516
+#: access/transam/xlog.c:2541
 #, c-format
-msgid "Attempt to rename rule \"%s\" failed: \"%s\" already exists"
-msgstr "ÊÔͼ¸ø¹æÔò \"%s\" ÖØÃüÃûʧ°Ü: \"%s\" ÒѾ­´æÔÚ"
+msgid "could not read from log file %u, segment %u, offset %u: %m"
+msgstr "ÎÞ·¨´ÓÈÕÖ¾Îļþ %u ¶ÁÈ¡, ¶Î %u, Æ«ÒÆÁ¿ %u: %m"
 
-#: rewrite/rewriteHandler.c:368
+#: access/transam/xlog.c:2550
 #, c-format
-msgid "rewriteTargetList: bogus resno %d in targetlist"
-msgstr "rewriteTargetList: targetlist ÖеÄα resno %d"
+msgid "there is no contrecord flag in log file %u, segment %u, offset %u"
+msgstr "ÈÕÖ¾Îļþ %u, ¶Î %u, Æ«ÒÆÁ¿ %u ÖÐûÓРcontrecord ±êÖ¾"
 
-#: rewrite/rewriteHandler.c:410 rewrite/rewriteHandler.c:422
+#: access/transam/xlog.c:2560
 #, c-format
-msgid "Multiple assignments to same attribute \"%s\""
-msgstr ""
+msgid "invalid contrecord length %u in log file %u, segment %u, offset %u"
+msgstr "ÈÕÖ¾Îļþ %2$u ÖÐÎÞЧµÄ contrecord ³¤¶È %1$u, ¶Î %3$u, Æ«ÒÆÁ¿ %4$u"
 
-#: rewrite/rewriteHandler.c:579
-msgid "ApplyRetrieveRule: expected just one rule action"
-msgstr "ApplyRetrieveRule: Ô¤ÆÚÖ»ÓÐÒ»¸ö¹æÔò¶¯×÷"
+#: access/transam/xlog.c:2627
+#, 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"
 
-#: rewrite/rewriteHandler.c:581
-msgid "ApplyRetrieveRule: can't handle qualified ON SELECT rule"
-msgstr "ApplyRetrieveRule: ÎÞ·¨´¦ÀíÓÐÌõ¼þµÄ ON SELECT ¹æÔò"
+#: access/transam/xlog.c:2634
+#, 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"
 
-#: rewrite/rewriteHandler.c:583
-msgid "ApplyRetrieveRule: can't handle per-attribute ON SELECT rule"
-msgstr "ApplyRetrieveRule: ÎÞ·¨´¦Àíÿ¸öÊôÐԵĠON SELECT ¹æÔò"
+#: access/transam/xlog.c:2656 access/transam/xlog.c:2664
+msgid "WAL file is from different system"
+msgstr "WAL ÎļþÀ´×Ô²»Í¬µÄϵͳ"
 
-#: rewrite/rewriteHandler.c:832 rewrite/rewriteHandler.c:1110
+#: access/transam/xlog.c:2657
 #, c-format
-msgid "Infinite recursion detected in rules for relation %s"
-msgstr "¹Øϵ %s µÄ¹æÔòÖз¢ÏÖÎÞÏÞÑ­»·"
+msgid "WAL file SYSID is %s, pg_control SYSID is %s"
+msgstr "WAL ÎļþµÄ SYSID ÊÇ %s, pg_control µÄ SYSID ÊÇ %s"
 
-#: rewrite/rewriteHandler.c:873
-msgid "fireRIRrules: failed to remove aggs from qual"
-msgstr "fireRIRrules: ÎÞ·¨´ÓÌõ¼þÖÐɾ³ý¾Û¼¯"
+#: access/transam/xlog.c:2665
+msgid "Incorrect XLOG_SEG_SIZE in page header."
+msgstr "ҳͷÖв»ÕýÈ·µÄ XLOG_SEG_SIZE."
 
-#: rewrite/rewriteHandler.c:1215
-msgid ""
-"Cannot insert into a view\n"
-"\tYou need an unconditional ON INSERT DO INSTEAD rule"
-msgstr ""
-"ÎÞ·¨²åÈëµ½Ò»¸öÊÓͼÖÐ\n"
-"\tÄãÐèÒªÒ»¸öÎÞÌõ¼þµÄ ON INSERT DO INSTEAD ¹æÔò"
+#: access/transam/xlog.c:2674
+#, 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"
 
-#: rewrite/rewriteHandler.c:1219
-msgid ""
-"Cannot update a view\n"
-"\tYou need an unconditional ON UPDATE DO INSTEAD rule"
-msgstr ""
-"ÎÞ·¨¸üÐÂÒ»¸öÊÓͼ\n"
-"\tÄãÐèÒªÒ»¸öÎÞÌõ¼þµÄ ON UPDATE DO INSTEAD ¹æÔò"
+#: access/transam/xlog.c:2686
+#, 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"
 
-#: rewrite/rewriteHandler.c:1223
+#: access/transam/xlog.c:2704
+#, c-format
 msgid ""
-"Cannot delete from a view\n"
-"\tYou need an unconditional ON DELETE DO INSTEAD rule"
+"out-of-sequence timeline ID %u (after %u) in log file %u, segment %u, offset "
+"%u"
 msgstr ""
-"ÎÞ·¨´ÓÒ»¸öÊÓͼÖÐɾ³ý\n"
-"\tÄãÐèÒªÒ»¸öÎÞÌõ¼þµÄ ON DELETE DO INSTEAD ¹æÔò"
+"ÈÕÖ¾Îļþ %3$u Öг¬³öÐòÁеĠtimeline ID %1$u (%2$u Ö®ºó), ¶Î %4$u, Æ«ÒÆÁ¿ %5$u"
 
-#: rewrite/rewriteHandler.c:1227
+#: access/transam/xlog.c:2744 access/transam/xlog.c:2834
+#: access/transam/xlog.c:2933
 #, c-format
-msgid "QueryRewrite: unexpected commandType %d"
-msgstr "QueryRewrite: ÒâÍâµÄ commandType %d"
+msgid "could not open \"%s\": %m"
+msgstr "ÎÞ·¨´ò¿ª \"%s\": %m"
 
-#: rewrite/rewriteManip.c:639 rewrite/rewriteManip.c:646
-msgid "getInsertSelectQuery: expected to find SELECT subquery"
-msgstr "getInsertSelectQuery: Ô¤ÆÚÕÒµ½ SELECT ×Ó²éѯ"
+#: access/transam/xlog.c:2773
+#, c-format
+msgid "syntax error in history file: %s"
+msgstr "ÀúÊ·ÎļþÖеÄÓï·¨´íÎó: %s"
 
-#: rewrite/rewriteManip.c:657
-msgid "getInsertSelectQuery: can't find rule placeholders"
-msgstr "getInsertSelectQuery: ÎÞ·¨ÕÒµ½¹æÔòռλ·û"
+#: access/transam/xlog.c:2774
+msgid "Expected a numeric timeline ID."
+msgstr "ÆÚÍûÒ»¸öÊý×Ö timeline ID."
 
-#: rewrite/rewriteManip.c:691 rewrite/rewriteManip.c:731
-msgid "Conditional utility statements are not implemented"
-msgstr "δʵÏÖÌõ¼þ¹¤¾ßÓï¾ä"
+#: access/transam/xlog.c:2779
+#, c-format
+msgid "invalid data in history file: %s"
+msgstr "ÀúÊ·ÎļþÖеÄÎÞЧÊý¾Ý: %s"
 
-#: rewrite/rewriteManip.c:846
-msgid "ResolveNew: can't handle whole-tuple reference"
-msgstr "ResolveNew: ÎÞ·¨´¦ÀíÈ«Ôª×éÒýÓÃ"
+#: access/transam/xlog.c:2780
+msgid "Timeline IDs must be in increasing sequence."
+msgstr "TimeLine ID ±ØÐëΪµÝÔöÐòÁÐ."
 
-#: rewrite/rewriteRemove.c:57
+#: access/transam/xlog.c:2793
 #, c-format
-msgid "Rule \"%s\" not found"
-msgstr "δÕÒµ½¹æÔò \"%s\""
+msgid "invalid data in history file \"%s\""
+msgstr "ÀúÊ·Îļþ \"%s\" ÖдæÔÚÎÞЧÊý¾Ý"
 
-#: rewrite/rewriteRemove.c:113
-#, c-format
-msgid "RemoveRewriteRuleById: Rule %u does not exist"
-msgstr "RemoveRewriteRuleById: ¹æÔò %u ²»´æÔÚ"
+#: access/transam/xlog.c:2794
+msgid "Timeline IDs must be less than child timeline's ID."
+msgstr "Timeline ID ±ØÐëСÓÚ×Ó timeline µÄ ID."
 
-#: rewrite/rewriteSupport.c:68
+#: access/transam/xlog.c:3033
 #, c-format
-msgid "SetRelationRuleStatus: cache lookup failed for relation %u"
-msgstr "SetRelationRuleStatus: Îª¹Øϵ %u ²éÕÒ»º³åÇøʧ°Ü"
-
-#: storage/buffer/buf_table.c:58
-msgid "couldn't initialize shared buffer pool Hash Tbl"
-msgstr ""
+msgid "could not link file \"%s\" to \"%s\": %m"
+msgstr "ÎÞ·¨°ÑÎļþ \"%s\" Á´½Óµ½ \"%s\": %m"
 
-#: storage/buffer/buf_table.c:100
-msgid "BufTableDelete: BufferLookup table corrupted"
-msgstr "bufTableDelete: BufferLookup ±í±»ÆÆ»µ"
+#: 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
+#, c-format
+msgid "could not rename file \"%s\" to \"%s\": %m"
+msgstr "ÎÞ·¨°ÑÎļþ \"%s\" ÖØÃüÃûΪ \"%s\": %m"
 
-#: storage/buffer/buf_table.c:131
-msgid "BufTableInsert: BufferLookup table out of memory"
-msgstr "BufTableInsert: BufferLookup ±íÄÚ´æÒç³ö"
+#: access/transam/xlog.c:3101
+msgid "invalid LC_COLLATE setting"
+msgstr "ÎÞЧµÄ LC_COLLATE ÉèÖÃ"
 
-#: storage/buffer/buf_table.c:138
-msgid "BufTableInsert: BufferLookup table corrupted"
-msgstr "bufTableInsert: BufferLookup ±í±»ÆÆ»µ"
+#: access/transam/xlog.c:3106
+msgid "invalid LC_CTYPE setting"
+msgstr "ÎÞЧµÄ LC_CTYPE ÉèÖÃ"
 
-#: storage/buffer/bufmgr.c:243
-msgid "BufRead: buffer table broken after IO error"
-msgstr ""
+#: access/transam/xlog.c:3125
+msgid "sizeof(ControlFileData) is larger than BLCKSZ; fix either one"
+msgstr "sizeof(ControlFileData) ±È BLCKSZ ´ó; ÐÞ¸´ÆäÖÐÒ»¸ö"
 
-#: storage/buffer/bufmgr.c:413
+#: access/transam/xlog.c:3135
 #, c-format
-msgid "BufferAlloc: cannot write block %u for %u/%u"
-msgstr ""
+msgid "could not create control file \"%s\": %m"
+msgstr "ÎÞ·¨´´½¨¿ØÖÆÎļþ \"%s\": %m"
 
-#: storage/buffer/bufmgr.c:431
+#: access/transam/xlog.c:3146 access/transam/xlog.c:3333
 #, c-format
-msgid "BufferAlloc: content of block %u (%u/%u) changed while flushing"
-msgstr ""
+msgid "could not write to control file: %m"
+msgstr "ÎÞ·¨Ð´Èë¿ØÖÆÎļþ: %m"
 
-#: storage/buffer/bufmgr.c:523
-msgid "buffer wasn't in the buffer table"
-msgstr ""
+#: access/transam/xlog.c:3152 access/transam/xlog.c:3339
+#, c-format
+msgid "could not fsync control file: %m"
+msgstr "ÎÞ·¨ fsync ¿ØÖÆÎļþ: %m"
 
-#: storage/buffer/bufmgr.c:531
-msgid "Buffer in lookup table twice"
-msgstr ""
+#: access/transam/xlog.c:3157 access/transam/xlog.c:3344
+#, c-format
+msgid "could not close control file: %m"
+msgstr "ÎÞ·¨¹Ø±Õ¿ØÖÆÎļþ: %m"
 
-#: storage/buffer/bufmgr.c:570
+#: access/transam/xlog.c:3173 access/transam/xlog.c:3322
 #, c-format
-msgid "write_buffer: bad buffer %d"
-msgstr ""
+msgid "could not open control file \"%s\": %m"
+msgstr "ÎÞ·¨´ò¿ª¿ØÖÆÎļþ \"%s\": %m"
 
-#: storage/buffer/bufmgr.c:782
+#: access/transam/xlog.c:3179
 #, c-format
-msgid "BufferSync: cannot write %u for %u/%u"
-msgstr ""
+msgid "could not read from control file: %m"
+msgstr "ÎÞ·¨¶ÁÈ¡¿ØÖÆÎļþ: %m"
 
-#: storage/buffer/bufmgr.c:920
+#: access/transam/xlog.c:3192
 #, c-format
 msgid ""
-"Buffer Leak: [%03d] (freeNext=%d, freePrev=%d, rel=%u/%u, blockNum=%u, "
-"flags=0x%x, refcount=%d %ld)"
+"The database cluster was initialized with PG_CONTROL_VERSION %d, but the "
+"server was compiled with PG_CONTROL_VERSION %d."
 msgstr ""
+"Êý¾Ý¿â´ØÊÇÒÔ PG_CONTROL_VERSION %d ³õʼ»¯µÄ, µ«ÊÇ ·þÎñÆ÷ÊÇÒÔ "
+"PG_CONTROL_VERSION %d ±àÒëµÄ."
 
-#: storage/buffer/bufmgr.c:1167
-#, c-format
-msgid "DropRelFileNodeBuffers: block %u is referenced (private %ld, global %d)"
-msgstr ""
+#: access/transam/xlog.c:3195 access/transam/xlog.c:3225
+msgid "It looks like you need to initdb."
+msgstr "¿´ÉÏÈ¥, ÄãÐèÒª³õʼ»¯Êý¾Ý¿â."
 
-#: storage/buffer/bufmgr.c:1270 storage/buffer/bufmgr.c:1304
+#: access/transam/xlog.c:3205
+msgid "incorrect checksum in control file"
+msgstr "¿ØÖÆÎļþµÄУÑéÖµ²»ÕýÈ·"
+
+#: access/transam/xlog.c:3222
 #, c-format
 msgid ""
-"[%02d] (freeNext=%d, freePrev=%d, rel=%u/%u, blockNum=%u, flags=0x%x, "
-"refcount=%d %ld)"
+"The database cluster was initialized with CATALOG_VERSION_NO %d, but the "
+"server was compiled with CATALOG_VERSION_NO %d."
 msgstr ""
+"Êý¾Ý¿â´ØÊÇÒÔ CATALOG_VERSION_NO %d ³õʼ»¯µÄ, µ«ÊÇ ·þÎñÆ÷ÊÇÒÔ "
+"CATALOG_VERSION_NO %d ±àÒëµÄ."
 
-#: storage/buffer/bufmgr.c:1379
+#: access/transam/xlog.c:3229
 #, c-format
 msgid ""
-"FlushRelationBuffers(%s (local), %u): block %u is dirty, could not flush it"
-msgstr ""
+"The database cluster was initialized with BLCKSZ %d, but the server was "
+"compiled with BLCKSZ %d."
+msgstr "Êý¾Ý¿â´ØÊÇÒÔ BLCKSZ %d ³õʼ»¯µÄ, µ«ÊÇ ·þÎñÆ÷ÊÇÒÔ BLCKSZ %d ±àÒëµÄ."
 
-#: storage/buffer/bufmgr.c:1389
-#, c-format
-msgid "FlushRelationBuffers(%s (local), %u): block %u is referenced (%ld)"
-msgstr ""
+#: 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
+msgid "It looks like you need to recompile or initdb."
+msgstr "¿´ÉÏÈ¥, ÄãÐèÒªÖØбàÒë»ò³õʼ»¯Êý¾Ý¿â."
 
-#: storage/buffer/bufmgr.c:1441
+#: access/transam/xlog.c:3236
 #, c-format
-msgid "FlushRelationBuffers: cannot write %u for %u/%u"
+msgid ""
+"The database cluster was initialized with RELSEG_SIZE %d, but the server was "
+"compiled with RELSEG_SIZE %d."
 msgstr ""
+"Êý¾Ý¿â´ØÊÇÒÔ RELSEG_SIZE %d ³õʼ»¯µÄ, µ«ÊÇ ·þÎñÆ÷ÊÇÒÔ RELSEG_SIZE %d ±àÒëµÄ."
 
-#: storage/buffer/bufmgr.c:1467
+#: access/transam/xlog.c:3243
 #, c-format
 msgid ""
-"FlushRelationBuffers(%s, %u): block %u is referenced (private %ld, global %d)"
-msgstr ""
-
-#: storage/buffer/bufmgr.c:1666
-msgid "buffer alloc trace error and can't open log file"
+"The database cluster was initialized with XLOG_SEG_SIZE %d, but the server "
+"was compiled with XLOG_SEG_SIZE %d."
 msgstr ""
+"Êý¾Ý¿â´ØÊÇÒÔ XLOG_SEG_SIZE %d ³õʼ»¯µÄ, µ«ÊÇ ·þÎñÆ÷ÊÇÒÔ XLOG_SEG_SIZE %d ±àÒë"
+"µÄ."
 
-#: storage/buffer/bufmgr.c:1765
+#: access/transam/xlog.c:3250
 #, c-format
-msgid "SetBufferCommitInfoNeedsSave: bad buffer %d"
+msgid ""
+"The database cluster was initialized with NAMEDATALEN %d, but the server was "
+"compiled with NAMEDATALEN %d."
 msgstr ""
+"Êý¾Ý¿â´ØÊÇÒÔ NAMEDATALEN %d ³õʼ»¯µÄ, µ«ÊÇ ·þÎñÆ÷ÊÇÒÔ NAMEDATALEN %d ±àÒëµÄ."
 
-#: storage/buffer/bufmgr.c:1859
+#: access/transam/xlog.c:3257
 #, c-format
-msgid "LockBuffer: unknown lock mode %d"
-msgstr "LockBuffer: Î´ÖªµÄËøģʽ %d"
-
-#: storage/buffer/bufmgr.c:1890 storage/buffer/bufmgr.c:1897
-msgid "LockBufferForCleanup: wrong local pin count"
-msgstr ""
-
-#: storage/buffer/bufmgr.c:1919
-msgid "Multiple backends attempting to wait for pincount 1"
+msgid ""
+"The database cluster was initialized with FUNC_MAX_ARGS %d, but the server "
+"was compiled with FUNC_MAX_ARGS %d."
 msgstr ""
+"Êý¾Ý¿â´ØÊÇÒÔ FUNC_MAX_ARGS %d ³õʼ»¯µÄ, µ«ÊÇ ·þÎñÆ÷ÊÇÒÔ FUNC_MAX_ARGS %d ±àÒë"
+"µÄ."
 
-#: storage/buffer/bufmgr.c:2042
-#, c-format
-msgid "write error may be permanent: cannot write block %u for %u/%u"
+#: access/transam/xlog.c:3266
+msgid ""
+"The database cluster was initialized without HAVE_INT64_TIMESTAMP but the "
+"server was compiled with HAVE_INT64_TIMESTAMP."
 msgstr ""
+"Êý¾Ý¿â´Ø³õʼ»¯Ê±Ã»Óж¨Òå HAVE_INT64_TIMESTAMP, µ«ÊÇ ·þÎñÆ÷±àÒëʱ¶¨ÒåÁË "
+"HAVE_INT64_TIMESTAMP."
 
-#: storage/buffer/freelist.c:201
-msgid "out of free buffers: time to abort!"
+#: access/transam/xlog.c:3273
+msgid ""
+"The database cluster was initialized with HAVE_INT64_TIMESTAMP but the "
+"server was compiled without HAVE_INT64_TIMESTAMP."
 msgstr ""
+"Êý¾Ý¿â´Ø³õʼ»¯Ê±¶¨ÒåÁË HAVE_INT64_TIMESTAMP, µ«ÊÇ ·þÎñÆ÷±àÒëʱûÓж¨Òå "
+"HAVE_INT64_TIMESTAMP."
 
-#: storage/buffer/localbuf.c:83
-msgid "no empty local buffer."
+#: access/transam/xlog.c:3281
+#, c-format
+msgid ""
+"The database cluster was initialized with LOCALE_NAME_BUFLEN %d, but the "
+"server was compiled with LOCALE_NAME_BUFLEN %d."
 msgstr ""
+"Êý¾Ý¿â´Ø³õʼ»¯Ê±¶¨Òå LOCALE_NAME_BUFLEN Îª %d, µ«ÊÇ ·þÎñÆ÷±àÒëʱ¶¨Òå "
+"LOCALE_NAME_BUFLEN Ϊ %d."
 
-#: storage/buffer/localbuf.c:125
-msgid "Out of memory in LocalBufferAlloc"
-msgstr "LocalBufferAlloc ÖÐÄÚ´æÒç³ö"
+#: access/transam/xlog.c:3287 access/transam/xlog.c:3294
+msgid "database files are incompatible with operating system"
+msgstr "Êý¾Ý¿âÎļþºÍ²Ù×÷ϵͳ²»¼æÈÝ"
 
-#: storage/buffer/localbuf.c:232
+#: access/transam/xlog.c:3288
 #, c-format
 msgid ""
-"Local Buffer Leak: [%03d] (rel=%u/%u, blockNum=%u, flags=0x%x, refcount=%d %"
-"ld)"
+"The database cluster was initialized with LC_COLLATE \"%s\", which is not "
+"recognized by setlocale()."
 msgstr ""
+"Êý¾Ý¿â´ØÊÇ´ø LC_COLLATE \"%s\" ³õʼ»¯µÄ, µ«´Ë LC_COLLATE ÊDz»±» setlocale() "
+"ÈϿɵÄ."
 
-#: storage/file/buffile.c:477
-#, c-format
-msgid "BufFileSeek: invalid whence: %d"
-msgstr ""
+#: access/transam/xlog.c:3291 access/transam/xlog.c:3298
+msgid "It looks like you need to initdb or install locale support."
+msgstr "¿´ÉÏÈ¥, ÄãºÃÏñÐèÒª³õʼ»¯Êý¾Ý¿â (initdb) »òÕß°²×°±¾µØ»¯ (locale) Ö§³Ö."
 
-#: storage/file/fd.c:272
+#: access/transam/xlog.c:3295
 #, c-format
-msgid "BasicOpenFile: not enough descs, retry, er= %d"
+msgid ""
+"The database cluster was initialized with LC_CTYPE \"%s\", which is not "
+"recognized by setlocale()."
 msgstr ""
+"Êý¾Ý¿â´ØÊÇ´ø LC_CTYPE \"%s\" ³õʼ»¯µÄ, µ«´Ë LC_CTYPE ÊDz»±» setlocale() ÈÏ¿É"
+"µÄ."
 
-#: storage/file/fd.c:306
+#: access/transam/xlog.c:3521
 #, c-format
-msgid "pg_nofile: sysconf(_SC_OPEN_MAX) failed; using %ld"
-msgstr ""
+msgid "could not write bootstrap transaction log file: %m"
+msgstr "ÎÞ·¨Ð´Èë bootstrap ÊÂÎñÈÕÖ¾Îļþ: %m"
 
-#: storage/file/fd.c:328
+#: access/transam/xlog.c:3527
 #, c-format
-msgid ""
-"pg_nofile: insufficient file descriptors available to start backend.\n"
-"\tSystem allows %ld, we need at least %d."
-msgstr ""
+msgid "could not fsync bootstrap transaction log file: %m"
+msgstr "ÎÞ·¨Í¬²½ (fsync) ÊÂÎñÈÕÖ¾Îļþ: %m"
 
-#: storage/file/fd.c:366
+#: access/transam/xlog.c:3532
 #, c-format
-msgid "Delete %d (%s)"
-msgstr ""
+msgid "could not close bootstrap transaction log file: %m"
+msgstr "ÎÞ·¨¹Ø±Õ bootstrap ÊÂÎñÈÕÖ¾Îļþ: %m"
 
-#: storage/file/fd.c:385
+#: access/transam/xlog.c:3594
 #, c-format
-msgid "LruDelete %d (%s)"
-msgstr ""
+msgid "could not open recovery command file \"%s\": %m"
+msgstr "ÎÞ·¨´ò¿ª»Ö¸´ÃüÁîÎļþ \"%s\": %m"
 
-#: storage/file/fd.c:399
-#, fuzzy, c-format
-msgid "LruDelete: failed to close %s: %m"
-msgstr "¼ì²âÎļþ '%s' µÄ״̬ʧ°Ü: %m"
+#: access/transam/xlog.c:3599
+msgid "starting archive recovery"
+msgstr "¿ªÊ¼¹éµµ»Ö¸´"
 
-#: storage/file/fd.c:413
+#: access/transam/xlog.c:3644
 #, c-format
-msgid "Insert %d (%s)"
-msgstr ""
+msgid "restore_command = \"%s\""
+msgstr "restore_command = \"%s\""
 
-#: storage/file/fd.c:434
+#: access/transam/xlog.c:3658
 #, c-format
-msgid "LruInsert %d (%s)"
-msgstr ""
+msgid "recovery_target_timeline is not a valid number: \"%s\""
+msgstr "recovery_target_timeline ²»ÊÇÒ»¸öÓÐЧµÄÊý×Ö: \"%s\""
 
-#: storage/file/fd.c:456
+#: access/transam/xlog.c:3663
 #, c-format
-msgid "RE_OPEN FAILED: %d"
-msgstr "RE_OPEN Ê§°Ü: %d"
+msgid "recovery_target_timeline = %u"
+msgstr "recovery_target_timeline = %u"
 
-#: storage/file/fd.c:461
-msgid "RE_OPEN SUCCESS"
-msgstr "RE_OPEN ³É¹¦"
+#: access/transam/xlog.c:3666
+msgid "recovery_target_timeline = latest"
+msgstr "recovery_target_timeline = latest"
 
-#: storage/file/fd.c:487
+#: access/transam/xlog.c:3674
 #, c-format
-msgid "ReleaseLruFile. Opened %d"
-msgstr ""
+msgid "recovery_target_xid is not a valid number: \"%s\""
+msgstr "recovery_target_xid ²»ÊÇÒ»¸öÓÐЧµÄÊý×Ö: \"%s\""
 
-#: storage/file/fd.c:508
+#: access/transam/xlog.c:3677
 #, c-format
-msgid "AllocateVfd. Size %d"
-msgstr ""
+msgid "recovery_target_xid = %u"
+msgstr "recovery_target_xid = %u"
 
-#: storage/file/fd.c:515
-msgid "AllocateVfd: no room for VFD array"
-msgstr ""
+#: access/transam/xlog.c:3702
+#, c-format
+msgid "recovery_target_time = %s"
+msgstr "recovery_target_time = %s"
 
-#: storage/file/fd.c:547
-msgid "AllocateVfd: no room to enlarge VFD array"
-msgstr ""
+#: access/transam/xlog.c:3719
+#, c-format
+msgid "recovery_target_inclusive = %s"
+msgstr "recovery_target_inclusive = %s"
 
-#: storage/file/fd.c:580
+#: access/transam/xlog.c:3723
 #, c-format
-msgid "FreeVfd: %d (%s)"
-msgstr ""
+msgid "unrecognized recovery parameter \"%s\""
+msgstr "δÈϿɵĻָ´²ÎÊý \"%s\""
 
-#: storage/file/fd.c:630
+#: access/transam/xlog.c:3731
 #, c-format
-msgid "FileAccess %d (%s)"
-msgstr ""
+msgid "syntax error in recovery command file: %s"
+msgstr "»Ö¸´ÃüÁîÎļþÓï·¨´íÎó: %s"
 
-#: storage/file/fd.c:682
-msgid "fileNameOpenFile: NULL fname"
-msgstr ""
+#: access/transam/xlog.c:3733
+msgid "Lines should have the format parameter = 'value'."
+msgstr "ÐиñʽΪ ²ÎÊý = 'Öµ'."
 
-#: storage/file/fd.c:684
+#: access/transam/xlog.c:3738
 #, c-format
-msgid "fileNameOpenFile: %s %x %o"
-msgstr "fileNameOpenFile: %s %x %o"
+msgid "recovery command file \"%s\" did not specify restore_command"
+msgstr "»Ö¸´ÃüÁîÎļþ \"%s\" Ã»ÓÐÖ¸¶¨ restore_command"
 
-#: storage/file/fd.c:704
+#: access/transam/xlog.c:3757
 #, c-format
-msgid "fileNameOpenFile: success %d"
-msgstr ""
+msgid "recovery_target_timeline %u does not exist"
+msgstr "recovery_target_timeline %u ²»´æÔÚ"
 
-#: storage/file/fd.c:711
-msgid "fileNameOpenFile: no room to save VFD filename"
-msgstr ""
+#: access/transam/xlog.c:3869
+msgid "archive recovery complete"
+msgstr "¹éµµ»Ö¸´Íê±Ï"
 
-#: storage/file/fd.c:795
+#: access/transam/xlog.c:3953
 #, c-format
-msgid "Failed to create temporary file %s"
-msgstr "´´½¨ÁÙʱÎļþ %s Ê§°Ü"
+msgid "recovery stopping after commit of transaction %u, time %s"
+msgstr "»Ö¸´Í£Ö¹ÔÚÊÂÎï %u Ìá½»Ö®ºó, Ê±¼ä %s"
 
-#: storage/file/fd.c:814
+#: access/transam/xlog.c:3957
 #, c-format
-msgid "FileClose: %d (%s)"
-msgstr "FileClose: %d (%s)"
+msgid "recovery stopping before commit of transaction %u, time %s"
+msgstr "»Ö¸´Í£Ö¹ÔÚÊÂÎï %u Ìύ֮ǰ, Ê±¼ä %s"
 
-#: storage/file/fd.c:826
+#: access/transam/xlog.c:3964
 #, c-format
-msgid "FileClose: failed to close %s: %m"
-msgstr "FileClose: ¹Ø±Õ %s Ê§°Ü: %m"
+msgid "recovery stopping after abort of transaction %u, time %s"
+msgstr "»Ö¸´Í£Ö¹ÔÚÊÂÎï %u ÖжÏÖ®ºó, Ê±¼ä %s"
 
-#: storage/file/fd.c:841
+#: access/transam/xlog.c:3968
 #, c-format
-msgid "FileClose: failed to unlink %s: %m"
-msgstr "FileClose: É¾³ý %s Ê§°Ü: %m"
+msgid "recovery stopping before abort of transaction %u, time %s"
+msgstr "»Ö¸´Í£Ö¹ÔÚÊÂÎï %u ÖжÏ֮ǰ, Ê±¼ä %s"
 
-#: storage/file/fd.c:859
-#, c-format
-msgid "FileUnlink: %d (%s)"
-msgstr "FileUnlink: %d (%s)"
+#: access/transam/xlog.c:4010
+msgid "control file contains invalid data"
+msgstr "¿ØÖÆÎļþ°üº¬ÎÞЧµÄÊý¾Ý"
 
-#: storage/file/fd.c:875
+#: access/transam/xlog.c:4014
 #, c-format
-msgid "FileRead: %d (%s) %ld %d %p"
-msgstr "FileRead: %d (%s) %ld %d %p"
+msgid "database system was shut down at %s"
+msgstr "Êý¾Ý¿âÉϴιرÕʱ¼äΪ %s"
 
-#: storage/file/fd.c:896
+#: access/transam/xlog.c:4018
 #, c-format
-msgid "FileWrite: %d (%s) %ld %d %p"
-msgstr "FileWrite: %d (%s) %ld %d %p"
+msgid "database system shutdown was interrupted at %s"
+msgstr "Êý¾Ý¿âϵͳÔÚ %s ±»ÖжϹرÕ"
 
-#: storage/file/fd.c:922
+#: access/transam/xlog.c:4022
 #, c-format
-msgid "FileSeek: %d (%s) %ld %ld %d"
-msgstr ""
+msgid "database system was interrupted while in recovery at %s"
+msgstr "»Ö¸´Ê±, Êý¾Ý¿âϵͳÔÚ %s ±»ÖжÏ"
 
-#: storage/file/fd.c:932 storage/file/fd.c:953
-#, c-format
-msgid "FileSeek: invalid offset: %ld"
-msgstr ""
+#: access/transam/xlog.c:4024
+msgid ""
+"This probably means that some data is corrupted and you will have to use the "
+"last backup for recovery."
+msgstr "ÕâÒâζ×ÅһЩÊý¾Ý±»»Ù»µ, Ä㽫²»µÃ²»Ê¹ÓÃ×îеı¸·Ý»Ö¸´."
 
-#: storage/file/fd.c:943 storage/file/fd.c:965
+#: access/transam/xlog.c:4028
 #, c-format
-msgid "FileSeek: invalid whence: %d"
-msgstr ""
+msgid "database system was interrupted at %s"
+msgstr "Êý¾Ý¿âϵͳÔÚ %s ±»ÖжÏ"
 
-#: storage/file/fd.c:980
+#: access/transam/xlog.c:4060
 #, c-format
-msgid "FileTell %d (%s)"
+msgid "requested timeline %u is not a child of database system timeline %u"
 msgstr ""
 
-#: storage/file/fd.c:993
+#: access/transam/xlog.c:4075 access/transam/xlog.c:4097
 #, c-format
-msgid "FileTruncate %d (%s)"
-msgstr ""
+msgid "checkpoint record is at %X/%X"
+msgstr "checkpoint ¼Ç¼λÖÃÔÚ %X/%X"
+
+#: access/transam/xlog.c:4082
+msgid "could not locate required checkpoint record"
+msgstr "ÎÞ·¨ÕÒµ½ÐèÒªµÄ checkpoint ¼Ç¼"
+
+#: access/transam/xlog.c:4083
+msgid ""
+"If you are not restoring from a backup, try removing $PGDATA/backup_label."
+msgstr "Èç¹ûÄã²»ÊÇ´Ó±¸·Ý»Ö¸´, Çëɾ³ý $PGDATA/backup_label."
 
-#: storage/file/fd.c:1024
+#: access/transam/xlog.c:4107
 #, c-format
-msgid "AllocateFile: Allocated %d"
-msgstr ""
+msgid "using previous checkpoint record at %X/%X"
+msgstr "ʹÓÃÔÚ %X/%X µÄÇ°Ò»¸ö checkpoint ¼Ç¼"
 
-#: storage/file/fd.c:1027
-msgid "AllocateFile: too many private FDs demanded"
-msgstr ""
+#: access/transam/xlog.c:4114
+msgid "could not locate a valid checkpoint record"
+msgstr "ÎÞ·¨ÕÒµ½Ò»¸öÓÐЧµÄ checkpoint ¼Ç¼"
 
-#: storage/file/fd.c:1041
+#: access/transam/xlog.c:4123
 #, c-format
-msgid "AllocateFile: not enough descs, retry, er= %d"
+msgid "redo record is at %X/%X; undo record is at %X/%X; shutdown %s"
 msgstr ""
 
-#: storage/file/fd.c:1057
+#: access/transam/xlog.c:4128
 #, c-format
-msgid "FreeFile: Allocated %d"
+msgid "next transaction ID: %u; next OID: %u"
+msgstr "ÏÂÒ»¸öÊÂÎï ID: %u; ÏÂÒ»¸ö OID: %u"
+
+#: access/transam/xlog.c:4132
+msgid "invalid next transaction ID"
+msgstr "ÎÞЧµÄÏÂÒ»¸öÊÂÎñ ID"
+
+#: access/transam/xlog.c:4149
+msgid "invalid redo in checkpoint record"
 msgstr ""
 
-#: storage/file/fd.c:1070
-msgid "FreeFile: file was not obtained from AllocateFile"
+#: access/transam/xlog.c:4163
+msgid "invalid redo/undo record in shutdown checkpoint"
 msgstr ""
 
-#: storage/freespace/freespace.c:272 storage/freespace/freespace.c:287
-#: storage/freespace/freespace.c:298
-msgid "Insufficient shared memory for free space map"
+#: access/transam/xlog.c:4181
+msgid "automatic recovery in progress"
 msgstr ""
 
-#: storage/freespace/freespace.c:293
+#: access/transam/xlog.c:4184
+msgid ""
+"database system was not properly shut down; automatic recovery in progress"
+msgstr "Êý¾Ý¿âϵͳûÓÐÕýÈ·µÄ¹Ø±Õ; ×Ô¶¯»Ö¸´"
+
+#: access/transam/xlog.c:4221
 #, c-format
-msgid "max_fsm_pages must exceed max_fsm_relations * %d"
-msgstr ""
+msgid "redo starts at %X/%X"
+msgstr "redo ÔÚ %X/%X ¿ªÊ¼"
 
-#: storage/freespace/freespace.c:324
-msgid "max_fsm_pages is too large"
-msgstr ""
+#: access/transam/xlog.c:4279
+#, c-format
+msgid "redo done at %X/%X"
+msgstr "redo ÔÚ %X/%X Íê³É"
+
+#: access/transam/xlog.c:4287
+msgid "redo is not required"
+msgstr "²»ÐèÒª redo"
 
-#: storage/freespace/freespace.c:494
-msgid "RecordRelationFreeSpace: data not in page order"
+#: access/transam/xlog.c:4307
+msgid "requested recovery stop point is before end time of backup dump"
 msgstr ""
 
-#: storage/freespace/freespace.c:581 storage/freespace/freespace.c:1583
-msgid "RecordIndexFreeSpace: data not in page order"
+#: access/transam/xlog.c:4311
+msgid "WAL ends before end time of backup dump"
 msgstr ""
 
-#: storage/freespace/freespace.c:691
+#: access/transam/xlog.c:4326
 #, c-format
-msgid ""
-"Free space map: %d relations, %d pages stored; %.0f total pages needed.\n"
-"\tAllocated FSM size: %d relations + %d pages = %.0f KB shared mem."
+msgid "selected new timeline ID: %u"
 msgstr ""
 
-#: storage/freespace/freespace.c:722 storage/freespace/freespace.c:781
-#: utils/init/miscinit.c:989
+#: access/transam/xlog.c:4408
 #, c-format
-msgid "Failed to write %s: %m"
-msgstr "дÈë %s Ê§°Ü: %m"
+msgid "undo starts at %X/%X"
+msgstr "undo ÔÚ %X/%X ¿ªÊ¼"
 
-#: storage/freespace/freespace.c:822 utils/init/miscinit.c:952
+#: access/transam/xlog.c:4419
 #, c-format
-msgid "Failed to read %s: %m"
-msgstr "¶ÁÈ¡ %s Ê§°Ü: %m"
+msgid "undo done at %X/%X"
+msgstr "undo ÔÚ %X/%X Íê³É"
 
-#: storage/freespace/freespace.c:835
-#, c-format
-msgid "Bogus file header in %s"
-msgstr ""
+#: access/transam/xlog.c:4424
+msgid "undo is not required"
+msgstr "²»ÐèÒª undo"
 
-#: storage/freespace/freespace.c:857
-#, c-format
-msgid "Bogus rel header in %s"
-msgstr ""
+#: access/transam/xlog.c:4492
+msgid "database system is ready"
+msgstr "Êý¾Ý¿âϵͳ׼±¸¾ÍÐ÷"
+
+#: access/transam/xlog.c:4531
+msgid "invalid primary checkpoint link in control file"
+msgstr "ÔÚ¿ØÖÆÎļþÖÐÎÞЧµÄÖ÷ checkpoint Á´½Ó"
+
+#: access/transam/xlog.c:4535
+msgid "invalid secondary checkpoint link in control file"
+msgstr "ÔÚ¿ØÖÆÎļþÖÐÎÞЧµÄ´Î checkpoint Á´½Ó"
+
+#: access/transam/xlog.c:4539
+msgid "invalid checkpoint link in backup_label file"
+msgstr "ÔÚ backup_label ÎļþÖÐÎÞЧµÄ checkpoint Á´½Ó"
+
+#: access/transam/xlog.c:4553
+msgid "invalid primary checkpoint record"
+msgstr "ÎÞЧµÄÖ÷ checkpoint ¼Ç¼"
+
+#: access/transam/xlog.c:4557
+msgid "invalid secondary checkpoint record"
+msgstr "ÎÞЧµÄ´Î checkpoint ¼Ç¼"
+
+#: access/transam/xlog.c:4561
+msgid "invalid checkpoint record"
+msgstr "ÎÞЧµÄ checkpoint ¼Ç¼"
 
-#: storage/freespace/freespace.c:874
+#: access/transam/xlog.c:4572
+msgid "invalid resource manager ID in primary checkpoint record"
+msgstr "ÔÚÖ÷ checkpoint ¼Ç¼ÖеÄÎÞЧ×ÊÔ´¹ÜÀíÆ÷ ID"
+
+#: access/transam/xlog.c:4576
+msgid "invalid resource manager ID in secondary checkpoint record"
+msgstr "ÔڴΠcheckpoint ¼Ç¼ÖеÄÎÞЧ×ÊÔ´¹ÜÀíÆ÷ ID"
+
+#: access/transam/xlog.c:4580
+msgid "invalid resource manager ID in checkpoint record"
+msgstr "ÔÚ checkpoint ¼Ç¼ÖеÄÎÞЧ×ÊÔ´¹ÜÀíÆ÷ ID"
+
+#: access/transam/xlog.c:4592
+msgid "invalid xl_info in primary checkpoint record"
+msgstr "ÔÚÖ÷ checkpoint ¼Ç¼ÖÐÎÞЧµÄ xl_info"
+
+#: access/transam/xlog.c:4596
+msgid "invalid xl_info in secondary checkpoint record"
+msgstr "ÔڴΠcheckpoint ¼Ç¼ÖÐÎÞЧµÄ xl_info"
+
+#: access/transam/xlog.c:4600
+msgid "invalid xl_info in checkpoint record"
+msgstr "ÔÚ checkpoint ¼Ç¼ÖÐÎÞЧµÄ xl_info"
+
+#: access/transam/xlog.c:4611
+msgid "invalid length of primary checkpoint record"
+msgstr "ÎÞЧµÄÖ÷ checkpoint ¼Ç¼³¤¶È"
+
+#: access/transam/xlog.c:4615
+msgid "invalid length of secondary checkpoint record"
+msgstr "ÎÞЧµÄ´Î checkpoint ¼Ç¼³¤¶È"
+
+#: access/transam/xlog.c:4619
+msgid "invalid length of checkpoint record"
+msgstr "ÎÞЧµÄ checkpoint ¼Ç¼³¤¶È"
+
+#: access/transam/xlog.c:4672
+msgid "shutting down"
+msgstr "ÕýÔڹرÕ"
+
+#: access/transam/xlog.c:4681
+msgid "database system is shut down"
+msgstr "Êý¾Ý¿âϵͳÒѹرÕ"
+
+#: access/transam/xlog.c:4894
+msgid ""
+"concurrent transaction log activity while database system is shutting down"
+msgstr "µ±Êý¾Ý¿âÕýÔڹرÕʱ, ÈÔÓлîÔ¾µÄ²¢·¢ÊÂÎïÈÕÖ¾"
+
+#: access/transam/xlog.c:5020
 #, c-format
-msgid "Premature EOF in %s"
+msgid "unexpected timeline ID %u (after %u) in checkpoint record"
 msgstr ""
 
-#: storage/freespace/freespace.c:987
-msgid "FreeSpaceMap hashtable out of memory"
+#: access/transam/xlog.c:5043
+#, c-format
+msgid "unexpected timeline ID %u (should be %u) in checkpoint record"
 msgstr ""
 
-#: storage/freespace/freespace.c:1040
-msgid "FreeSpaceMap hashtable corrupted"
-msgstr ""
+#: access/transam/xlog.c:5164 access/transam/xlog.c:5196
+#, c-format
+msgid "could not fsync log file %u, segment %u: %m"
+msgstr "ÎÞ·¨Í¬²½ (fsync) ÈÕÖ¾Îļþ %u, ¶Î %u: %m"
 
-#: storage/freespace/freespace.c:1185
-msgid "find_free_space: called for an index relation"
-msgstr ""
+#: access/transam/xlog.c:5204
+#, c-format
+msgid "could not fdatasync log file %u, segment %u: %m"
+msgstr "ÎÞ·¨Í¬²½ (fdatasync) ÈÕÖ¾Îļþ %u, ¶Î %u: %m"
 
-#: storage/freespace/freespace.c:1235
-msgid "find_index_free_space: called for a non-index relation"
-msgstr ""
+#: access/transam/xlog.c:5247 access/transam/xlog.c:5366
+msgid "must be superuser to run a backup"
+msgstr "ÔËÐб¸·Ý±ØÐëΪ³¬¼¶Óû§"
 
-#: storage/freespace/freespace.c:1263
-msgid "fsm_record_free_space: called for an index relation"
-msgstr ""
+#: access/transam/xlog.c:5300
+msgid "a backup is already in progress"
+msgstr "Ò»¸ö±¸·ÝÒѾ­ÔÚÔËÐÐÖÐ"
 
-#: storage/freespace/freespace.c:1423
-msgid "compact_fsm_storage: can't juggle and compress too"
-msgstr ""
+#: access/transam/xlog.c:5301
+#, c-format
+msgid ""
+"If you're sure there is no backup in progress, remove file \"%s\" and try "
+"again."
+msgstr "Èç¹ûÄãÈ·ÈÏûÓÐÆäËû±¸·Ý½ø³ÌÔÚÔËÐÐ, É¾³ýÎļþ \"%s\", È»ºóÖØÊÔ."
 
-#: storage/freespace/freespace.c:1438
-msgid "compact_fsm_storage: insufficient room"
-msgstr ""
+#: access/transam/xlog.c:5322 access/transam/xlog.c:5442
+#, c-format
+msgid "could not write file \"%s\": %m"
+msgstr "ÎÞ·¨Ð´ÈëÎļþ \"%s\": %m"
 
-#: storage/freespace/freespace.c:1514
-msgid "push_fsm_rels_after: out of room"
-msgstr ""
+#: access/transam/xlog.c:5404
+msgid "a backup is not in progress"
+msgstr "ûÓб¸·ÝÔÚÔËÐÐÖÐ"
 
-#: storage/freespace/freespace.c:1557
-msgid "pack_incoming_pages: bogus freespace amount"
-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
+#, c-format
+msgid "invalid data in file \"%s\""
+msgstr "Îļþ \"%s\" ÖдæÔÚÎÞЧÊý¾Ý"
 
-#: storage/freespace/freespace.c:1628
-msgid "pack_existing_pages: bogus freespace amount"
-msgstr ""
+#: access/nbtree/nbtinsert.c:254
+#, c-format
+msgid "duplicate key violates unique constraint \"%s\""
+msgstr "Öظ´¼üÎ¥·´Î¨Ò»Ô¼Êø \"%s\""
 
-#: storage/ipc/ipc.c:95
+#: access/nbtree/nbtinsert.c:404 access/nbtree/nbtsort.c:499
 #, c-format
-msgid "proc_exit(%d)"
-msgstr ""
+msgid "index row size %lu exceeds btree maximum, %lu"
+msgstr "Ë÷ÒýÐдóС %lu ³¬³ö btree µÄ×î´óÖµ, %lu"
 
-#: storage/ipc/ipc.c:113
+#: access/nbtree/nbtpage.c:169 access/nbtree/nbtpage.c:350
 #, c-format
-msgid "exit(%d)"
-msgstr ""
+msgid "index \"%s\" is not a btree"
+msgstr "Ë÷Òý \"%s\" ²»ÊÇÒ»¸ö btree"
 
-#: storage/ipc/ipc.c:126
+#: access/nbtree/nbtpage.c:175 access/nbtree/nbtpage.c:356
 #, c-format
-msgid "shmem_exit(%d)"
-msgstr ""
+msgid "version mismatch in index \"%s\": file version %d, code version %d"
+msgstr "ÔÚË÷Òý \"%s\" Öа汾²»Æ¥Åä: Îļþ°æ±¾ %d, ´úÂë°æ±¾ %d"
 
-#: storage/ipc/ipc.c:152
-msgid "Out of on_proc_exit slots"
-msgstr ""
+#: storage/ipc/sinval.c:105 storage/lmgr/proc.c:231
+#: postmaster/postmaster.c:1581
+msgid "sorry, too many clients already"
+msgstr "¶Ô²»Æð, ÒѾ­ÓÐÌ«¶àµÄ¿Í»§"
 
-#: storage/ipc/ipci.c:73
+#: 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/buffer/buf_table.c:93 storage/freespace/freespace.c:1014
+msgid "out of shared memory"
+msgstr "¹²ÏíÄÚ´æÓþ¡"
+
+#: storage/ipc/shmem.c:411
 #, c-format
-msgid "invoking IpcMemoryCreate(size=%d)"
-msgstr ""
+msgid "could not allocate shared memory segment \"%s\""
+msgstr "ÎÞ·¨·ÖÅä¹²ÏíÄÚ´æ¶Î \"%s\""
 
-#: storage/ipc/ipci.c:115
-msgid "Couldn't create the lock table"
-msgstr ""
+#: storage/file/fd.c:355
+msgid "insufficient file descriptors available to start server process"
+msgstr "Æô¶¯·þÎñÆ÷½ø³ÌµÄÓÐЧÎļþÃèÊö·û²»×ã"
 
-#: storage/ipc/shmem.c:161
-msgid "ShmemAlloc: out of memory"
-msgstr "ShmemAlloc: ÄÚ´æÓþ¡"
+#: storage/file/fd.c:356
+#, c-format
+msgid "System allows %d, we need at least %d."
+msgstr "ϵͳÔÊÐí %d, ÎÒÃÇÖÁÉÙÐèÒª %d."
 
-#: storage/ipc/shmem.c:207
-msgid "InitShmemIndex: couldn't initialize Shmem Index"
-msgstr ""
+#: storage/file/fd.c:397 storage/file/fd.c:1180 storage/file/fd.c:1295
+#, c-format
+msgid "out of file descriptors: %m; release and retry"
+msgstr "³¬³öÎļþÃèÊö·û: %m; ÊÍ·ÅÔÙÖØÊÔ"
 
-#: storage/ipc/shmem.c:218
-msgid "InitShmemIndex: Shmem Index out of memory"
-msgstr ""
+#: storage/lmgr/lock.c:562 storage/lmgr/lock.c:625
+msgid "You may need to increase max_locks_per_transaction."
+msgstr "ÄãÒ²ÐíÐèÒªÔö¼Ó max_locks_per_transaction."
 
-#: storage/ipc/shmem.c:336
-msgid "ShmemInitStruct: Shmem Index out of memory"
-msgstr ""
+#: storage/lmgr/deadlock.c:867
+#, c-format
+msgid "Process %d waits for %s on transaction %u; blocked by process %d."
+msgstr "ÔÚÊÂÎñ %3$u ÉϽø³Ì %1$d µÈ´ý½ø³Ì %4$d ×èÈûµÄ %2$s."
 
-#: storage/ipc/shmem.c:351
-msgid "ShmemInitStruct: ShmemIndex entry size is wrong"
-msgstr ""
+#: storage/lmgr/deadlock.c:877
+#, c-format
+msgid ""
+"Process %d waits for %s on relation %u of database %u; blocked by process %d."
+msgstr "ÔÚÊý¾Ý¿â %4$u µÄ¹Øϵ %3$u ÉϽø³Ì %1$d µÈ´ý½ø³Ì %5$d ×èÈûµÄ %2$s."
 
-#: storage/ipc/shmem.c:368
+#: storage/lmgr/deadlock.c:887
+msgid "deadlock detected"
+msgstr "¼ì²âµ½ËÀËø"
+
+#: storage/page/bufpage.c:135 storage/page/bufpage.c:334
+#: storage/page/bufpage.c:472
 #, c-format
-msgid "ShmemInitStruct: cannot allocate '%s'"
+msgid "corrupted page pointers: lower = %u, upper = %u, special = %u"
 msgstr ""
 
-#: storage/ipc/shmqueue.c:232 storage/ipc/shmqueue.c:252
+#: storage/page/bufpage.c:377
 #, c-format
-msgid "%s: %s"
+msgid "corrupted item pointer: %u"
 msgstr ""
 
-#: storage/ipc/sinval.c:50
-msgid "Backend cache invalidation initialization failed"
+#: storage/page/bufpage.c:392
+#, c-format
+msgid "corrupted item lengths: total %u, available space %u"
 msgstr ""
 
-#: storage/ipc/sinval.c:68
-msgid "SendSharedInvalidMessage: SI buffer overflow"
+#: storage/page/bufpage.c:490
+#, c-format
+msgid "corrupted item pointer: offset = %u, size = %u"
 msgstr ""
 
-#: storage/ipc/sinval.c:111
-msgid "ReceiveSharedInvalidMessages: cache state reset"
-msgstr ""
+#: storage/smgr/md.c:367
+#, c-format
+msgid "could not open relation %u/%u/%u: %m"
+msgstr "ÎÞ·¨´ò¿ª¹Øϵ %u/%u/%u: %m"
 
-#: storage/ipc/sinval.c:320 storage/ipc/sinval.c:330
-msgid "Memory exhausted in GetSnapshotData"
-msgstr "ÔÚ GetSnapshotData ÖÐÄÚ´æÓþ¡"
+#: storage/smgr/md.c:769
+#, 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/ipc/sinvaladt.c:124
+#: storage/smgr/md.c:959
 #, c-format
-msgid "SIBackendInit: backend id %d"
-msgstr ""
+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"
 
-#: storage/ipc/sinvaladt.c:229
+#: storage/smgr/smgr.c:239
 #, c-format
-msgid "SIInsertDataEntry: table is 70%% full, signaling postmaster"
-msgstr ""
+msgid "could not close relation %u/%u/%u: %m"
+msgstr "ÎÞ·¨¹Ø±Õ¹Øϵ %u/%u/%u: %m"
 
-#: storage/large_object/inv_api.c:48
-msgid "getbytealen: VARSIZE(data) < VARHDRSZ. This is internal error."
-msgstr ""
+#: storage/smgr/smgr.c:333
+#, c-format
+msgid "could not create relation %u/%u/%u: %m"
+msgstr "ÎÞ·¨´´½¨¹Øϵ %u/%u/%u: %m"
 
-#: storage/large_object/inv_api.c:74
+#: storage/smgr/smgr.c:457
 #, c-format
-msgid "inv_create: large object %u already exists. This is internal error."
-msgstr "inv_create: ´ó¶ÔÏó %u ÒѾ­´æÔÚ. ÄÚ²¿´íÎó."
+msgid "could not unlink relation %u/%u/%u: %m"
+msgstr "ÎÞ·¨É¾³ý (unlink) ¹Øϵ %u/%u/%u: %m"
 
-#: storage/large_object/inv_api.c:107
+#: storage/smgr/smgr.c:478
 #, c-format
-msgid "inv_create: invalid flags: %d"
-msgstr "inv_create: ÎÞЧ±êÖ¾: %d"
+msgid "could not extend relation %u/%u/%u: %m"
+msgstr "ÎÞ·¨À©³ä (extend) ¹Øϵ %u/%u/%u: %m"
+
+#: storage/smgr/smgr.c:482
+msgid "Check free disk space."
+msgstr "¼ì²é¿ÕÏдÅÅ̿ؼþ."
 
-#: storage/large_object/inv_api.c:126
+#: storage/smgr/smgr.c:499
 #, c-format
-msgid "inv_open: large object %u not found"
-msgstr "inv_open: Ã»ÓÐÕÒµ½´ó¶ÔÏó %u"
+msgid "could not read block %u of relation %u/%u/%u: %m"
+msgstr "ÎÞ·¨¶ÁÈ¡¹Øϵ %2$u/%3$u/%4$u µÄ¿é %1$u: %m"
 
-#: storage/large_object/inv_api.c:144
+#: storage/smgr/smgr.c:524
 #, c-format
-msgid "inv_open: invalid flags: %d"
-msgstr "inv_open: ÎÞЧ±êÖ¾: %d"
+msgid "could not write block %u of relation %u/%u/%u: %m"
+msgstr "ÎÞ·¨Ð´Èë¹Øϵ %2$u/%3$u/%4$u µÄ¿é %1$u: %m"
 
-#: storage/large_object/inv_api.c:244
+#: storage/smgr/smgr.c:554
 #, c-format
-msgid "inv_getsize: large object %u not found"
-msgstr "inv_getsize: Ã»ÓÐÕÒµ½´ó¶ÔÏó %u"
+msgid "could not count blocks of relation %u/%u/%u: %m"
+msgstr "ÎÞ·¨Îª¹Øϵ %u/%u/%u ¼ÆËã¿éÊý: %m"
 
-#: storage/large_object/inv_api.c:257 storage/large_object/inv_api.c:262
-#: storage/large_object/inv_api.c:270
+#: storage/smgr/smgr.c:587 storage/smgr/smgr.c:871
 #, c-format
-msgid "inv_seek: invalid offset: %d"
-msgstr "inv_seek: ÎÞЧƫÒÆÁ¿: %d"
+msgid "could not truncate relation %u/%u/%u to %u blocks: %m"
+msgstr "ÎÞ·¨½«¹Øϵ %2$u/%3$u/%4$u ½Ø¶Ïµ½ %1$u ¿é: %m"
 
-#: storage/large_object/inv_api.c:275
+#: storage/smgr/smgr.c:644
 #, c-format
-msgid "inv_seek: invalid whence: %d"
-msgstr "inv_seek: ·Ç·¨Æðµã: %d"
+msgid "could not sync relation %u/%u/%u: %m"
+msgstr "ÎÞ·¨Í¬²½¹Øϵ %u/%u/%u: %m"
 
-#: storage/lmgr/deadlock.c:227
-msgid "DeadLockCheck: deadlock seems to have disappeared"
-msgstr "DeadLockCheck: ËÀËøºÃÏñÒѾ­ÏûʧÁË"
-
-#: storage/lmgr/deadlock.c:312
-msgid "DeadLockCheckRecurse: inconsistent results"
-msgstr "DeadLockCheckRecurse: ²»Ò»ÖµĽá¹û"
-
-#: storage/lmgr/deadlock.c:861
-#, c-format
-msgid "Proc %d waits for %s on transaction %u; blocked by %d"
+#: storage/buffer/localbuf.c:103
+msgid "no empty local buffer available"
 msgstr ""
 
-#: storage/lmgr/deadlock.c:870
+#: storage/buffer/bufmgr.c:210
 #, c-format
-msgid "Proc %d waits for %s on relation %u database %u; blocked by %d"
+msgid "invalid page header in block %u of relation \"%s\"; zeroing out page"
 msgstr ""
 
-#: storage/lmgr/lmgr.c:85
-msgid "InitLockTable: couldn't initialize lock table"
-msgstr ""
+#: storage/buffer/bufmgr.c:217
+#, c-format
+msgid "invalid page header in block %u of relation \"%s\""
+msgstr "¹Øϵ \"%2$s\" ÖеĿé %1$u ÎÞЧµÄҳͷ"
 
-#: storage/lmgr/lmgr.c:94
-msgid "InitLockTable: couldn't rename long-term lock table"
-msgstr ""
+#: storage/buffer/bufmgr.c:1958
+#, c-format
+msgid "could not write block %u of %u/%u/%u"
+msgstr "ÎÞ·¨Ð´Èë %2$u/%3$u/%4$u µÄ¿é %1$u"
 
-#: storage/lmgr/lmgr.c:135
-msgid "LockRelation: LockAcquire failed"
+#: storage/buffer/bufmgr.c:1963
+msgid "Multiple failures --- write error may be permanent."
 msgstr ""
 
-#: storage/lmgr/lmgr.c:224
-msgid "LockRelationForSession: LockAcquire failed"
-msgstr ""
+#: storage/buffer/bufmgr.c:1981
+#, c-format
+msgid "writing block %u of relation %u/%u/%u"
+msgstr "дÈë¹Øϵ %2$u/%3$u/%4$u µÄ¿é %1$u"
 
-#: storage/lmgr/lmgr.c:262
-msgid "LockPage: LockAcquire failed"
+#: storage/freespace/freespace.c:276 storage/freespace/freespace.c:294
+#: storage/freespace/freespace.c:313
+msgid "insufficient shared memory for free space map"
 msgstr ""
 
-#: storage/lmgr/lmgr.c:303
-msgid "XactLockTableInsert: LockAcquire failed"
-msgstr ""
+#: storage/freespace/freespace.c:306
+#, c-format
+msgid "max_fsm_pages must exceed max_fsm_relations * %d"
+msgstr "max_fsm_pages ±ØÐ볬¹ý max_fsm_relations * %d"
 
-#: storage/lmgr/lmgr.c:326
-msgid "XactLockTableWait: LockAcquire failed"
-msgstr ""
+#: storage/freespace/freespace.c:341
+msgid "max_fsm_pages is too large"
+msgstr "max_fsm_pages Ì«´ó"
 
-#: storage/lmgr/lock.c:110
+#: storage/freespace/freespace.c:709
 #, c-format
-msgid ""
-"%s: lock(%lx) tbl(%d) rel(%u) db(%u) obj(%u) grantMask(%x) req(%d,%d,%d,%d,%"
-"d,%d,%d)=%d grant(%d,%d,%d,%d,%d,%d,%d)=%d wait(%d) type(%s)"
+msgid "free space map: %d relations, %d pages stored; %.0f total pages needed"
 msgstr ""
 
-#: storage/lmgr/lock.c:136
+#: storage/freespace/freespace.c:711
 #, c-format
-msgid ""
-"%s: proclock(%lx) lock(%lx) tbl(%d) proc(%lx) xid(%u) hold(%d,%d,%d,%d,%d,%d,"
-"%d)=%d"
-msgstr ""
+msgid "Allocated FSM size: %d relations + %d pages = %.0f kB shared memory."
+msgstr "·ÖÅä FSM ´óС: %d ¸ö¹Øϵ + %d Ò³ = %.0f kB ¹²ÏíÄÚ´æ."
 
-#: storage/lmgr/lock.c:245
+#: storage/large_object/inv_api.c:197 storage/large_object/inv_api.c:312
+#: commands/comment.c:1151 catalog/pg_largeobject.c:107
 #, c-format
-msgid "LockMethodTableInit: too many lock types %d greater than %d"
-msgstr ""
+msgid "large object %u does not exist"
+msgstr "´ó¶ÔÏó %u ²»´æÔÚ"
 
-#: storage/lmgr/lock.c:264 storage/lmgr/lock.c:310 storage/lmgr/lock.c:330
+#: commands/tablespace.c:154 commands/tablespace.c:162
+#: commands/tablespace.c:168
 #, c-format
-msgid "LockMethodTableInit: couldn't initialize %s"
-msgstr ""
+msgid "could not create directory \"%s\": %m"
+msgstr "ÎÞ·¨´´½¨Ä¿Â¼ \"%s\": %m"
 
-#: storage/lmgr/lock.c:451
+#: commands/tablespace.c:181
 #, c-format
-msgid "LockAcquire: user lock [%u] %s"
-msgstr ""
+msgid "could not stat directory \"%s\": %m"
+msgstr "ÎÞ·¨È¡Ä¿Â¼ \"%s\" ×´Ì¬: %m"
 
-#: storage/lmgr/lock.c:462
+#: commands/tablespace.c:190
 #, c-format
-msgid "LockAcquire: bad lock table %d"
-msgstr ""
+msgid "\"%s\" exists but is not a directory"
+msgstr "\"%s\" ´æÔÚ, µ«²»ÊÇÒ»¸öĿ¼"
 
-#: storage/lmgr/lock.c:480
+#: commands/tablespace.c:227
 #, c-format
-msgid "LockAcquire: lock table %d is out of memory"
-msgstr ""
-
-#: storage/lmgr/lock.c:527
-msgid "LockAcquire: proclock table out of memory"
-msgstr ""
+msgid "permission denied to create tablespace \"%s\""
+msgstr "´´½¨±í¿Õ¼ä \"%s\" È¨ÏÞ²»¹»"
 
-#: storage/lmgr/lock.c:572
-#, c-format
-msgid "Deadlock risk: raising lock level from %s to %s on object %u/%u/%u"
-msgstr ""
+#: commands/tablespace.c:229
+msgid "Must be superuser to create a tablespace."
+msgstr "Ö»Óг¬¼¶Óû§ÄÜ´´½¨±í¿Õ¼ä"
 
-#: storage/lmgr/lock.c:652
-msgid "LockAcquire: remove proclock, table corrupted"
-msgstr ""
+#: commands/tablespace.c:248
+msgid "tablespace location may not contain single quotes"
+msgstr "±í¿Õ¼ä·¾¶²»ÄÜ°üº¬µ¥ÒýºÅ"
 
-#: storage/lmgr/lock.c:915
-msgid "deadlock detected"
-msgstr ""
+#: commands/tablespace.c:258
+msgid "tablespace location must be an absolute path"
+msgstr "±í¿Õ¼ä·¾¶±ØÐëΪ¾ø¶Ô·¾¶"
 
-#: storage/lmgr/lock.c:996
+#: commands/tablespace.c:268
 #, c-format
-msgid "LockRelease: user lock tag [%u] %d"
-msgstr ""
+msgid "tablespace location \"%s\" is too long"
+msgstr "±í¿Õ¼ä·¾¶ \"%s\" Ì«³¤"
 
-#: storage/lmgr/lock.c:1006
-msgid "lockMethodTable is null in LockRelease"
-msgstr ""
+#: commands/tablespace.c:278 commands/tablespace.c:839
+#, c-format
+msgid "unacceptable tablespace name \"%s\""
+msgstr "²»¿É·ÃÎʵıí¿Õ¼äÃû×Ö \"%s\""
 
-#: storage/lmgr/lock.c:1028
-msgid "LockRelease: no such lock"
-msgstr ""
+#: commands/tablespace.c:280 commands/tablespace.c:840
+msgid "The prefix \"pg_\" is reserved for system tablespaces."
+msgstr "ǰ׺ \"pg_\" ÊDZ£Áô¸øϵͳ±í¿Õ¼äµÄ."
 
-#: storage/lmgr/lock.c:1051
-msgid "LockRelease: no lock with this tag"
-msgstr ""
+#: commands/tablespace.c:290 commands/tablespace.c:852
+#, c-format
+msgid "tablespace \"%s\" already exists"
+msgstr "±í¿Õ¼ä \"%s\" ÒѾ­´æÔÚ"
 
-#: storage/lmgr/lock.c:1054
-msgid "LockRelease: proclock table corrupted"
-msgstr ""
+#: commands/tablespace.c:325 commands/tablespace.c:969
+#, c-format
+msgid "could not set permissions on directory \"%s\": %m"
+msgstr "ÎÞ·¨ÎªÄ¿Â¼ \"%s\" µÄÉèÖÃȨÏÞ: %m"
 
-#: storage/lmgr/lock.c:1068
+#: commands/tablespace.c:334
 #, c-format
-msgid "LockRelease: you don't own a lock of type %s"
-msgstr ""
+msgid "directory \"%s\" is not empty"
+msgstr "Ŀ¼ \"%s\" ²»ÊÇ¿ÕµÄ"
 
-#: storage/lmgr/lock.c:1122
-msgid "LockRelease: remove lock, table corrupted"
-msgstr ""
+#: commands/tablespace.c:355 commands/tablespace.c:984
+#, c-format
+msgid "could not create symbolic link \"%s\": %m"
+msgstr "ÎÞ·¨´´½¨·ûºÅÁ´½Ó \"%s\": %m"
 
-#: storage/lmgr/lock.c:1151
-msgid "LockRelease: remove proclock, table corrupted"
-msgstr ""
+#: commands/tablespace.c:386 commands/tablespace.c:483
+msgid "tablespaces are not supported on this platform"
+msgstr "ÔÚ´Ëƽ̨Éϲ»Ö§³Ö±í¿Õ¼ä"
 
-#: storage/lmgr/lock.c:1192
+#: commands/tablespace.c:460
 #, c-format
-msgid "LockReleaseAll: lockmethod=%d, pid=%d"
-msgstr ""
+msgid "tablespace \"%s\" is not empty"
+msgstr "±í¿Õ¼ä \"%s\" ²»ÊÇ¿ÕµÄ"
 
-#: storage/lmgr/lock.c:1200
+#: commands/tablespace.c:559
 #, c-format
-msgid "LockReleaseAll: bad lockmethod %d"
-msgstr ""
+msgid "could not delete directory \"%s\": %m"
+msgstr "ÎÞ·¨É¾³ýĿ¼ \"%s\": %m"
 
-#: storage/lmgr/lock.c:1304
-msgid "LockReleaseAll: proclock table corrupted"
-msgstr ""
+#: commands/tablespace.c:593
+#, c-format
+msgid "could not unlink file \"%s\": %m"
+msgstr "ÎÞ·¨É¾³ý (unlink) Îļþ \"%s\": %m"
 
-#: storage/lmgr/lock.c:1322
-msgid "LockReleaseAll: cannot remove lock from HTAB"
-msgstr ""
+#: commands/tablespace.c:610
+#, c-format
+msgid "could not remove directory \"%s\": %m"
+msgstr "ÎÞ·¨É¾³ýĿ¼ \"%s\": %m"
 
-#: storage/lmgr/lock.c:1337
-msgid "LockReleaseAll: done"
-msgstr ""
+#: commands/tablespace.c:618
+#, c-format
+msgid "could not unlink symbolic link \"%s\": %m"
+msgstr "ÎÞ·¨É¾³ý (unlink) ·ûºÅÁ´½Ó \"%s\": %m"
 
-#: storage/lmgr/lock.c:1524
-msgid "DumpAllLocks: proclock->tag.lock = NULL"
-msgstr ""
+#: commands/tablespace.c:912 commands/functioncmds.c:773
+#: commands/dbcommands.c:838 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
+msgid "must be superuser to change owner"
+msgstr "Ö»Óг¬¼¶Óû§¿ÉÒÔ¸ü¸ÄÊôÖ÷"
 
-#: storage/lmgr/lwlock.c:71
+#: commands/tablespace.c:997
 #, c-format
-msgid "%s(%d): excl %d shared %d head %p rOK %d"
-msgstr ""
+msgid "tablespace %u is not empty"
+msgstr "±í¿Õ¼ä %u ²»ÊÇ¿ÕµÄ"
 
-#: storage/lmgr/lwlock.c:81
-#, c-format
-msgid "%s(%d): %s"
-msgstr ""
+#: commands/portalcmds.c:54 commands/portalcmds.c:174
+#: commands/portalcmds.c:219
+msgid "invalid cursor name: must not be empty"
+msgstr "ÎÞЧµÄÓαêÃû³Æ: ²»ÄÜΪ¿Õ"
 
-#: storage/lmgr/lwlock.c:184
-msgid "No more LWLockIds available"
-msgstr ""
+#: commands/portalcmds.c:80
+msgid "DECLARE CURSOR may not specify INTO"
+msgstr "DECLARE CURSOR Ò²ÐíûÓÐÖ¸¶¨ INTO"
 
-#: storage/lmgr/lwlock.c:281
-msgid "LWLockAcquire: can't wait without a PGPROC structure"
-msgstr ""
+#: commands/portalcmds.c:84
+msgid "DECLARE CURSOR ... FOR UPDATE is not supported"
+msgstr "DECLARE CURSOR ... FOR UPDATE ²»±»Ö§³Ö"
+
+#: commands/portalcmds.c:85
+msgid "Cursors must be READ ONLY."
+msgstr "Óαê±ØÐëΪֻ¶Á."
 
-#: storage/lmgr/lwlock.c:427
+#: commands/portalcmds.c:182 commands/portalcmds.c:229
 #, c-format
-msgid "LWLockRelease: lock %d is not held"
-msgstr ""
+msgid "cursor \"%s\" does not exist"
+msgstr "Óαê \"%s\" ²»´æÔÚ"
 
-#: storage/lmgr/proc.c:151 storage/lmgr/proc.c:165
-msgid "cannot create new proc: out of memory"
-msgstr "ÎÞ·¨´´½¨Ð¹ý³Ì: ÄÚ´æÓþ¡"
+#: commands/portalcmds.c:395
+msgid "could not reposition held cursor"
+msgstr "ÎÞ·¨¶¨Î»Óαê"
 
-#: storage/lmgr/proc.c:192
-msgid "InitProcess: Proc Header uninitialized"
+#: commands/variable.c:65
+msgid "invalid list syntax for parameter \"datestyle\""
 msgstr ""
 
-#: storage/lmgr/proc.c:195
-msgid "InitProcess: you already exist"
-msgstr ""
+#: commands/variable.c:151
+#, c-format
+msgid "unrecognized \"datestyle\" key word: \"%s\""
+msgstr "²»ÈϿɵĠ\"datestyle\" ¹Ø¼ü×Ö: \"%s\""
 
-#: storage/lmgr/proc.c:273
-msgid "InitDummyProcess: Proc Header uninitialized"
-msgstr ""
+#: commands/variable.c:169
+msgid "conflicting \"datestyle\" specifications"
+msgstr "\"datestyle\" ¹æ·¶³åÍ»"
 
-#: storage/lmgr/proc.c:276
-msgid "InitDummyProcess: you already exist"
-msgstr ""
+#: commands/variable.c:280
+msgid "invalid interval value for time zone: month not allowed"
+msgstr "ÎÞЧµÄʱÇø¼ä¸ôÖµ: ²»ÔÊÐíÓÐÔ·Ý"
 
-#: storage/lmgr/proc.c:282
+#: commands/variable.c:403
 #, c-format
-msgid "InitDummyProcess: DummyProc is in use by PID %d"
-msgstr ""
+msgid "unrecognized time zone name: \"%s\""
+msgstr "²»±»ÈϿɵÄʱÇøÃû×Ö: \"%s\""
 
-#: storage/lmgr/proc.c:658
-msgid "ProcSleep: Unable to set timer for process wakeup"
-msgstr ""
+#: commands/variable.c:411
+#, c-format
+msgid "time zone \"%s\" appears to use leap seconds"
+msgstr "ʱÇø \"%s\" ¿´ÉÏȥʹÓÃÁËÈòÃë"
 
-#: storage/lmgr/proc.c:680
-msgid "ProcSleep: Unable to disable timer for process wakeup"
-msgstr ""
+#: commands/variable.c:413
+msgid "PostgreSQL does not support leap seconds."
+msgstr "PostgreSQL ²»Ö§³ÖÈòÃë"
 
-#: storage/lmgr/spin.c:84
-msgid "spin.c does not support S_LOCK_FREE()"
-msgstr ""
+#: commands/variable.c:483
+msgid "SET TRANSACTION ISOLATION LEVEL must be called before any query"
+msgstr "SET TRANSACTION ISOLATION LEVEL ±ØÐëÔÚÈκβéѯ֮ǰµ÷ÓÃ"
+
+#: commands/variable.c:492
+msgid "SET TRANSACTION ISOLATION LEVEL must not be called in a subtransaction"
+msgstr "SET TRANSACTION ISOLATION LEVEL ²»ÄÜÔÚ×ÓÊÂÎïÖе÷ÓÃ"
 
-#: storage/page/bufpage.c:92
+#: commands/trigger.c:134
 #, c-format
-msgid ""
-"PageAddItem: corrupted page pointers: lower = %u, upper = %u, special = %u"
-msgstr ""
+msgid "could not determine referenced table for constraint \"%s\""
+msgstr "ÎÞ·¨È·¶¨Ô¼Êø \"%s\" µÄ¹ØÁª±í"
 
-#: storage/page/bufpage.c:112
-msgid "PageAddItem: tried overwrite of used ItemId"
-msgstr ""
+#: commands/trigger.c:219
+msgid "multiple INSERT events specified"
+msgstr "INSERT Ê¼þÖ¸¶¨Á˶à±é"
 
-#: storage/page/bufpage.c:139
-msgid "PageAddItem: specified offset after maxoff"
-msgstr ""
+#: commands/trigger.c:226
+msgid "multiple DELETE events specified"
+msgstr "DELETE Ê¼þÖ¸¶¨Á˶à±é"
 
-#: storage/page/bufpage.c:288
-#, c-format
-msgid ""
-"PageRepairFragmentation: corrupted page pointers: lower = %u, upper = %u, "
-"special = %u"
-msgstr ""
+#: commands/trigger.c:233
+msgid "multiple UPDATE events specified"
+msgstr "UPDATE Ê¼þÖ¸¶¨Á˶à±é"
 
-#: storage/page/bufpage.c:330
+#: commands/trigger.c:266 commands/trigger.c:654
 #, c-format
-msgid "PageRepairFragmentation: corrupted item pointer %u"
-msgstr ""
+msgid "trigger \"%s\" for relation \"%s\" already exists"
+msgstr "¶ÔÓÚ¹Øϵ \"%2$s\" µÄ \"%1$s\" ´¥·¢Æ÷ÒѾ­´æÔÚ"
 
-#: storage/page/bufpage.c:343
+#: commands/trigger.c:287
 #, c-format
-msgid "PageRepairFragmentation: corrupted item lengths, total %u, avail %u"
-msgstr ""
+msgid "changing return type of function %s from \"opaque\" to \"trigger\""
+msgstr "¸Ä±äº¯Êý %s µÄ·µ»ØÀàÐÍ \"opaque\" Îª \"trigger\""
 
-#: storage/page/bufpage.c:421
+#: commands/trigger.c:294
 #, c-format
-msgid ""
-"PageIndexTupleDelete: corrupted page pointers: lower = %u, upper = %u, "
-"special = %u"
-msgstr ""
+msgid "function %s must return type \"trigger\""
+msgstr "º¯Êý %s ±ØÐè·µ»Ø \"trigger\" ÀàÐÍ"
 
-#: storage/page/bufpage.c:426
+#: commands/trigger.c:483 commands/trigger.c:697 commands/comment.c:836
 #, c-format
-msgid "PageIndexTupleDelete: bad offnum %u"
-msgstr ""
+msgid "trigger \"%s\" for table \"%s\" does not exist"
+msgstr "±í \"%2$s\" µÄ \"%1$s\" ´¥·¢Æ÷²»´æÔÚ"
 
-#: storage/page/bufpage.c:437
+#: commands/trigger.c:1160
 #, c-format
-msgid "PageIndexTupleDelete: corrupted item pointer: offset = %u size = %u"
-msgstr ""
+msgid "trigger function %u returned null value"
+msgstr "´¥·¢Æ÷º¯Êý %u ·µ»ØÁË¿ÕÖµ"
 
-#: storage/smgr/md.c:252 storage/smgr/md.c:424 storage/smgr/md.c:471
-#: storage/smgr/md.c:510
-msgid "seekpos too big!"
-msgstr ""
+#: commands/trigger.c:1212 commands/trigger.c:1325 commands/trigger.c:1454
+msgid "BEFORE STATEMENT trigger cannot return a value"
+msgstr "BEFORE STATEMENT ´¥·¢Æ÷²»ÄÜ·µ»ØÒ»¸öÖµ"
 
-#: storage/smgr/md.c:287
-msgid "segment too big!"
+#: commands/trigger.c:1581 executor/execMain.c:1176 executor/execMain.c:1477
+#: executor/execMain.c:1613
+msgid "could not serialize access due to concurrent update"
 msgstr ""
 
-#: storage/smgr/md.c:341
-msgid "segment too big on relopen!"
+#: commands/trigger.c:2708
+msgid "unnamed constraints cannot be set explicitly"
 msgstr ""
 
-#: storage/smgr/md.c:519
+#: commands/trigger.c:2741
 #, c-format
-msgid "mdblindwrt: lseek(%ld) failed: %m"
-msgstr "mdblindwrt: lseek(%ld) Ê§°Ü: %m"
+msgid "constraint \"%s\" is not deferrable"
+msgstr "Ô¼Êø \"%s\" ²»¿ÉÕ¹»º"
 
-#: storage/smgr/md.c:533
+#: commands/trigger.c:2756 commands/tablecmds.c:4528
 #, c-format
-msgid "mdblindwrt: write() failed: %m"
-msgstr "mdblindwrt: write() Ê§°Ü: %m"
+msgid "constraint \"%s\" does not exist"
+msgstr "Ô¼Êø \"%s\" ²»´æÔÚ"
 
-#: storage/smgr/md.c:539
-#, c-format
-msgid "mdblindwrt: close() failed: %m"
-msgstr "mdblindwrt: close() Ê§°Ü: %m"
+#: commands/comment.c:435
+msgid "database name may not be qualified"
+msgstr "Êý¾Ý¿âÃû³ÆÒ²Ðí²»·ûºÏÌõ¼þ"
 
-#: storage/smgr/md.c:591
-msgid "segment too big in mdnblocks!"
-msgstr ""
+#: commands/comment.c:468
+msgid "database comments may only be applied to the current database"
+msgstr "Êý¾Ý¿â×¢ÊÍÖ»ÄÜÊÊÓõ±Ç°Êý¾Ý¿â"
 
-#: storage/smgr/md.c:611
+#: commands/comment.c:500 commands/schemacmds.c:201
+msgid "schema name may not be qualified"
+msgstr "ģʽÃû³ÆÒ²Ðí²»·ûºÏÌõ¼þ"
+
+#: commands/comment.c:582
 #, c-format
-msgid "cannot count blocks for %s -- open failed: %m"
-msgstr ""
+msgid "rule \"%s\" does not exist"
+msgstr "¹æÔò \"%s\" ²»´æÔÚ"
 
-#: storage/smgr/md.c:776
-msgid "_fdvec_alloc error"
-msgstr ""
+#: commands/comment.c:590
+#, c-format
+msgid "there are multiple rules named \"%s\""
+msgstr "ÓжàÌõ¹æÔòµÄÃû×ÖÊÇ \"%s\""
 
-#: storage/smgr/md.c:858
-msgid "segment too big on openseg!"
-msgstr ""
+#: commands/comment.c:591
+msgid "Specify a relation name as well as a rule name."
+msgstr "Ö¸¶¨Ò»¸ö¹ØϵÃû³Æ, ºÍ¹æÔòÃû³ÆÒ»Ñù."
 
-#: storage/smgr/md.c:877
+#: commands/comment.c:916
 #, c-format
-msgid "_mdfd_getrelnfd: cannot open relation %s: %m"
-msgstr "_mdfd_getrelnfd: ÎÞ·¨´ò¿ª¹Øϵ %s: %m"
+msgid "table \"%s\" has multiple constraints named \"%s\""
+msgstr "±í \"%s\" Óжà¸öÃûΪ \"%s\" µÄÔ¼Êø"
 
-#: storage/smgr/md.c:920
+#: commands/comment.c:928
 #, c-format
-msgid "cannot open segment %u of relation %s (target block %u): %m"
-msgstr ""
+msgid "constraint \"%s\" for table \"%s\" does not exist"
+msgstr "±í \"%2$s\" µÄ \"%1$s\" Ô¼Êø²»´æÔÚ"
 
-#: storage/smgr/md.c:973
+#: commands/comment.c:958 commands/conversioncmds.c:109
+#: commands/conversioncmds.c:133 commands/conversioncmds.c:192
+#: catalog/pg_conversion.c:307
 #, c-format
-msgid "_mdfd_blind_getseg: couldn't open %s: %m"
-msgstr ""
-
-#: storage/smgr/mm.c:189
-msgid "main memory storage mgr hash table out of memory"
-msgstr ""
+msgid "conversion \"%s\" does not exist"
+msgstr "±àÂëת»» \"%s\" ²»´æÔÚ"
 
-#: storage/smgr/mm.c:232
-msgid "mmunlink: cache hash table corrupted"
-msgstr ""
+#: commands/comment.c:992
+msgid "language name may not be qualified"
+msgstr "ÓïÑÔÃû³ÆÒ²Ðí²»·ûºÏÌõ¼þ"
 
-#: storage/smgr/mm.c:249
-msgid "mmunlink: rel cache hash table corrupted"
-msgstr ""
+#: commands/comment.c:1007
+msgid "must be superuser to comment on procedural language"
+msgstr "±ØÐë³ÉΪ³¬¼¶Óû§²Å±»ÔÊÐí×¢Ê͹ý³ÌÓïÑÔ"
 
-#: storage/smgr/mm.c:312
-msgid "mmextend: rel cache hash table corrupt"
-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
+#, c-format
+msgid "access method \"%s\" does not exist"
+msgstr "·ÃÎÊ·½Ê½ \"%s\" ²»´æÔÚ"
 
-#: storage/smgr/mm.c:323
-msgid "mmextend: cache hash table corrupt"
-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
+#, c-format
+msgid "operator class \"%s\" does not exist for access method \"%s\""
+msgstr "´¦Àí·½·¨ \"%s\" µÄ²Ù×÷·ûÀà \"%s\" ²»´æÔÚ"
 
-#: storage/smgr/mm.c:434
-msgid "mmwrite: hash table missing requested page"
-msgstr ""
+#: commands/comment.c:1192 commands/functioncmds.c:908
+#: commands/functioncmds.c:1156
+#, c-format
+msgid "source data type %s does not exist"
+msgstr "Ô´Êý¾ÝÀàÐÍ %s ²»´æÔÚ"
 
-#: storage/smgr/smgr.c:132
+#: commands/comment.c:1199 commands/functioncmds.c:915
+#: commands/functioncmds.c:1163
 #, c-format
-msgid "initialization failed on %s: %m"
-msgstr ""
+msgid "target data type %s does not exist"
+msgstr "Ä¿±êÊý¾ÝÀàÐÍ %s ²»´æÔÚ"
 
-#: storage/smgr/smgr.c:154
+#: commands/comment.c:1209 commands/functioncmds.c:1173
 #, c-format
-msgid "shutdown failed on %s: %m"
-msgstr ""
+msgid "cast from type %s to type %s does not exist"
+msgstr "ÀàÐÍ %s µ½ÀàÐÍ %s µÄת»»²»´æÔÚ"
 
-#: storage/smgr/smgr.c:174
+#: commands/comment.c:1221 commands/functioncmds.c:948
+#: commands/functioncmds.c:1182
 #, c-format
-msgid "cannot create %s: %m"
-msgstr "ÎÞ·¨´´½¨ %s: %m"
+msgid "must be owner of type %s or type %s"
+msgstr "Ö»ÄÜÊÇÀàÐÍ %s »ò %s µÄËùÓÉÕß"
 
-#: storage/smgr/smgr.c:246
+#: commands/functioncmds.c:84
 #, c-format
-msgid ""
-"cannot extend %s: %m.\n"
-"\tCheck free disk space."
-msgstr ""
+msgid "SQL function cannot return shell type %s"
+msgstr "SQL º¯Êý²»ÄÜ·µ»Ø shell ÀàÐÍ %s"
 
-#: storage/smgr/smgr.c:270 utils/init/miscinit.c:1033
-#: utils/misc/database.c:147
+#: commands/functioncmds.c:89
 #, c-format
-msgid "cannot open %s: %m"
-msgstr "ÎÞ·¨´ò¿ª %s: %m"
+msgid "return type %s is only a shell"
+msgstr "·µ»ØÀàÐÍ %s Ö»ÊÇÒ»¸ö shell"
 
-#: storage/smgr/smgr.c:284
+#: commands/functioncmds.c:115
 #, c-format
-msgid "cannot close %s: %m"
-msgstr "ÎÞ·¨¹Ø±Õ %s: %m"
+msgid "type \"%s\" is not yet defined"
+msgstr "ÀàÐÍ \"%s\" ÈÔû±»¶¨Òå"
 
-#: storage/smgr/smgr.c:307
+#: commands/functioncmds.c:116
+msgid "Creating a shell type definition."
+msgstr "´´½¨Ò»¸ö shell ÀàÐͶ¨Òå."
+
+#: commands/functioncmds.c:154 parser/parse_func.c:1388 catalog/pg_proc.c:103
 #, c-format
-msgid "cannot read block %d of %s: %m"
-msgstr "ÎÞ·¨¶ÁÈ¡ %2$s µÄ¿é %1$d: %m"
+msgid "functions cannot have more than %d arguments"
+msgstr "º¯Êý²»Äܳ¬¹ý %d ¸ö²ÎÊý"
 
-#: storage/smgr/smgr.c:331
+#: commands/functioncmds.c:166
 #, c-format
-msgid "cannot write block %d of %s: %m"
-msgstr "ÎÞ·¨Ð´Èë %2$s µÄ¿é %1$d: %m"
+msgid "SQL function cannot accept shell type %s"
+msgstr "SQL º¯Êý²»ÄܽÓÊÕ shell ÀàÐÍ %s"
 
-#: storage/smgr/smgr.c:360
+#: commands/functioncmds.c:171
 #, c-format
-msgid "cannot write block %d of %u/%u blind: %m"
-msgstr ""
+msgid "argument type %s is only a shell"
+msgstr "²ÎÊýÀàÐÍ %s Ö»ÊÇÒ»¸ö shell"
 
-#: storage/smgr/smgr.c:387
+#: commands/functioncmds.c:179 parser/parse_oper.c:113 parser/parse_oper.c:124
 #, c-format
-msgid "cannot count blocks for %s: %m"
-msgstr "ÎÞ·¨Îª %s ¼ÆËã¿éÊý: %m"
+msgid "type %s does not exist"
+msgstr "ÀàÐÍ %s ²»´æÔÚ"
+
+#: commands/functioncmds.c:186
+msgid "functions cannot accept set arguments"
+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/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
+msgid "conflicting or redundant options"
+msgstr "Ñ¡Ïî³åÍ»»ò¹ý¶à"
+
+#: commands/functioncmds.c:273
+msgid "no function body specified"
+msgstr "ûÓÐÖ¸¶¨º¯ÊýÌå"
+
+#: commands/functioncmds.c:280
+msgid "no language specified"
+msgstr "ûÓÐÖ¸¶¨ÓïÑÔ"
 
-#: storage/smgr/smgr.c:417
+#: commands/functioncmds.c:342
 #, c-format
-msgid "cannot truncate %s to %u blocks: %m"
-msgstr "ÎÞ·¨½« %s ½Ø¶ÏΪ %u ¿é: %m"
+msgid "unrecognized function attribute \"%s\" ignored"
+msgstr "ºöÂÔδÈϿɵĺ¯ÊýÊôÐÔ \"%s\""
 
-#: storage/smgr/smgr.c:459
+#: commands/functioncmds.c:386
 #, c-format
-msgid "cannot unlink %u/%u: %m"
-msgstr "ÎÞ·¨É¾³ý %u/%u: %m"
+msgid "only one AS item needed for language \"%s\""
+msgstr "¶ÔÓÚ \"%s\" ÓïÑÔÖ»ÄÜÒªÇóÒ»¸ö AS ÏîÄ¿"
 
-#: storage/smgr/smgr.c:484
+#: commands/functioncmds.c:458
+msgid "You need to use \"createlang\" to load the language into the database."
+msgstr "Äã±ØÐëʹÓà\"createlang\" ¼ÓÔØÓïÑÔµ½Êý¾Ý¿âÖÐ."
+
+#: commands/functioncmds.c:578 commands/functioncmds.c:684
+#: commands/functioncmds.c:751
 #, c-format
-msgid "transaction commit failed on %s: %m"
-msgstr ""
+msgid "\"%s\" is an aggregate function"
+msgstr "\"%s\" ÊÇÒ»¸ö¾Û¼¯º¯Êý"
 
-#: storage/smgr/smgr.c:506
+#: commands/functioncmds.c:580
+msgid "Use DROP AGGREGATE to drop aggregate functions."
+msgstr "ʹÓàDROP AGGREGATE É¾³ýÒ»¸ö¾Û¼¯º¯Êý."
+
+#: commands/functioncmds.c:587
 #, c-format
-msgid "transaction abort failed on %s: %m"
-msgstr ""
+msgid "removing built-in function \"%s\""
+msgstr "ɾ³ýÄÚ½¨º¯Êý \"%s\""
+
+#: commands/functioncmds.c:686
+msgid "Use ALTER AGGREGATE to rename aggregate functions."
+msgstr "ʹÓàALTER AGGREGATE ¶Ô¾Û¼¯º¯ÊýÖØÃüÃû."
 
-#: storage/smgr/smgr.c:528
+#: commands/functioncmds.c:699 commands/aggregatecmds.c:264
 #, c-format
-msgid "storage sync failed on %s: %m"
-msgstr ""
+msgid "function %s already exists in schema \"%s\""
+msgstr "ÔÚģʽ \"%2$s\" Öк¯Êý %1$s ÒѾ­´æÔÚ"
+
+#: commands/functioncmds.c:753
+msgid "Use ALTER AGGREGATE to change owner of aggregate functions."
+msgstr "ʹÓàALTER AGGREGATE ¸Ä±ä¾Û¼¯º¯ÊýµÄÊôÖ÷."
 
-#: storage/smgr/smgr.c:542
+#: commands/functioncmds.c:922
 #, c-format
-msgid "illegal storage manager number %d"
-msgstr ""
+msgid "source data type %s is only a shell"
+msgstr "Ô´Êý¾ÝÀàÐÍ %s Ö»ÊÇÒ»¸ö shell"
 
-#: storage/smgr/smgrtype.c:51
+#: commands/functioncmds.c:928
 #, c-format
-msgid "smgrin: unknown storage manager name '%s'"
-msgstr ""
+msgid "target data type %s is only a shell"
+msgstr "Ä¿±êÊý¾ÝÀàÐÍ %s Ö»ÊÇÒ»¸ö shell"
 
-#: storage/smgr/smgrtype.c:62
+#: commands/functioncmds.c:934
 #, c-format
-msgid "Illegal storage manager id %d"
-msgstr ""
+msgid "source data type %s is a pseudo-type"
+msgstr "Ô´Êý¾ÝÀàÐÍ %s ÊÇÒ»¸öαÀàÐÍ"
 
-#: tcop/fastpath.c:175
+#: commands/functioncmds.c:940
 #, c-format
-msgid "fetch_fp_info: cache lookup for function %u failed"
-msgstr "fetch_fp_info: ÔÚ»º³åÖвéÕÒº¯Êý %u Ê§°Ü"
+msgid "target data type %s is a pseudo-type"
+msgstr "Ä¿±êÊý¾ÝÀàÐÍ %s ÊÇÒ»¸öαÀàÐÍ"
 
-#: tcop/fastpath.c:186 tcop/fastpath.c:191
-msgid "CSTRING not supported in fastpath protocol"
-msgstr ""
+#: commands/functioncmds.c:971
+msgid "cast function must take one to three arguments"
+msgstr "ÀàÐÍת»»º¯ÊýÖ»ÄÜ´øÒ»µ½Èý¸ö²ÎÊý"
 
-#: tcop/fastpath.c:279
-#, c-format
-msgid ""
-"HandleFunctionRequest: actual arguments (%d) != registered arguments (%d)"
-msgstr "HandleFunctionRequest: Êµ¼Ê²ÎÊý (%d) != ×¢²á²ÎÊý (%d)"
+#: commands/functioncmds.c:975
+msgid "argument of cast function must match source data type"
+msgstr "ת»»º¯Êý²ÎÊý±ØÐèÓëÔ´Êý¾ÝÀàÐÍÆ¥Åä"
 
-#: tcop/fastpath.c:298 tcop/fastpath.c:310
-#, c-format
-msgid "HandleFunctionRequest: bogus argsize %d"
-msgstr "HandleFunctionRequest: ´íÎóµÄ argsize %d"
+#: commands/functioncmds.c:979
+msgid "second argument of cast function must be type integer"
+msgstr "ÀàÐÍת»»º¯ÊýµÄµÚ¶þ¸ö²ÎÊý±ØÐëΪÕûÐÍ"
 
-#: tcop/fastpath.c:323
-#, c-format
-msgid "HandleFunctionRequest: bogus argsize %d, should be %d"
-msgstr "HandleFunctionRequest: ´íÎóµÄ argsize %d, Ó¦Îª %d"
+#: commands/functioncmds.c:983
+msgid "third argument of cast function must be type boolean"
+msgstr "ÀàÐÍת»»º¯ÊýµÄµÚÈý¸ö²ÎÊý±ØÐëΪ²¼¶ûÀàÐÍ"
 
-#: tcop/fastpath.c:341 tcop/postgres.c:675
-msgid ""
-"current transaction is aborted, queries ignored until end of transaction "
-"block"
-msgstr "µ±Ç°ÊÂÎñÒÑÍ˳ö, ÊÂÎñ¿é½áÊø֮ǰµÄ²éѯ±»ºöÂÔ"
+#: commands/functioncmds.c:987
+msgid "return data type of cast function must match target data type"
+msgstr "ת»»º¯Êý·µ»ØÊý¾ÝÀàÐͱØÐèÓëÄ¿±êÊý¾ÝÀàÐÍÆ¥Åä"
 
-#: tcop/postgres.c:284
-#, c-format
-msgid "Socket command type %c unknown"
-msgstr "δ֪µÄ Socket ÃüÁîÀàÐÍ %c"
+#: commands/functioncmds.c:998
+msgid "cast function must not be volatile"
+msgstr "ÀàÐÍת»»º¯Êý²»ÄÜΪÒ×ʧµÄ (volatile)"
 
-#: tcop/postgres.c:372
-#, c-format
-msgid "query: %s"
-msgstr "²éѯ: %s"
+#: commands/functioncmds.c:1003
+msgid "cast function must not be an aggregate function"
+msgstr "ת»»º¯Êý²»ÄÜÊÇÒ»¸ö¾Û¼¯º¯Êý"
 
-#: tcop/postgres.c:459
-msgid "pg_analyze_and_rewrite: copyObject failed on parse tree"
-msgstr "pg_analyze_and_rewrite: copyObject ´ò¿ª·ÖÎöÊ÷ʧ°Ü"
+#: commands/functioncmds.c:1007
+msgid "cast function must not return a set"
+msgstr "ת»»º¯Êý²»ÄÜ·µ»ØÒ»¸ö×éºÏ"
 
-#: tcop/postgres.c:503
-msgid "pg_plan_query: copyObject failed on plan tree"
-msgstr "pg_plan_query: ÔÚ·ÖÎöÊ÷ÉÏ copyObject Ê§°Ü"
+#: commands/functioncmds.c:1031
+msgid "must be superuser to create a cast WITHOUT FUNCTION"
+msgstr "Ö»Óг¬¼¶Óû§ÄÜ´´½¨Ò»¸ö·Çº¯ÊýµÄÀàÐÍת»»"
 
-#: tcop/postgres.c:752
-msgid "ProcessUtility"
-msgstr ""
+#: commands/functioncmds.c:1046
+msgid "source and target data types are not physically compatible"
+msgstr "Ô´Êý¾ÝÀàÐͺÍÄ¿±êÊý¾ÝÀàÐͲ»ÏàÈÝ"
 
-#: tcop/postgres.c:834
-msgid "ProcessQuery"
-msgstr ""
+#: commands/functioncmds.c:1056
+msgid "source data type and target data type are the same"
+msgstr "Ô´Êý¾ÝÀàÐͺÍÄ¿±êÊý¾ÝÀàÐÍÏàͬ"
 
-#: tcop/postgres.c:945
+#: commands/functioncmds.c:1090
 #, c-format
-msgid "duration: %ld.%06ld sec"
-msgstr ""
+msgid "cast from type %s to type %s already exists"
+msgstr "ÀàÐÍ %s µ½ %s µÄת»»ÒѾ­´æÔÚ"
 
-#: tcop/postgres.c:959
-msgid "StartTransactionCommand"
-msgstr ""
+#: commands/dbcommands.c:138
+msgid "LOCATION is not supported anymore"
+msgstr "²»ÔÙÖ§³Ö LOCATION"
 
-#: tcop/postgres.c:977
-msgid "CommitTransactionCommand"
-msgstr ""
+#: commands/dbcommands.c:139
+msgid "Consider using tablespaces instead."
+msgstr "¿¼ÂÇʹÓñí¿Õ¼ä´úÌæ."
 
-#: tcop/postgres.c:1004
-msgid ""
-"Message from PostgreSQL backend:\n"
-"\tThe Postmaster has informed me that some other backend\n"
-"\tdied abnormally and possibly corrupted shared memory.\n"
-"\tI have rolled back the current transaction and am\n"
-"\tgoing to terminate your database system connection and exit.\n"
-"\tPlease reconnect to the database system and repeat your query."
-msgstr ""
-"À´×Ô PostgreSQL ºó¶ËµÄÐÅÏ¢:\n"
-"\tPostmaster ¸ßËÙÎÒ˵ÆäËüһЩºó¶Ë·ÇÕý³£Í˳ö,\n"
-"²¢¿ÉÄÜÒÑË𻵹²ÏíÄÚ´æ. ÎÒÒѾ­½«µ±Ç°ÊÂÎñ»Ø¾í²¢ÇÒ\n"
-"×¼±¸ÖÕÖ¹ÄãµÄÊý¾Ý¿âϵͳÁª½Ó²¢Í˳ö. ÇëÖØÐÂÁª½Óµ½\n"
-"Êý¾Ý¿âϵͳ²¢ÖØ×öÄãµÄ²éѯ."
+#: commands/dbcommands.c:162
+#, c-format
+msgid "%d is not a valid encoding code"
+msgstr "%d ÊÇÒ»¸öÎÞЧ±àÂë"
 
-#: tcop/postgres.c:1122
-msgid ""
-"floating point exception! The last floating point operation either exceeded "
-"legal ranges or was a divide by zero"
-msgstr "¸¡µã´íÎó! ×îºóµÄ¸¡µã²Ù×÷²»Êdz¬³öÁË·¶Î§¾ÍÊDZ»Áã³ý"
+#: commands/dbcommands.c:171
+#, c-format
+msgid "%s is not a valid encoding name"
+msgstr "%s ÊÇÒ»¸öÎÞЧ±àÂëÃû×Ö"
+
+#: commands/dbcommands.c:192
+msgid "permission denied to create database"
+msgstr "´´½¨Êý¾Ý¿âȨÏÞ²»¹»"
 
-#: tcop/postgres.c:1155
-msgid "This connection has been terminated by the administrator."
-msgstr "Õâ¸öÁª½ÓÒѱ»¹ÜÀíÔ±ÖÕÖ¹."
+#: commands/dbcommands.c:201
+msgid "must be superuser to create database for another user"
+msgstr "ÆäËûÓû§±ØÐë³ÉΪ³¬¼¶Óû§²ÅÄÜ´´½¨Êý¾Ý¿â"
+
+#: commands/dbcommands.c:215 commands/dbcommands.c:429
+#: commands/dbcommands.c:678
+#, c-format
+msgid "database \"%s\" already exists"
+msgstr "Êý¾Ý¿â \"%s\" ÒѾ­´æÔÚ"
 
-#: tcop/postgres.c:1162
-msgid "Query was canceled."
-msgstr "²éѯÒѱ»È¡Ïû."
+#: commands/dbcommands.c:228
+#, c-format
+msgid "template database \"%s\" does not exist"
+msgstr "template Êý¾Ý¿â \"%s\" ²»´æÔÚ"
 
-#: tcop/postgres.c:1309
-msgid "Assert checking is not compiled in"
-msgstr "ûÓаѶÏÑÔ¼ì²é±àÒë½øÀ´"
+#: commands/dbcommands.c:239
+#, c-format
+msgid "permission denied to copy database \"%s\""
+msgstr "¿½±´Êý¾Ý¿â \"%s\" È¨ÏÞ²»¹»"
 
-#: tcop/postgres.c:1541
-msgid "only one -x flag is allowed"
-msgstr "Ö»ÔÊÐíÒ»¸ö -x ±êÖ¾"
+#: commands/dbcommands.c:252
+#, c-format
+msgid "source database \"%s\" is being accessed by other users"
+msgstr "ÆäËûÓû§ÕýÔÚʹÓÃÔ´Êý¾Ý¿â \"%s\""
 
-#: tcop/postgres.c:1559
-msgid "use -x {off,nor,nopull,nopm,pullall,wait}"
-msgstr "ʹÓà-x {off, nor, nopull, nopm, pullall, wait}"
+#: commands/dbcommands.c:263
+#, c-format
+msgid "invalid server encoding %d"
+msgstr "ÎÞЧ·þÎñÆ÷±àÂë %d"
 
-#: tcop/postgres.c:1614
-msgid ""
-"Query statistics are disabled because parser, planner, or executor "
-"statistics are on."
-msgstr "ÒòΪ´ò¿ªÁË·ÖÎöÆ÷, ¹æ»®Æ÷»òÕßÖ´ÐÐÆ÷ͳ¼Æ, ËùÒÔ²éѯͳ¼Æ±»¹Ø±Õ."
+#: commands/dbcommands.c:354 commands/dbcommands.c:375
+#: commands/dbcommands.c:385 commands/dbcommands.c:1161
+#: commands/dbcommands.c:1169
+msgid "could not initialize database directory"
+msgstr "ÎÞ·¨³õʼ»¯Êý¾Ý¿âĿ¼"
 
-#: tcop/postgres.c:1690 tcop/postgres.c:1702
+#: commands/dbcommands.c:355
 #, c-format
-msgid ""
-"%s: invalid command line arguments\n"
-"Try -? for help."
-msgstr ""
-"%s: ·Ç·¨ÃüÁîÐвÎÊý\n"
-"¼üÈë -? »ñÈ¡°ïÖú."
+msgid "Directory \"%s\" already exists."
+msgstr "Ŀ¼ \"%s\" ÒѾ­´æÔÚ"
 
-#: tcop/postgres.c:1710
+#: commands/dbcommands.c:376 commands/dbcommands.c:1162
 #, c-format
-msgid "%s: user name undefined and no database specified"
-msgstr "%s: Ã»ÓÐÉùÃ÷Óû§Ãû²¢ÇÒûÓÐÖ¸¶¨Êý¾Ý¿â"
+msgid "Failing system command was: %s"
+msgstr "ʧ°Ü, ÏµÍ³ÃüÁîÊÇ: %s"
 
-#: tcop/postgres.c:1768
-msgid "InitPostgres"
-msgstr ""
+#: commands/dbcommands.c:377 commands/dbcommands.c:1163
+msgid "Look in the postmaster's stderr log for more information."
+msgstr "»ñµÃ¸ü¶àÐÅÏ¢Çë²é¿´ postmaster µÄ±ê×¼´íÎóÉϵÄÈÕÖ¾"
 
-#: tcop/postgres.c:1853
-msgid "AbortCurrentTransaction"
-msgstr ""
+#: commands/dbcommands.c:504
+msgid "cannot drop the currently open database"
+msgstr "ÎÞ·¨É¾³ýµ±Ç°Ê¹ÓõÄÊý¾Ý¿â"
 
-#: tcop/postgres.c:2055
-msgid "unknown frontend message was received"
-msgstr "ÊÕµ½Î´ÖªÇ°¶ËÐÅÏ¢"
+#: commands/dbcommands.c:535
+msgid "cannot drop a template database"
+msgstr "ÎÞ·¨É¾³ýÄ£°åÊý¾Ý¿â"
 
-#: tcop/postgres.c:2184
+#: commands/dbcommands.c:543 commands/dbcommands.c:665
 #, c-format
-msgid ""
-"%s\n"
-"%s"
-msgstr ""
-"%s\n"
-"%s"
+msgid "database \"%s\" is being accessed by other users"
+msgstr "ÆäËûÓû§ÕýÔÚʹÓÃÊý¾Ý¿â \"%s\""
 
-#: tcop/postgres.c:2554
-#, fuzzy, c-format
-msgid "CreateCommandTag: unknown parse node type %d"
-msgstr "CreateOperationTag: Î´Öª²Ù×÷ÀàÐÍ %d"
+#: commands/dbcommands.c:656
+msgid "current database may not be renamed"
+msgstr "µ±Ç°Êý¾Ý¿âÒ²ÐíûÓб»ÖØÃüÃû"
 
-#: tcop/utility.c:95
+#: commands/dbcommands.c:690
+msgid "permission denied to rename database"
+msgstr "ÖØÃüÃûÊý¾Ý¿âȨÏÞ²»¹»"
+
+#: commands/dbcommands.c:998 commands/dbcommands.c:1135
+#: commands/dbcommands.c:1185
 #, c-format
-msgid "\"%s\" is not %s %s. Use DROP %s to remove %s %s"
-msgstr "\"%s\" ²»ÊÇ %s %s. Ê¹ÓàDROP %s É¾³ý %s %s"
+msgid "could not remove database directory \"%s\""
+msgstr "ÎÞ·¨É¾³ýÊý¾Ý¿âĿ¼ \"%s\""
 
-#: tcop/utility.c:99
+#: commands/conversioncmds.c:66
 #, c-format
-msgid "\"%s\" is not %s %s"
-msgstr "\"%s\" ²»ÊÇ %s %s"
+msgid "source encoding \"%s\" does not exist"
+msgstr "Ô´±àÂë \"%s\" ²»´æÔÚ"
 
-#: tcop/utility.c:118 tcop/utility.c:123
+#: commands/conversioncmds.c:73
 #, c-format
-msgid "%s \"%s\" does not exist"
-msgstr "%s \"%s\" ²»´æÔÚ"
+msgid "destination encoding \"%s\" does not exist"
+msgstr "Ä¿±ê±àÂë \"%s\" ²»´æÔÚ"
 
-#: tcop/utility.c:136
+#: commands/conversioncmds.c:151
 #, c-format
-msgid "%s \"%s\" is a system %s"
-msgstr "%s \"%s\" ÊÇÒ»¸öϵͳ %s"
+msgid "conversion \"%s\" already exists in schema \"%s\""
+msgstr "Ô¼Êø \"%s\" ÒѾ­´æÔÚÓÚģʽ \"%s\" ÖÐ"
 
-#: tcop/utility.c:162
+#: commands/prepare.c:61
+msgid "invalid statement name: must not be empty"
+msgstr "ÎÞЧµÄÓï¾äÃû³Æ: ²»ÄÜΪ¿Õ"
+
+#: commands/prepare.c:80
+msgid "utility statements cannot be prepared"
+msgstr "²»ÄÜ×¼±¸ºÃ¹¤¾ßÓï¾ä"
+
+#: commands/prepare.c:168 commands/prepare.c:173 commands/prepare.c:538
+msgid "prepared statement is not a SELECT"
+msgstr "×¼±¸ºÃµÄÓï¾ä²»ÊÇÒ»¸ö SELECT"
+
+#: commands/prepare.c:310
 #, c-format
-msgid "relation \"%s\" is a system catalog"
-msgstr "¹Øϵ \"%s\" ÊÇÒ»¸öϵͳ±í"
+msgid "prepared statement \"%s\" already exists"
+msgstr "×¼±¸ºÃµÄÓï¾ä \"%s\" ÒѾ­´æÔÚ"
 
-#: tcop/utility.c:498 tcop/utility.c:502
+#: commands/prepare.c:390
 #, c-format
-msgid "ProcessUtility: Invalid type for RENAME: %d"
-msgstr ""
+msgid "prepared statement \"%s\" does not exist"
+msgstr "×¼±¸ºÃµÄÓï¾ä \"%s\" ²»´æÔÚ"
 
-#: tcop/utility.c:606
-msgid "ALTER TABLE: permission denied"
-msgstr "ALTER TABLE: È¨ÏÞ²»¹»"
+#: commands/copy.c:204 commands/copy.c:216 commands/copy.c:249
+#: commands/copy.c:259
+msgid "COPY BINARY is not supported to stdout or from stdin"
+msgstr "COPOY BINARY ²»Ö§³ÖÊä³öµ½±ê×¼Êä³ö»òÀ´×Ô±ê×¼ÊäÈë"
 
-#: tcop/utility.c:617
+#: commands/copy.c:312
 #, c-format
-msgid "ProcessUtility: Invalid type for AlterTableStmt: %d"
-msgstr ""
+msgid "could not write to COPY file: %m"
+msgstr "ÎÞ·¨Ð´Èë COPY Îļþ: %m"
+
+#: commands/copy.c:320
+msgid "connection lost during COPY to stdout"
+msgstr "COPY µ½±ê×¼Êä³öµÄ¹ý³ÌÖÐÁª½ÓÖжÏ"
 
-#: tcop/utility.c:663
-msgid "ALTER DOMAIN: permission denied"
-msgstr "ALTER DOMAIN: È¨ÏÞ²»¹»"
+#: commands/copy.c:437
+#, c-format
+msgid "COPY from stdin failed: %s"
+msgstr "´Ó±ê×¼ÊäÈëÉÏ COPY Ê§°Ü: %s"
 
-#: tcop/utility.c:669
+#: commands/copy.c:453
 #, c-format
-msgid "ProcessUtility: Invalid type for AlterDomainStmt: %d"
+msgid "unexpected message type 0x%02X during COPY from stdin"
+msgstr "ÒâÍâµÄÐÅÏ¢ÀàÐÍ 0x%02X, ÔÚ±ê×¼ÊäÈëÉÏ COPY µÄ¹ý³ÌÖÐ"
+
+#: commands/copy.c:795
+msgid "cannot specify DELIMITER in BINARY mode"
+msgstr "ÔÚ BINARY Ä£Ê½ÖÐÄã²»ÄÜÖ¸¶¨ DELIMITER"
+
+#: commands/copy.c:800
+msgid "cannot specify CSV in BINARY mode"
+msgstr "ÔÚ BINARY Ä£Ê½Öв»ÄÜÖ¸¶¨ CSV"
+
+#: commands/copy.c:805
+msgid "cannot specify NULL in BINARY mode"
+msgstr "ÔÚ BINARY Ä£Ê½ÖÐÄã²»ÄÜÖ¸¶¨ NULL"
+
+#: commands/copy.c:828
+msgid "COPY delimiter must be a single character"
+msgstr "COPY µÄ·Ö¸ô·û±ØÐèÊǵ¥¸ö×Ö·û"
+
+#: commands/copy.c:836
+msgid "COPY quote available only in CSV mode"
 msgstr ""
 
-#: tcop/utility.c:970
-msgid "CHECKPOINT: permission denied"
-msgstr "CHECKPOINT: È¨ÏÞ²»¹»"
+#: commands/copy.c:841
+msgid "COPY quote must be a single character"
+msgstr "COPY ÒýºÅ (quote) ±ØÐèÊǵ¥¸ö×Ö·û"
 
-#: tcop/utility.c:1017
-#, c-format
-msgid "ProcessUtility: command #%d unsupported"
-msgstr "ProcessUtility: ²»Ö§³Ö #%d ÃüÁî"
+#: commands/copy.c:849
+msgid "COPY escape available only in CSV mode"
+msgstr "COPY ×ªÒå (escape) Ö»ÔÚ CSV Ä£Ê½ÖÐÓÐЧ"
 
-#: utils/adt/acl.c:93
-#, c-format
-msgid "getid: identifier must be <%d characters"
+#: commands/copy.c:854
+msgid "COPY escape must be a single character"
+msgstr "COPY ×ªÒå (escape) ±ØÐèÊǵ¥¸ö×Ö·û"
+
+#: commands/copy.c:862
+msgid "COPY force quote available only in CSV mode"
 msgstr ""
 
-#: utils/adt/acl.c:131
-#, c-format
-msgid "aclparse: input = '%s'"
+#: commands/copy.c:866
+msgid "COPY force quote only available using COPY TO"
 msgstr ""
 
-#: utils/adt/acl.c:141
-msgid "aclparse: bad keyword, must be [group|user]"
+#: commands/copy.c:874
+msgid "COPY force not null available only in CSV mode"
 msgstr ""
 
-#: utils/adt/acl.c:144
-msgid "aclparse: a name must follow the [group|user] keyword"
+#: commands/copy.c:878
+msgid "COPY force not null only available using COPY FROM"
 msgstr ""
 
-#: utils/adt/acl.c:150
-msgid "aclparse: expecting \"=\" sign"
+#: commands/copy.c:886
+msgid "COPY delimiter must not appear in the NULL specification"
 msgstr ""
 
-#: utils/adt/acl.c:195
-#, c-format
-msgid "aclparse: mode flags must use \"%s\""
+#: commands/copy.c:894
+msgid "CSV quote character must not appear in the NULL specification"
 msgstr ""
 
-#: utils/adt/acl.c:221
-msgid "aclparse: a name must follow the \"/\" sign"
+#: commands/copy.c:916
+msgid "must be superuser to COPY to or from a file"
+msgstr "±ØÐë³ÉΪ³¬¼¶Óû§²ÅÄÜ COPY µ½Îļþ»ò´ÓÎļþ COPY"
+
+#: commands/copy.c:917
+msgid ""
+"Anyone can COPY to stdout or from stdin. psql's \\copy command also works "
+"for anyone."
 msgstr ""
+"ÈκÎÈË¿ÉÒÔ COPY µ½±ê×¼Êä³ö»òÀ´×Ô±ê×¼ÊäÈëµÄ COPY. ÈκÎÈËÒ²¿ÉÒÔʹÓàPsql µÄ "
+"\\copy ÃüÁî."
 
-#: utils/adt/acl.c:228
+#: commands/copy.c:926
 #, c-format
-msgid "defaulting grantor to %u"
-msgstr ""
+msgid "table \"%s\" does not have OIDs"
+msgstr "±í \"%s\" Ã»ÓРOID"
 
-#: utils/adt/acl.c:234
+#: commands/copy.c:952
 #, c-format
-msgid "aclparse: correctly read [%x %d %x]"
+msgid "FORCE QUOTE column \"%s\" not referenced by COPY"
 msgstr ""
 
-#: utils/adt/acl.c:254
+#: commands/copy.c:975
 #, c-format
-msgid "makeacl: invalid size: %d"
+msgid "FORCE NOT NULL column \"%s\" not referenced by COPY"
 msgstr ""
 
-#: utils/adt/acl.c:285
-msgid "aclitemin: extra garbage at end of specification"
-msgstr ""
+#: commands/copy.c:1002
+#, c-format
+msgid "cannot copy to view \"%s\""
+msgstr "²»¿ÉÒÔ¿½±´µ½ÊÓͼ \"%s\""
 
-#: utils/adt/acl.c:353
+#: commands/copy.c:1007
 #, c-format
-msgid "aclitemout: bad idtype: %d"
-msgstr ""
+msgid "cannot copy to sequence \"%s\""
+msgstr "²»¿ÉÒÔ¿½±´µ½ÐòÁР\"%s\""
 
-#: utils/adt/acl.c:454
+#: commands/copy.c:1012
 #, c-format
-msgid "acldefault: bogus objtype %d"
-msgstr ""
+msgid "cannot copy to non-table relation \"%s\""
+msgstr "²»¿ÉÒÔ¿½±´µ½·Ç±í¹Øϵ \"%s\""
 
-#: utils/adt/acl.c:616
-msgid "dependent privileges exist (use CASCADE to revoke them too)"
-msgstr ""
+#: commands/copy.c:1031
+#, c-format
+msgid "could not open file \"%s\" for reading: %m"
+msgstr "ΪÁ˶ÁÈ¡, ÎÞ·¨´ò¿ªÎļþ \"%s\": %m"
 
-#: utils/adt/acl.c:688
-msgid "aclremove: removal of the world ACL??"
-msgstr ""
+#: commands/copy.c:1040 commands/copy.c:1103
+#, c-format
+msgid "\"%s\" is a directory"
+msgstr "\"%s\" ÊÇÒ»¸öĿ¼"
 
-#: utils/adt/acl.c:949
+#: commands/copy.c:1053
 #, c-format
-msgid "has_table_privilege: invalid privilege type %s"
-msgstr ""
+msgid "cannot copy from view \"%s\""
+msgstr "²»¿ÉÒÔ´ÓÊÓͼ \"%s\" ¿½±´"
 
-#: utils/adt/acl.c:1158
+#: commands/copy.c:1058
 #, c-format
-msgid "has_database_privilege: invalid privilege type %s"
-msgstr ""
+msgid "cannot copy from sequence \"%s\""
+msgstr "²»¿ÉÒÔ´ÓÐòÁР\"%s\" ¿½±´"
 
-#: utils/adt/acl.c:1334
+#: commands/copy.c:1063
 #, c-format
-msgid "function \"%s\" does not exist"
-msgstr "º¯Êý \"%s\" ²»´æÔÚ"
+msgid "cannot copy from non-table relation \"%s\""
+msgstr "²»¿ÉÒԴӷDZí¹Øϵ \"%s\" ¿½±´"
+
+#: commands/copy.c:1085
+msgid "relative path not allowed for COPY to file"
+msgstr "COPY µ½Îļþ²»ÔÊÐíÏà¶Ô·¾¶"
 
-#: utils/adt/acl.c:1359
+#: commands/copy.c:1094
 #, c-format
-msgid "has_function_privilege: invalid privilege type %s"
-msgstr "has_function_privilege: ÎÞЧµÄȨÏÞÀàÐÍ %s"
+msgid "could not open file \"%s\" for writing: %m"
+msgstr "ΪÁËдÈë, ÎÞ·¨´ò¿ªÎļþ \"%s\": %m"
 
-#: utils/adt/acl.c:1560
+#: commands/copy.c:1389
 #, c-format
-msgid "has_language_privilege: invalid privilege type %s"
-msgstr "has_language_privilege: ÎÞЧµÄȨÏÞÀàÐÍ %s"
+msgid "COPY %s, line %d, column %s"
+msgstr "COPY %s, ÐР%d, ÁР%s"
 
-#: utils/adt/acl.c:1736
+#: commands/copy.c:1392
 #, c-format
-msgid "schema \"%s\" does not exist"
-msgstr "´ó¸Ù \"%s\" ²»´æÔÚ"
+msgid "COPY %s, line %d"
+msgstr "COPY %s, ÐР%d"
 
-#: utils/adt/acl.c:1766
+#: commands/copy.c:1400
 #, c-format
-msgid "has_schema_privilege: invalid privilege type %s"
-msgstr "has_schema_privilege: ÎÞЧµÄȨÏÞÀàÐÍ %s"
+msgid "COPY %s, line %d, column %s: \"%s\""
+msgstr "COPY %s, ÐР%d, ÁР%s: \"%s\""
 
-#: utils/adt/arrayfuncs.c:176
+#: commands/copy.c:1427
 #, c-format
-msgid "array_in: more than %d dimensions"
-msgstr "array_in: ³¬¹ý %d ´óС"
+msgid "COPY %s, line %d: \"%s\""
+msgstr "COPY %s, ÐР%d: \"%s\""
 
-#: utils/adt/arrayfuncs.c:179 utils/adt/arrayfuncs.c:188
-msgid "array_in: missing dimension value"
-msgstr "array_in: È±ÉÙ´óСֵ"
+#: commands/copy.c:1640
+msgid "COPY file signature not recognized"
+msgstr "ÎļþÇ©×Ö²»±»ÈÏ¿É"
 
-#: utils/adt/arrayfuncs.c:196
-msgid "array_in: missing ']' in array declaration"
-msgstr "array_in: Êý×éÉùÃ÷ȱÉÙ ']'"
+#: commands/copy.c:1646
+msgid "invalid COPY file header (missing flags)"
+msgstr "ÎÞЧµÄ COPY ÎļþÍ· (ȱÉÙ±êÖ¾)"
 
-#: utils/adt/arrayfuncs.c:201
-msgid "array_in: upper_bound cannot be < lower_bound"
-msgstr "array_in: ÉÏÏÞ²»ÄÜСÓÚµ×ÏÞ"
+#: commands/copy.c:1652
+msgid "unrecognized critical flags in COPY file header"
+msgstr "ÔÚ COPY ÎļþÍ·Óв»ÈϿɵÄΣÏÕ±êÖ¾"
 
-#: utils/adt/arrayfuncs.c:210
-msgid "array_in: Need to specify dimension"
-msgstr "array_in: ÐèÒªÖ¸¶¨´óС"
+#: commands/copy.c:1658
+msgid "invalid COPY file header (missing length)"
+msgstr "ÎÞЧµÄ COPY ÎļþÍ· (ȱÉÙ³¤¶È)"
 
-#: utils/adt/arrayfuncs.c:219
-msgid "array_in: missing assignment operator"
-msgstr ""
+#: commands/copy.c:1666
+msgid "invalid COPY file header (wrong length)"
+msgstr "ÎÞЧµÄ COPY ÎļþÍ· (´íÎ󳤶È)"
 
-#: utils/adt/arrayfuncs.c:245
-msgid "array_in: missing left brace"
-msgstr ""
+#: commands/copy.c:1745
+msgid "null OID in COPY data"
+msgstr "ÔÚ COPY Êý¾ÝÖÐûÓРOID"
+
+#: commands/copy.c:1754 commands/copy.c:1851
+msgid "invalid OID in COPY data"
+msgstr "ÔÚ COPY Êý¾ÝÖÐÎÞЧµÄ OID"
+
+#: commands/copy.c:1774
+#, c-format
+msgid "missing data for column \"%s\""
+msgstr "×ֶΠ\"%s\" È±ÉÙÊý¾Ý"
+
+#: commands/copy.c:1784
+msgid "unterminated CSV quoted field"
+msgstr "CSV ÒýºÅÓòûÓнáÊø"
+
+#: commands/copy.c:1819
+msgid "extra data after last expected column"
+msgstr "×îºóÆÚÍû×ֶκóÓжîÍâÊý¾Ý"
 
-#: utils/adt/arrayfuncs.c:301 utils/adt/arrayfuncs.c:308
-#: utils/adt/arrayfuncs.c:420 utils/adt/arrayfuncs.c:430
+#: commands/copy.c:1837
 #, c-format
-msgid "malformed array constant: %s"
-msgstr ""
+msgid "row field count is %d, expected %d"
+msgstr "Ôª×é×ֶμÆÊýÊÇ %d, ÆÚÍû¼ÆÊýÊÇ %d"
 
-#: utils/adt/arrayfuncs.c:317 utils/adt/arrayfuncs.c:328
-#: utils/adt/arrayfuncs.c:449 utils/adt/arrayfuncs.c:462
-#: utils/adt/arrayfuncs.c:498
-msgid "array_in: illformed array constant"
+#: commands/copy.c:2059 commands/copy.c:2077
+msgid "literal carriage return found in data"
 msgstr ""
 
-#: utils/adt/arrayfuncs.c:1039
-msgid "Slices of fixed-length arrays not implemented"
+#: commands/copy.c:2060 commands/copy.c:2078
+msgid "Use \"\\r\" to represent carriage return."
 msgstr ""
 
-#: utils/adt/arrayfuncs.c:1175 utils/adt/arrayfuncs.c:1177
-#: utils/adt/arrayfuncs.c:1194 utils/adt/arrayfuncs.c:1214
-#: utils/adt/arrayfuncs.c:1224 utils/adt/arrayfuncs.c:1350
-#: utils/adt/arrayfuncs.c:1365 utils/adt/arrayfuncs.c:1374
-#: utils/adt/arrayfuncs.c:1381 utils/adt/arrayfuncs.c:1390
-msgid "Invalid array subscripts"
+#: commands/copy.c:2095
+msgid "literal newline found in data"
 msgstr ""
 
-#: utils/adt/arrayfuncs.c:1339
-msgid "Updates on slices of fixed-length arrays not implemented"
-msgstr ""
+#: commands/copy.c:2096
+msgid "Use \"\\n\" to represent newline."
+msgstr "ʹÓà\"\\n\" ±íʾÐÂÐÐ."
 
-#: utils/adt/arrayfuncs.c:1400
-msgid "Source array too small"
+#: commands/copy.c:2116 commands/copy.c:2132
+msgid "end-of-copy marker does not match previous newline style"
 msgstr ""
 
-#: utils/adt/arrayfuncs.c:1531
-#, c-format
-msgid "array_map: invalid nargs: %d"
+#: commands/copy.c:2120 commands/copy.c:2126
+msgid "end-of-copy marker corrupt"
 msgstr ""
 
-#: utils/adt/arrayfuncs.c:1533
-msgid "array_map: null input array"
-msgstr ""
+#: commands/copy.c:2497 commands/copy.c:2519
+msgid "unexpected EOF in COPY data"
+msgstr "ÔÚ COPY Êý¾ÝÖÐÒâÍâµÄ EOF"
 
-#: utils/adt/arrayfuncs.c:1577
-msgid "array_map: cannot handle NULL in array"
-msgstr ""
+#: commands/copy.c:2506
+msgid "invalid field size"
+msgstr "ÎÞЧ×ֶγߴç"
+
+#: commands/copy.c:2533
+msgid "incorrect binary data format"
+msgstr "²»ÕýÈ·µÄ¶þ½øÖÆÊý¾Ý¸ñʽ"
 
-#: utils/adt/arrayfuncs.c:1768 utils/cache/lsyscache.c:940
-#: utils/cache/lsyscache.c:963
+#: commands/copy.c:2719 parser/parse_target.c:649 parser/parse_target.c:659
 #, c-format
-msgid "cache lookup failed for type %u"
-msgstr ""
+msgid "column \"%s\" specified more than once"
+msgstr "×ֶΠ\"%s\" ±»Ö¸¶¨¶à´Î"
 
-#: utils/adt/ascii.c:67
+#: commands/vacuumlazy.c:205 commands/vacuum.c:1160
 #, c-format
-msgid "pg_to_ascii(): unsupported encoding from %s"
-msgstr ""
+msgid "vacuuming \"%s.%s\""
+msgstr "ÕýÔÚÇåÀí (vacuum)  \"%s.%s\""
 
-#: utils/adt/bool.c:77
+#: commands/vacuumlazy.c:263 commands/vacuum.c:1202
 #, c-format
-msgid "Bad boolean external representation '%s'"
-msgstr ""
+msgid "relation \"%s\" page %u is uninitialized --- fixing"
+msgstr "¹Øϵ \"%s\" Ò³ %u Ã»Óгõʼ»¯ --- ÐÞ¸´"
 
-#: utils/adt/cash.c:195
+#: commands/vacuumlazy.c:428 commands/vacuum.c:1499
 #, c-format
-msgid "Bad money external representation %s"
+msgid ""
+"\"%s\": found %.0f removable, %.0f nonremovable row versions in %u pages"
 msgstr ""
 
-#: utils/adt/cash.c:292 utils/adt/cash.c:305
-msgid "Memory allocation failed, can't output cash"
+#: commands/vacuumlazy.c:431
+#, c-format
+msgid ""
+"%.0f dead row versions cannot be removed yet.\n"
+"There were %.0f unused item pointers.\n"
+"%u pages are entirely empty.\n"
+"%s"
 msgstr ""
 
-#: utils/adt/cash.c:445 utils/adt/cash.c:495 utils/adt/cash.c:546
-#: utils/adt/cash.c:596 utils/adt/char.c:154 utils/adt/float.c:508
-#: utils/adt/float.c:570 utils/adt/float.c:1756 utils/adt/float.c:1816
-#: utils/adt/geo_ops.c:3507 utils/adt/int.c:555 utils/adt/int.c:618
-#: utils/adt/int.c:657 utils/adt/int.c:696 utils/adt/int.c:708
-#: utils/adt/int.c:720 utils/adt/int.c:732 utils/adt/int.c:744
-#: utils/adt/int8.c:508 utils/adt/int8.c:535 utils/adt/int8.c:631
-#: utils/adt/int8.c:670 utils/adt/numeric.c:3269 utils/adt/timestamp.c:1872
-msgid "division by zero"
+#: commands/vacuumlazy.c:486
+#, c-format
+msgid "\"%s\": removed %d row versions in %d pages"
 msgstr ""
 
-#: utils/adt/date.c:69
+#: commands/vacuumlazy.c:597 commands/vacuumlazy.c:657 commands/vacuum.c:2860
+#: commands/vacuum.c:2927
 #, c-format
-msgid "Bad date external representation (too long) '%s'"
+msgid "index \"%s\" now contains %.0f row versions in %u pages"
 msgstr ""
 
-#: utils/adt/date.c:73
+#: commands/vacuumlazy.c:601 commands/vacuum.c:2864
 #, c-format
-msgid "Bad date external representation '%s'"
+msgid ""
+"%u index pages have been deleted, %u are currently reusable.\n"
+"%s"
 msgstr ""
 
-#: utils/adt/date.c:81
+#: commands/vacuumlazy.c:661 commands/vacuum.c:2931
+#, c-format
 msgid ""
-"Date CURRENT no longer supported\n"
-"\tdate_in() internal coding error"
+"%.0f index row versions were removed.\n"
+"%u index pages have been deleted, %u are currently reusable.\n"
+"%s"
 msgstr ""
 
-#: utils/adt/date.c:91
+#: commands/vacuumlazy.c:767 commands/vacuum.c:2770
 #, c-format
-msgid "Unrecognized date external representation '%s'"
+msgid "\"%s\": truncated %u to %u pages"
 msgstr ""
 
-#: utils/adt/date.c:400
-msgid "Unable to convert timestamp to date"
-msgstr "²»ÄÜ°Ñ timestamp ×ª»»Îª date"
+#: commands/define.c:66 commands/define.c:183 commands/define.c:215
+#: commands/define.c:249
+#, c-format
+msgid "%s requires a parameter"
+msgstr "%s ÐèÒªÒ»¸ö²ÎÊý"
 
-#: utils/adt/date.c:425
-msgid "Unable to convert reserved abstime value to date"
-msgstr ""
+#: commands/define.c:105 commands/define.c:116 commands/define.c:150
+#: commands/define.c:168
+#, c-format
+msgid "%s requires a numeric value"
+msgstr "%s ÐèÒªÒ»¸öÊý×ÖÖµ"
 
-#: utils/adt/date.c:484
-msgid "Bad date external representation (too long)"
-msgstr ""
+#: commands/define.c:136
+#, c-format
+msgid "%s does not take a parameter"
+msgstr "%s ²»ÐèÒª´øÒ»¸ö²ÎÊý"
 
-#: utils/adt/date.c:522
+#: commands/define.c:197
 #, c-format
-msgid "Bad time external representation (too long) '%s'"
-msgstr ""
+msgid "argument of %s must be a name"
+msgstr "%s µÄ²ÎÊý±ØÐëÊÇÒ»¸öÃû×Ö"
 
-#: utils/adt/date.c:526 utils/adt/date.c:1323
+#: commands/define.c:233
 #, c-format
-msgid "Bad time external representation '%s'"
-msgstr ""
+msgid "argument of %s must be a type name"
+msgstr "%s µÄ²ÎÊý±ØÐèÊÇÒ»¸öÀàÐÍÃû"
 
-#: utils/adt/date.c:915
-msgid "Unable to convert timestamp to time"
-msgstr "²»ÄÜ°Ñ timestamp ×ª»»Îª time"
+#: commands/define.c:258
+#, c-format
+msgid "%s requires an integer value"
+msgstr "%s ÐèÒªÒ»¸öÕûÊýÖµ"
 
-#: utils/adt/date.c:950
-msgid "Unable to convert timestamptz to time"
-msgstr "²»ÄÜ°Ñ timestamptz ×ª»»Îª time"
+#: commands/define.c:279
+#, c-format
+msgid "invalid argument for %s: \"%s\""
+msgstr "%s µÄÎÞЧ²ÎÊý: \"%s\""
 
-#: utils/adt/date.c:1152
-msgid "Bad time external representation (too long)"
-msgstr ""
+#: commands/typecmds.c:138
+#, c-format
+msgid "type names must be %d characters or less"
+msgstr "ÀàÐÍÃû±ØÐèΪ %d ¸ö×Ö·û»ò¸üÉÙ"
 
-#: utils/adt/date.c:1183 utils/adt/date.c:1266
+#: commands/typecmds.c:173
 #, c-format
-msgid "TIME units '%s' not recognized"
-msgstr "TIME µ¥Î» '%s' ²»±»ÈÏ¿É"
+msgid "array element type cannot be %s"
+msgstr "ÅÅÁÐÔªËØÀàÐͲ»ÄÜΪ %s"
 
-#: utils/adt/date.c:1250
+#: commands/typecmds.c:206
 #, c-format
-msgid "TIME units '%s' not supported"
-msgstr "²»Ö§³Ö '%s' µÄ TIME µ¥Î»"
+msgid "alignment \"%s\" not recognized"
+msgstr "alignment \"%s\" ²»±»ÈÏ¿É"
 
-#: utils/adt/date.c:1318
+#: commands/typecmds.c:223
 #, c-format
-msgid "Bad time with time zone external representation (too long) '%s'"
-msgstr ""
+msgid "storage \"%s\" not recognized"
+msgstr "´æ´¢ \"%s\" ²»±»ÈÏ¿É"
+
+#: commands/typecmds.c:228
+#, c-format
+msgid "type attribute \"%s\" not recognized"
+msgstr "ÀàÐÍÊôÐÔ \"%s\" ²»±»ÈÏ¿É"
 
-#: utils/adt/date.c:1781
-msgid "Unable to convert timestamptz to timetz"
-msgstr "²»ÄÜ°Ñ timestamptz ×ª»»Îª timetz"
+#: commands/typecmds.c:238
+msgid "type input function must be specified"
+msgstr "ÀàÐÍÊäÈ뺯Êý %s ±ØÐèÖ¸¶¨"
 
-#: utils/adt/date.c:1857
-msgid "Bad timetz external representation (too long)"
-msgstr ""
+#: commands/typecmds.c:242
+msgid "type output function must be specified"
+msgstr "ÀàÐÍÊä³öº¯Êý %s ±ØÐèÖ¸¶¨"
 
-#: utils/adt/date.c:1888 utils/adt/date.c:1984
+#: commands/typecmds.c:281
 #, c-format
-msgid "TIMETZ units '%s' not recognized"
-msgstr "TIMETZ µ¥Î» '%s' ²»±»ÈÏ¿É"
+msgid "changing return type of function %s from \"opaque\" to %s"
+msgstr "¸Ä±äº¯Êý %s µÄ·µ»ØÀàÐÍ \"opaque\" Îª %s"
 
-#: utils/adt/date.c:1968
+#: commands/typecmds.c:288
 #, c-format
-msgid "TIMETZ units '%s' not supported"
-msgstr "²»Ö§³Ö '%s' µÄ TIMETZ µ¥Î»"
+msgid "type input function %s must return type %s"
+msgstr "ÀàÐÍÊäÈ뺯Êý %s ±ØÐè·µ»ØÀàÐÍ %s"
 
-#: utils/adt/date.c:2011 utils/adt/date.c:2045 utils/adt/timestamp.c:3261
-#: utils/adt/timestamp.c:3284 utils/adt/timestamp.c:3398
-#: utils/adt/timestamp.c:3420
+#: commands/typecmds.c:298
 #, c-format
-msgid "Time zone '%s' not recognized"
-msgstr ""
+msgid "changing return type of function %s from \"opaque\" to \"cstring\""
+msgstr "¸Ä±äº¯Êý %s µÄ·µ»ØÀàÐÍ \"opaque\" Îª \"cstring\""
 
-#: utils/adt/date.c:2064 utils/adt/timestamp.c:3306 utils/adt/timestamp.c:3443
+#: commands/typecmds.c:305
 #, c-format
-msgid "INTERVAL time zone '%s' not legal (month specified)"
-msgstr ""
+msgid "type output function %s must return type \"cstring\""
+msgstr "ÀàÐÍÊä³öº¯Êý %s ±ØÐè·µ»ØÀàÐÍ \"cstring\""
 
-#: utils/adt/datetime.c:1249 utils/adt/datetime.c:1964
-msgid "'CURRENT' is no longer supported"
-msgstr "'CURRENT' ²»ÔÙÖ§³Ö"
-
-#: utils/adt/datetime.c:1426 utils/adt/datetime.c:2236
-#: utils/adt/formatting.c:3035
+#: commands/typecmds.c:314
 #, c-format
-msgid "Inconsistent use of year %04d and 'BC'"
-msgstr ""
+msgid "type receive function %s must return type %s"
+msgstr "ÀàÐͽÓÊÕº¯Êý %s ±ØÐè·µ»ØÀàÐÍ %s"
 
-#: utils/adt/datetime.c:3690
+#: commands/typecmds.c:323
 #, c-format
-msgid "Ordering error in %s table: \"%.*s\" >= \"%.*s\""
-msgstr ""
+msgid "type send function %s must return type \"bytea\""
+msgstr "ÀàÐÍ·¢Ëͺ¯Êý %s ±ØÐè·µ»ØÀàÐÍ \"bytea\""
 
-#: utils/adt/datum.c:78 utils/adt/datum.c:87
-msgid "datumGetSize: Invalid Datum Pointer"
-msgstr ""
+#: commands/typecmds.c:536
+#, c-format
+msgid "domain names must be %d characters or less"
+msgstr "domain Ãû×Ö±ØÐèΪ %d ¸ö×Ö·û»òÕ߸üÉÙ"
 
-#: utils/adt/datum.c:92
+#: commands/typecmds.c:557
 #, c-format
-msgid "datumGetSize: Invalid typLen %d"
+msgid "\"%s\" is not a valid base type for a domain"
+msgstr "¶ÔÓÚÒ»¸öÓò, \"%s\" ²»ÊÇÒ»¸öÓÐЧµÄ»ù±¾ÀàÐÍ"
+
+#: commands/typecmds.c:617 commands/typecmds.c:1504
+msgid "foreign key constraints not possible for domains"
 msgstr ""
 
-#: utils/adt/encode.c:53 utils/adt/encode.c:87
-#, c-format
-msgid "No such encoding as '%s'"
+#: commands/typecmds.c:637
+msgid "multiple default expressions"
+msgstr "¶à±éĬÈϱí´ïʽ"
+
+#: commands/typecmds.c:667 commands/typecmds.c:676
+msgid "conflicting NULL/NOT NULL constraints"
+msgstr "NULL/NOT NULL Ô¼Êø³åÍ»"
+
+#: commands/typecmds.c:695 commands/typecmds.c:1522
+msgid "unique constraints not possible for domains"
 msgstr ""
 
-#: utils/adt/encode.c:62
-msgid "Overflow - encode estimate too small"
+#: commands/typecmds.c:701 commands/typecmds.c:1528
+msgid "primary key constraints not possible for domains"
 msgstr ""
 
-#: utils/adt/encode.c:96
-msgid "Overflow - decode estimate too small"
+#: commands/typecmds.c:710 commands/typecmds.c:1537
+msgid "specifying constraint deferrability not supported for domains"
 msgstr ""
 
-#: utils/adt/encode.c:144
+#: commands/typecmds.c:831 commands/typecmds.c:1780
 #, c-format
-msgid "Bad hex code: '%c'"
-msgstr ""
+msgid "\"%s\" is not a domain"
+msgstr "\"%s\" ²»ÊÇÒ»¸öÓò"
 
-#: utils/adt/encode.c:170
-msgid "hex_decode: invalid data"
-msgstr ""
+#: commands/typecmds.c:901
+#, c-format
+msgid "changing argument type of function %s from \"opaque\" to \"cstring\""
+msgstr "¸Ä±äº¯Êý %s µÄ²ÎÊýÀàÐÍ \"opaque\" Îª \"cstring\""
 
-#: utils/adt/encode.c:284
-msgid "base64: unexpected '='"
-msgstr ""
+#: commands/typecmds.c:919 commands/typecmds.c:989 commands/typecmds.c:1021
+#: commands/typecmds.c:1053 commands/typecmds.c:1077 parser/parse_func.c:203
+#: parser/parse_func.c:1364 catalog/pg_aggregate.c:281
+#, c-format
+msgid "function %s does not exist"
+msgstr "º¯Êý %s ²»´æÔÚ"
 
-#: utils/adt/encode.c:294
-msgid "base64: Invalid symbol"
-msgstr ""
+#: commands/typecmds.c:971
+#, c-format
+msgid "changing argument type of function %s from \"opaque\" to %s"
+msgstr "¸Ä±äº¯Êý %s µÄ²ÎÊýÀàÐÍ \"opaque\" Îª %s"
 
-#: utils/adt/encode.c:312
-msgid "base64: invalid end sequence"
-msgstr ""
+#: commands/typecmds.c:1083
+#, c-format
+msgid "type analyze function %s must return type \"boolean\""
+msgstr "ÀàÐÍ analyze º¯Êý %s ±ØÐè·µ»ØÀàÐÍ \"boolean\""
 
-#: utils/adt/encode.c:419 utils/adt/encode.c:482
-msgid "decode: Bad input string for type bytea"
-msgstr ""
+#: commands/typecmds.c:1112
+msgid "composite type must have at least one attribute"
+msgstr "»ìºÏÀàÐͱØÐèÖÁÉÙÓÐÒ»¸öÊôÐÔ"
 
-#: utils/adt/float.c:151
-msgid "Bad float4 input format -- overflow"
-msgstr ""
+#: commands/typecmds.c:1341
+#, c-format
+msgid "column \"%s\" of table \"%s\" contains null values"
+msgstr "±í \"%2$s\" µÄ×ֶΠ\"%1$s\" °üº¬¿ÕÖµ"
 
-#: utils/adt/float.c:153
-msgid "Bad float4 input format -- underflow"
-msgstr ""
+#: commands/typecmds.c:1608
+#, c-format
+msgid ""
+"column \"%s\" of table \"%s\" contains values that violate the new constraint"
+msgstr "±í \"%2$s\" µÄ×ֶΠ\"%1$s\" °üº¬µÄֵΥ·´ÁËÐÂÔ¼Êø"
 
-#: utils/adt/float.c:175
-msgid "Bad float8 input format -- overflow"
-msgstr ""
+#: commands/typecmds.c:1814
+#, c-format
+msgid "constraint \"%s\" for domain \"%s\" already exists"
+msgstr "Óò \"%2$s\" µÄÔ¼Êø \"%1$s\" ÒѾ­´æÔÚ"
 
-#: utils/adt/float.c:177
-msgid "Bad float8 input format -- underflow"
-msgstr ""
+#: commands/typecmds.c:1855 commands/typecmds.c:1864
+msgid "cannot use table references in domain check constraint"
+msgstr "ÔÚÓò¼ì²éÔ¼ÊøÖв»¿ÉÒÔʹÓñí¹ØÁª"
+
+#: commands/typecmds.c:1872 catalog/heap.c:1610
+msgid "cannot use subquery in check constraint"
+msgstr "ÔÚ¼ì²éÔ¼ÊøÖв»¿ÉÒÔʹÓÃ×Ó²éѯ"
 
-#: utils/adt/float.c:207
+#: commands/typecmds.c:1876
+msgid "cannot use aggregate in check constraint"
+msgstr "ÔÚ¼ì²éÔ¼ÊøÖв»ÄÜʹÓþۼ¯º¯Êý"
+
+#: commands/typecmds.c:2090
 #, c-format
-msgid "Bad float4 input format '%s'"
-msgstr ""
+msgid "\"%s\" is a table's row type"
+msgstr "\"%s\" ÊÇÒ»¸ö±íµÄÁÐÀàÐÍ"
 
-#: utils/adt/float.c:212
+#: commands/opclasscmds.c:129
+msgid "must be superuser to create an operator class"
+msgstr "Ö»Óг¬¼¶Óû§ÄÜ´´½¨Ò»¸ö²Ù×÷·û±í"
+
+#: commands/opclasscmds.c:166
 #, c-format
-msgid "Input '%s' is out of range for float4"
-msgstr ""
+msgid "invalid operator number %d, must be between 1 and %d"
+msgstr "ÎÞЧµÄ²Ù×÷·ûºÅ %d, ±ØÐèÔÚ 1 µ½ %d Ö®¼ä"
 
-#: utils/adt/float.c:278 utils/adt/numeric.c:2836 utils/adt/numeric.c:2859
+#: commands/opclasscmds.c:204
 #, c-format
-msgid "Bad float8 input format '%s'"
-msgstr ""
+msgid "invalid procedure number %d, must be between 1 and %d"
+msgstr "ÎÞЧµÄ¹ý³ÌºÅ %d, ±ØÐèÔÚ 1 µ½ %d Ö®¼ä"
+
+#: commands/opclasscmds.c:226
+msgid "storage type specified more than once"
+msgstr "´æ´¢ÀàÐÍÖ¸¶¨Á˶à´Î"
 
-#: utils/adt/float.c:283
+#: commands/opclasscmds.c:253
 #, c-format
-msgid "Input '%s' is out of range for float8"
-msgstr ""
+msgid ""
+"storage type may not be different from data type for access method \"%s\""
+msgstr "´æ´¢ÀàÐÍÒ²ÐíºÍ·ÃÎÊ·½·¨ \"%s\" Êý¾ÝÀàÐͲ»Ò»Ñù"
 
-#: utils/adt/float.c:820
-msgid "dtoi4: integer out of range"
-msgstr "dtoi4: ÕûÊý³¬³ö·¶Î§"
+#: commands/opclasscmds.c:271
+#, c-format
+msgid "operator class \"%s\" for access method \"%s\" already exists"
+msgstr "·ÃÎÊ·½·¨ \"%2$s\" ²Ù×÷·û±í \"%1$s\" ÒѾ­´æÔÚ"
 
-#: utils/adt/float.c:837
-msgid "dtoi2: integer out of range"
-msgstr "dtoi2: ÕûÊý³¬³ö·¶Î§"
+#: commands/opclasscmds.c:300
+#, c-format
+msgid "could not make operator class \"%s\" be default for type %s"
+msgstr "ÎÞ·¨°Ñ²Ù×÷·û±í \"%s\" ÉèÖÃΪÀàÐÍ %s µÄĬÈϲÙ×÷·û±í"
 
-#: utils/adt/float.c:882
-msgid "ftoi4: integer out of range"
-msgstr "ftoi4: ÕûÊý³¬³ö·¶Î§"
+#: commands/opclasscmds.c:303
+#, c-format
+msgid "Operator class \"%s\" already is the default."
+msgstr "²Ù×÷·û±í \"%s\" ÒѾ­ÊÇĬÈϵÄÁË."
 
-#: utils/adt/float.c:899
-msgid "ftoi2: integer out of range"
-msgstr "ftoi2: ÕûÊý³¬³ö·¶Î§"
+#: commands/opclasscmds.c:430
+msgid "btree operators must be binary"
+msgstr "btree ²Ù×÷·û±ØÐëΪ¶þ½øÖÆ"
 
-#: utils/adt/float.c:1133
-msgid "can't take sqrt of a negative number"
-msgstr ""
+#: commands/opclasscmds.c:434
+msgid "btree operators must return boolean"
+msgstr "btree ²Ù×÷·û±ØÐë·µ»Ø²¼¶ûÖµ"
 
-#: utils/adt/float.c:1177
-msgid "pow() result is out of range"
-msgstr "pow() µÄ½á¹û³¬³ö·¶Î§"
+#: commands/opclasscmds.c:438
+msgid "btree operators must have index type as left input"
+msgstr "btree ²Ù×÷·û±ØÐëÓÐË÷ÒýÀàÐÍΪ×ó±ßµÄÊäÈë"
 
-#: utils/adt/float.c:1205
-msgid "exp() result is out of range"
-msgstr "exp() µÄ½á¹û³¬³ö·¶Î§"
+#: commands/opclasscmds.c:484
+msgid "btree procedures must have two arguments"
+msgstr "btree ¹ý³Ì±ØÐëÓÐÁ½¸ö²ÎÊý"
 
-#: utils/adt/float.c:1223 utils/adt/float.c:1244
-msgid "can't take log of zero"
-msgstr ""
+#: commands/opclasscmds.c:488
+msgid "btree procedures must return integer"
+msgstr "btree ¹ý³Ì±ØÐë·µ»ØÕûÊý"
 
-#: utils/adt/float.c:1225 utils/adt/float.c:1246
-msgid "can't take log of a negative number"
-msgstr ""
+#: commands/opclasscmds.c:492
+msgid "btree procedures must have index type as first input"
+msgstr "btree ¹ý³Ì±ØÐëÓÐË÷ÒýÀàÐÍΪµÚÒ»¸öÊäÈë"
 
-#: utils/adt/float.c:1271
+#: commands/opclasscmds.c:525
 #, c-format
-msgid "acos(%f) input is out of range"
-msgstr "acos(%f) µÄÊäÈ볬³ö·¶Î§"
+msgid "procedure number %d appears more than once"
+msgstr "¹ý³ÌºÅ %d ³öÏÖ¹ý¶à´Î"
 
-#: utils/adt/float.c:1294
+#: commands/opclasscmds.c:530
 #, c-format
-msgid "asin(%f) input is out of range"
-msgstr "asin(%f) µÄÊäÈ볬³ö·¶Î§"
+msgid "operator number %d appears more than once"
+msgstr "²Ù×÷·ûºÅ %d ³öÏÖ¹ý¶à´Î"
 
-#: utils/adt/float.c:1317
+#: commands/opclasscmds.c:854
 #, c-format
-msgid "atan(%f) input is out of range"
-msgstr "atan(%f) µÄÊäÈ볬³ö·¶Î§"
+msgid ""
+"operator class \"%s\" for access method \"%s\" already exists in schema \"%s"
+"\""
+msgstr "·ÃÎÊ·½·¨ \"%s\" µÄ²Ù×÷·û±í \"%s\" ÒѾ­ÔÚģʽ \"%s\" ´æÔÚÁË"
 
-#: utils/adt/float.c:1341
-#, c-format
-msgid "atan2(%f,%f) input is out of range"
-msgstr "atan2(%f,%f) µÄÊäÈ볬³ö·¶Î§"
+#: commands/operatorcmds.c:107 commands/operatorcmds.c:115
+msgid "setof type not allowed for operator argument"
+msgstr "setof ÀàÐͲ»ÔÊÐíΪ²Ù×÷·û²ÎÊý"
 
-#: utils/adt/float.c:1364
+#: commands/operatorcmds.c:142
 #, c-format
-msgid "cos(%f) input is out of range"
-msgstr "cos(%f) µÄÊäÈ볬³ö·¶Î§"
+msgid "operator attribute \"%s\" not recognized"
+msgstr "²Ù×÷·ûÊôÐÔ \"%s\" ²»±»ÈÏ¿É"
 
-#: utils/adt/float.c:1387
+#: commands/operatorcmds.c:152
+msgid "operator procedure must be specified"
+msgstr "±ØÐëÖ¸¶¨²Ù×÷·û¹ý³Ì"
+
+#: commands/cluster.c:133
 #, c-format
-msgid "cot(%f) input is out of range"
-msgstr "cot(%f) µÄÊäÈ볬³ö·¶Î§"
+msgid "there is no previously clustered index for table \"%s\""
+msgstr "ÔÚ±í \"%s\" ÖÐδÕÒµ½ÏÈÇ°½¨´ØµÄË÷Òý"
 
-#: utils/adt/float.c:1411
+#: commands/cluster.c:147 commands/tablecmds.c:5252
 #, c-format
-msgid "sin(%f) input is out of range"
-msgstr "sin(%f) µÄÊäÈ볬³ö·¶Î§"
+msgid "index \"%s\" for table \"%s\" does not exist"
+msgstr "±í \"%2$s\" µÄ \"%1$s\" Ë÷Òý²»´æÔÚ"
 
-#: utils/adt/float.c:1434
+#: commands/cluster.c:326
 #, c-format
-msgid "tan(%f) input is out of range"
-msgstr "tan(%f) µÄÊäÈ볬³ö·¶Î§"
+msgid "\"%s\" is not an index for table \"%s\""
+msgstr "¶ÔÓÚ±í \"%2$s\" \"%1$s\" ²»ÊÇÒ»¸öË÷Òý"
+
+#: commands/cluster.c:339
+msgid "cannot cluster on partial index"
+msgstr "ÎÞ·¨¶Ô²¿·ÖË÷Òý½¨´Ø"
 
-#: utils/adt/float.c:1545
+#: commands/cluster.c:357
+msgid "cannot cluster when index access method does not handle null values"
+msgstr "µ±Ë÷Òý´¦Àí·½·¨²»´¦Àí¿ÕֵʱÎÞ·¨¼ü´Ø"
+
+#: commands/cluster.c:358
 #, c-format
-msgid "%s: expected 3-element float8 array"
+msgid "You may be able to work around this by marking column \"%s\" NOT NULL."
+msgstr "Äã¿ÉÒÔͨ¹ý±ê¼Ç×ֶΠ\"%s\" Îª NOT NULL ÔËÐÐ"
+
+#: commands/cluster.c:370
+msgid ""
+"cannot cluster on expressional index when index access method does not "
+"handle null values"
 msgstr ""
 
-#: utils/adt/format_type.c:136 utils/adt/format_type.c:162
+#: commands/cluster.c:384
 #, c-format
-msgid "could not locate data type with oid %u in catalog"
-msgstr ""
+msgid "\"%s\" is a system catalog"
+msgstr "\"%s\" ÊÇÒ»¸öϵͳ±í"
 
-#: utils/adt/format_type.c:315
+#: commands/cluster.c:394
+msgid "cannot cluster temporary tables of other sessions"
+msgstr "ÎÞ·¨ÎªÆäËü»á»°µÄÁÙʱ±í½¨´Ø"
+
+#: commands/indexcmds.c:119
+msgid "must specify at least one column"
+msgstr "±ØÐèÖÁÉÙÖ¸¶¨Ò»¸ö×Ö¶Î"
+
+#: commands/indexcmds.c:123
 #, c-format
-msgid "Invalid INTERVAL typmod 0x%x"
-msgstr ""
+msgid "cannot use more than %d columns in an index"
+msgstr "ÔÚÒ»¸öË÷ÒýÖв»ÄÜʹÓó¬¹ý %d ¸ö×Ö¶Î"
 
-#: utils/adt/formatting.c:390
+#: commands/indexcmds.c:224
 #, c-format
-msgid ""
-"TMFC:\n"
-"hh %d\n"
-"am %d\n"
-"pm %d\n"
-"mi %d\n"
-"ss %d\n"
-"ssss %d\n"
-"d %d\n"
-"dd %d\n"
-"ddd %d\n"
-"mm %d\n"
-"ms: %d\n"
-"year %d\n"
-"bc %d\n"
-"iw %d\n"
-"ww %d\n"
-"w %d\n"
-"cc %d\n"
-"q %d\n"
-"j %d\n"
-"us: %d"
-msgstr ""
+msgid "access method \"%s\" does not support unique indexes"
+msgstr "´æÈ¡·½·¨ \"%s\" ²»Ö§³ÖΨһË÷Òý"
 
-#: utils/adt/formatting.c:396
+#: commands/indexcmds.c:229
 #, c-format
+msgid "access method \"%s\" does not support multicolumn indexes"
+msgstr "´æÈ¡·½·¨ \"%s\" ²»Ö§³Ö¶à×Ö¶ÎË÷Òý"
+
+#: commands/indexcmds.c:243
 msgid ""
-"TM:\n"
-"sec %d\n"
-"year %d\n"
-"min %d\n"
-"wday %d\n"
-"hour %d\n"
-"yday %d\n"
-"mday %d\n"
-"nisdst %d\n"
-"mon %d\n"
-msgstr ""
+"index expressions and predicates may refer only to the table being indexed"
+msgstr "Ë÷Òý±í´ïʽºÍÉùÃ÷Ö»ÄÜÖ¸ÏòÒª½¨Ë÷ÒýµÄ±í"
 
-#: utils/adt/formatting.c:963
-msgid "to_char/to_number(): '9' must be ahead of 'PR'."
-msgstr ""
+#: commands/indexcmds.c:271 parser/analyze.c:1185
+#, c-format
+msgid "multiple primary keys for table \"%s\" are not allowed"
+msgstr "¶Ô±í \"%s\" Ö¸¶¨¶à¸öÖ÷¼üÊDz»ÔÊÐíµÄ"
 
-#: utils/adt/formatting.c:980
-msgid "to_char/to_number(): '0' must be ahead of 'PR'."
-msgstr ""
+#: commands/indexcmds.c:288
+msgid "primary keys cannot be expressions"
+msgstr "Ö÷¼ü²»ÄÜÊDZí´ïʽ"
 
-#: utils/adt/formatting.c:1007
-msgid "to_char/to_number(): not unique decimal point."
-msgstr ""
+#: commands/indexcmds.c:318 commands/indexcmds.c:456 parser/analyze.c:1299
+#, c-format
+msgid "column \"%s\" named in key does not exist"
+msgstr "ÔÚ¼ü×ÖÖÐÃüÃûµÄ×ֶΠ\"%s\" ²»´æÔÚ"
 
-#: utils/adt/formatting.c:1012 utils/adt/formatting.c:1099
-msgid "to_char/to_number(): can't use 'V' and decimal poin together."
-msgstr ""
+#: commands/indexcmds.c:363
+#, c-format
+msgid "%s %s will create implicit index \"%s\" for table \"%s\""
+msgstr "%1$s %2$s ½«ÒªÎª±í \"%4$s\" ´´½¨Òþº¬Ë÷Òý \"%3$s\""
 
-#: utils/adt/formatting.c:1025
-msgid "to_char/to_number(): not unique 'S'."
-msgstr ""
+#: commands/indexcmds.c:406
+msgid "cannot use subquery in index predicate"
+msgstr "Ë÷ÒýÉùÃ÷Öв»ÄÜʹÓÃ×Ó²éѯ"
 
-#: utils/adt/formatting.c:1030
-msgid "to_char/to_number(): can't use 'S' and 'PL'/'MI'/'SG'/'PR' together."
-msgstr ""
+#: commands/indexcmds.c:410
+msgid "cannot use aggregate in index predicate"
+msgstr "Ë÷ÒýÉùÃ÷Öв»ÄÜʹÓþۼ¯º¯Êý"
 
-#: utils/adt/formatting.c:1052
-msgid "to_char/to_number(): can't use 'S' and 'MI' together."
-msgstr ""
+#: commands/indexcmds.c:419
+msgid "functions in index predicate must be marked IMMUTABLE"
+msgstr "Ë÷ÒýÉùÃ÷Öк¯Êý±ØÐè±ê¼ÇΪ IMMUTABLE"
 
-#: utils/adt/formatting.c:1061
-msgid "to_char/to_number(): can't use 'S' and 'PL' together."
-msgstr ""
+#: commands/indexcmds.c:461 commands/tablecmds.c:1297 parser/parse_expr.c:1084
+#, c-format
+msgid "column \"%s\" does not exist"
+msgstr "×ֶΠ\"%s\" ²»´æÔÚ"
 
-#: utils/adt/formatting.c:1070
-msgid "to_char/to_number(): can't use 'S' and 'SG' together."
-msgstr ""
+#: commands/indexcmds.c:494
+msgid "cannot use subquery in index expression"
+msgstr "Ë÷Òý±í´ïʽÖв»ÄÜʹÓÃ×Ó²éѯ"
 
-#: utils/adt/formatting.c:1080
-msgid "to_char/to_number(): can't use 'PR' and 'S'/'PL'/'MI'/'SG' together."
-msgstr ""
+#: commands/indexcmds.c:498
+msgid "cannot use aggregate function in index expression"
+msgstr "Ë÷Òý±í´ïʽÖв»ÄÜʹÓþۼ¯º¯Êý"
 
-#: utils/adt/formatting.c:1106
-msgid "to_char/to_number(): 'E' is not supported."
-msgstr ""
+#: commands/indexcmds.c:509
+msgid "functions in index expression must be marked IMMUTABLE"
+msgstr "Ë÷Òý±í´ïʽÖк¯Êý±ØÐè±ê¼ÇΪ IMMUTABLE"
 
-#: utils/adt/formatting.c:1130
-msgid "to_char/number(): run parser."
-msgstr ""
+#: commands/indexcmds.c:568
+#, c-format
+msgid "data type %s has no default operator class for access method \"%s\""
+msgstr "¶Ô·ÃÎÊ·½·¨ \"%2$s\" Êý¾ÝÀàÐÍ %1$s Ã»ÓÐĬÈϵIJÙ×÷·û±í"
 
-#: utils/adt/formatting.c:1326
-msgid "to_from-char(): DUMP FORMAT"
-msgstr ""
+#: commands/indexcmds.c:570
+msgid ""
+"You must specify an operator class for the index or define a default "
+"operator class for the data type."
+msgstr "Äã±ØÐëÖ¸¶¨Ò»¸ö²Ù×÷·û±í¸øË÷Òý»ò¶¨ÒåÒ»¸öĬÈϵIJÙ×÷·û±í¸øÊý¾ÝÀàÐÍ."
 
-#: utils/adt/formatting.c:1331
+#: commands/indexcmds.c:623
 #, c-format
-msgid "%d:\t NODE_TYPE_ACTION '%s'\t(%s,%s)"
-msgstr ""
+msgid "operator class \"%s\" does not accept data type %s"
+msgstr "²Ù×÷·û±í \"%s\" ²»ÄÜ´¦ÀíÊý¾ÝÀàÐÍ %s"
 
-#: utils/adt/formatting.c:1334
+#: commands/indexcmds.c:949
 #, c-format
-msgid "%d:\t NODE_TYPE_CHAR '%c'"
-msgstr ""
+msgid "shared table \"%s\" can only be reindexed in stand-alone mode"
+msgstr "¹²Ïí±í \"%s\" Ö»ÄÜÔÚ¶ÀÁ¢ÔËÐÐģʽÖÐÖؽ¨Ë÷Òý"
 
-#: utils/adt/formatting.c:1337
+#: commands/indexcmds.c:956
 #, c-format
-msgid "%d:\t NODE_TYPE_END"
-msgstr ""
+msgid "table \"%s\" has no indexes"
+msgstr "±í \"%s\" Ã»ÓÐË÷Òý"
+
+#: commands/indexcmds.c:984
+msgid "can only reindex the currently open database"
+msgstr "Ö»ÄÜÔÚµ±Ç°´ò¿ªµÄÊý¾Ý¿âÉÏÖؽ¨Ë÷Òý"
 
-#: utils/adt/formatting.c:1341
+#: commands/indexcmds.c:1067
 #, c-format
-msgid "%d:\t UnKnown NODE !!!"
-msgstr ""
+msgid "table \"%s\" was reindexed"
+msgstr "±í \"%s\" Òѱ»ÖØÐÂË÷Òý"
+
+#: commands/tablecmds.c:292
+msgid "ON COMMIT can only be used on temporary tables"
+msgstr "ON COMMIT Ö»Äܱ»ÓÃÓÚÁÙʱ±í"
 
-#: utils/adt/formatting.c:1365
+#: commands/tablecmds.c:394
 #, c-format
-msgid "get_th: '%s' is not number."
-msgstr ""
+msgid "duplicate check constraint name \"%s\""
+msgstr "Óжà¸öÃûΪ \"%s\" µÄÔ¼Êø"
 
-#: utils/adt/formatting.c:1539
-msgid "TO-FROM_CHAR: Dump KeyWord Index:"
-msgstr ""
+#: commands/tablecmds.c:561
+#, c-format
+msgid "cannot truncate system relation \"%s\""
+msgstr "²»ÄܽضÏϵͳ¹Øϵ \"%s\""
+
+#: commands/tablecmds.c:571
+msgid "cannot truncate temporary tables of other sessions"
+msgstr "²»ÄÜËõ¶ÌÆäËû»á»°µÄÁÙʱ±í"
 
-#: utils/adt/formatting.c:1545
+#: commands/tablecmds.c:697
 #, c-format
-msgid "\t%c: %s, "
-msgstr "\t%c: %s, "
+msgid "column \"%s\" duplicated"
+msgstr "ÊôÐÔ \"%s\" ±»¸´ÖÆ"
 
-#: utils/adt/formatting.c:1551
+#: commands/tablecmds.c:722 parser/analyze.c:1055 parser/analyze.c:1261
 #, c-format
-msgid "\t(%d) %c %d"
-msgstr "\t(%d) %c %d"
+msgid "inherited relation \"%s\" is not a table"
+msgstr "¼Ì³Ð¹Øϵ \"%s\" ²»ÊÇÒ»¸ö±í"
 
-#: utils/adt/formatting.c:1554
+#: commands/tablecmds.c:728
 #, c-format
-msgid ""
-"\n"
-"\t\tUsed positions: %d,\n"
-"\t\tFree positions: %d"
-msgstr ""
+msgid "cannot inherit from temporary relation \"%s\""
+msgstr "²»ÄÜ´ÓÁÙʱ¹Øϵ \"%s\" ¼Ì³Ð"
 
-#: utils/adt/formatting.c:1626
-msgid "to_timestamp(): bad AM/PM string"
-msgstr "to_timestamp(): »µµÄ AM/PM ´®"
+#: commands/tablecmds.c:745
+#, c-format
+msgid "inherited relation \"%s\" duplicated"
+msgstr "¼Ì³Ð¹Øϵ \"%s\" ±»¸´ÖÆ"
 
-#: utils/adt/formatting.c:1970
-msgid "to_timestamp(): TZ/tz not supported."
-msgstr "to_timestamp(): TZ/tz ²»±»Ö§³Ö"
+#: commands/tablecmds.c:799
+#, c-format
+msgid "merging multiple inherited definitions of column \"%s\""
+msgstr "ºÏ²¢ÊôÐÔ \"%s\" µÄ¶à¸ö¼Ì³Ð¶¨Òå"
 
-#: utils/adt/formatting.c:1978
+#: commands/tablecmds.c:806
 #, c-format
-msgid "to_timestamp(): bad value for %s"
-msgstr ""
+msgid "inherited column \"%s\" has a type conflict"
+msgstr "¼Ì³ÐÊôÐÔ \"%s\" ÀàÐͳåÍ»"
 
-#: utils/adt/formatting.c:2612 utils/adt/formatting.c:3171
+#: 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
 #, c-format
-msgid "Cache is full (%d)"
-msgstr ""
+msgid "%s versus %s"
+msgstr "%s ¶Ô %s"
 
-#: utils/adt/formatting.c:2620 utils/adt/formatting.c:3188
+#: commands/tablecmds.c:944
 #, c-format
-msgid "OLD: '%s' AGE: %d"
-msgstr ""
+msgid "merging column \"%s\" with inherited definition"
+msgstr "ºÏ²¢ÊôÐÔ \"%s\" Á¬Í¬¼Ì³Ð¶¨Òå"
 
-#: utils/adt/formatting.c:2631 utils/adt/formatting.c:3200
+#: commands/tablecmds.c:951
 #, c-format
-msgid "NEW (%d)"
-msgstr ""
+msgid "column \"%s\" has a type conflict"
+msgstr "ÊôÐÔ \"%s\" ÀàÐͳåÍ»"
 
-#: utils/adt/formatting.c:2796 utils/adt/formatting.c:2822
-msgid "to_char(): Unable to convert timestamp to tm"
-msgstr "to_char(): ²»ÄÜ°Ñ timestamp ×ª»»Îª tm"
+#: commands/tablecmds.c:992
+#, c-format
+msgid "column \"%s\" inherits conflicting default values"
+msgstr "ÊôÐÔ \"%s\" ¼Ì³ÐÓëĬÈÏÖµ³åÍ»"
 
-#: utils/adt/formatting.c:2998
-msgid "to_timestamp(): AM/PM hour must be between 1 and 12"
-msgstr "to_timestamp(): AM/PM Ð¡Ê±±ØÐèÔÚ 1 µ½ 12 Ö®¼ä"
+#: commands/tablecmds.c:994
+msgid "To resolve the conflict, specify a default explicitly."
+msgstr "Òª½â¾ö³åÍ», Ö¸¶¨Ã÷È·µÄĬÈÏÖµ"
 
-#: utils/adt/formatting.c:3067
-msgid "to_timestamp() cat't convert yday without year information"
-msgstr ""
+#: commands/tablecmds.c:1287
+#, c-format
+msgid "inherited column \"%s\" must be renamed in child tables too"
+msgstr "ÔÚ×Ó±íÖм̳ÐÊôÐÔ \"%s\" Ò²±ØÐèÖØÃüÃû"
 
-#: utils/adt/formatting.c:3102
-msgid "to_timestamp(): can't convert 'tm' to timestamp."
-msgstr "to_timestamp(): ²»ÄÜ°Ñ 'tm' ×ª»»Îª timestamp."
+#: commands/tablecmds.c:1305
+#, c-format
+msgid "cannot rename system column \"%s\""
+msgstr "²»ÄܶÔϵͳ×ֶΠ\"%s\" ÖØÃüÃû"
 
-#: utils/adt/formatting.c:3250
+#: commands/tablecmds.c:1315
 #, c-format
-msgid "REMOVING ENTRY (%s)"
-msgstr ""
+msgid "cannot rename inherited column \"%s\""
+msgstr "²»ÄܶԼ̳Ð×ֶΠ\"%s\" ÖØÃüÃû"
 
-#: utils/adt/formatting.c:3475
-msgid "CALL: get_last_relevant_decnum()"
-msgstr ""
+#: commands/tablecmds.c:1326 commands/tablecmds.c:2887
+#, c-format
+msgid "column \"%s\" of relation \"%s\" already exists"
+msgstr "¹Øϵ \"%s\" µÄÊôÐÔ \"%s\" ÒѾ­´æÔÚ"
 
-#: utils/adt/formatting.c:3500
-msgid " --- scan start --- "
-msgstr " --- É¨Ã迪ʼ ---"
+#: commands/tablecmds.c:1469 catalog/heap.c:747 catalog/index.c:527
+#, c-format
+msgid "relation \"%s\" already exists"
+msgstr "¹Øϵ \"%s\" ÒѾ­´æÔÚ"
 
-#: utils/adt/formatting.c:3521
+#: commands/tablecmds.c:2187
 #, c-format
-msgid "Try read sign (%c)."
-msgstr ""
+msgid "cannot rewrite system relation \"%s\""
+msgstr "²»ÄܸÄдϵͳ¹Øϵ \"%s\""
+
+#: commands/tablecmds.c:2197
+msgid "cannot rewrite temporary tables of other sessions"
+msgstr "²»ÄܸÄдÆäËû»á»°µÄÁÙʱ±í"
 
-#: utils/adt/formatting.c:3533
+#: commands/tablecmds.c:2488
 #, c-format
-msgid "Try read locale sign (%c)."
-msgstr ""
+msgid "check constraint \"%s\" is violated by some row"
+msgstr "һЩÐÐÎ¥·´Á˼ì²éÔ¼Êø \"%s\""
 
-#: utils/adt/formatting.c:3552
+#: commands/tablecmds.c:2501
 #, c-format
-msgid "Try read sipmle sign (%c)."
-msgstr ""
+msgid "column \"%s\" contains null values"
+msgstr "×ֶΠ\"%s\" °üº¬¿ÕÖµ"
 
-#: utils/adt/formatting.c:3593
+#: commands/tablecmds.c:2586
 #, c-format
-msgid "Read digit (%c)."
-msgstr ""
+msgid "\"%s\" is not a table or view"
+msgstr "\"%s\" ²»ÊÇÒ»¸öÊÓͼ»òÊÓͼ"
 
-#: utils/adt/formatting.c:3604
+#: commands/tablecmds.c:2739
 #, c-format
-msgid "Try read decimal point (%c)."
+msgid "cannot alter table \"%s\" because column \"%s\".\"%s\" uses its rowtype"
 msgstr ""
 
-#: utils/adt/formatting.c:3619
+#: commands/tablecmds.c:2805
+msgid "column must be added to child tables too"
+msgstr "ÊôÐÔÒ²±ØÐè¼ÓÈëµ½×Ó±íÖÐ"
+
+#: commands/tablecmds.c:2848
 #, c-format
-msgid "Try read locale point (%c)."
-msgstr ""
+msgid "child table \"%s\" has different type for column \"%s\""
+msgstr "×Ó±í \"%s\" µÄ×ֶΠ\"%s\" Óв»Í¬µÄÀàÐÍ"
 
-#: utils/adt/formatting.c:3652
+#: commands/tablecmds.c:2860
 #, c-format
-msgid "SIGN_WROTE: %d, CURRENT: %d, NUMBER_P: '%s', INOUT: '%s'"
-msgstr ""
+msgid "merging definition of column \"%s\" for child \"%s\""
+msgstr "ºÏ²¢×Ó±í \"%2$s\" µÄ×ֶΠ\"%1$s\" ¶¨Òå"
 
-#: utils/adt/formatting.c:3667
+#: commands/tablecmds.c:2895 catalog/heap.c:382
 #, c-format
-msgid "Writing sign to position: %d"
-msgstr ""
+msgid "tables can have at most %d columns"
+msgstr "±í×î¶à¿ÉÒÔÓР%d ¸ö×Ö¶Î"
 
-#: utils/adt/formatting.c:3709
+#: commands/tablecmds.c:3077 commands/tablecmds.c:3170
+#: commands/tablecmds.c:3220 commands/tablecmds.c:3316
+#: commands/tablecmds.c:3377 commands/tablecmds.c:4571
 #, c-format
-msgid "Writing bracket to position %d"
-msgstr ""
+msgid "cannot alter system column \"%s\""
+msgstr "²»Äܸü¸Äϵͳ×ֶΠ\"%s\""
 
-#: utils/adt/formatting.c:3731
+#: commands/tablecmds.c:3113
 #, c-format
-msgid "Writing blank space to position %d"
-msgstr ""
+msgid "column \"%s\" is in a primary key"
+msgstr "×ֶΠ\"%s\" ÊÇÒ»¸öÖ÷¼ü"
 
-#: utils/adt/formatting.c:3746
+#: commands/tablecmds.c:3263 commands/tablecmds.c:5291
 #, c-format
-msgid "Writing zero to position %d"
-msgstr ""
+msgid "\"%s\" is not a table or index"
+msgstr "\"%s\" ²»ÊÇÒ»¸ö±í»òË÷Òý"
 
-#: utils/adt/formatting.c:3764
+#: commands/tablecmds.c:3290
 #, c-format
-msgid "Writing decimal point to position %d"
-msgstr ""
+msgid "statistics target %d is too low"
+msgstr "Ä¿±êͳ¼Æ %d Ì«µÍ"
 
-#: utils/adt/formatting.c:3813
+#: commands/tablecmds.c:3298
 #, c-format
-msgid "Writing digit '%c' to position %d"
-msgstr ""
+msgid "lowering statistics target to %d"
+msgstr "½µµÍÄ¿±êͳ¼Æµ½ %d"
 
-#: utils/adt/formatting.c:3857
-msgid "to_number(): RN is not supported"
-msgstr ""
+#: commands/tablecmds.c:3358
+#, c-format
+msgid "invalid storage type \"%s\""
+msgstr "ÎÞЧ´æ´¢ÀàÐÍ \"%s\""
 
-#: utils/adt/formatting.c:3979
+#: commands/tablecmds.c:3389
 #, c-format
-msgid ""
-"\n"
-"\tNUM: '%s'\n"
-"\tPRE: %d\n"
-"\tPOST: %d\n"
-"\tNUM_COUNT: %d\n"
-"\tNUM_PRE: %d\n"
-"\tSIGN_POS: %d\n"
-"\tSIGN_WROTE: %s\n"
-"\tZERO: %s\n"
-"\tZERO_START: %d\n"
-"\tZERO_END: %d\n"
-"\tLAST_RELEVANT: %s"
-msgstr ""
+msgid "column data type %s can only have storage PLAIN"
+msgstr "×Ö¶ÎÊý¾ÝÀàÐÍ %s Ö»Äܴ洢ΪÃ÷ÎÄ (PLAIN)"
 
-#: utils/adt/formatting.c:4244
+#: commands/tablecmds.c:3446
 #, c-format
-msgid "TO_NUMBER (number): '%s'"
-msgstr ""
+msgid "cannot drop system column \"%s\""
+msgstr "²»ÄÜɾ³ýϵͳ×ֶΠ\"%s\""
 
-#: utils/adt/geo_ops.c:290 utils/adt/geo_ops.c:3626 utils/adt/geo_ops.c:4452
-msgid "Too many points requested"
-msgstr ""
+#: commands/tablecmds.c:3453
+#, c-format
+msgid "cannot drop inherited column \"%s\""
+msgstr "²»ÄÜɾ³ý¼Ì³Ð×ֶΠ\"%s\""
 
-#: utils/adt/geo_ops.c:311
-msgid "Unable to format path"
-msgstr ""
+#: commands/tablecmds.c:3690 catalog/heap.c:1631
+#, c-format
+msgid "constraint \"%s\" for relation \"%s\" already exists"
+msgstr "¹Øϵ \"%2$s\" µÄÔ¼Êø \"%1$s\" ÒѾ­´æÔÚ"
 
-#: utils/adt/geo_ops.c:383
+#: commands/tablecmds.c:3754
 #, c-format
-msgid "Bad box external representation '%s'"
-msgstr ""
+msgid "referenced relation \"%s\" is not a table"
+msgstr "¹ØÁªµÄ¹Øϵ \"%s\" ²»ÊÇÒ»¸ö±í"
 
-#: utils/adt/geo_ops.c:842
+#: commands/tablecmds.c:3788
+msgid "cannot reference temporary table from permanent table constraint"
+msgstr "²»¿ÉÒԴӹ̶¨±íÔ¼Êø¹ØÁªÁÙʱ±í"
+
+#: commands/tablecmds.c:3795
+msgid "cannot reference permanent table from temporary table constraint"
+msgstr "²»¿ÉÒÔ´ÓÁÙʱ±íÔ¼Êø¹ØÁª¹Ì¶¨±í"
+
+#: commands/tablecmds.c:3840 commands/tablecmds.c:4328
+msgid "number of referencing and referenced columns for foreign key disagree"
+msgstr "Íâ¼üµÄ¹ØÁªÊýºÍ¹ØÁª×ֶβ»Ò»ÖÂ"
+
+#: commands/tablecmds.c:3861
 #, c-format
-msgid "Bad line external representation '%s'"
-msgstr ""
+msgid "foreign key constraint \"%s\" cannot be implemented"
+msgstr "ÎÞ·¨ÊµÏÖÍâ¼üÔ¼Êø \"%s\""
 
-#: utils/adt/geo_ops.c:847 utils/adt/geo_ops.c:911
-msgid "line not yet implemented"
-msgstr ""
+#: commands/tablecmds.c:3864
+#, c-format
+msgid "Key columns \"%s\" and \"%s\" are of incompatible types: %s and %s."
+msgstr "¹Ø¼ü×ֶΠ\"%s\" ºÍ \"%s\" Îª»ìºÍÀàÐÍ: %s ºÍ %s."
 
-#: utils/adt/geo_ops.c:1237 utils/adt/geo_ops.c:1258
+#: commands/tablecmds.c:3878
 #, c-format
-msgid "Bad path external representation '%s'"
+msgid "foreign key constraint \"%s\" will require costly sequential scans"
 msgstr ""
 
-#: utils/adt/geo_ops.c:1574
+#: commands/tablecmds.c:3881
 #, c-format
-msgid "Bad point external representation '%s'"
-msgstr ""
+msgid "Key columns \"%s\" and \"%s\" are of different types: %s and %s."
+msgstr "¹Ø¼ü×ֶΠ\"%s\" ºÍ \"%s\" Îª²»Í¬µÄÀàÐÍ: %s ºÍ %s."
 
-#: utils/adt/geo_ops.c:1770
+#: commands/tablecmds.c:3966
 #, c-format
-msgid "Bad lseg external representation '%s'"
-msgstr ""
+msgid "column \"%s\" referenced in foreign key constraint does not exist"
+msgstr "ÔÚÍâ¼üÔ¼ÊøÖеĹØÁª×ֶΠ\"%s\" ²»´æÔÚ"
 
-#: utils/adt/geo_ops.c:2320
-msgid "dist_lb not implemented"
-msgstr ""
+#: commands/tablecmds.c:3971
+#, c-format
+msgid "cannot have more than %d keys in a foreign key"
+msgstr "ÔÚÒ»¸öÍâ¼üÖв»Äܳ¬¹ý %d ¸ö¼ü"
 
-#: utils/adt/geo_ops.c:2831
-msgid "close_lb not implemented"
-msgstr ""
+#: commands/tablecmds.c:4040
+#, c-format
+msgid "there is no primary key for referenced table \"%s\""
+msgstr "¹ØÁª±í \"%s\" Ã»ÓÐÖ÷¼ü"
 
-#: utils/adt/geo_ops.c:3108
-msgid "Unable to create bounding box for empty polygon"
-msgstr ""
+#: commands/tablecmds.c:4158
+#, c-format
+msgid ""
+"there is no unique constraint matching given keys for referenced table \"%s\""
+msgstr "ûÓÐΨһԼÊøÓë¹ØÁª±í \"%s\" ¸ø¶¨µÄ¼üֵƥÅä"
 
-#: utils/adt/geo_ops.c:3130 utils/adt/geo_ops.c:3140
+#: commands/tablecmds.c:4533
 #, c-format
-msgid "Bad polygon external representation '%s'"
-msgstr ""
+msgid "multiple constraints named \"%s\" were dropped"
+msgstr "Óжà¸öÃûΪ \"%s\" µÄÔ¼Êø±»É¾³ýÁË"
 
-#: utils/adt/geo_ops.c:3428
-msgid "poly_distance not implemented"
-msgstr ""
+#: commands/tablecmds.c:4578
+#, c-format
+msgid "cannot alter inherited column \"%s\""
+msgstr "²»ÄÜÐ޸ļ̳Ð×ֶΠ\"%s\""
 
-#: utils/adt/geo_ops.c:3734
-msgid "path_center not implemented"
-msgstr ""
+#: commands/tablecmds.c:4618
+msgid "transform expression must not return a set"
+msgstr "ת»»±í´ïʽ²»ÄÜ·µ»ØÒ»¸ö×éºÏ"
 
-#: utils/adt/geo_ops.c:3749
-msgid "Open path cannot be converted to polygon"
-msgstr ""
+#: commands/tablecmds.c:4624
+msgid "cannot use subquery in transform expression"
+msgstr "ÔÚת»»±í´ïʽÖв»ÄÜʹÓÃ×Ó²éѯ"
 
-#: utils/adt/geo_ops.c:3914 utils/adt/geo_ops.c:3922 utils/adt/geo_ops.c:3935
-#: utils/adt/geo_ops.c:3939
+#: commands/tablecmds.c:4628
+msgid "cannot use aggregate function in transform expression"
+msgstr "ת»»±í´ïʽÖв»ÄÜʹÓþۼ¯º¯Êý"
+
+#: commands/tablecmds.c:4645
 #, c-format
-msgid "Bad circle external representation '%s'"
-msgstr ""
+msgid "column \"%s\" cannot be cast to type \"%s\""
+msgstr "×ֶΠ\"%s\" ²»ÄÜת»»³ÉÀàÐÍ \"%s\""
 
-#: utils/adt/geo_ops.c:3959 utils/adt/geo_ops.c:3965
-msgid "Unable to format circle"
-msgstr ""
+#: commands/tablecmds.c:4671
+#, c-format
+msgid "type of inherited column \"%s\" must be changed in child tables too"
+msgstr "ÔÚ×Ó±íÖм̳Ð×ֶΠ\"%s\" µÄÀàÐÍÒ²±ØÐè¸Ä±ä"
 
-#: utils/adt/geo_ops.c:4445
-msgid "Unable to convert circle to polygon"
-msgstr ""
+#: commands/tablecmds.c:4709
+#, c-format
+msgid "cannot alter type of column \"%s\" twice"
+msgstr "²»Äܸü¸Ä×ֶΠ\"%s\" µÄÀàÐÍÁ½±é"
 
-#: utils/adt/geo_ops.c:4485 utils/adt/geo_ops.c:4506
-msgid "Unable to convert polygon to circle"
-msgstr ""
+#: commands/tablecmds.c:4736
+#, c-format
+msgid "default for column \"%s\" cannot be cast to type \"%s\""
+msgstr "×ֶΠ\"%s\" µÄĬÈÏÖµ²»ÄÜת»»³ÉÀàÐÍ \"%s\""
 
-#: utils/adt/int.c:96
-msgid "int2vector value has too many values"
-msgstr ""
+#: commands/tablecmds.c:4836
+msgid "cannot alter type of a column used by a view or rule"
+msgstr "²»ÄÜʹÓÃÊÓͼ»ò¹æÔò¸Ä±äÒ»¸ö×ֶεÄÀàÐÍ"
 
-#: utils/adt/int.c:197
+#: commands/tablecmds.c:4837
 #, c-format
-msgid "i4toi2: '%d' causes int2 underflow"
-msgstr ""
+msgid "%s depends on column \"%s\""
+msgstr "%s ÒÐÀµÓÚ×ֶΠ\"%s\""
 
-#: utils/adt/int.c:199
+#: commands/tablecmds.c:5151
 #, c-format
-msgid "i4toi2: '%d' causes int2 overflow"
+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"
 msgstr ""
 
-#: utils/adt/int8.c:101 utils/adt/int8.c:125
+#: commands/tablecmds.c:5351
 #, c-format
-msgid "Bad int8 external representation \"%s\""
-msgstr ""
+msgid "cannot move system relation \"%s\""
+msgstr "²»ÄÜɾ³ýϵͳ¹Øϵ \"%s\""
 
-#: utils/adt/int8.c:114
+#: commands/tablecmds.c:5361
+msgid "cannot move temporary tables of other sessions"
+msgstr "²»ÄÜÔÚÆäËû»á»°ÖÐɾ³ýÁÙʱ±í"
+
+#: commands/tablecmds.c:5571
+msgid "shared tables cannot be toasted after initdb"
+msgstr "ÔÚ initdb Ö®ºó, ²»¿ÉÒÔ toasted ¹²Ïí±í"
+
+#: commands/tablecmds.c:5586
 #, c-format
-msgid "int8 value out of range: \"%s\""
-msgstr ""
+msgid "table \"%s\" already has a TOAST table"
+msgstr "±í \"%s\" ÒѾ­ÊÇÒ»¸ö TOAST ±í"
 
-#: utils/adt/int8.c:157
-msgid "Unable to format int8"
-msgstr ""
+#: commands/tablecmds.c:5603
+#, c-format
+msgid "table \"%s\" does not need a TOAST table"
+msgstr "±í \"%s\" ²»ÐèÒªÒ»¸ö TOAST ±í"
 
-#: utils/adt/int8.c:760
-msgid "int8 conversion to int4 is out of range"
-msgstr ""
+#: commands/analyze.c:153
+#, c-format
+msgid "skipping \"%s\" --- only table or database owner can analyze it"
+msgstr "ºöÂÔ \"%s\" --- Ö»Óбí»òÊý¾Ý¿âµÄÊôÖ÷Äܹ»·ÖÎöËü"
 
-#: utils/adt/int8.c:783
-msgid "int8 conversion to int2 is out of range"
-msgstr ""
+#: commands/analyze.c:168
+#, c-format
+msgid ""
+"skipping \"%s\" --- cannot analyze indexes, views, or special system tables"
+msgstr "ºöÂÔ \"%s\" --- ÎÞ·¨·ÖÎöË÷Òý, ÊÓͼ»òÌØÊâµÄϵͳ±í"
+
+#: commands/analyze.c:198
+#, c-format
+msgid "analyzing \"%s.%s\""
+msgstr "ÕýÔÚ·ÖÎö \"%s.%s\""
 
-#: utils/adt/int8.c:819 utils/adt/int8.c:856
-msgid "Floating point conversion to int8 is out of range"
+#: commands/analyze.c:916
+#, 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 ""
 
-#: utils/adt/int8.c:871
-#, fuzzy
-msgid "int8 conversion to OID is out of range"
-msgstr "pow() µÄ½á¹û³¬³ö·¶Î§"
+#: commands/user.c:172 commands/user.c:270 commands/user.c:319
+#: commands/user.c:400
+#, c-format
+msgid "could not write to temporary file \"%s\": %m"
+msgstr "ÎÞ·¨ÍùÁÙʱÎļþ \"%s\" Ð´Èë: %m"
 
-#: utils/adt/like.c:451 utils/adt/like_match.c:289 utils/adt/regexp.c:453
-msgid "ESCAPE string must be empty or one character"
-msgstr ""
+#: commands/user.c:207
+#, c-format
+msgid "invalid group name \"%s\""
+msgstr "ÎÞЧ×éÃû \"%s\""
 
-#: utils/adt/mac.c:61
+#: commands/user.c:238 commands/user.c:369
 #, c-format
-msgid "macaddr_in: error in parsing \"%s\""
-msgstr ""
+msgid "invalid user name \"%s\""
+msgstr "ÎÞЧÓû§Ãû \"%s\""
 
-#: utils/adt/mac.c:66
+#: commands/user.c:376
 #, c-format
-msgid "macaddr_in: illegal address \"%s\""
-msgstr ""
+msgid "invalid user password \"%s\""
+msgstr "ÎÞЧÓû§¿ÚÁî \"%s\""
 
-#: utils/adt/mac.c:139
-msgid "Text is too long to convert to MAC address"
-msgstr ""
+#: commands/user.c:635
+msgid "user ID must be positive"
+msgstr "Óû§ ID ±ØÐèΪÕýÊý"
 
-#: utils/adt/nabstime.c:215 utils/adt/nabstime.c:249
+#: commands/user.c:652
+msgid "must be superuser to create users"
+msgstr "Ö»Óг¬¼¶Óû§ÄÜ´´½¨Óû§"
+
+#: commands/user.c:657
 #, c-format
-msgid "Invalid timezone '%s'"
-msgstr "ÎÞЧʱÇø '%s'"
+msgid "user name \"%s\" is reserved"
+msgstr "Óû§Ãû \"%s\" ±»±£ÁôÁË"
 
-#: utils/adt/nabstime.c:343
+#: commands/user.c:694 commands/user.c:1249
 #, c-format
-msgid "Bad abstime external representation (too long) '%s'"
-msgstr ""
+msgid "user \"%s\" already exists"
+msgstr "Óû§ \"%s\" ÒѾ­´æÔÚ"
 
-#: utils/adt/nabstime.c:347
+#: commands/user.c:699
 #, c-format
-msgid "Bad abstime external representation '%s'"
-msgstr ""
+msgid "user ID %d is already assigned"
+msgstr "Óû§ ID %d ÒѾ­±»¸³Öµ"
+
+#: commands/user.c:880 commands/user.c:1015 commands/schemacmds.c:86
+msgid "permission denied"
+msgstr "ȨÏÞ²»¹»"
+
+#: commands/user.c:1074
+msgid "must be superuser to drop users"
+msgstr "Ö»Óг¬¼¶Óû§¿ÉÒÔɾ³ýÓû§"
+
+#: commands/user.c:1108
+msgid "current user cannot be dropped"
+msgstr "µ±Ç°Óû§²»Äܱ»É¾³ý"
 
-#: utils/adt/nabstime.c:377
+#: commands/user.c:1112
+msgid "session user cannot be dropped"
+msgstr "»á»°Óû§²»Äܱ»É¾³ý"
+
+#: commands/user.c:1139
 #, c-format
-msgid "Bad abstime (internal coding error) '%s'"
-msgstr ""
+msgid "user \"%s\" cannot be dropped"
+msgstr "Óû§ \"%s\" ²»Äܱ»É¾³ý"
 
-#: utils/adt/nabstime.c:568 utils/adt/nabstime.c:636
-msgid "Unable to convert timestamp to abstime"
-msgstr ""
+#: commands/user.c:1140
+#, c-format
+msgid "The user owns database \"%s\"."
+msgstr "Óû§ÊÇÊý¾Ý¿â \"%s\" µÄÊôÖ÷."
 
-#: utils/adt/nabstime.c:592
-msgid "Unable to convert abstime 'invalid' to timestamp"
-msgstr ""
+#: commands/user.c:1241
+msgid "session user may not be renamed"
+msgstr "»á»°Óû§²»Äܱ»ÖØÃüÃû"
 
-#: utils/adt/nabstime.c:607
-msgid ""
-"Unable to convert ABSTIME to TIMESTAMP\n"
-"\tabstime_timestamp() internal error"
-msgstr ""
+#: commands/user.c:1255
+msgid "must be superuser to rename users"
+msgstr "Ö»Óг¬¼¶Óû§¿ÉÒÔ¶ÔÓû§ÖØÃüÃû"
+
+#: commands/user.c:1274
+msgid "MD5 password cleared because of user rename"
+msgstr "ÓÉÓÚÓû§ÖØÃüÃû, Çå³ý MD5 ¿ÚÁî"
 
-#: utils/adt/nabstime.c:660
-msgid "Unable to convert abstime 'invalid' to timestamptz"
+#: commands/user.c:1308
+#, c-format
+msgid "before using passwords you must revoke privileges on %s"
 msgstr ""
 
-#: utils/adt/nabstime.c:675
+#: commands/user.c:1310
 msgid ""
-"Unable to convert ABSTIME to TIMESTAMP WITH TIME ZONE\n"
-"\tabstime_timestamptz() internal error"
+"This restriction is to prevent unprivileged users from reading the passwords."
 msgstr ""
 
-#: utils/adt/nabstime.c:706
+#: commands/user.c:1311
 #, c-format
-msgid "Bad reltime external representation (too long) '%s'"
-msgstr ""
+msgid "Try REVOKE ALL ON \"%s\" FROM PUBLIC."
+msgstr "ÊÔÊÔ REVOKE ALL ON \"%s\" FROM PUBLIC."
 
-#: utils/adt/nabstime.c:710
+#: commands/user.c:1375
+msgid "group ID must be positive"
+msgstr "×é ID ±ØÐèΪÕýÊý"
+
+#: commands/user.c:1388
+msgid "must be superuser to create groups"
+msgstr "Ö»Óг¬¼¶Óû§ÄÜ´´½¨×é"
+
+#: commands/user.c:1393
 #, c-format
-msgid "Bad reltime external representation '%s'"
-msgstr ""
+msgid "group name \"%s\" is reserved"
+msgstr "×éÃû \"%s\" ±»±£ÁôÁË"
 
-#: utils/adt/nabstime.c:720
+#: commands/user.c:1430 commands/user.c:1812
 #, c-format
-msgid "Bad reltime (internal coding error) '%s'"
-msgstr ""
+msgid "group \"%s\" already exists"
+msgstr "×é \"%s\" ÒѾ­´æÔÚ"
 
-#: utils/adt/nabstime.c:776
+#: commands/user.c:1435
 #, c-format
-msgid "Unable to decode tinterval '%s'"
-msgstr ""
+msgid "group ID %d is already assigned"
+msgstr "×é ID %d ÒѾ­±»¸³Öµ"
 
-#: utils/adt/nabstime.c:889
-msgid "Unable to convert reltime 'invalid' to interval"
-msgstr ""
+#: commands/user.c:1515
+msgid "must be superuser to alter groups"
+msgstr "Ö»Óг¬¼¶Óû§¿ÉÒÔ¸ü¸Ä×é"
 
-#: utils/adt/network.c:64
+#: commands/user.c:1594
 #, c-format
-msgid "invalid %s value '%s'"
-msgstr "%s µÄÎÞЧÊýÖµ '%s'"
+msgid "group \"%s\" does not have any members"
+msgstr "×é \"%s\" Ã»ÓÐÈκγÉÔ±"
 
-#: utils/adt/network.c:75
+#: commands/user.c:1622
 #, c-format
-msgid "invalid CIDR value '%s': has bits set to right of mask"
-msgstr ""
+msgid "user \"%s\" is not in group \"%s\""
+msgstr "Óû§ \"%s\" ²»ÔÚ×é \"%s\" ÖÐ"
 
-#: utils/adt/network.c:127 utils/adt/network.c:468
-#, c-format
-msgid "unable to print address (%s)"
-msgstr ""
+#: commands/user.c:1754
+msgid "must be superuser to drop groups"
+msgstr "Ö»Óг¬¼¶Óû§¿ÉÒÔɾ³ý×é"
+
+#: commands/user.c:1818
+msgid "must be superuser to rename groups"
+msgstr "Ö»Óг¬¼¶Óû§¶Ô×éÖØÃüÃû"
+
+#: commands/view.c:89
+msgid "view must have at least one column"
+msgstr "ÊÓͼ±ØÐèÖÁÉÙÓÐÒ»¸ö×Ö¶Î"
+
+#: commands/view.c:170 commands/view.c:182
+msgid "cannot change number of columns in view"
+msgstr "²»¿ÉÒԸıäÊÓͼÖеÄ×ֶθöÊý"
 
-#: utils/adt/network.c:137 utils/adt/network.c:401 utils/adt/network.c:438
-#: utils/adt/network.c:472 utils/adt/network.c:517 utils/adt/network.c:556
-#: utils/adt/network.c:597 utils/adt/network.c:633
+#: commands/view.c:187
 #, c-format
-msgid "unknown address family (%d)"
-msgstr ""
+msgid "cannot change name of view column \"%s\""
+msgstr "²»¿ÉÒԸıäÊÓͼ×ֶΠ\"%s\" µÄÃû×Ö"
 
-#: utils/adt/network.c:184
+#: commands/view.c:194
 #, c-format
-msgid "set_masklen - invalid value '%d'"
-msgstr ""
+msgid "cannot change data type of view column \"%s\""
+msgstr "²»¿ÉÒԸıäÊÓͼ×ֶΠ\"%s\" µÄÊý¾ÝÀàÐÍ"
 
-#: utils/adt/network.c:225 utils/adt/network.c:314 utils/adt/network.c:334
-#: utils/adt/network.c:354 utils/adt/network.c:374
+#: commands/proclang.c:64
+msgid "must be superuser to create procedural language"
+msgstr "Ö»ÓÐÓг¬¼¶Óû§È¨ÏÞµÄÓû§²ÅÄÜ´´½¨¹ý³ÌÓïÑÔ"
+
+#: commands/proclang.c:77 commands/proclang.c:265
 #, c-format
-msgid "cannot compare address families %d and %d"
-msgstr "ÎÞ·¨±È½ÏµØÖ·×å %d ºÍ %d"
+msgid "language \"%s\" already exists"
+msgstr "ÓïÑÔ \"%s\" ÒѾ­´æÔÚ"
 
-#: utils/adt/network.c:397 utils/adt/network.c:428
+#: commands/proclang.c:97
 #, c-format
-msgid "unable to print host (%s)"
-msgstr ""
+msgid ""
+"changing return type of function %s from \"opaque\" to \"language_handler\""
+msgstr "º¯Êý %s µÄ·µ»ØÀàÐÍ \"opaque\" ¸Ä±ä³É \"language_handler\""
 
-#: utils/adt/network.c:652
+#: commands/proclang.c:104
 #, c-format
-msgid "convert_network_to_scalar: unsupported type %u"
-msgstr ""
+msgid "function %s must return type \"language_handler\""
+msgstr "º¯Êý %s ±ØÐë·µ»Ø \"language_handler\" ÀàÐÍ"
 
-#: utils/adt/not_in.c:62
-msgid "int4notin: must provide relationname.attributename"
-msgstr ""
+#: commands/proclang.c:188
+msgid "must be superuser to drop procedural language"
+msgstr "Ö»ÓÐÓг¬¼¶Óû§È¨ÏÞµÄÓû§²ÅÔÊÐíɾ³ý¹ý³ÌÓïÑÔ"
 
-#: utils/adt/numeric.c:1512
-msgid "Cannot convert NaN to int4"
-msgstr ""
+#: commands/proclang.c:271
+msgid "must be superuser to rename procedural language"
+msgstr "Ö»ÓÐÓг¬¼¶Óû§È¨ÏÞµÄÓû§²ÅÄܶԹý³ÌÓïÑÔÖØÃüÃû"
 
-#: utils/adt/numeric.c:1562
-msgid "Cannot convert NaN to int8"
+#: commands/vacuum.c:586
+msgid "oldest xmin is far in the past"
 msgstr ""
 
-#: utils/adt/numeric.c:1613
-msgid "Cannot convert NaN to int2"
-msgstr ""
+#: commands/vacuum.c:587
+msgid "Close open transactions soon to avoid wraparound problems."
+msgstr "Á¢¼´¹Ø±ÕÒÑ´ò¿ªµÄÊÂÎï, ÒÔ±ÜÃâ wraparound ÎÊÌâ."
 
-#: utils/adt/numeric.c:1809
-msgid "do_numeric_accum: expected 3-element numeric array"
-msgstr ""
+#: commands/vacuum.c:804
+msgid "some databases have not been vacuumed in over 2 billion transactions"
+msgstr "һЩÊý¾Ý¿âÔÚ³¬¹ý 20 ÒÚ±ÊÊÂÎïºóûÓÐ×öÇåÀí (vacuum)."
 
-#: utils/adt/numeric.c:1900
-msgid "numeric_avg: expected 3-element numeric array"
+#: commands/vacuum.c:805
+msgid "You may have already suffered transaction-wraparound data loss."
 msgstr ""
 
-#: utils/adt/numeric.c:1936
-msgid "numeric_variance: expected 3-element numeric array"
-msgstr ""
+#: commands/vacuum.c:816
+msgid "some databases have not been vacuumed in over 1 billion transactions"
+msgstr "һЩÊý¾Ý¿âÔÚ³¬¹ý 10 ÒÚ±ÊÊÂÎïºóûÓÐ×öÇåÀí (vacuum)."
 
-#: utils/adt/numeric.c:2018
-msgid "numeric_stddev: expected 3-element numeric array"
+#: commands/vacuum.c:817
+msgid "Better vacuum them soon, or you may have a wraparound failure."
 msgstr ""
 
-#: utils/adt/numeric.c:2214
-msgid "int2_avg_accum: expected 2-element int8 array"
-msgstr ""
+#: commands/vacuum.c:824
+#, c-format
+msgid "some databases have not been vacuumed in %d transactions"
+msgstr "һЩÊý¾Ý¿âÔÚ³¬¹ý %d ±ÊÊÂÎïºóûÓÐ×öÇåÀí (vacuum)."
 
-#: utils/adt/numeric.c:2234
-msgid "int4_avg_accum: expected 2-element int8 array"
+#: commands/vacuum.c:826
+#, c-format
+msgid ""
+"Better vacuum them within %d transactions, or you may have a wraparound "
+"failure."
 msgstr ""
 
-#: utils/adt/numeric.c:2252
-msgid "int8_avg: expected 2-element int8 array"
-msgstr ""
+#: commands/vacuum.c:922
+#, c-format
+msgid "skipping \"%s\" --- only table or database owner can vacuum it"
+msgstr "ºöÂÔ \"%s\" --- Ö»Óбí»òÊý¾Ý¿âÊôÖ÷Äܹ»ÇåÀí (vacuum)"
 
-#: utils/adt/numeric.c:2443 utils/adt/numeric.c:2458 utils/adt/numeric.c:2476
-#: utils/adt/numeric.c:2480 utils/adt/numeric.c:2491
+#: commands/vacuum.c:937
 #, c-format
-msgid "Bad numeric input format '%s'"
-msgstr ""
+msgid ""
+"skipping \"%s\" --- cannot vacuum indexes, views, or special system tables"
+msgstr "ºöÂÔ \"%s\" --- ÎÞ·¨ÇåÀí (vacuum) Ë÷Òý, ÊÓͼ»òÌØÊâµÄϵͳ±í"
 
-#: utils/adt/numeric.c:2810
+#: commands/vacuum.c:1328
 #, c-format
 msgid ""
-"overflow on numeric ABS(value) >= 10^%d for field with precision %d scale %d"
+"relation \"%s\" TID %u/%u: InsertTransactionInProgress %u --- can't shrink "
+"relation"
 msgstr ""
 
-#: utils/adt/numeric.c:3650
-msgid "math error on numeric - cannot compute SQRT of negative value"
+#: commands/vacuum.c:1341
+#, c-format
+msgid ""
+"relation \"%s\" TID %u/%u: DeleteTransactionInProgress %u --- can't shrink "
+"relation"
 msgstr ""
 
-#: utils/adt/numeric.c:3739
-msgid "argument for EXP() too big"
+#: commands/vacuum.c:1502
+#, c-format
+msgid ""
+"%.0f dead row versions cannot be removed yet.\n"
+"Nonremovable row versions range from %lu to %lu bytes long.\n"
+"There were %.0f unused item pointers.\n"
+"Total free space (including removable row versions) is %.0f bytes.\n"
+"%u pages are or will become empty, including %u at the end of the table.\n"
+"%u pages containing %.0f free bytes are potential move destinations.\n"
+"%s"
 msgstr ""
 
-#: utils/adt/numeric.c:3818
-msgid "math error on numeric - cannot compute LN of value <= zero"
+#: commands/vacuum.c:2255
+#, c-format
+msgid "\"%s\": moved %u row versions, truncated %u to %u pages"
 msgstr ""
 
-#: utils/adt/numutils.c:71
-msgid "pg_atoi: NULL pointer"
+#: commands/vacuum.c:2878 commands/vacuum.c:2947
+#, c-format
+msgid ""
+"index \"%s\" contains %.0f row versions, but table contains %.0f row versions"
 msgstr ""
 
-#: utils/adt/numutils.c:73
-msgid "pg_atoi: zero-length string"
-msgstr ""
+#: commands/vacuum.c:2881 commands/vacuum.c:2950
+msgid "Rebuild the index with REINDEX."
+msgstr "ʹÓàREINDEX Öؽ¨Ë÷Òý."
 
-#: utils/adt/numutils.c:83 utils/adt/numutils.c:95 utils/adt/numutils.c:100
-#: utils/adt/numutils.c:108 utils/adt/numutils.c:113 utils/adt/numutils.c:120
-#: utils/adt/numutils.c:125
+#: commands/sequence.c:401 commands/sequence.c:593 commands/sequence.c:636
 #, c-format
-msgid "pg_atoi: error reading \"%s\": %m"
-msgstr ""
+msgid "permission denied for sequence %s"
+msgstr "¶ÔÓÚÐòÁР%s, È¨ÏÞ²»¹»"
 
-#: utils/adt/numutils.c:85
+#: commands/sequence.c:478
 #, c-format
-msgid "pg_atoi: error in \"%s\": can't parse \"%s\""
-msgstr ""
+msgid "nextval: reached maximum value of sequence \"%s\" (%s)"
+msgstr "nextval: ´ïµ½ÐòÁР\"%s\" µÄ×î´óÖµÁË (%s)"
 
-#: utils/adt/numutils.c:129
+#: commands/sequence.c:501
 #, c-format
-msgid "pg_atoi: invalid result size: %d"
-msgstr "pg_atoi: ·Ç·¨µÄ½á¹û³ß´ç: %d"
+msgid "nextval: reached minimum value of sequence \"%s\" (%s)"
+msgstr "nextval: ´ïµ½ÐòÁР\"%s\" µÄ×îСֵÁË (%s)"
 
-#: utils/adt/oid.c:46
+#: commands/sequence.c:599
 #, c-format
-msgid "%s: error reading \"%s\": %m"
-msgstr ""
+msgid "currval of sequence \"%s\" is not yet defined in this session"
+msgstr "Ôڴ˻ỰÖÐÐòÁР\"%s\" µÄ currval ÈÔû±»¶¨Òå"
 
-#: utils/adt/oid.c:49 utils/adt/oid.c:63
+#: commands/sequence.c:653
 #, c-format
-msgid "%s: error in \"%s\": can't parse \"%s\""
-msgstr ""
+msgid "setval: value %s is out of bounds for sequence \"%s\" (%s..%s)"
+msgstr "setval: Öµ %s ³¬³öÐòÁР\"%s\" µÄ·¶Î§ (%s..%s)"
 
-#: utils/adt/oid.c:84
+#: commands/sequence.c:937
+msgid "INCREMENT must not be zero"
+msgstr "INCREMENT ²»±ØΪÁã"
+
+#: commands/sequence.c:983
 #, c-format
-msgid "%s: error reading \"%s\": %s"
-msgstr ""
+msgid "MINVALUE (%s) must be less than MAXVALUE (%s)"
+msgstr "MINVALUE (%s) ±ØÐèСÓÚ MAXVALUE (%s)"
 
-#: utils/adt/oid.c:138
-msgid "oidvector value has too many values"
-msgstr ""
+#: commands/sequence.c:1014
+#, c-format
+msgid "START value (%s) can't be less than MINVALUE (%s)"
+msgstr "START Öµ (%s) ²»ÄÜСÓÚ MINVALUE (%s)"
 
-#: utils/adt/oracle_compat.c:199 utils/adt/oracle_compat.c:294
-msgid "Requested length too large"
-msgstr ""
+#: commands/sequence.c:1026
+#, c-format
+msgid "START value (%s) can't be greater than MAXVALUE (%s)"
+msgstr "START Öµ (%s) ²»ÄÜ´óÓÚ MAXVALUE (%s)"
 
-#: utils/adt/oracle_compat.c:857
-msgid "Requested buffer is too large."
-msgstr ""
+#: commands/sequence.c:1041
+#, c-format
+msgid "CACHE (%s) must be greater than zero"
+msgstr "CACHE (%s) ±ØÐë´óÓÚÁã"
 
-#: utils/adt/pg_locale.c:160
-msgid "Invalid LC_COLLATE setting"
-msgstr ""
+#: commands/aggregatecmds.c:97
+#, c-format
+msgid "aggregate attribute \"%s\" not recognized"
+msgstr "¾Û¼¯ÊôÐÔ \"%s\" ²»±»ÈÏ¿É"
 
-#: utils/adt/pgstatfuncs.c:188
-msgid ""
-"pg_stat_get_backend_idset: called in context that does not accept a set "
-"result"
-msgstr ""
+#: commands/aggregatecmds.c:107
+msgid "aggregate basetype must be specified"
+msgstr "¾Û¼¯ basetype ±ØÐëÖ¸¶¨"
 
-#: utils/adt/pgstatfuncs.c:193
-msgid "No function memory context in set-function"
-msgstr ""
+#: commands/aggregatecmds.c:111
+msgid "aggregate stype must be specified"
+msgstr "¾Û¼¯ stype ±ØÐëÖ¸¶¨"
 
-#: utils/adt/pseudotypes.c:35 utils/adt/pseudotypes.c:86
-#: utils/adt/pseudotypes.c:109 utils/adt/pseudotypes.c:157
-#: utils/adt/pseudotypes.c:180 utils/adt/pseudotypes.c:203
-#: utils/adt/pseudotypes.c:226
-#, c-format
-msgid "Cannot accept a constant of type %s"
-msgstr ""
+#: commands/aggregatecmds.c:115
+msgid "aggregate sfunc must be specified"
+msgstr "¾Û¼¯ sfunc ±ØÐëÖ¸¶¨"
 
-#: utils/adt/pseudotypes.c:46 utils/adt/pseudotypes.c:97
-#: utils/adt/pseudotypes.c:168 utils/adt/pseudotypes.c:191
-#: utils/adt/pseudotypes.c:214 utils/adt/pseudotypes.c:237
+#: commands/aggregatecmds.c:138
 #, c-format
-msgid "Cannot display a value of type %s"
-msgstr ""
+msgid "aggregate transition data type cannot be %s"
+msgstr "¾Û¼¯×ª»»Êý¾ÝÀàÐͲ»ÄÜΪ %s"
 
-#: utils/adt/regexp.c:174
+#: commands/aggregatecmds.c:258
 #, c-format
-msgid "Invalid regular expression: %s"
-msgstr ""
+msgid "function %s(*) already exists in schema \"%s\""
+msgstr "ÔÚģʽ \"%2$s\" Öк¯Êý %1$s(*) ÒѾ­´æÔÚ"
 
-#: utils/adt/regexp.c:185
-#, fuzzy
-msgid "Out of memory"
-msgstr "ÄÚ´æÓþ¡"
+#: commands/schemacmds.c:87
+#, c-format
+msgid "\"%s\" is not a superuser, so cannot create a schema for \"%s\""
+msgstr "\"%s\" ²»Êdz¬¼¶Óû§, Òò´Ë²»ÄÜΪ \"%s\" ´´½¨Ä£Ê½"
 
-#: utils/adt/regproc.c:115 utils/adt/regproc.c:130 utils/adt/regproc.c:258
+#: commands/schemacmds.c:102 commands/schemacmds.c:297
 #, c-format
-msgid "No procedure with name %s"
-msgstr ""
+msgid "unacceptable schema name \"%s\""
+msgstr "²»¿É·ÃÎʵÄģʽÃû×Ö \"%s\""
 
-#: utils/adt/regproc.c:117 utils/adt/regproc.c:132
+#: commands/schemacmds.c:103 commands/schemacmds.c:298
+msgid "The prefix \"pg_\" is reserved for system schemas."
+msgstr "ǰ׺ \"pg_\" ÊDZ£Áô¸øϵͳģʽµÄ."
+
+#: commands/schemacmds.c:281 catalog/pg_namespace.c:51
 #, c-format
-msgid "There is more than one procedure named %s"
-msgstr ""
+msgid "schema \"%s\" already exists"
+msgstr "ģʽ \"%s\" ÒѾ­´æÔÚ"
 
-#: utils/adt/regproc.c:413 utils/adt/regproc.c:428 utils/adt/regproc.c:576
+#: parser/parse_clause.c:363
 #, c-format
-msgid "No operator with name %s"
+msgid "JOIN/ON clause refers to \"%s\", which is not part of JOIN"
 msgstr ""
 
-#: utils/adt/regproc.c:415 utils/adt/regproc.c:430
-#, c-format
-msgid "There is more than one operator named %s"
+#: parser/parse_clause.c:423 gram.y:5172
+msgid "subquery in FROM must have an alias"
+msgstr "FROM ÖеÄ×Ó²éѯ±ØÐëÓÐÒ»¸ö±ðÃû"
+
+#: parser/parse_clause.c:446
+msgid "subquery in FROM may not have SELECT INTO"
+msgstr "FROM ÖеÄ×Ó²éѯ²»¿ÉÒÔÓРSELECT INTO"
+
+#: parser/parse_clause.c:468
+msgid "subquery in FROM may not refer to other relations of same query level"
 msgstr ""
 
-#: utils/adt/regproc.c:556
+#: parser/parse_clause.c:523
 msgid ""
-"regoperatorin: use NONE to denote the missing argument of a unary operator"
+"function expression in FROM may not refer to other relations of same query "
+"level"
 msgstr ""
 
-#: utils/adt/regproc.c:558
-msgid "regoperatorin: provide two argument types for operator"
-msgstr ""
+#: parser/parse_clause.c:535
+msgid "cannot use aggregate function in function expression in FROM"
+msgstr "²»ÄÜÔÚ FROM Öеĺ¯Êý±í´ïʽÖÐʹÓþۼ¯º¯Êý"
 
-#: utils/adt/regproc.c:726
+#: parser/parse_clause.c:755
 #, c-format
-msgid "No class with name %s"
-msgstr ""
+msgid "column name \"%s\" appears more than once in USING clause"
+msgstr "ÔÚ USING ×Ó¾äÖÐ×Ö¶ÎÃû \"%s\" ³öÏÖ¶à´Î"
 
-#: utils/adt/regproc.c:870
+#: parser/parse_clause.c:770
 #, c-format
-msgid "No type with name %s"
-msgstr ""
+msgid "common column name \"%s\" appears more than once in left table"
+msgstr "¹²Í¬µÄ×Ö¶ÎÃû \"%s\" ÔÚ×ó±ßµÄ±íÖгöÏÖÁ˶à´Î"
 
-#: utils/adt/regproc.c:955 utils/adt/regproc.c:958 utils/adt/varlena.c:1367
-#: utils/adt/varlena.c:1370
+#: parser/parse_clause.c:779
 #, c-format
-msgid "%s: invalid name syntax"
-msgstr ""
+msgid "column \"%s\" specified in USING clause does not exist in left table"
+msgstr "USING ×Ó¾äÖÐÖ¸¶¨µÄ×ֶΠ\"%s\" ÔÚ×ó±ßµÄ±íÖв»´æÔÚ"
 
-#: utils/adt/regproc.c:1015
+#: parser/parse_clause.c:793
 #, c-format
-msgid "%s: expected a left parenthesis"
-msgstr ""
+msgid "common column name \"%s\" appears more than once in right table"
+msgstr "¹²Í¬µÄ×Ö¶ÎÃû \"%s\" ÔÚÓұߵıíÖгöÏÖÁ˶à´Î"
 
-#: utils/adt/regproc.c:1029
+#: parser/parse_clause.c:802
 #, c-format
-msgid "%s: expected a right parenthesis"
-msgstr ""
+msgid "column \"%s\" specified in USING clause does not exist in right table"
+msgstr "USING ×Ó¾äÖÐÖ¸¶¨µÄ×ֶΠ\"%s\" ÔÚÓұߵıíÖв»´æÔÚ"
 
-#: utils/adt/regproc.c:1045
-#, fuzzy, c-format
-msgid "%s: expected a type name"
-msgstr "toIntList: ·ÇÔ¤ÆÚÊý¾ÝÀàÐÍ"
+#: parser/parse_clause.c:854
+#, c-format
+msgid "column alias list for \"%s\" has too many entries"
+msgstr "\"%s\" µÄ×ֶαðÃûÁбíÓÐÌ«¶à¼Ç¼"
 
-#: utils/adt/regproc.c:1075
+#. translator: %s is name of a SQL construct, eg LIMIT
+#: parser/parse_clause.c:1047
 #, c-format
-msgid "%s: improper type name"
-msgstr ""
+msgid "argument of %s must not contain variables"
+msgstr "%s µÄ²ÎÊý²»ÄÜ°üº¬±äÁ¿"
 
-#: utils/adt/regproc.c:1107
+#. translator: %s is name of a SQL construct, eg LIMIT
+#: parser/parse_clause.c:1055
 #, c-format
-msgid "%s: too many argument datatypes"
-msgstr ""
+msgid "argument of %s must not contain aggregates"
+msgstr "%s µÄ²ÎÊýÒ»¶¨²»ÄÜ°üº¬¾Û¼¯º¯Êý"
 
-#: utils/adt/ri_triggers.c:209
-msgid "wrong # of arguments in call to RI_FKey_check()"
-msgstr ""
+#. translator: %s is name of a SQL construct, eg LIMIT
+#: parser/parse_clause.c:1063
+#, c-format
+msgid "argument of %s must not contain subqueries"
+msgstr "%s µÄ²ÎÊýÒ»¶¨²»ÄÜ°üº¬×Ó²éѯ"
 
-#: utils/adt/ri_triggers.c:211
+#: parser/parse_clause.c:1175
 #, c-format
-msgid "too many keys (%d max) in call to RI_FKey_check()"
-msgstr ""
+msgid "%s \"%s\" is ambiguous"
+msgstr "%s \"%s\" ÊDz»Ã÷È·µÄ"
 
-#: utils/adt/ri_triggers.c:225 utils/adt/ri_triggers.c:683
-#: utils/adt/ri_triggers.c:877 utils/adt/ri_triggers.c:1078
-#: utils/adt/ri_triggers.c:1257 utils/adt/ri_triggers.c:1461
-#: utils/adt/ri_triggers.c:1646 utils/adt/ri_triggers.c:1834
-#: utils/adt/ri_triggers.c:2022 utils/adt/ri_triggers.c:2255
-#: utils/adt/ri_triggers.c:2486 utils/adt/ri_triggers.c:2737
+#. translator: %s is name of a SQL construct, eg ORDER BY
+#: parser/parse_clause.c:1197
 #, c-format
-msgid ""
-"No target table given for trigger \"%s\" on \"%s\"\n"
-"\tRemove these RI triggers and do ALTER TABLE ADD CONSTRAINT"
-msgstr ""
+msgid "non-integer constant in %s"
+msgstr "ÔÚ %s ÖеķÇÕûÊý³£Á¿"
 
-#: utils/adt/ri_triggers.c:301 utils/adt/ri_triggers.c:405
-#: utils/adt/ri_triggers.c:567
-msgid "SPI_connect() failed in RI_FKey_check()"
+#. translator: %s is name of a SQL construct, eg ORDER BY
+#: parser/parse_clause.c:1214
+#, c-format
+msgid "%s position %d is not in select list"
 msgstr ""
 
-#: utils/adt/ri_triggers.c:310 utils/adt/ri_triggers.c:461
-msgid "SPI_finish() failed in RI_FKey_check()"
+#: parser/parse_clause.c:1407
+msgid "for SELECT DISTINCT, ORDER BY expressions must appear in select list"
 msgstr ""
 
-#: utils/adt/ri_triggers.c:322 utils/adt/ri_triggers.c:809
-#: utils/adt/ri_triggers.c:1014 utils/adt/ri_triggers.c:1191
-#: utils/adt/ri_triggers.c:1390 utils/adt/ri_triggers.c:1574
-#: utils/adt/ri_triggers.c:1770 utils/adt/ri_triggers.c:1955
-#: utils/adt/ri_triggers.c:2192 utils/adt/ri_triggers.c:2421
-#: utils/adt/ri_triggers.c:2681 utils/adt/ri_triggers.c:2771
-msgid "MATCH PARTIAL not yet supported"
+#: parser/parse_clause.c:1447
+msgid "SELECT DISTINCT ON expressions must match initial ORDER BY expressions"
 msgstr ""
 
-#: utils/adt/ri_triggers.c:358
-#, c-format
-msgid ""
-"%s referential integrity violation - MATCH FULL doesn't allow mixing of NULL "
-"and NON-NULL key values"
-msgstr ""
+#: parser/parse_agg.c:74 optimizer/util/clauses.c:426 executor/execQual.c:2769
+msgid "aggregate function calls may not be nested"
+msgstr "¾Û¼¯º¯Êýµ÷Óò»ÔÊÐíǶÌ×"
 
-#: utils/adt/ri_triggers.c:382 utils/adt/ri_triggers.c:553
-msgid "MATCH PARTIAL not yet implemented"
-msgstr ""
+#: parser/parse_agg.c:120
+msgid "aggregates not allowed in WHERE clause"
+msgstr "¾Û¼¯º¯Êý²»ÔÊÐíÔÚ WHERE ×Ó¾äÖÐ"
 
-#: utils/adt/ri_triggers.c:622
-msgid "SPI_finish() failed in ri_Check_Pk_Match()"
-msgstr ""
+#: parser/parse_agg.c:124
+msgid "aggregates not allowed in JOIN conditions"
+msgstr "¾Û¼¯º¯Êý²»ÔÊÐíÔÚ JOIN Ìõ¼þÖÐ"
 
-#: utils/adt/ri_triggers.c:664
-msgid "wrong # of arguments in call to RI_FKey_noaction_del()"
-msgstr ""
+#: parser/parse_agg.c:143
+msgid "aggregates not allowed in GROUP BY clause"
+msgstr "¾Û¼¯º¯Êý²»ÔÊÐíÔÚ GROUP BY ×Ó¾äÖÐ"
 
-#: utils/adt/ri_triggers.c:666
+#: parser/parse_agg.c:316
 #, c-format
-msgid "too many keys (%d max) in call to RI_FKey_noaction_del()"
-msgstr ""
+msgid ""
+"column \"%s.%s\" must appear in the GROUP BY clause or be used in an "
+"aggregate function"
+msgstr "×ֶΠ\"%s.%s\" ±ØÐë³öÏÖÔÚ GROUP BY ×Ó¾äÖлòÕßÔÚ¾Û¼¯º¯ÊýÖÐʹÓÃ"
 
-#: utils/adt/ri_triggers.c:742
-msgid "SPI_connect() failed in RI_FKey_noaction_del()"
+#: parser/parse_agg.c:321
+#, c-format
+msgid "subquery uses ungrouped column \"%s.%s\" from outer query"
 msgstr ""
 
-#: utils/adt/ri_triggers.c:799
-msgid "SPI_finish() failed in RI_FKey_noaction_del()"
+#: parser/scansup.c:182
+#, c-format
+msgid "identifier \"%s\" will be truncated to \"%.*s\""
 msgstr ""
 
-#: utils/adt/ri_triggers.c:816
-msgid "internal error #2 in ri_triggers.c"
-msgstr ""
+#: parser/parse_relation.c:174 parser/parse_relation.c:189
+#, c-format
+msgid "table reference \"%s\" is ambiguous"
+msgstr "±í¹ØÁª \"%s\" ÊDz»Ã÷È·µÄ"
 
-#: utils/adt/ri_triggers.c:858
-msgid "wrong # of arguments in call to RI_FKey_noaction_upd()"
-msgstr ""
+#: parser/parse_relation.c:249 parser/parse_relation.c:264
+#, c-format
+msgid "table reference %u is ambiguous"
+msgstr "±í¹ØÁª %u ÊDz»Ã÷È·µÄ"
 
-#: utils/adt/ri_triggers.c:860
+#: parser/parse_relation.c:356 parser/parse_relation.c:368
 #, c-format
-msgid "too many keys (%d max) in call to RI_FKey_noaction_upd()"
-msgstr ""
+msgid "table name \"%s\" specified more than once"
+msgstr "±íÃû \"%s\" ±»Ö¸¶¨¶à´Î"
 
-#: utils/adt/ri_triggers.c:947
-msgid "SPI_connect() failed in RI_FKey_noaction_upd()"
-msgstr ""
+#: parser/parse_relation.c:510 parser/parse_relation.c:609
+#, c-format
+msgid "column reference \"%s\" is ambiguous"
+msgstr "×ֶιØÁª \"%s\" ÊDz»Ã÷È·µÄ"
 
-#: utils/adt/ri_triggers.c:1004
-msgid "SPI_finish() failed in RI_FKey_noaction_upd()"
-msgstr ""
+#: parser/parse_relation.c:726 parser/parse_relation.c:925
+#, c-format
+msgid "table \"%s\" has %d columns available but %d columns specified"
+msgstr "±í \"%s\" ÓР%d ¸öÓÐЧ×Ö¶Î, µ«Ö¸¶¨ÁË %d ¸ö×Ö¶Î"
 
-#: utils/adt/ri_triggers.c:1021
-msgid "internal error #3 in ri_triggers.c"
-msgstr ""
+#: parser/parse_relation.c:997
+msgid ""
+"a column definition list is only allowed for functions returning \"record\""
+msgstr "Ò»¸ö×ֶζ¨ÒåÁбíÖ»ÔÊÐí·µ»Ø \"record\" µÄº¯Êý"
 
-#: utils/adt/ri_triggers.c:1059
-msgid "wrong # of arguments in call to RI_FKey_cascade_del()"
-msgstr ""
+#: parser/parse_relation.c:1008
+msgid "a column definition list is required for functions returning \"record\""
+msgstr "Ò»¸ö×ֶζ¨ÒåÁбíÐèÒª·µ»Ø \"record\" µÄº¯Êý"
 
-#: utils/adt/ri_triggers.c:1061
+#: parser/parse_relation.c:1052
 #, c-format
-msgid "too many keys (%d max) in call to RI_FKey_cascade_del()"
-msgstr ""
+msgid "too many column aliases specified for function %s"
+msgstr "Ϊº¯Êý %s Ö¸¶¨ÁËÌ«¶àµÄ×ֶαðÃû"
 
-#: utils/adt/ri_triggers.c:1124
-msgid "SPI_connect() failed in RI_FKey_cascade_del()"
-msgstr ""
-
-#: utils/adt/ri_triggers.c:1181
-msgid "SPI_finish() failed in RI_FKey_cascade_del()"
-msgstr ""
+#: parser/parse_relation.c:1076
+#, c-format
+msgid "function \"%s\" in FROM has unsupported return type"
+msgstr "FROM Öеĺ¯Êý \"%s\" ²»Ö§³Ö·µ»ØÀàÐÍ"
 
-#: utils/adt/ri_triggers.c:1198
-msgid "internal error #4 in ri_triggers.c"
-msgstr ""
+#: parser/parse_relation.c:1394 parser/parse_relation.c:1730
+msgid "function in FROM has unsupported return type"
+msgstr "FROM Öеĺ¯Êý²»Ö§³Ö·µ»ØÀàÐÍ"
 
-#: utils/adt/ri_triggers.c:1238
-msgid "wrong # of arguments in call to RI_FKey_cascade_upd()"
+#: parser/parse_relation.c:2009
+#, c-format
+msgid "missing FROM-clause entry in subquery for table \"%s\""
 msgstr ""
 
-#: utils/adt/ri_triggers.c:1240
+#: parser/parse_relation.c:2014
 #, c-format
-msgid "too many keys (%d max) in call to RI_FKey_cascade_upd()"
+msgid "missing FROM-clause entry for table \"%s\""
 msgstr ""
 
-#: utils/adt/ri_triggers.c:1314
-msgid "SPI_connect() failed in RI_FKey_cascade_upd()"
+#: parser/parse_relation.c:2033
+#, c-format
+msgid "adding missing FROM-clause entry in subquery for table \"%s\""
 msgstr ""
 
-#: utils/adt/ri_triggers.c:1380
-msgid "SPI_finish() failed in RI_FKey_cascade_upd()"
+#: parser/parse_relation.c:2038
+#, c-format
+msgid "adding missing FROM-clause entry for table \"%s\""
 msgstr ""
 
-#: utils/adt/ri_triggers.c:1397
-msgid "internal error #5 in ri_triggers.c"
-msgstr ""
+#: parser/parse_coerce.c:221 parser/analyze.c:3136 parser/parse_expr.c:116
+#: parser/parse_expr.c:122
+#, c-format
+msgid "there is no parameter $%d"
+msgstr "ûÓвÎÊý $%d"
 
-#: utils/adt/ri_triggers.c:1442
-msgid "wrong # of arguments in call to RI_FKey_restrict_del()"
+#: parser/parse_coerce.c:237
+#, c-format
+msgid "inconsistent types deduced for parameter $%d"
 msgstr ""
 
-#: utils/adt/ri_triggers.c:1444
+#: parser/parse_coerce.c:676 parser/parse_coerce.c:703
+#: parser/parse_coerce.c:719 parser/parse_coerce.c:733
+#: parser/parse_expr.c:1654
 #, c-format
-msgid "too many keys (%d max) in call to RI_FKey_restrict_del()"
-msgstr ""
+msgid "cannot cast type %s to %s"
+msgstr "ÎÞ·¨°ÑÀàÐÍ %s ×ª»»Îª %s"
 
-#: utils/adt/ri_triggers.c:1507
-msgid "SPI_connect() failed in RI_FKey_restrict_del()"
-msgstr ""
+#: parser/parse_coerce.c:706
+msgid "Input has too few columns."
+msgstr "ÊäÈë×Ö¶ÎÌ«ÉÙ"
 
-#: utils/adt/ri_triggers.c:1564
-msgid "SPI_finish() failed in RI_FKey_restrict_del()"
-msgstr ""
+#: parser/parse_coerce.c:722
+#, c-format
+msgid "Cannot cast type %s to %s in column %d."
+msgstr "²»Äܰѵڠ%3$d ¸ö×ֶεÄÀàÐÍ %1$s ×ª»»Îª %2$s."
 
-#: utils/adt/ri_triggers.c:1581
-msgid "internal error #6 in ri_triggers.c"
-msgstr ""
+#: parser/parse_coerce.c:736
+msgid "Input has too many columns."
+msgstr "ÊäÈë×Ö¶ÎÌ«¶à"
 
-#: utils/adt/ri_triggers.c:1627
-msgid "wrong # of arguments in call to RI_FKey_restrict_upd()"
-msgstr ""
+#. translator: first %s is name of a SQL construct, eg WHERE
+#: parser/parse_coerce.c:770
+#, c-format
+msgid "argument of %s must be type boolean, not type %s"
+msgstr "%s µÄ²ÎÊý±ØÐèÊDz¼¶ûÀàÐÍ, ¶ø²»ÊÇ %s ÀàÐÍ"
 
-#: utils/adt/ri_triggers.c:1629
+#. 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
 #, c-format
-msgid "too many keys (%d max) in call to RI_FKey_restrict_upd()"
-msgstr ""
+msgid "argument of %s must not return a set"
+msgstr "%s µÄ²ÎÊý²»ÄÜ·µ»ØÒ»¸ö×éºÏ"
 
-#: utils/adt/ri_triggers.c:1703
-msgid "SPI_connect() failed in RI_FKey_restrict_upd()"
-msgstr ""
+#. translator: first %s is name of a SQL construct, eg LIMIT
+#: parser/parse_coerce.c:809
+#, c-format
+msgid "argument of %s must be type integer, not type %s"
+msgstr "%s µÄ²ÎÊý±ØÐèÊÇÕûÊýÀàÐÍ, ¶ø²»ÊÇ %s ÀàÐÍ"
 
-#: utils/adt/ri_triggers.c:1760
-msgid "SPI_finish() failed in RI_FKey_restrict_upd()"
-msgstr ""
+#: parser/parse_coerce.c:871
+#, c-format
+msgid "%s types %s and %s cannot be matched"
+msgstr "%s µÄÀàÐÍ %s ºÍ %s ²»Æ¥Åä"
 
-#: utils/adt/ri_triggers.c:1777
-msgid "internal error #7 in ri_triggers.c"
-msgstr ""
+#. translator: first %s is name of a SQL construct, eg CASE
+#: parser/parse_coerce.c:933
+#, c-format
+msgid "%s could not convert type %s to %s"
+msgstr "%s ÎÞ·¨×ª»»ÀàÐÍ %s Îª %s"
 
-#: utils/adt/ri_triggers.c:1815
-msgid "wrong # of arguments in call to RI_FKey_setnull_del()"
-msgstr ""
+#: parser/parse_coerce.c:1109
+msgid "arguments declared \"anyelement\" are not all alike"
+msgstr "²ÎÊýÉùÃ÷µÄ \"anyelement\" ²»È«Ïàͬ"
 
-#: utils/adt/ri_triggers.c:1817
+#: parser/parse_coerce.c:1126
+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
 #, c-format
-msgid "too many keys (%d max) in call to RI_FKey_setnull_del()"
-msgstr ""
+msgid "argument declared \"anyarray\" is not an array but type %s"
+msgstr "²ÎÊýÉùÃ÷µÄ \"anyarray\" ²»ÊÇÒ»¸öÊý×é, µ«ÊÇÀàÐÍΪ %s"
 
-#: utils/adt/ri_triggers.c:1880
-msgid "SPI_connect() failed in RI_FKey_setnull_del()"
-msgstr ""
+#: parser/parse_coerce.c:1172
+msgid ""
+"argument declared \"anyarray\" is not consistent with argument declared "
+"\"anyelement\""
+msgstr "²ÎÊýÉùÃ÷µÄ \"anyarray\" ºÍ²ÎÊýÉùÃ÷µÄ \"anyelement\" ²»Ò»ÖÂ"
 
-#: utils/adt/ri_triggers.c:1945
-msgid "SPI_finish() failed in RI_FKey_setnull_del()"
-msgstr ""
+#: parser/parse_coerce.c:1183
+msgid ""
+"could not determine anyarray/anyelement type because input has type \"unknown"
+"\""
+msgstr "ÎÞ·¨È·¶¨ anyarray/anyelement ÀàÐÍ, ÒòΪÊäÈëÀàÐÍΪ \"unknown\""
 
-#: utils/adt/ri_triggers.c:1962
-msgid "internal error #8 in ri_triggers.c"
-msgstr ""
+#: 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_expr.c:1389 parser/parse_oper.c:920
+#, c-format
+msgid "could not find array type for data type %s"
+msgstr "ÎÞ·¨ÎªÊý¾ÝÀàÐÍ %s ÕÒµ½Êý×éÀàÐÍ"
 
-#: utils/adt/ri_triggers.c:2003
-msgid "wrong # of arguments in call to RI_FKey_setnull_upd()"
-msgstr ""
+#: y.tab.c:9592
+msgid "syntax error: cannot back up"
+msgstr "Óï·¨´íÎó: ÎÞ·¨Ö§³Ö/µ¹ÍË"
+
+#: gram.y:990 gram.y:1016
+msgid "time zone interval must be HOUR or HOUR TO MINUTE"
+msgstr "ʱÇø¼ä¸ô±ØÐëΪ HOUR »òÕß HOUR TO MINUTE"
 
-#: utils/adt/ri_triggers.c:2005
+#: gram.y:1001 gram.y:5497 gram.y:7560
 #, c-format
-msgid "too many keys (%d max) in call to RI_FKey_setnull_upd()"
-msgstr ""
+msgid "INTERVAL(%d) precision must not be negative"
+msgstr "INTERVAL(%d) µÄ¾«È·¶È²»ÄÜΪ¸ºÊý"
 
-#: utils/adt/ri_triggers.c:2080
-msgid "SPI_connect() failed in RI_FKey_setnull_upd()"
+#: gram.y:1007 gram.y:5503 gram.y:7566
+#, c-format
+msgid "INTERVAL(%d) precision reduced to maximum allowed, %d"
 msgstr ""
 
-#: utils/adt/ri_triggers.c:2182
-msgid "SPI_finish() failed in RI_FKey_setnull_upd()"
-msgstr ""
+#: gram.y:1977
+msgid "CREATE TABLE AS may not specify INTO"
+msgstr "CREATE TABLE AS ²»¿ÉÒÔÖ¸¶¨ INTO"
 
-#: utils/adt/ri_triggers.c:2199
-msgid "internal error #9 in ri_triggers.c"
-msgstr ""
+#: gram.y:2369 gram.y:2384 parser/analyze.c:2898 parser/analyze.c:2922
+msgid "constraint declared INITIALLY DEFERRED must be DEFERRABLE"
+msgstr "Ô¼ÊøÉùÃ÷ INITIALLY DEFERRED ±ØÐëΪ DEFERRABLE"
 
-#: utils/adt/ri_triggers.c:2236
-msgid "wrong # of arguments in call to RI_FKey_setdefault_del()"
-msgstr ""
+#: gram.y:2436
+msgid "CREATE ASSERTION is not yet implemented"
+msgstr "CREATE ASSERTION ÈÔδʵÏÖ"
 
-#: utils/adt/ri_triggers.c:2238
-#, c-format
-msgid "too many keys (%d max) in call to RI_FKey_setdefault_del()"
-msgstr ""
+#: gram.y:2452
+msgid "DROP ASSERTION is not yet implemented"
+msgstr "DROP ASSERTION ÈÔδʵÏÖ"
 
-#: utils/adt/ri_triggers.c:2301
-msgid "SPI_connect() failed in RI_FKey_setdefault_del()"
-msgstr ""
+#: gram.y:2516 gram.y:7445 parser/parse_expr.c:1183 parser/parse_target.c:735
+#: catalog/namespace.c:1201
+#, c-format
+msgid "improper qualified name (too many dotted names): %s"
+msgstr "²»ºÏÊʵÄÌõ¼þÃû³Æ (Ãû×ÖÖÐÌ«¶àµÄµã·ûºÅ): %s"
 
-#: utils/adt/ri_triggers.c:2411
-msgid "SPI_finish() failed in RI_FKey_setdefault_del()"
-msgstr ""
+#: gram.y:3334
+msgid "CREATE FUNCTION / OUT parameters are not implemented"
+msgstr "CREATE FUNCTION / OUT ²ÎÊýδʵÏÖ"
 
-#: utils/adt/ri_triggers.c:2428
-msgid "internal error #10 in ri_triggers.c"
-msgstr ""
+#: gram.y:3341
+msgid "CREATE FUNCTION / INOUT parameters are not implemented"
+msgstr "CREATE FUNCTION / INOUT ²ÎÊýδʵÏÖ"
 
-#: utils/adt/ri_triggers.c:2467
-msgid "wrong # of arguments in call to RI_FKey_setdefault_upd()"
-msgstr ""
+#: gram.y:4551
+msgid "column name list not allowed in CREATE TABLE / AS EXECUTE"
+msgstr "×Ö¶ÎÃûÁÐ±í²»ÔÊÐíÔÚ CREATE TABLE / AS EXECUTE ÖÐ"
 
-#: utils/adt/ri_triggers.c:2469
-#, c-format
-msgid "too many keys (%d max) in call to RI_FKey_setdefault_upd()"
-msgstr ""
+#: gram.y:5022
+msgid "LIMIT #,# syntax is not supported"
+msgstr "²»Ö§³Ö LIMIT #,# Óï·¨"
 
-#: utils/adt/ri_triggers.c:2545
-msgid "SPI_connect() failed in RI_FKey_setdefault_upd()"
+#: gram.y:5023
+msgid "Use separate LIMIT and OFFSET clauses."
 msgstr ""
 
-#: utils/adt/ri_triggers.c:2671
-msgid "SPI_finish() failed in RI_FKey_setdefault_upd()"
-msgstr ""
+#: gram.y:5173
+msgid "For example, FROM (SELECT ...) [AS] foo."
+msgstr "ÀýÈç, FROM (SELECT ...) [AS] foo."
 
-#: utils/adt/ri_triggers.c:2688
-msgid "internal error #11 in ri_triggers.c"
-msgstr ""
+#: gram.y:5600
+msgid "precision for type float must be at least 1 bit"
+msgstr "¸¡µãÀàÐ͵ľ«È·¶È±ØÐëÖÁÉÙ 1 Î»"
 
-#: utils/adt/ri_triggers.c:2719
-msgid "wrong # of arguments in call to RI_FKey_keyequal_upd()"
-msgstr ""
+#: gram.y:5608
+msgid "precision for type float must be less than 54 bits"
+msgstr "¸¡µãÀàÐ͵ľ«È·¶È±ØÐëСÓÚ 54 Î»"
 
-#: utils/adt/ri_triggers.c:2721
+#: gram.y:5622 gram.y:5637
 #, c-format
-msgid "too many keys (%d max) in call to RI_FKey_keyequal_upd()"
-msgstr ""
+msgid "NUMERIC precision %d must be between 1 and %d"
+msgstr "NUMERIC %d µÄ¾«¶È±ØÐëÔÚ 1 ºÍ %d Ö®¼ä"
 
-#: utils/adt/ri_triggers.c:2778
-msgid "internal error #12 in ri_triggers.c"
-msgstr ""
+#: gram.y:5627
+#, c-format
+msgid "NUMERIC scale %d must be between 0 and precision %d"
+msgstr "NUMERIC ÊýÖµ·¶Î§ %d ±ØÐëÔÚ 0 ºÍ¾«¶È %d Ö®¼ä"
 
-#: utils/adt/ri_triggers.c:2843
+#: gram.y:5655 gram.y:5670
 #, c-format
-msgid "unrecognized referential integrity MATCH type '%s'"
-msgstr ""
+msgid "DECIMAL precision %d must be between 1 and %d"
+msgstr "DECIMAL %d µÄ¾«¶È±ØÐëÔÚ 1 ºÍ %d Ö®¼ä"
 
-#: utils/adt/ri_triggers.c:2893 utils/adt/ri_triggers.c:2901
-#: utils/adt/ri_triggers.c:3218
+#: gram.y:5660
 #, c-format
-msgid "constraint %s: table %s does not have an attribute %s"
-msgstr ""
+msgid "DECIMAL scale %d must be between 0 and precision %d"
+msgstr "DECIMAL ÊýÖµ·¶Î§ %d ±ØÐëÔÚ 0 ºÍ¾«¶È %d Ö®¼ä"
 
-#: utils/adt/ri_triggers.c:2918
+#: gram.y:5720 gram.y:5798
 #, c-format
-msgid "%s() not fired by trigger manager"
-msgstr ""
+msgid "length for type %s must be at least 1"
+msgstr "ÀàÐÍ %s µÄ³¤¶ÈÖÁÉÙΪ 1"
 
-#: utils/adt/ri_triggers.c:2921
+#: gram.y:5725 gram.y:5803
 #, c-format
-msgid "%s() must be fired AFTER ROW"
-msgstr ""
+msgid "length for type %s cannot exceed %d"
+msgstr "ÀàÐÍ %s µÄ³¤¶È²»Äܳ¬¹ý %d"
 
-#: utils/adt/ri_triggers.c:2927
+#: gram.y:5876
 #, c-format
-msgid "%s() must be fired for INSERT"
-msgstr ""
+msgid "TIMESTAMP(%d)%s precision must not be negative"
+msgstr "TIMESTAMP(%d)%s ¾«È·¶È²»ÄÜΪ¸ºÊý"
 
-#: utils/adt/ri_triggers.c:2931
+#: gram.y:5882
 #, c-format
-msgid "%s() must be fired for UPDATE"
+msgid "TIMESTAMP(%d)%s precision reduced to maximum allowed, %d"
 msgstr ""
 
-#: utils/adt/ri_triggers.c:2936
+#: gram.y:5917
 #, c-format
-msgid "%s() must be fired for INSERT or UPDATE"
-msgstr ""
+msgid "TIME(%d)%s precision must not be negative"
+msgstr "TIME(%d)%s ¾«È·¶È²»ÄÜΪ¸ºÊý"
 
-#: utils/adt/ri_triggers.c:2941
+#: gram.y:5923
 #, c-format
-msgid "%s() must be fired for DELETE"
+msgid "TIME(%d)%s precision reduced to maximum allowed, %d"
 msgstr ""
 
-#: utils/adt/ri_triggers.c:3028
-msgid "SPI_execp() failed in ri_PerformCheck()"
+#: gram.y:6377
+msgid "UNIQUE predicate is not yet implemented"
 msgstr ""
 
-#: utils/adt/ri_triggers.c:3119
+#: gram.y:6612
 #, c-format
-msgid "%s referential action on %s from %s rewritten by rule"
-msgstr ""
+msgid "CURRENT_TIME(%d) precision must not be negative"
+msgstr "CURRENT_TIME(%d) ¾«È·¶È²»ÄÜΪ¸ºÊý"
 
-#: utils/adt/ri_triggers.c:3124
+#: gram.y:6618
 #, c-format
-msgid "%s referential integrity violation - no rows found in %s"
+msgid "CURRENT_TIME(%d) precision reduced to maximum allowed, %d"
 msgstr ""
 
-#: utils/adt/ri_triggers.c:3157
+#: gram.y:6666
 #, c-format
-msgid "%s referential action on %s from %s for (%s)=(%s) rewritten by rule"
-msgstr ""
+msgid "CURRENT_TIMESTAMP(%d) precision must not be negative"
+msgstr "CURRENT_TIMESTAMP(%d) ¾«È·¶È²»ÄÜΪ¸ºÊý"
 
-#: utils/adt/ri_triggers.c:3163
+#: gram.y:6672
 #, c-format
-msgid ""
-"%s referential integrity violation - key (%s)=(%s) referenced from %s not "
-"found in %s"
+msgid "CURRENT_TIMESTAMP(%d) precision reduced to maximum allowed, %d"
 msgstr ""
 
-#: utils/adt/ri_triggers.c:3168
+#: gram.y:6719
 #, c-format
-msgid ""
-"%s referential integrity violation - key (%s)=(%s) in %s still referenced "
-"from %s"
-msgstr ""
-
-#: utils/adt/ri_triggers.c:3346
-msgid "out of memory for RI plan cache"
-msgstr ""
+msgid "LOCALTIME(%d) precision must not be negative"
+msgstr "LOCALTIME(%d) ¾«È·¶È²»ÄÜΪ¸ºÊý"
 
-#: utils/adt/ri_triggers.c:3546
-msgid "out of memory for RI operator cache"
+#: gram.y:6725
+#, c-format
+msgid "LOCALTIME(%d) precision reduced to maximum allowed, %d"
 msgstr ""
 
-#: utils/adt/ruleutils.c:199
-msgid "get_ruledef: cannot connect to SPI manager"
-msgstr ""
+#: gram.y:6773
+#, c-format
+msgid "LOCALTIMESTAMP(%d) precision must not be negative"
+msgstr "LOCALTIMESTAMP(%d) ¾«È·¶È²»ÄÜΪ¸ºÊý"
 
-#: utils/adt/ruleutils.c:214 utils/adt/ruleutils.c:331
+#: gram.y:6779
 #, c-format
-msgid "SPI_prepare() failed for \"%s\""
+msgid "LOCALTIMESTAMP(%d) precision reduced to maximum allowed, %d"
 msgstr ""
 
-#: utils/adt/ruleutils.c:225
-#, fuzzy, c-format
-msgid "failed to get pg_rewrite tuple for %u"
-msgstr "ΪÊÓͼ %s »ñÈ¡ pg_rewrite Ôª×éʧ°Ü"
+#: gram.y:8007
+msgid "OLD used in query that is not in a rule"
+msgstr "²éѯÖÐʹÓõĠOLD ²»ÔÚÒ»¸ö¹æÔòÖÐ"
 
-#: utils/adt/ruleutils.c:229 utils/adt/ruleutils.c:254
-msgid "get_ruledef: SPI_finish() failed"
-msgstr ""
+#: gram.y:8016
+msgid "NEW used in query that is not in a rule"
+msgstr "²éѯÖÐʹÓõĠNEW ²»ÔÚÒ»¸ö¹æÔòÖÐ"
 
-#: utils/adt/ruleutils.c:315
-msgid "get_viewdef: cannot connect to SPI manager"
-msgstr ""
+#: y.tab.c:19192
+msgid "syntax error; also virtual memory exhausted"
+msgstr "Óï·¨´íÎó; ²¢ÇÒÐéÄâÄÚ´æºÄ¾¡"
 
-#: utils/adt/ruleutils.c:344
-#, fuzzy, c-format
-msgid "failed to get pg_rewrite tuple for view %u"
-msgstr "ΪÊÓͼ %s »ñÈ¡ pg_rewrite Ôª×éʧ°Ü"
+#: y.tab.c:19196 gram.y:8241 gram.y:8243
+msgid "syntax error"
+msgstr "Óï·¨´íÎó"
 
-#: utils/adt/ruleutils.c:367
-msgid "get_viewdef: SPI_finish() failed"
-msgstr ""
+#: y.tab.c:19295
+msgid "parser stack overflow"
+msgstr "Óï·¨·ÖÎöÆ÷Õ»Òç³ö"
 
-#: utils/adt/ruleutils.c:403
-#, c-format
-msgid "syscache lookup for index %u failed"
-msgstr ""
+#: gram.y:8215
+msgid "wrong number of parameters on left side of OVERLAPS expression"
+msgstr "OVERLAPS ±í´ïʽ×ó±ßµÄ²ÎÊý¸öÊý²»¶Ô"
 
-#: utils/adt/ruleutils.c:416
-#, c-format
-msgid "syscache lookup for relid %u failed"
+#: gram.y:8221
+msgid "wrong number of parameters on right side of OVERLAPS expression"
+msgstr "OVERLAPS ±í´ïʽÓұߵIJÎÊý¸öÊý²»¶Ô"
+
+#: gram.y:8300
+msgid "multiple ORDER BY clauses not allowed"
+msgstr "²»ÔÊÐí¶à¸ö ORDER BY ×Ó¾ä"
+
+#: gram.y:8308
+msgid "multiple FOR UPDATE clauses not allowed"
+msgstr "²»ÔÊÐí¶à¸ö FOR UPDATE ×Ó¾ä"
+
+#: gram.y:8316
+msgid "multiple OFFSET clauses not allowed"
+msgstr "²»ÔÊÐí¶à¸ö OFFSET ×Ó¾ä"
+
+#: gram.y:8324
+msgid "multiple LIMIT clauses not allowed"
+msgstr "²»ÔÊÐí¶à¸ö LIMIT ×Ó¾ä"
+
+#: scan.l:312
+msgid "unterminated /* comment"
+msgstr "/* ×¢ÊÍûÓнáÊø"
+
+#: scan.l:339
+msgid "unterminated bit string literal"
 msgstr ""
 
-#: utils/adt/ruleutils.c:578
-#, c-format
-msgid "Failed to find constraint with OID %u"
+#: scan.l:358
+msgid "unterminated hexadecimal string literal"
 msgstr ""
 
-#: utils/adt/ruleutils.c:598 utils/adt/ruleutils.c:714
-#, c-format
-msgid "pg_get_constraintdef: Null conkey for constraint %u"
+#: scan.l:407
+msgid "unterminated quoted string"
 msgstr ""
 
-#: utils/adt/ruleutils.c:611
-#, c-format
-msgid "pg_get_constraintdef: Null confkey for constraint %u"
+#: scan.l:441
+msgid "unterminated dollar-quoted string"
 msgstr ""
 
-#: utils/adt/ruleutils.c:631
-#, c-format
-msgid "pg_get_constraintdef: Unknown confmatchtype '%c' for constraint %u"
+#: scan.l:453
+msgid "zero-length delimited identifier"
 msgstr ""
 
-#: utils/adt/ruleutils.c:657
-#, c-format
-msgid "pg_get_constraintdef: Unknown confupdtype '%c' for constraint %u"
+#: scan.l:466
+msgid "unterminated quoted identifier"
 msgstr ""
 
-#: utils/adt/ruleutils.c:683
+#. translator: %s is typically "syntax error"
+#: scan.l:622
 #, c-format
-msgid "pg_get_constraintdef: Unknown confdeltype '%c' for constraint %u"
-msgstr ""
+msgid "%s at end of input"
+msgstr "%s ÔÚÊäÈëµÄĩβ"
 
-#: utils/adt/ruleutils.c:737
+#. translator: first %s is typically "syntax error"
+#: scan.l:630
 #, c-format
-msgid "pg_get_constraintdef: Null consrc for constraint %u"
-msgstr ""
+msgid "%s at or near \"%s\""
+msgstr "%s ÔÚ \"%s\" »ò¸½½üµÄ"
+
+#: parser/analyze.c:446
+msgid "CREATE VIEW specifies more column names than columns"
+msgstr "CREATE VIEW Ö¸¶¨µÄ×Ö¶ÎÃû±Èʵ¼Ê×ֶζà"
+
+#: parser/analyze.c:583
+msgid "INSERT ... SELECT may not specify INTO"
+msgstr "INSERT ... SELECT ²»±ØÖ¸¶¨ INTO"
+
+#: parser/analyze.c:671
+msgid "INSERT has more expressions than target columns"
+msgstr "INSERT µÄ±í´ïʽ¶àÓÚÖ¸¶¨µÄ×Ö¶ÎÊý"
+
+#: parser/analyze.c:692
+msgid "INSERT has more target columns than expressions"
+msgstr "INSERT µÄÖ¸¶¨×Ö¶ÎÊý¶àÓÚ±í´ïʽ"
 
-#: utils/adt/ruleutils.c:746
-#, fuzzy, c-format
-msgid "pg_get_constraintdef: unsupported constraint type '%c'"
-msgstr "pq_sendint: ²»Ö§³ÖµÄ³ß´ç %d"
+#: parser/analyze.c:865
+#, c-format
+msgid "%s will create implicit sequence \"%s\" for serial column \"%s.%s\""
+msgstr "%1$s ½«Îª serial ×ֶΠ\"%3$s.%4$s\" ´´½¨Òþº¬ÐòÁР\"%2$s\""
 
-#: utils/adt/ruleutils.c:1148
+#: parser/analyze.c:948 parser/analyze.c:958
 #, c-format
-msgid "get_ruledef: rule %s has unsupported event type %d"
-msgstr ""
+msgid ""
+"conflicting NULL/NOT NULL declarations for column \"%s\" of table \"%s\""
+msgstr "±í \"%2$s\" µÄ×ֶΠ\"%1$s\" ÉùÃ÷ NULL/NOT NULL ³åÍ»"
 
-#: utils/adt/ruleutils.c:1350
+#: parser/analyze.c:968
 #, c-format
-msgid "get_query_def: unknown query command type %d"
-msgstr ""
+msgid "multiple default values specified for column \"%s\" of table \"%s\""
+msgstr "¶Ô±í \"%2$s\" µÄ×ֶΠ\"%1$s\" Ö¸¶¨Á˶à±éĬÈÏÖµ"
 
-#: utils/adt/ruleutils.c:1585
+#: parser/analyze.c:1311
 #, c-format
-msgid "get_setop_query: unexpected set op %d"
-msgstr ""
+msgid "column \"%s\" appears twice in primary key constraint"
+msgstr "ÔÚÖ÷¼üÔ¼ÊøÖÐ×ֶΠ\"%s\" ³öÏÖÁËÁ½´Î"
 
-#: utils/adt/ruleutils.c:1597
+#: parser/analyze.c:1316
 #, c-format
-msgid "get_setop_query: unexpected node %d"
-msgstr ""
+msgid "column \"%s\" appears twice in unique constraint"
+msgstr "×ֶΠ\"%s\" ÔÚΨһԼÊøÖгöÏÖÁ½´Î"
 
-#: utils/adt/ruleutils.c:1657
-msgid "get_insert_query_def: too many RTEs in INSERT!"
-msgstr ""
+#: parser/analyze.c:1499
+msgid "index expression may not return a set"
+msgstr "Ë÷Òý±í´ïʽ²»ÄÜ·µ»ØÒ»¸ö×éºÏ"
 
-#: utils/adt/ruleutils.c:1809
-msgid "get_utility_query_def: unexpected statement type"
-msgstr ""
+#: parser/analyze.c:1591
+msgid "rule WHERE condition may not contain references to other relations"
+msgstr "¹æÔò WHERE Ìõ¼þ²»ÄÜ°üº¬ÆäËü¹ØϵµÄ¹ØÁª"
 
-#: utils/adt/ruleutils.c:1840
-#, c-format
-msgid "get_names_for_var: bogus varlevelsup %d"
-msgstr ""
+#: parser/analyze.c:1597
+msgid "rule WHERE condition may not contain aggregate functions"
+msgstr "¹æÔò WHERE Ìõ¼þ²»ÄÜ°üº¬¾Û¼¯º¯Êý"
 
-#: utils/adt/ruleutils.c:1854
-#, c-format
-msgid "get_names_for_var: bogus varno %d"
-msgstr ""
+#: parser/analyze.c:1668
+msgid ""
+"rules with WHERE conditions may only have SELECT, INSERT, UPDATE, or DELETE "
+"actions"
+msgstr "´ø WHERE Ìõ¼þµÄ¹æÔòÖ»ÔÊÐíÓРSELECT, INSERT, UPDATE, »òÕß DELETE ¶¯×÷"
+
+#: parser/analyze.c:1705
+msgid "ON SELECT rule may not use OLD"
+msgstr "ON SELECT ¹æÔò²»¿ÉÒÔʹÓàOLD"
 
-#: utils/adt/ruleutils.c:2140
-#, fuzzy, c-format
-msgid "get_rule_expr: unknown boolop %d"
-msgstr "_readExpr: δ֪ opType \"%.*s\""
+#: parser/analyze.c:1709
+msgid "ON SELECT rule may not use NEW"
+msgstr "ON SELECT ¹æÔò²»¿ÉÒÔʹÓàNEW"
 
-#: utils/adt/ruleutils.c:2174
-#, c-format
-msgid "Argument type %s of FieldSelect is not a tuple type"
+#: parser/analyze.c:1718
+msgid "ON INSERT rule may not use OLD"
+msgstr "ON INSERT ¹æÔò²»¿ÉÒÔʹÓàOLD"
+
+#: parser/analyze.c:1724
+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
+msgid "SELECT FOR UPDATE is not allowed with UNION/INTERSECT/EXCEPT"
+msgstr "SELECT FOR UPDATE ²»ÔÊÐí´ø UNION/INTERSECT/EXCEPT"
+
+#: parser/analyze.c:2056
+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
+msgid "INTO is only allowed on first SELECT of UNION/INTERSECT/EXCEPT"
+msgstr "INTO Ö»ÔÊÐíÔÚ UNION/INTERSECT/EXCEPT µÄµÚÒ»¸ö SELECT ÉÏʹÓÃ"
+
+#: parser/analyze.c:2155
+msgid ""
+"UNION/INTERSECT/EXCEPT member statement may not refer to other relations of "
+"same query level"
 msgstr ""
 
-#: utils/adt/ruleutils.c:2296
+#: parser/analyze.c:2210
 #, c-format
-msgid "get_rule_expr: unexpected nulltesttype %d"
-msgstr ""
+msgid "each %s query must have the same number of columns"
+msgstr "ÿһ¸ö %s ²éѯ±ØÐëÓÐÏàͬµÄ×ֶθöÊý"
 
-#: utils/adt/ruleutils.c:2329
-#, c-format
-msgid "get_rule_expr: unexpected booltesttype %d"
-msgstr ""
+#: parser/analyze.c:2282
+msgid "CREATE TABLE AS specifies too many column names"
+msgstr "CREATE TABLE AS Ö¸¶¨ÁËÌ«¶àµÄ×Ö¶ÎÃû×Ö"
 
-#: utils/adt/ruleutils.c:2367
-#, fuzzy, c-format
-msgid "get_rule_expr: unknown node type %d"
-msgstr "_readExpr: δ֪ opType \"%.*s\""
+#: parser/analyze.c:2569
+msgid "cannot specify both SCROLL and NO SCROLL"
+msgstr "²»¿Éͬʱָ¶¨ SCROLL ºÍ NO SCROLL"
 
-#: utils/adt/ruleutils.c:2408
+#: parser/analyze.c:2656
 #, c-format
-msgid "cache lookup for operator %u failed"
-msgstr ""
-
-#: utils/adt/ruleutils.c:2427
-msgid "get_rule_expr: bogus oprkind"
-msgstr ""
+msgid "wrong number of parameters for prepared statement \"%s\""
+msgstr "×¼±¸ºÃµÄÓï¾ä \"%s\" ²ÎÊý¸öÊý´íÎó"
 
-#: utils/adt/ruleutils.c:2791
+#: parser/analyze.c:2658
 #, c-format
-msgid "get_sublink_expr: unsupported sublink type %d"
-msgstr ""
+msgid "Expected %d parameters but got %d."
+msgstr "Ô¤¼Æ %d ¸ö²ÎÊý, µ«µÃµ½ÁË %d ¸ö."
 
-#: utils/adt/ruleutils.c:2884
-#, c-format
-msgid "unexpected rte kind %d"
-msgstr ""
+#: parser/analyze.c:2673
+msgid "cannot use subquery in EXECUTE parameter"
+msgstr "ÔÚ EXECUTE ²ÎÊýÖв»¿ÉÒÔʹÓÃ×Ó²éѯ"
 
-#: utils/adt/ruleutils.c:2956
-#, c-format
-msgid "get_from_clause_item: unknown join type %d"
-msgstr ""
+#: parser/analyze.c:2677
+msgid "cannot use aggregate function in EXECUTE parameter"
+msgstr "ÔÚ EXECUTE ²ÎÊýÖв»¿ÉÒÔʹÓþۼ¯º¯Êý"
 
-#: utils/adt/ruleutils.c:3006
+#: parser/analyze.c:2689
 #, c-format
-msgid "get_from_clause_item: unexpected node type %d"
-msgstr ""
+msgid "parameter $%d of type %s cannot be coerced to the expected type %s"
+msgstr "ÀàÐÍ %2$s µÄ²ÎÊý $%1$d ²»ÄÜÇ¿ÖƵ½Ô¤¼Æ (expected) ÀàÐÍ %3$s"
 
-#: utils/adt/ruleutils.c:3073 utils/cache/lsyscache.c:251
-#, c-format
-msgid "cache lookup failed for opclass %u"
-msgstr ""
+#: parser/analyze.c:2714
+msgid "SELECT FOR UPDATE is not allowed with DISTINCT clause"
+msgstr "SELECT FOR UPDATE ²»ÔÊÐí´ø DISTINCT ×Ó¾ä"
 
-#: utils/adt/ruleutils.c:3113
-msgid "tleIsArrayAssign: I'm confused ..."
-msgstr ""
+#: parser/analyze.c:2718
+msgid "SELECT FOR UPDATE is not allowed with GROUP BY clause"
+msgstr "SELECT FOR UPDATE ²»ÔÊÐí´ø GROUP BY ×Ó¾ä"
 
-#: utils/adt/ruleutils.c:3330
-#, fuzzy, c-format
-msgid "cache lookup of operator %u failed"
-msgstr "ÔÚ»º³åÖвéÕÒÀàÐÍ %u Ê§°Ü"
+#: parser/analyze.c:2722
+msgid "SELECT FOR UPDATE is not allowed with aggregate functions"
+msgstr "SELECT FOR UPDATE ²»ÔÊÐí´ø¾Û¼¯º¯Êý"
 
-#: utils/adt/ruleutils.c:3351
-#, c-format
-msgid "unexpected oprkind %c for operator %u"
-msgstr ""
+#: parser/analyze.c:2804
+msgid "SELECT FOR UPDATE cannot be applied to a join"
+msgstr "SELECT FOR UPDATE ²»ÄÜÊÊÓÃÓÚÒ»¸öÁªºÏ (join)"
 
-#: utils/adt/selfuncs.c:885
-#, c-format
-msgid "patternsel: no = operator for type %u"
-msgstr ""
+#: parser/analyze.c:2809
+msgid "SELECT FOR UPDATE cannot be applied to NEW or OLD"
+msgstr "SELECT FOR UPDATE ²»ÊÊÓÃÓÚ NEW »ò OLD"
 
-#: utils/adt/selfuncs.c:1065 utils/adt/selfuncs.c:1142
-#: utils/adt/selfuncs.c:1183 utils/adt/selfuncs.c:1213
-#, c-format
-msgid "booltestsel: unexpected booltesttype %d"
-msgstr ""
+#: parser/analyze.c:2814
+msgid "SELECT FOR UPDATE cannot be applied to a function"
+msgstr "SELECT FOR UPDATE ²»ÊÊÓÃÓÚÒ»¸öº¯Êý"
 
-#: utils/adt/selfuncs.c:1248 utils/adt/selfuncs.c:1302
+#: parser/analyze.c:2827
 #, c-format
-msgid "nulltestsel: unexpected nulltesttype %d"
+msgid "relation \"%s\" in FOR UPDATE clause not found in FROM clause"
 msgstr ""
 
-#: utils/adt/selfuncs.c:2395
-#, c-format
-msgid "convert_numeric_to_scalar: unsupported type %u"
-msgstr ""
+#: parser/analyze.c:2874
+msgid "misplaced DEFERRABLE clause"
+msgstr "DEFERRABLE ×Ó¾äλÖôíÎó"
 
-#: utils/adt/selfuncs.c:2582
-#, c-format
-msgid "convert_string_datum: unsupported type %u"
-msgstr ""
+#: parser/analyze.c:2878 parser/analyze.c:2891
+msgid "multiple DEFERRABLE/NOT DEFERRABLE clauses not allowed"
+msgstr "²»ÔÊÐí¶à¸ö DEFERRABLE/NOT DEFERRABLE ×Ó¾ä"
 
-#: utils/adt/selfuncs.c:2771
-#, c-format
-msgid "convert_timevalue_to_scalar: unsupported type %u"
-msgstr ""
+#: parser/analyze.c:2887
+msgid "misplaced NOT DEFERRABLE clause"
+msgstr "NOT DEFERRABLE ×Ó¾äλÖôíÎó"
 
-#: utils/adt/selfuncs.c:2998 utils/adt/selfuncs.c:3366
-msgid "Cannot perform case insensitive matching on type BYTEA"
-msgstr ""
+#: parser/analyze.c:2905
+msgid "misplaced INITIALLY DEFERRED clause"
+msgstr "INITIALLY DEFERRED ×Ó¾äλÖôíÎó"
 
-#: utils/adt/selfuncs.c:3083 utils/adt/selfuncs.c:3512
-msgid "Regex matching not supported on type BYTEA"
-msgstr ""
+#: parser/analyze.c:2909 parser/analyze.c:2933
+msgid "multiple INITIALLY IMMEDIATE/DEFERRED clauses not allowed"
+msgstr "²»ÔÊÐí¶à¸ö INITIALLY IMMEDIATE/DEFERRED ×Ó¾ä"
 
-#: utils/adt/selfuncs.c:3224
-msgid "pattern_fixed_prefix: bogus ptype"
-msgstr ""
+#: parser/analyze.c:2929
+msgid "misplaced INITIALLY IMMEDIATE clause"
+msgstr "INITIALLY IMMEDIATE ×Ó¾äλÖôíÎó"
 
-#: utils/adt/selfuncs.c:3253
+#: parser/analyze.c:2982
 #, c-format
-msgid "prefix_selectivity: no >= operator for type %u"
-msgstr ""
+msgid ""
+"CREATE specifies a schema (%s) different from the one being created (%s)"
+msgstr "CREATE Ö¸¶¨µÄģʽ (%s) ºÍ½«Òª´´½¨µÄ (%s) ²»Í¬"
 
-#: utils/adt/selfuncs.c:3284
-#, c-format
-msgid "prefix_selectivity: no < operator for type %u"
+#: parser/parse_expr.c:361
+msgid "NULLIF requires = operator to yield boolean"
 msgstr ""
 
-#: utils/adt/selfuncs.c:3556
-msgid "pattern_selectivity: bogus ptype"
-msgstr ""
+#: parser/parse_expr.c:486
+msgid "subquery must return a column"
+msgstr "×Ó²éѯ±ØÐë·µ»ØÒ»¸ö×Ö¶Î"
 
-#: utils/adt/selfuncs.c:3722
-#, c-format
-msgid "string_lessthan: unexpected datatype %u"
-msgstr ""
+#: parser/parse_expr.c:492
+msgid "subquery must return only one column"
+msgstr "×Ó²éѯ±ØÐëÖ»ÄÜ·µ»ØÒ»¸ö×Ö¶Î"
 
-#: utils/adt/sets.c:86
+#: parser/parse_expr.c:549
 #, c-format
-msgid "SetDefine: unable to define set %s"
-msgstr ""
+msgid "row comparison cannot use operator %s"
+msgstr "ÐбȽϲ»ÄÜʹÓòÙ×÷·û %s"
 
-#: utils/adt/tid.c:62
-#, c-format
-msgid "invalid tid format: '%s'"
-msgstr "ÎÞЧ tid ¸ñʽ: '%s'"
+#: parser/parse_expr.c:576
+msgid "subquery has too many columns"
+msgstr "×Ó²éѯÓÐÌ«¶àµÄ×Ö¶Î"
 
-#: utils/adt/tid.c:67 utils/adt/tid.c:72
-#, fuzzy
-msgid "tidin: invalid value."
-msgstr "%s µÄÎÞЧÊýÖµ '%s'"
+#: parser/parse_expr.c:594
+#, c-format
+msgid "operator %s must return type boolean, not type %s"
+msgstr "²Ù×÷·û %s ±ØÐè·µ»Ø²¼¶ûÀàÐÍ, ¶ø²»ÊÇ %s ÀàÐÍ"
 
-#: utils/adt/tid.c:171
-msgid "ctid isn't of type TID"
+#: parser/parse_expr.c:597 parser/parse_expr.c:604
+msgid ""
+"The operator of a quantified predicate subquery must return type boolean."
 msgstr ""
 
-#: utils/adt/tid.c:176
-msgid "currtid can't handle views with no CTID"
-msgstr ""
+#: parser/parse_expr.c:602
+#, c-format
+msgid "operator %s must not return a set"
+msgstr "²Ù×÷·û %s ²»ÄÜ·µ»ØÒ»¸ö×éºÏ"
 
-#: utils/adt/tid.c:178
-msgid "the view has no rules"
-msgstr ""
+#: parser/parse_expr.c:614
+msgid "subquery has too few columns"
+msgstr "×Ó²éѯ×Ö¶ÎÌ«ÉÙ"
 
-#: utils/adt/tid.c:188
-#, fuzzy
-msgid "only one select rule is allowed in views"
-msgstr "Ö»ÔÊÐíÒ»¸ö -x ±êÖ¾"
+#: parser/parse_expr.c:1157 parser/parse_target.c:726 catalog/namespace.c:1195
+#, c-format
+msgid "cross-database references are not implemented: %s"
+msgstr "δʵÏÖ¿çÊý¾Ý¿â¹ØÁª: %s"
 
-#: utils/adt/tid.c:209
-msgid "currtid can't handle this view"
+#: parser/parse_expr.c:1688 parser/parse_expr.c:1767
+msgid "unequal number of entries in row expression"
 msgstr ""
 
-#: utils/adt/timestamp.c:80
+#: parser/parse_expr.c:1709
 #, c-format
-msgid "Bad timestamp external representation (too long) '%s'"
+msgid "operator %s is not supported for row expressions"
+msgstr "Ðбí´ïʽ²»Ö§³Ö²Ù×÷·û %s"
+
+#: parser/parse_expr.c:1804
+msgid "IS DISTINCT FROM requires = operator to yield boolean"
 msgstr ""
 
-#: utils/adt/timestamp.c:84 utils/adt/timestamp.c:261
+#: parser/parse_func.c:88
 #, c-format
-msgid "Bad timestamp external representation '%s'"
-msgstr ""
+msgid "cannot pass more than %d arguments to a function"
+msgstr "Ò»¸öº¯Êý²»Äܳ¬¹ý %d ¸ö²ÎÊý"
 
-#: utils/adt/timestamp.c:90
-#, fuzzy, c-format
-msgid "TIMESTAMP out of range '%s'"
-msgstr "Timestamp ³¬³ö·¶Î§ '%s'"
+#: parser/parse_func.c:165
+#, c-format
+msgid "%s(*) specified, but %s is not an aggregate function"
+msgstr "Ö¸¶¨ÁË %s(*), µ«ÊÇ %s ²»ÊÇÒ»¸ö¾Û¼¯º¯Êý"
 
-#: utils/adt/timestamp.c:106
+#: parser/parse_func.c:171
 #, c-format
-msgid "TIMESTAMP '%s' no longer supported"
-msgstr ""
+msgid "DISTINCT specified, but %s is not an aggregate function"
+msgstr "Ö¸¶¨ÁË DISTINCT, µ«ÊÇ %s ²»ÊÇÒ»¸ö¾Û¼¯º¯Êý"
 
-#: utils/adt/timestamp.c:111
+#: parser/parse_func.c:195
 #, c-format
-msgid "TIMESTAMP '%s' not parsed; internal coding error"
-msgstr ""
+msgid "function %s is not unique"
+msgstr "º¯Êý %s ²»ÊÇΨһµÄ"
 
-#: utils/adt/timestamp.c:139
-msgid "Unable to format timestamp; internal coding error"
-msgstr ""
+#: parser/parse_func.c:198
+msgid ""
+"Could not choose a best candidate function. You may need to add explicit "
+"type casts."
+msgstr "ÎÞ·¨Ñ¡Ôñ×î¼ÑºòÑ¡º¯Êý. ÄãÒ²ÐíÐèÒªÔö¼ÓÃ÷È·µÄÀàÐÍת»»."
 
-#: utils/adt/timestamp.c:203
-#, c-format
-msgid "TIMESTAMP(%d) precision must be between %d and %d"
-msgstr ""
+#: parser/parse_func.c:206
+msgid ""
+"No function matches the given name and argument types. You may need to add "
+"explicit type casts."
+msgstr "ûÓÐÆ¥ÅäÖ¸¶¨Ãû³ÆºÍ²ÎÊýÀàÐ͵ĺ¯Êý. ÄãÒ²ÐíÐèÒªÔö¼ÓÃ÷È·µÄÀàÐÍת»»."
 
-#: utils/adt/timestamp.c:256
-#, c-format
-msgid "Bad timestamp with time zone external representation (too long) '%s'"
-msgstr ""
+#: parser/parse_func.c:255
+msgid "aggregates may not return sets"
+msgstr "¾Û¼¯º¯Êý¿ÉÒÔ²»·µ»Ø×éºÏ"
 
-#: utils/adt/timestamp.c:267
+#: parser/parse_func.c:1208
 #, c-format
-msgid "TIMESTAMP WITH TIME ZONE out of range '%s'"
-msgstr ""
+msgid "column %s.%s does not exist"
+msgstr "×ֶΠ%s.%s ²»´æÔÚ"
 
-#: utils/adt/timestamp.c:283
+#: parser/parse_func.c:1219 parser/parse_target.c:497
 #, c-format
-msgid "TIMESTAMP WITH TIME ZONE '%s' no longer supported"
-msgstr ""
+msgid "column \"%s\" not found in data type %s"
+msgstr "ÔÚÊý¾ÝÀàÐÍ %2$s ÖÐδÕÒµ½×ֶΠ\"%1$s\""
 
-#: utils/adt/timestamp.c:288
+#: parser/parse_func.c:1224
 #, c-format
-msgid "TIMESTAMP WITH TIME ZONE '%s' not parsed; internal coding error"
-msgstr ""
+msgid "could not identify column \"%s\" in record data type"
+msgstr "ÔڼǼÊý¾ÝÀàÐÍÖÐÎÞ·¨È·ÈÏ×ֶΠ\"%s\""
 
-#: utils/adt/timestamp.c:317
-msgid "Unable to format timestamp with time zone; internal coding error"
+#: parser/parse_func.c:1229
+#, c-format
+msgid "column notation .%s applied to type %s, which is not a composite type"
 msgstr ""
 
-#: utils/adt/timestamp.c:376
+#: parser/parse_func.c:1301
 #, c-format
-msgid "Bad interval external representation (too long) '%s'"
-msgstr ""
+msgid "aggregate %s(*) does not exist"
+msgstr "¾Û¼¯º¯Êý %s(*) ²»´æÔÚ"
 
-#: utils/adt/timestamp.c:380 utils/adt/timestamp.c:388
+#: parser/parse_func.c:1306
 #, c-format
-msgid "Bad interval external representation '%s'"
-msgstr ""
+msgid "aggregate %s(%s) does not exist"
+msgstr "¾Û¼¯º¯Êý %s(%s) ²»´æÔÚ"
 
-#: utils/adt/timestamp.c:393
+#: parser/parse_func.c:1327
 #, c-format
-msgid "Interval '%s' no longer supported"
-msgstr ""
+msgid "function %s(%s) is not an aggregate"
+msgstr "º¯Êý %s(%s) ²»ÊÇÒ»¸ö¾Û¼¯º¯Êý"
 
-#: utils/adt/timestamp.c:397
+#: parser/parse_node.c:95
 #, c-format
-msgid "Interval '%s' not parsed; internal coding error"
-msgstr ""
+msgid "cannot subscript type %s because it is not an array"
+msgstr "ÎÞ·¨Ï±êÀàÐÍ %s, ÒòΪËü²»ÊÇÒ»¸öÊý×é"
 
-#: utils/adt/timestamp.c:417
-msgid "Unable to encode interval; internal coding error"
-msgstr ""
+#: parser/parse_node.c:198 parser/parse_node.c:221
+msgid "array subscript must have type integer"
+msgstr "Êý×éϱê±ØÐëΪÕûÊýÀàÐÍ"
 
-#: utils/adt/timestamp.c:420
-msgid "Unable to format interval; internal coding error"
+#: parser/parse_node.c:243
+#, c-format
+msgid "array assignment requires type %s but expression is of type %s"
 msgstr ""
 
-#: utils/adt/timestamp.c:668
-msgid "AdjustIntervalForTypmod(): internal coding error"
+#: parser/parse_oper.c:249 parser/parse_oper.c:314
+#, c-format
+msgid "could not identify an ordering operator for type %s"
 msgstr ""
 
-#: utils/adt/timestamp.c:1491
-msgid "Unable to subtract non-finite timestamps"
+#: parser/parse_oper.c:251 parser/parse_oper.c:316
+msgid "Use an explicit ordering operator or modify the query."
 msgstr ""
 
-#: utils/adt/timestamp.c:1553
-msgid ""
-"Unable to add TIMESTAMP and INTERVAL\n"
-"\ttimestamp_pl_span() internal error encoding timestamp"
-msgstr ""
+#: parser/parse_oper.c:584
+#, c-format
+msgid "operator requires run-time type coercion: %s"
+msgstr "²Ù×÷·ûÐèÒªÔËÐÐʱÀàÐÍÇ¿ÖÆ: %s"
 
-#: utils/adt/timestamp.c:1560
-msgid ""
-"Unable to add TIMESTAMP and INTERVAL\n"
-"\ttimestamp_pl_span() internal error decoding timestamp"
-msgstr ""
+#: parser/parse_oper.c:778
+#, c-format
+msgid "operator is not unique: %s"
+msgstr "²Ù×÷·û²»ÊÇΨһµÄ: %s"
 
-#: utils/adt/timestamp.c:1638
+#: parser/parse_oper.c:780
 msgid ""
-"Unable to add TIMESTAMP and INTERVAL\n"
-"\ttimestamptz_pl_span() internal error encoding timestamp"
-msgstr ""
+"Could not choose a best candidate operator. You may need to add explicit "
+"type casts."
+msgstr "ÎÞ·¨Ñ¡Ôñ×î¼ÑºòÑ¡²Ù×÷·û. ÄãÒ²ÐíÐèÒªÔö¼ÓÃ÷È·µÄÀàÐÍת»»."
 
-#: utils/adt/timestamp.c:1643
+#: parser/parse_oper.c:787
 msgid ""
-"Unable to add TIMESTAMP and INTERVAL\n"
-"\ttimestamptz_pl_span() internal error decoding timestamp"
-msgstr ""
-
-#: utils/adt/timestamp.c:1917
-msgid "interval_accum: expected 2-element interval array"
-msgstr ""
-
-#: utils/adt/timestamp.c:1959
-msgid "interval_avg: expected 2-element interval array"
-msgstr ""
+"No operator matches the given name and argument type(s). You may need to add "
+"explicit type casts."
+msgstr "ûÓÐÆ¥ÅäÖ¸¶¨Ãû³ÆºÍ²ÎÊýÀàÐ͵IJÙ×÷·û. ÄãÒ²ÐíÐèÒªÔö¼ÓÃ÷È·µÄÀàÐÍת»»."
 
-#: utils/adt/timestamp.c:2081
-msgid ""
-"Unable to encode INTERVAL\n"
-"\ttimestamp_age() internal coding error"
+#: parser/parse_oper.c:877
+msgid "op ANY/ALL (array) requires array on right side"
 msgstr ""
 
-#: utils/adt/timestamp.c:2085
-msgid ""
-"Unable to decode TIMESTAMP\n"
-"\ttimestamp_age() internal coding error"
+#: parser/parse_oper.c:906
+msgid "op ANY/ALL (array) requires operator to yield boolean"
 msgstr ""
 
-#: utils/adt/timestamp.c:2190 utils/adt/timestamp.c:2193
-msgid "Unable to decode TIMESTAMP"
+#: parser/parse_oper.c:910
+msgid "op ANY/ALL (array) requires operator not to return a set"
 msgstr ""
 
-#: utils/adt/timestamp.c:2246
-msgid "TIMESTAMP bad external representation (too long)"
-msgstr ""
+#: parser/parse_target.c:269 parser/parse_target.c:502
+#, c-format
+msgid "cannot assign to system column \"%s\""
+msgstr "²»ÄÜÖ¸¶¨ÏµÍ³×Ö¶ÎÃû \"%s\""
 
-#: utils/adt/timestamp.c:2302
-msgid "TIMESTAMP WITH TIME ZONE bad external representation (too long)"
-msgstr ""
+#: parser/parse_target.c:293
+msgid "cannot set an array element to DEFAULT"
+msgstr "²»ÄÜÉèÖÃÒ»¸öÊý×éÔªËØΪ DEFAULT"
 
-#: utils/adt/timestamp.c:2359
-msgid "INTERVAL bad external representation (too long)"
-msgstr ""
+#: parser/parse_target.c:297
+msgid "cannot set a subfield to DEFAULT"
+msgstr "²»ÄÜÉèÖÃ×Ó×Ö¶ÎΪ DEFAULT"
 
-#: utils/adt/timestamp.c:2392 utils/adt/timestamp.c:2456
-#: utils/adt/timestamp.c:2756 utils/adt/timestamp.c:2911
+#: parser/parse_target.c:358
 #, c-format
-msgid "TIMESTAMP units '%s' not recognized"
-msgstr "TIMESTAMP µ¥Î» '%s' ²»±»ÈÏ¿É"
+msgid "column \"%s\" is of type %s but expression is of type %s"
+msgstr "×ֶΠ\"%s\" µÄÀàÐÍΪ %s, µ«±í´ïʽµÄÀàÐÍΪ %s"
 
-#: utils/adt/timestamp.c:2447 utils/adt/timestamp.c:2859
-#: utils/adt/timestamp.c:2904
+#: parser/parse_target.c:490
 #, c-format
-msgid "TIMESTAMP units '%s' not supported"
-msgstr "²»Ö§³Ö '%s' µÄ TIMESTAMP µ¥Î»"
+msgid "cannot assign to a column of type %s because it is not a composite type"
+msgstr "ÎÞ·¨Ö¸¶¨×Ö¶ÎÀàÐÍ %s, ÒòΪËü²»ÊÇÒ»¸ö¸´ºÏÀàÐÍ"
 
-#: utils/adt/timestamp.c:2452
+#: parser/parse_target.c:566
 #, c-format
-msgid "Unable to truncate TIMESTAMP to '%s'"
+msgid ""
+"array assignment to \"%s\" requires type %s but expression is of type %s"
 msgstr ""
 
-#: utils/adt/timestamp.c:2485 utils/adt/timestamp.c:2550
-#: utils/adt/timestamp.c:2941 utils/adt/timestamp.c:3094
+#: parser/parse_target.c:575
 #, c-format
-msgid "TIMESTAMP WITH TIME ZONE units '%s' not recognized"
-msgstr ""
+msgid "subfield \"%s\" is of type %s but expression is of type %s"
+msgstr "×Ó×ֶΠ\"%s\" µÄÀàÐÍΪ %s, µ«±í´ïʽµÄÀàÐÍΪ %s"
 
-#: utils/adt/timestamp.c:2539 utils/adt/timestamp.c:3055
-#: utils/adt/timestamp.c:3088
-#, fuzzy, c-format
-msgid "TIMESTAMP WITH TIME ZONE units '%s' not supported"
-msgstr "²»Ö§³Öµ¥Î»Îª '%s' µÄʱ¼ä¼ä¸ô"
+#: parser/parse_target.c:804
+msgid "SELECT * with no tables specified is not valid"
+msgstr "SELECT * Ã»ÓÐÖ¸¶¨±íÊÇÎÞЧµÄ"
 
-#: utils/adt/timestamp.c:2546
+#: parser/parse_type.c:62
 #, c-format
-msgid "Unable to truncate TIMESTAMP WITH TIME ZONE to '%s'"
-msgstr ""
+msgid "improper %%TYPE reference (too few dotted names): %s"
+msgstr "²»ºÏÊʵĠ%%TYPE ¹ØÁª (Ãû×ÖÖеã·ûºÅÌ«ÉÙ): %s"
 
-#: utils/adt/timestamp.c:2579 utils/adt/timestamp.c:2647
-#: utils/adt/timestamp.c:3122 utils/adt/timestamp.c:3231
+#: parser/parse_type.c:83
 #, c-format
-msgid "INTERVAL units '%s' not recognized"
-msgstr ""
-
-#: utils/adt/timestamp.c:2632 utils/adt/timestamp.c:3202
-#, fuzzy, c-format
-msgid "INTERVAL units '%s' not supported"
-msgstr "²»Ö§³Öµ¥Î»Îª '%s' µÄʱ¼ä¼ä¸ô"
+msgid "improper %%TYPE reference (too many dotted names): %s"
+msgstr "²»ºÏÊʵĠ%%TYPE ¹ØÁª (Ãû×ÖÖÐÌ«¶àµã·ûºÅ): %s"
 
-#: utils/adt/timestamp.c:2636
+#: parser/parse_type.c:103
 #, c-format
-msgid "Unable to truncate INTERVAL to '%s'"
-msgstr ""
-
-#: utils/adt/timestamp.c:2641
-msgid "Unable to decode INTERVAL; internal coding error"
-msgstr ""
-
-#: utils/adt/timestamp.c:2669
-msgid "isoweek2date(): can't convert without year information"
-msgstr ""
+msgid "type reference %s converted to %s"
+msgstr "ÀàÐ͹ØÁª %s ×ª»»Îª %s"
 
-#: utils/adt/timestamp.c:2874 utils/adt/timestamp.c:3339
-msgid "Unable to convert TIMESTAMP to TIMESTAMP WITH TIME ZONE (tm)"
-msgstr ""
+#: parser/parse_type.c:372 parser/parse_type.c:467
+#, c-format
+msgid "invalid type name \"%s\""
+msgstr "ÎÞЧµÄÀàÐÍÃû×Ö \"%s\""
 
-#: utils/adt/timestamp.c:2879 utils/adt/timestamp.c:3344
-msgid "Unable to convert TIMESTAMP to TIMESTAMP WITH TIME ZONE"
-msgstr ""
+#: optimizer/path/allpaths.c:224
+msgid "SELECT FOR UPDATE is not supported for inheritance queries"
+msgstr "SELECT FOR UPDATE ²»Ö§³Ö¼Ì³Ð²éѯ"
 
-#: utils/adt/timestamp.c:2890 utils/adt/timestamp.c:2897
-msgid "Unable to encode TIMESTAMP"
+#: optimizer/path/joinpath.c:839 executor/nodeMergejoin.c:1491
+msgid "FULL JOIN is only supported with merge-joinable join conditions"
 msgstr ""
 
-#: utils/adt/timestamp.c:3074 utils/adt/timestamp.c:3081
-msgid "Unable to encode TIMESTAMP WITH TIME ZONE"
-msgstr ""
+#: optimizer/plan/initsplan.c:282 optimizer/prep/prepjointree.c:366
+msgid "UNION JOIN is not implemented"
+msgstr "UNION JOIN Î´ÊµÏÖ"
 
-#: utils/adt/timestamp.c:3211
+#: optimizer/plan/initsplan.c:339
 msgid ""
-"Unable to decode INTERVAL\n"
-"\tinterval_part() internal coding error"
-msgstr ""
-
-#: utils/adt/timestamp.c:3369
-msgid "Unable to convert TIMESTAMP WITH TIME ZONE to TIMESTAMP (tm)"
-msgstr ""
-
-#: utils/adt/timestamp.c:3372
-msgid "Unable to convert TIMESTAMP WITH TIME ZONE to TIMESTAMP"
+"SELECT FOR UPDATE cannot be applied to the nullable side of an outer join"
 msgstr ""
 
-#: utils/adt/varbit.c:106 utils/adt/varbit.c:230
+#: optimizer/plan/initsplan.c:743
 #, c-format
-msgid "Bit string length %d does not match type BIT(%d)"
-msgstr ""
+msgid "could not identify an equality operator for types %s and %s"
+msgstr "ÎÞ·¨ÎªÀàÐÍ %s ºÍ %s È·ÈÏÒ»¸öµÈºÅ²Ù×÷·û"
 
-#: utils/adt/varbit.c:126 utils/adt/varbit.c:333
+#: optimizer/plan/initsplan.c:756
 #, c-format
-msgid "Cannot parse '%c' as a binary digit"
-msgstr ""
+msgid ""
+"equality operator for types %s and %s should be merge-joinable, but isn't"
+msgstr "ÀàÐÍ %s ºÍ %s µÄµÈºÅ²Ù×÷·ûÓ¦¸ÃΪ¿ÉºÏ²¢ÁªºÏµÄ, µ«Õâ¸ö²»ÊÇ"
 
-#: utils/adt/varbit.c:147 utils/adt/varbit.c:354
-#, c-format
-msgid "Cannot parse '%c' as a hex digit"
-msgstr ""
+#: optimizer/plan/planner.c:682
+msgid "SELECT FOR UPDATE is not allowed in subqueries"
+msgstr "SELECT FOR UPDATE ²»ÔÊÐíÔÚ×Ó²éѯÖÐ"
 
-#: utils/adt/varbit.c:313 utils/adt/varbit.c:433
+#: optimizer/util/clauses.c:2295
 #, c-format
-msgid "Bit string too long for type BIT VARYING(%d)"
-msgstr ""
-
-#: utils/adt/varbit.c:803
-msgid "Cannot AND bit strings of different sizes"
+msgid "SQL function \"%s\" during inlining"
 msgstr ""
 
-#: utils/adt/varbit.c:841
-msgid "Cannot OR bit strings of different sizes"
-msgstr ""
+#: executor/execQual.c:811
+msgid "functions and operators can take at most one set argument"
+msgstr "º¯ÊýºÍ²Ù×÷·û×î¶à´øÒ»×é²ÎÊý"
 
-#: utils/adt/varbit.c:885
-msgid "Cannot XOR bit strings of different sizes"
-msgstr ""
+#: executor/execQual.c:1288
+msgid "function returning row cannot return null value"
+msgstr "º¯Êý·µ»ØÐв»ÄÜ·µ»Ø¿ÕÖµ"
 
-#: utils/adt/varbit.c:1100
-msgid "Bit string is too large to fit in type integer"
+#: executor/execQual.c:1371
+msgid "table-function protocol for materialize mode was not followed"
 msgstr ""
 
-#: utils/adt/varbit.c:1144 utils/adt/varbit.c:1171
-msgid "INT64 is not supported on this platform"
-msgstr "ÔÚ´Ëƽ̨Éϲ»Ö§³Ö INT64"
+#: executor/execQual.c:1378
+#, c-format
+msgid "unrecognized table-function returnMode: %d"
+msgstr "δÈÏ¿ÉµÄ±íº¯Êý·µ»Øģʽ (returnMode): %d"
 
-#: utils/adt/varbit.c:1159
-msgid "Bit string is too large to fit in type int64"
-msgstr ""
+#: executor/execQual.c:1495
+msgid "IS DISTINCT FROM does not support set arguments"
+msgstr "IS DISTINCT FROM ²»Ö§³ÖÒ»×é²ÎÊý"
 
-#: utils/adt/varbit.c:1251
-#, c-format
-msgid "S. %d %d em=%2x sm=%2x r=%d"
+#: executor/execQual.c:1569
+msgid "op ANY/ALL (array) does not support set arguments"
 msgstr ""
 
-#: utils/adt/varchar.c:107 utils/adt/varchar.c:213
-#, c-format
-msgid "value too long for type character(%d)"
-msgstr ""
+#: executor/execQual.c:2016
+msgid "cannot merge incompatible arrays"
+msgstr "ÎÞ·¨ºÏ²¢²»¼æÈݵÄÅÅÁÐ"
 
-#: utils/adt/varchar.c:369 utils/adt/varchar.c:447
+#: executor/execQual.c:2017
 #, c-format
-msgid "value too long for type character varying(%d)"
+msgid ""
+"Array with element type %s cannot be included in ARRAY construct with "
+"element type %s."
 msgstr ""
 
-#: utils/adt/varlena.c:108 utils/adt/varlena.c:146
-msgid "Bad input string for type bytea"
-msgstr ""
+#: executor/execQual.c:2216
+msgid "NULLIF does not support set arguments"
+msgstr "NULLIF ²»Ö§³ÖÒ»×é²ÎÊý"
 
-#: utils/adt/varlena.c:338 utils/adt/varlena.c:621 utils/adt/varlena.c:724
-msgid "Invalid backend encoding; encoding max length is less than one."
-msgstr ""
+#: executor/execQual.c:2397
+#, c-format
+msgid "domain %s does not allow null values"
+msgstr "Óò %s ²»ÔÊÐí¿ÕÖµ"
 
-#: utils/adt/varlena.c:485 utils/adt/varlena.c:547 utils/adt/varlena.c:1055
-msgid "negative substring length not allowed"
-msgstr ""
+#: executor/execQual.c:2427
+#, c-format
+msgid "value for domain %s violates check constraint \"%s\""
+msgstr "Óò %s µÄֵΥ·´Á˼ì²éÔ¼Êø \"%s\""
 
-#: utils/adt/varlena.c:1148
+#: executor/execQual.c:3031
 #, c-format
-msgid "byteaGetByte: index %d out of range [0..%d]"
+msgid "ROW() column has type %s instead of type %s"
 msgstr ""
 
-#: utils/adt/varlena.c:1177
+#: executor/nodeHashjoin.c:562 executor/nodeHashjoin.c:572
 #, c-format
-msgid "byteaGetBit: index %d out of range [0..%d]"
-msgstr ""
+msgid "could not read from hash-join temporary file: %m"
+msgstr "ÎÞ·¨´ÓÉ¢ÁÐÁª½Ó (hash-join) ÁÙʱÎļþ¶ÁÈ¡: %m"
 
-#: utils/adt/varlena.c:1211
+#: executor/nodeHashjoin.c:630 executor/nodeHashjoin.c:637
 #, c-format
-msgid "byteaSetByte: index %d out of range [0..%d]"
-msgstr ""
+msgid "could not rewind hash-join temporary file: %m"
+msgstr "ÎÞ·¨¾í»Ø (rewind) É¢ÁÐÁª½Ó (hash-join) ÁÙʱÎļþ: %m"
 
-#: utils/adt/varlena.c:1252
+#: executor/nodeHashjoin.c:688 executor/nodeHashjoin.c:693
 #, c-format
-msgid "byteaSetBit: index %d out of range [0..%d]"
-msgstr ""
+msgid "could not write to hash-join temporary file: %m"
+msgstr "ÎÞ·¨Ð´ÈëÉ¢ÁÐÁª½Ó (hash-join) ÁÙʱÎļþ: %m"
 
-#: utils/adt/varlena.c:1262
-msgid "byteaSetBit: new bit must be 0 or 1"
-msgstr ""
+#: executor/spi.c:185
+msgid "transaction left non-empty SPI stack"
+msgstr "ÊÂÎïʣϷǿյĠSPI Õ»"
 
-#: utils/adt/varlena.c:1753
-msgid "field position must be > 0"
+#: executor/spi.c:186 executor/spi.c:237
+msgid "Check for missing \"SPI_finish\" calls"
 msgstr ""
 
-#: utils/fmgr/dfmgr.c:97
-#, c-format
-msgid "stat failed on file '%s': %m"
-msgstr "¼ì²âÎļþ '%s' µÄ״̬ʧ°Ü: %m"
+#: executor/spi.c:236
+msgid "subtransaction left non-empty SPI stack"
+msgstr "×ÓÊÂÎïʣϷǿյĠSPI Õ»"
+
+#: executor/spi.c:775
+msgid "cannot open multi-query plan as cursor"
+msgstr "ÎÞ·¨×÷ΪÓαê´ò¿ª¶àÌõ²éѯ¹æ»®"
 
-#: utils/fmgr/dfmgr.c:114
-msgid "Out of memory in load_external_function"
-msgstr "ÔÚ load_external_function ÄÚ´æÒç³ö"
+#: executor/spi.c:782
+msgid "cannot open non-SELECT query as cursor"
+msgstr "ÎÞ·¨×÷ΪÓαê´ò¿ª·Ç SELECT ²éѯ"
 
-#: utils/fmgr/dfmgr.c:127
-#, c-format
-msgid "Load of file %s failed: %s"
-msgstr "×°ÔØÎļþ %s Ê§°Ü: %s"
+#: executor/spi.c:786
+msgid "cannot open SELECT INTO query as cursor"
+msgstr "ÎÞ·¨×÷ΪÓαê´ò¿ª SELECT INTO ²éѯ"
 
-#: utils/fmgr/dfmgr.c:154
+#: executor/spi.c:1503
 #, c-format
-msgid "Can't find function %s in file %s"
-msgstr "ÔÚÎļþ %2$s ÖÐÎÞ·¨ÕÒµ½º¯Êý %1$s"
+msgid "SQL query \"%s\""
+msgstr "SQL ²éѯ \"%s\""
 
-#: utils/fmgr/dfmgr.c:184
+#: executor/functions.c:169
 #, c-format
-msgid "LOAD: could not open file '%s': %m"
-msgstr "LOAD: ÎÞ·¨´ò¿ªÎļþ '%s': %m"
+msgid ""
+"could not determine actual result type for function declared to return type %"
+"s"
+msgstr "ÎÞ·¨È·¶¨Êµ¼Ê½á¹ûÀàÐÍΪº¯ÊýÉùÃ÷·µ»ØÀàÐÍ %s"
 
-#: utils/fmgr/dfmgr.c:239
+#: executor/functions.c:219
 #, c-format
-msgid "stat failed on %s: %s"
-msgstr "̽²â %s ×´Ì¬Ê§°Ü: %s"
-
-#: utils/fmgr/dfmgr.c:334
-msgid "invalid macro name in dynamic library path"
+msgid "could not determine actual type of argument declared %s"
 msgstr ""
 
-#: utils/fmgr/dfmgr.c:384
-msgid "zero length dynamic_library_path component"
+#: executor/functions.c:296
+msgid "cannot begin/end transactions in SQL functions"
 msgstr ""
 
-#: utils/fmgr/dfmgr.c:395
-msgid "dynamic_library_path component is not absolute"
-msgstr ""
-
-#: utils/fmgr/dfmgr.c:401
+#: executor/functions.c:689
 #, c-format
-msgid "find_in_dynamic_libpath: trying %s"
-msgstr ""
+msgid "SQL function \"%s\" statement %d"
+msgstr "SQL º¯Êý \"%s\" Óï¾ä %d"
 
-#: utils/fmgr/fmgr.c:187
+#: executor/functions.c:702 catalog/pg_proc.c:813
 #, c-format
-msgid "fmgr_info: function %u: cache lookup failed"
-msgstr "fmgr_info: º¯Êý %u: »º³åÇø²éÕÒʧ°Ü"
+msgid "SQL function \"%s\""
+msgstr "SQL º¯Êý \"%s\""
 
-#: utils/fmgr/fmgr.c:220
+#: executor/functions.c:708
 #, c-format
-msgid "fmgr_info: function %s not in internal table"
-msgstr ""
+msgid "SQL function \"%s\" during startup"
+msgstr "SQL º¯Êý \"%s\" ÔÚÆô¶¯µÄʱºò"
 
-#: utils/fmgr/fmgr.c:267
-#, c-format
-msgid "fmgr: Could not extract prosrc for %u from pg_proc"
+#: executor/nodeMergejoin.c:1474
+msgid "RIGHT JOIN is only supported with merge-joinable join conditions"
 msgstr ""
 
-#: utils/fmgr/fmgr.c:274
-#, c-format
-msgid "fmgr: Could not extract probin for %u from pg_proc"
-msgstr ""
+#: executor/nodeFunctionscan.c:93
+msgid "query-specified return row and actual function return row do not match"
+msgstr "Ö¸¶¨²éѯ·µ»ØÐкÍʵ¼Êº¯Êý·µ»ØÐв»Æ¥Åä"
 
-#: utils/fmgr/fmgr.c:307
-#, c-format
-msgid "Unknown function API version %d"
+#: 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 ""
 
-#: utils/fmgr/fmgr.c:333
+#: executor/execMain.c:839
 #, c-format
-msgid "fmgr_info: cache lookup for language %u failed"
-msgstr ""
+msgid "cannot change sequence \"%s\""
+msgstr "²»¿ÉÒԸıäÐòÁР\"%s\""
 
-#: utils/fmgr/fmgr.c:346
+#: executor/execMain.c:845
 #, c-format
-msgid "fmgr_info: language %u has old-style handler"
-msgstr ""
+msgid "cannot change TOAST relation \"%s\""
+msgstr "²»¿ÉÒԸıä TOAST ¹Øϵ \"%s\""
 
-#: utils/fmgr/fmgr.c:394
+#: executor/execMain.c:851
 #, c-format
-msgid "Null result from %s"
-msgstr ""
+msgid "cannot change view \"%s\""
+msgstr "²»¿ÉÒԸıäÊÓͼ \"%s\""
 
-#: utils/fmgr/fmgr.c:402
+#: executor/execMain.c:1746
 #, c-format
-msgid "Unknown version %d reported by %s"
-msgstr ""
+msgid "null value in column \"%s\" violates not-null constraint"
+msgstr "ÔÚ×ֶΠ\"%s\" ÖпÕֵΥ·´ÁË·Ç¿ÕÔ¼Êø"
 
-#: utils/fmgr/fmgr.c:470
-msgid "Internal error: fmgr_oldstyle received NULL pointer"
-msgstr "ÄÚ²¿´íÎó: fmgr_oldstyle ½ÓÊÕµ½ NULL Ö¸Õë"
-
-#: utils/fmgr/fmgr.c:619
+#: executor/execMain.c:1758
 #, c-format
-msgid "fmgr_oldstyle: function %u: too many arguments (%d > %d)"
-msgstr "fmgr_oldstyle: º¯Êý %u: ²ÎÊýÌ«¶à (%d > %d)"
+msgid "new row for relation \"%s\" violates check constraint \"%s\""
+msgstr "¹Øϵ \"%s\" µÄÐÂÁÐÎ¥·´Á˼ì²éÔ¼Êø \"%s\""
 
-#: utils/fmgr/fmgr.c:666
+#: executor/nodeAgg.c:1330
 #, c-format
-msgid "fmgr_security_definer: function %u: cache lookup failed"
-msgstr "fmgr_security_definer: º¯Êý %u: ²éÕÒ»º³åÇøʧ°Ü"
+msgid "aggregate %u needs to have compatible input type and transition type"
+msgstr "¾Û¼¯ %u ÐèÒªÓмæÈݵÄÊäÈëÀàÐͺÍת»»ÀàÐÍ"
 
-#: utils/fmgr/fmgr.c:728
+#: catalog/pg_conversion.c:66
 #, c-format
-msgid "DirectFunctionCall1: function %p returned NULL"
-msgstr "DriectFunctionCall1: º¯Êý %p ·µ»Ø NULL"
+msgid "conversion \"%s\" already exists"
+msgstr "±àÂëת»» \"%s\" ÒѾ­´æÔÚ"
 
-#: utils/fmgr/fmgr.c:756
+#: catalog/pg_conversion.c:79
 #, c-format
-msgid "DirectFunctionCall2: function %p returned NULL"
-msgstr "DirectFunctionCall2: º¯Êý %p ·µ»Ø NULL"
+msgid "default conversion for %s to %s already exists"
+msgstr "ĬÈϵĠ%s µ½ %s µÄת»»ÒѾ­´æÔÚ"
 
-#: utils/fmgr/fmgr.c:779
+#: catalog/pg_operator.c:217 catalog/pg_operator.c:406
 #, c-format
-msgid "DirectFunctionCall3: function %p returned NULL"
-msgstr "DirectFunctionCall3: º¯Êý %p ·µ»Ø NULL"
+msgid "\"%s\" is not a valid operator name"
+msgstr "\"%s\" ²»ÊÇÒ»¸öÓÐЧµÄ²Ù×÷·ûÃû³Æ"
 
-#: utils/fmgr/fmgr.c:803
-#, c-format
-msgid "DirectFunctionCall4: function %p returned NULL"
-msgstr "DirectFunctionCall4: º¯Êý %p ·µ»Ø NULL"
+#: catalog/pg_operator.c:412
+msgid "at least one of leftarg or rightarg must be specified"
+msgstr "±ØÐëÖÁÉÙÖ¸¶¨Ò»¸ö×ó²ÎÊý (leftarg) »òÓÒ²ÎÊý (rightarg)"
 
-#: utils/fmgr/fmgr.c:828
-#, c-format
-msgid "DirectFunctionCall5: function %p returned NULL"
-msgstr "DirectFunctionCall5: º¯Êý %p ·µ»Ø NULL"
+#: catalog/pg_operator.c:420
+msgid "only binary operators can have commutators"
+msgstr ""
 
-#: utils/fmgr/fmgr.c:855
-#, c-format
-msgid "DirectFunctionCall6: function %p returned NULL"
-msgstr "DirectFunctionCall6: º¯Êý %p ·µ»Ø NULL"
+#: catalog/pg_operator.c:424
+msgid "only binary operators can have join selectivity"
+msgstr "Ö»Óжþ½øÖƲÙ×÷·ûÄÜÓпÉÑ¡ÔñÐÔÁªºÏ"
 
-#: utils/fmgr/fmgr.c:883
-#, c-format
-msgid "DirectFunctionCall7: function %p returned NULL"
-msgstr "DirectFunctionCall7: º¯Êý %p ·µ»Ø NULL"
+#: catalog/pg_operator.c:428
+msgid "only binary operators can hash"
+msgstr "Ö»Óжþ½øÖƲÙ×÷·û¿ÉÒÔÉ¢ÁÐ"
 
-#: utils/fmgr/fmgr.c:912
-#, c-format
-msgid "DirectFunctionCall8: function %p returned NULL"
-msgstr "DirectFunctionCall8: º¯Êý %p ·µ»Ø NULL"
+#: catalog/pg_operator.c:432
+msgid "only binary operators can merge join"
+msgstr "Ö»Óжþ½øÖƲÙ×÷·û¿ÉÒԺϲ¢ÁªºÏ"
 
-#: utils/fmgr/fmgr.c:943
+#: catalog/pg_operator.c:444
 #, c-format
-msgid "DirectFunctionCall9: function %p returned NULL"
-msgstr "DirectFunctionCall9: º¯Êý %p ·µ»Ø NULL"
+msgid "operator %s already exists"
+msgstr "²Ù×÷·û %s ÒѾ­´æÔÚ"
 
-#: utils/fmgr/fmgr.c:974
-#, c-format
-msgid "FunctionCall1: function %u returned NULL"
-msgstr "FunctionCall1: º¯Êý %u ·µ»Ø NULL"
+#: catalog/pg_operator.c:726
+msgid "operator cannot be its own negator or sort operator"
+msgstr ""
 
-#: utils/fmgr/fmgr.c:1002 utils/sort/tuplesort.c:1823
+#: catalog/dependency.c:152
 #, c-format
-msgid "FunctionCall2: function %u returned NULL"
-msgstr "FunctionCall2: º¯Êý %u ·µ»Ø NULL"
+msgid "cannot drop %s because other objects depend on it"
+msgstr "ÎÞ·¨É¾³ý %s ÒòΪÓÐÆäËü¶ÔÏóÒÐÀµËü"
 
-#: utils/fmgr/fmgr.c:1026
-#, c-format
-msgid "FunctionCall3: function %u returned NULL"
-msgstr "FunctionCall3: º¯Êý %u ·µ»Ø NULL"
+#: catalog/dependency.c:154
+msgid "Use DROP ... CASCADE to drop the dependent objects too."
+msgstr "ʹÓàDROP .. CASCADE °ÑÒÐÀµ¶ÔÏóÒ»²¢É¾³ý."
 
-#: utils/fmgr/fmgr.c:1051
+#: catalog/dependency.c:212
 #, c-format
-msgid "FunctionCall4: function %u returned NULL"
-msgstr "FunctionCall4: º¯Êý %u ·µ»Ø NULL"
+msgid "failed to drop all objects depending on %s"
+msgstr "ɾ³ýËùÓÐÒÐÀµÓÚ %s µÄ¶ÔÏóʧ°Ü"
 
-#: utils/fmgr/fmgr.c:1077
+#: catalog/dependency.c:312 catalog/dependency.c:717
 #, c-format
-msgid "FunctionCall5: function %u returned NULL"
-msgstr "FunctionCall5: º¯Êý %u ·µ»Ø NULL"
+msgid "cannot drop %s because it is required by the database system"
+msgstr "ÎÞ·¨É¾³ý %s, ÒòΪËüÊÇÊý¾Ý¿âϵͳËùÐèÒªµÄ"
 
-#: utils/fmgr/fmgr.c:1105
+#: catalog/dependency.c:451
 #, c-format
-msgid "FunctionCall6: function %u returned NULL"
-msgstr "FunctionCall6: º¯Êý %u ·µ»Ø NULL"
+msgid "cannot drop %s because %s requires it"
+msgstr "ÎÞ·¨É¾³ý %s, ÒòΪ %s ÐèÒªËü"
 
-#: utils/fmgr/fmgr.c:1134
+#: catalog/dependency.c:453
 #, c-format
-msgid "FunctionCall7: function %u returned NULL"
-msgstr "FunctionCall7: º¯Êý %u ·µ»Ø NULL"
+msgid "You may drop %s instead."
+msgstr "ÄãÒ²Ðí¿ÉÒÔɾ³ý %s ´úÌæ."
 
-#: utils/fmgr/fmgr.c:1164
+#: catalog/dependency.c:521 catalog/dependency.c:674 catalog/dependency.c:702
 #, c-format
-msgid "FunctionCall8: function %u returned NULL"
-msgstr "FunctionCall8: º¯Êý %u ·µ»Ø NULL"
+msgid "drop auto-cascades to %s"
+msgstr ""
 
-#: utils/fmgr/fmgr.c:1196
+#: catalog/dependency.c:526 catalog/dependency.c:679
 #, c-format
-msgid "FunctionCall9: function %u returned NULL"
-msgstr "FunctionCall9: º¯Êý %u ·µ»Ø NULL"
+msgid "%s depends on %s"
+msgstr "%s ÒÐÀµÓÚ %s"
 
-#: utils/fmgr/fmgr.c:1227
+#: catalog/dependency.c:533 catalog/dependency.c:686
 #, c-format
-msgid "OidFunctionCall1: function %u returned NULL"
-msgstr "OidfunctionCall1: º¯Êý %u ·µ»Ø NULL"
+msgid "drop cascades to %s"
+msgstr "µÝ¹éɾ³ý %s"
 
-#: utils/fmgr/fmgr.c:1252
+#: catalog/dependency.c:1427
 #, c-format
-msgid "OidFunctionCall2: function %u returned NULL"
-msgstr "OidfunctionCall2: º¯Êý %u ·µ»Ø NULL"
+msgid " column %s"
+msgstr " ×ֶΠ%s"
 
-#: utils/fmgr/fmgr.c:1279
+#: catalog/dependency.c:1433
 #, c-format
-msgid "OidFunctionCall3: function %u returned NULL"
-msgstr "OidfunctionCall3: º¯Êý %u ·µ»Ø NULL"
+msgid "function %s"
+msgstr "º¯Êý %s"
 
-#: utils/fmgr/fmgr.c:1307
+#: catalog/dependency.c:1438
 #, c-format
-msgid "OidFunctionCall4: function %u returned NULL"
-msgstr "OidfunctionCall4: º¯Êý %u ·µ»Ø NULL"
+msgid "type %s"
+msgstr "ÀàÐÍ %s"
 
-#: utils/fmgr/fmgr.c:1336
+#: catalog/dependency.c:1468
 #, c-format
-msgid "OidFunctionCall5: function %u returned NULL"
-msgstr "OidfunctionCall5: º¯Êý %u ·µ»Ø NULL"
+msgid "cast from %s to %s"
+msgstr "%s ×ª»»Îª %s"
 
-#: utils/fmgr/fmgr.c:1367
+#: catalog/dependency.c:1505
 #, c-format
-msgid "OidFunctionCall6: function %u returned NULL"
-msgstr "OidfunctionCall6: º¯Êý %u ·µ»Ø NULL"
+msgid "constraint %s on "
+msgstr "Ô¼Êø %s ÔÚ "
 
-#: utils/fmgr/fmgr.c:1399
+#: catalog/dependency.c:1511
 #, c-format
-msgid "OidFunctionCall7: function %u returned NULL"
-msgstr "OidfunctionCall7: º¯Êý %u ·µ»Ø NULL"
+msgid "constraint %s"
+msgstr "Ô¼Êø %s"
 
-#: utils/fmgr/fmgr.c:1432
+#: catalog/dependency.c:1530
 #, c-format
-msgid "OidFunctionCall8: function %u returned NULL"
-msgstr "OidfunctionCall8: º¯Êý %u ·µ»Ø NULL"
+msgid "conversion %s"
+msgstr "±àÂëת»» %s"
 
-#: utils/fmgr/fmgr.c:1467
+#: catalog/dependency.c:1567
 #, c-format
-msgid "OidFunctionCall9: function %u returned NULL"
-msgstr "OidfunctionCall9: º¯Êý %u ·µ»Ø NULL"
+msgid "default for %s"
+msgstr ""
 
-#: utils/fmgr/fmgr.c:1506
+#: catalog/dependency.c:1585
 #, c-format
-msgid "fmgr: function %u: too many arguments (%d > %d)"
-msgstr "fmgr: º¯Êý %u: ²ÎÊýÌ«¶à (%d > %d)"
+msgid "language %s"
+msgstr "ÓïÑÔ %s"
 
-#: utils/fmgr/fmgr.c:1518
+#: catalog/dependency.c:1592
 #, c-format
-msgid "fmgr: function %u returned NULL"
-msgstr "fmgr: º¯Êý %u ·µ»Ø NULL"
-
-#: utils/fmgr/funcapi.c:36
-msgid "function called in context that does not accept a set result"
-msgstr ""
+msgid "operator %s"
+msgstr "²Ù×÷·û %s"
 
-#: utils/fmgr/funcapi.c:68
-msgid "init_MultiFuncCall may not be called more than once"
-msgstr ""
+#: catalog/dependency.c:1626
+#, c-format
+msgid "operator class %s for %s"
+msgstr "%2$s µÄ²Ù×÷·ûÀà %1$s"
 
-#: utils/cache/catcache.c:151
+#: catalog/dependency.c:1662
 #, c-format
-msgid "GetCCHashFunc: type %u unsupported as catcache key"
-msgstr ""
+msgid "rule %s on "
+msgstr "¹æÔò %s ÔÚ "
 
-#: utils/cache/catcache.c:195
+#: catalog/dependency.c:1697
 #, c-format
-msgid "CCComputeHashValue: %d nkeys"
-msgstr ""
+msgid "trigger %s on "
+msgstr "´¥·¢Æ÷ %s ÔÚ "
 
-#: utils/cache/catcache.c:260
+#: catalog/dependency.c:1714
 #, c-format
-msgid "CCComputeTupleHashValue: %d cc_nkeys"
-msgstr ""
+msgid "schema %s"
+msgstr "ģʽ %s"
 
-#: utils/cache/catcache.c:284
+#: catalog/dependency.c:1758
 #, c-format
-msgid "Catcache stats dump: %d/%d tuples in catcaches"
-msgstr ""
+msgid "table %s"
+msgstr "±í %s"
 
-#: utils/cache/catcache.c:291
+#: catalog/dependency.c:1762
 #, c-format
-msgid ""
-"Catcache %s/%s: %d tup, %ld srch, %ld+%ld=%ld hits, %ld+%ld=%ld loads, %ld "
-"invals, %ld discards, %ld lsrch, %ld lhits"
-msgstr ""
+msgid "index %s"
+msgstr "Ë÷Òý %s"
 
-#: utils/cache/catcache.c:315
+#: catalog/dependency.c:1766
 #, c-format
-msgid ""
-"Catcache totals: %d tup, %ld srch, %ld+%ld=%ld hits, %ld+%ld=%ld loads, %ld "
-"invals, %ld discards, %ld lsrch, %ld lhits"
-msgstr ""
+msgid "special system relation %s"
+msgstr "ÌØÊâϵͳ¹Øϵ %s"
 
-#: utils/cache/catcache.c:550
+#: catalog/dependency.c:1770
 #, c-format
-msgid "Cache reference leak: cache %s (%d), list %p has count %d"
-msgstr ""
+msgid "sequence %s"
+msgstr "ÐòÁР%s"
 
-#: utils/cache/catcache.c:573
+#: catalog/dependency.c:1774
 #, c-format
-msgid "Cache reference leak: cache %s (%d), tuple %u has count %d"
-msgstr ""
+msgid "uncataloged table %s"
+msgstr "δ¹éÀàµÄ±í %s"
 
-#: utils/cache/catcache.c:761
+#: catalog/dependency.c:1778
 #, c-format
-msgid "InitCatCache: rel=%s id=%d nkeys=%d size=%d\n"
+msgid "toast table %s"
 msgstr ""
 
-#: utils/cache/catcache.c:860
+#: catalog/dependency.c:1782
 #, c-format
-msgid "CatalogCacheInitializeCache: cache @%p %s"
-msgstr ""
+msgid "view %s"
+msgstr "ÊÓͼ %s"
 
-#: utils/cache/catcache.c:866
+#: catalog/dependency.c:1786
 #, c-format
-msgid "CatalogCacheInitializeCache: load %d/%d w/%d, %u"
-msgstr ""
+msgid "composite type %s"
+msgstr "¸´ºÏÀàÐÍ %s"
 
-#: utils/cache/catcache.c:870
+#: catalog/dependency.c:1791
 #, c-format
-msgid "CatalogCacheInitializeCache: load %d/%d w/%d"
-msgstr ""
+msgid "relation %s"
+msgstr "¹Øϵ %s"
 
-#: utils/cache/catcache.c:940
-msgid "CatalogCacheInit: only sys attr supported is OID"
-msgstr ""
+#: catalog/aclchk.c:158
+msgid "grant options can only be granted to individual users"
+msgstr "grant Ñ¡ÏîÖ»ÄÜÓÃÓÚ¸öÌåÓû§ÉÏ"
 
-#: utils/cache/inval.c:453
+#: catalog/aclchk.c:246
 #, c-format
-msgid "ExecuteInvalidationMessage: bogus message id %d"
-msgstr ""
+msgid "invalid privilege type %s for table"
+msgstr "ÎÞЧµÄ±íȨÏÞÀàÐÍ %s"
 
-#: utils/cache/inval.c:708 utils/cache/inval.c:731
-msgid "Out of cache_callback_list slots"
-msgstr ""
+#: catalog/aclchk.c:334 catalog/aclchk.c:492 catalog/aclchk.c:646
+#: catalog/aclchk.c:809 catalog/aclchk.c:962 catalog/aclchk.c:1121
+msgid "no privileges were granted"
+msgstr "ûÓи³ÓèȨÏÞ"
 
-#: utils/cache/lsyscache.c:73
-#, c-format
-msgid "op_requires_recheck: op %u is not a member of opclass %u"
-msgstr ""
+#: catalog/aclchk.c:338 catalog/aclchk.c:496 catalog/aclchk.c:650
+#: catalog/aclchk.c:813 catalog/aclchk.c:966 catalog/aclchk.c:1125
+msgid "not all privileges were granted"
+msgstr "²»Äܸ³ÓèËùÓеÄȨÏÞ"
 
-#: utils/cache/lsyscache.c:218
-#, c-format
-msgid "cache lookup failed for relation %u attribute %d"
-msgstr ""
+#: catalog/aclchk.c:345 catalog/aclchk.c:503 catalog/aclchk.c:657
+#: catalog/aclchk.c:820 catalog/aclchk.c:973 catalog/aclchk.c:1132
+msgid "no privileges could be revoked"
+msgstr "ûÓг·ÏûȨÏÞ"
 
-#: utils/cache/lsyscache.c:368
-#, c-format
-msgid "op_mergejoin_crossops: operator %u not found"
-msgstr ""
+#: catalog/aclchk.c:349 catalog/aclchk.c:507 catalog/aclchk.c:661
+#: catalog/aclchk.c:824 catalog/aclchk.c:977 catalog/aclchk.c:1136
+msgid "not all privileges could be revoked"
+msgstr "²»Äܳ·ÏûËùÓеÄȨÏÞ"
 
-#: utils/cache/lsyscache.c:376
+#: catalog/aclchk.c:414
 #, c-format
-msgid "op_mergejoin_crossops: mergejoin operator %u has no matching < operator"
-msgstr ""
+msgid "invalid privilege type %s for database"
+msgstr "ÎÞЧµÄÊý¾Ý¿âȨÏÞÀàÐÍ %s"
 
-#: utils/cache/lsyscache.c:383
+#: catalog/aclchk.c:572
 #, c-format
-msgid "op_mergejoin_crossops: mergejoin operator %u has no matching > operator"
-msgstr ""
+msgid "invalid privilege type %s for function"
+msgstr "ÎÞЧµÄº¯ÊýȨÏÞÀàÐÍ %s"
 
-#: utils/cache/lsyscache.c:424 utils/cache/lsyscache.c:440
+#: catalog/aclchk.c:726
 #, c-format
-msgid "Operator OID %u does not exist"
-msgstr ""
+msgid "invalid privilege type %s for language"
+msgstr "ÎÞЧµÄÓïÑÔȨÏÞÀàÐÍ %s"
 
-#: utils/cache/lsyscache.c:693
+#: catalog/aclchk.c:764
 #, c-format
-msgid "get_system_catalog_relid: cannot find %s"
-msgstr ""
+msgid "language \"%s\" is not trusted"
+msgstr "ÓïÑÔ \"%s\" ²»¿ÉÐÅ"
 
-#: utils/cache/lsyscache.c:1065
-#, c-format
-msgid "get_typdefault: failed to lookup type %u"
+#: catalog/aclchk.c:765
+msgid "Only superusers may use untrusted languages."
 msgstr ""
 
-#: utils/cache/lsyscache.c:1144
+#: catalog/aclchk.c:889
 #, c-format
-msgid "getBaseType: failed to lookup type %u"
-msgstr ""
+msgid "invalid privilege type %s for schema"
+msgstr "ÎÞЧµÄģʽȨÏÞÀàÐÍ %s"
 
-#: utils/cache/lsyscache.c:1282
+#: catalog/aclchk.c:1043
 #, c-format
-msgid "getTypeInputInfo: Cache lookup of type %u failed"
-msgstr "getTypeInputInfo: ÎªÀàÐÍ %u ²éÕÒ»º³åÇøʧ°Ü"
+msgid "invalid privilege type %s for tablespace"
+msgstr "ÎÞЧµÄ±í¿Õ¼äȨÏÞÀàÐÍ %s"
 
-#: utils/cache/lsyscache.c:1312
+#: catalog/aclchk.c:1264
 #, c-format
-msgid "getTypeOutputInfo: Cache lookup of type %u failed"
-msgstr "getTypeOutputInfo: ÎªÀàÐÍ %u ²éÕÒ»º³åÇøʧ°Ü"
-
-#: utils/cache/lsyscache.c:1408
-msgid "get_attstatsslot: stavalues is null"
-msgstr ""
+msgid "permission denied for relation %s"
+msgstr "¶Ô¹Øϵ %s È¨ÏÞ²»¹»"
 
-#: utils/cache/lsyscache.c:1430
+#: catalog/aclchk.c:1266
 #, c-format
-msgid "get_attstatsslot: Cache lookup failed for type %u"
-msgstr "get_attstatsslot: ÎªÀàÐÍ %u ²éÕÒ»º³åÇøʧ°Ü"
+msgid "permission denied for database %s"
+msgstr "¶ÔÊý¾Ý¿â %s È¨ÏÞ²»¹»"
 
-#: utils/cache/lsyscache.c:1466
-msgid "get_attstatsslot: stanumbers is null"
-msgstr ""
+#: catalog/aclchk.c:1268
+#, c-format
+msgid "permission denied for function %s"
+msgstr "¶Ôº¯Êý %s È¨ÏÞ²»¹»"
 
-#: utils/cache/lsyscache.c:1477
-msgid "get_attstatsslot: stanumbers is not a 1-D float4 array"
-msgstr ""
+#: catalog/aclchk.c:1270
+#, c-format
+msgid "permission denied for operator %s"
+msgstr "¶Ô²Ù×÷·û %s È¨ÏÞ²»¹»"
 
-#: utils/cache/relcache.c:168 utils/cache/relcache.c:176
-#: utils/cache/relcache.c:188
-msgid "out of memory for relation descriptor cache"
-msgstr ""
+#: catalog/aclchk.c:1272
+#, c-format
+msgid "permission denied for type %s"
+msgstr "¶ÔÀàÐÍ %s È¨ÏÞ²»¹»"
 
-#: utils/cache/relcache.c:234
-msgid "trying to delete a rd_id reldesc that does not exist."
-msgstr ""
+#: catalog/aclchk.c:1274
+#, c-format
+msgid "permission denied for language %s"
+msgstr "¶ÔÓïÑÔ %s È¨ÏÞ²»¹»"
 
-#: utils/cache/relcache.c:239
-msgid "trying to delete a rd_node reldesc that does not exist."
-msgstr ""
+#: catalog/aclchk.c:1276
+#, c-format
+msgid "permission denied for schema %s"
+msgstr "¶Ôģʽ %s È¨ÏÞ²»¹»"
 
-#: utils/cache/relcache.c:248
-msgid "trying to delete a relname reldesc that does not exist."
-msgstr ""
+#: catalog/aclchk.c:1278
+#, c-format
+msgid "permission denied for operator class %s"
+msgstr "¶Ô²Ù×÷·û±í %s È¨ÏÞ²»¹»"
 
-#: utils/cache/relcache.c:354
-msgid "ScanPgRelation: bad buildinfo"
-msgstr ""
+#: catalog/aclchk.c:1280
+#, c-format
+msgid "permission denied for conversion %s"
+msgstr "¶Ô±àÂëת»» %s È¨ÏÞ²»¹»"
 
-#: utils/cache/relcache.c:508
+#: catalog/aclchk.c:1282
 #, c-format
-msgid "Bogus attribute number %d for %s"
-msgstr ""
+msgid "permission denied for tablespace %s"
+msgstr "¶Ô±í¿Õ¼ä %s È¨ÏÞ²»¹»"
 
-#: utils/cache/relcache.c:550
+#: catalog/aclchk.c:1288
 #, c-format
-msgid "catalog is missing %d attribute(s) for relid %u"
-msgstr ""
+msgid "must be owner of relation %s"
+msgstr "±ØÐëÊǹØϵ %s µÄÊôÖ÷"
 
-#: utils/cache/relcache.c:962
+#: catalog/aclchk.c:1290
 #, c-format
-msgid "RelationInitIndexAccessInfo: no pg_index entry for index %u"
-msgstr ""
+msgid "must be owner of database %s"
+msgstr "±ØÐëÊÇÊý¾Ý¿â %s µÄÊôÖ÷"
 
-#: utils/cache/relcache.c:977
+#: catalog/aclchk.c:1292
 #, c-format
-msgid "RelationInitIndexAccessInfo: cache lookup failed for AM %u"
-msgstr "RelationInitIndexAccessInfo: Îª AM %u ²éÕÒ»º³åÇøʧ°Ü"
+msgid "must be owner of function %s"
+msgstr "±ØÐëÊǺ¯Êý %s µÄÊôÖ÷"
 
-#: utils/cache/relcache.c:1092
-msgid "IndexSupportInitialize: bogus pg_index tuple"
-msgstr ""
+#: catalog/aclchk.c:1294
+#, c-format
+msgid "must be owner of operator %s"
+msgstr "±ØÐëÊDzÙ×÷·û %s µÄÊôÖ÷"
 
-#: utils/cache/relcache.c:1199
-msgid "out of memory for operator class cache"
-msgstr ""
+#: catalog/aclchk.c:1296
+#, c-format
+msgid "must be owner of type %s"
+msgstr "±ØÐëÊÇÀàÐÍ %s µÄÊôÖ÷"
 
-#: utils/cache/relcache.c:1273
+#: catalog/aclchk.c:1298
 #, c-format
-msgid "Bogus amopstrategy number %d for opclass %u"
-msgstr ""
+msgid "must be owner of language %s"
+msgstr "±ØÐëÊÇÓïÑÔ %s µÄÊôÖ÷"
 
-#: utils/cache/relcache.c:1308
+#: catalog/aclchk.c:1300
 #, c-format
-msgid "Bogus amproc number %d for opclass %u"
-msgstr ""
+msgid "must be owner of schema %s"
+msgstr "±ØÐëÊÇģʽ %s µÄÊôÖ÷"
 
-#: utils/cache/relcache.c:1653
+#: catalog/aclchk.c:1302
 #, c-format
-msgid "RelationReloadClassinfo system relation id=%d doesn't exist"
-msgstr ""
+msgid "must be owner of operator class %s"
+msgstr "±ØÐëÊDzÙ×÷·û±í %s µÄÊôÖ÷"
 
-#: utils/cache/relcache.c:1780
+#: catalog/aclchk.c:1304
 #, c-format
-msgid "RelationClearRelation: relation %u deleted while still in use"
-msgstr ""
+msgid "must be owner of conversion %s"
+msgstr "±ØÐëÊDZàÂëת»» %s µÄÊôÖ÷"
 
-#: utils/cache/relcache.c:1863
+#: catalog/aclchk.c:1306
 #, c-format
-msgid "RelationForgetRelation: relation %u is still open"
-msgstr ""
+msgid "must be owner of tablespace %s"
+msgstr "±ØÐëÊDZí¿Õ¼ä %s µÄÊôÖ÷"
 
-#: utils/cache/relcache.c:2020
+#: catalog/aclchk.c:1369
 #, c-format
-msgid "Relcache reference leak: relation \"%s\" has refcnt %d instead of %d"
-msgstr ""
+msgid "user with ID %u does not exist"
+msgstr "ID Îª %u µÄÓû§²»´æÔÚ"
 
-#: utils/cache/relcache.c:2317
+#: catalog/aclchk.c:1386 catalog/aclchk.c:1889
 #, c-format
-msgid "RelationCacheInitializePhase2: no pg_class entry for %s"
-msgstr ""
+msgid "relation with OID %u does not exist"
+msgstr "OID Îª %u µÄ¹Øϵ²»´æÔÚ"
 
-#: utils/cache/relcache.c:2465
+#: catalog/aclchk.c:1490 catalog/aclchk.c:2107
 #, c-format
-msgid "AttrDefaultFetch: second record found for attr %s in rel %s"
-msgstr ""
+msgid "database with OID %u does not exist"
+msgstr "OID Îª %u µÄÊý¾Ý¿â²»´æÔÚ"
 
-#: utils/cache/relcache.c:2473
+#: catalog/aclchk.c:1604
 #, c-format
-msgid "AttrDefaultFetch: adbin IS NULL for attr %s in rel %s"
-msgstr ""
+msgid "language with OID %u does not exist"
+msgstr "OID Îª %u µÄÓïÑÔ²»´æÔÚ"
 
-#: utils/cache/relcache.c:2484
+#: catalog/aclchk.c:1689 catalog/aclchk.c:2001
 #, c-format
-msgid "AttrDefaultFetch: unexpected record found for attr %d in rel %s"
-msgstr ""
+msgid "schema with OID %u does not exist"
+msgstr "OID Îª %u µÄģʽ²»´æÔÚ"
 
-#: utils/cache/relcache.c:2493
+#: catalog/aclchk.c:1761 catalog/aclchk.c:2039
 #, c-format
-msgid "AttrDefaultFetch: %d record(s) not found for rel %s"
-msgstr ""
+msgid "tablespace with OID %u does not exist"
+msgstr "OID Îª %u µÄ±í¿Õ¼ä²»´æÔÚ"
 
-#: utils/cache/relcache.c:2527
+#: catalog/aclchk.c:1917
 #, c-format
-msgid "CheckConstraintFetch: unexpected record found for rel %s"
-msgstr ""
+msgid "type with OID %u does not exist"
+msgstr "OID Îª %u µÄÀàÐͲ»´æÔÚ"
 
-#: utils/cache/relcache.c:2538
+#: catalog/aclchk.c:1945
 #, c-format
-msgid "CheckConstraintFetch: conbin IS NULL for rel %s"
-msgstr ""
+msgid "operator with OID %u does not exist"
+msgstr "OID Îª %u µÄ²Ù×÷·û²»´æÔÚ"
 
-#: utils/cache/relcache.c:2551
+#: catalog/aclchk.c:2068
 #, c-format
-msgid "CheckConstraintFetch: %d record(s) not found for rel %s"
-msgstr ""
+msgid "operator class with OID %u does not exist"
+msgstr "OID Îª %u µÄ²Ù×÷·û±í²»´æÔÚ"
 
-#: utils/cache/relcache.c:3027
+#: catalog/aclchk.c:2136
 #, c-format
-msgid ""
-"Cannot create init file %s: %m\n"
-"\tContinuing anyway, but there's something wrong."
-msgstr ""
+msgid "conversion with OID %u does not exist"
+msgstr "OID Îª %u µÄ±àÂëת»»²»´æÔÚ"
 
-#: utils/cache/relcache.c:3051
-msgid "cannot write init file -- descriptor length"
-msgstr ""
+#: catalog/heap.c:221
+#, c-format
+msgid "permission denied to create \"%s.%s\""
+msgstr "´´½¨ \"%s.%s\" È¨ÏÞ²»¹»"
 
-#: utils/cache/relcache.c:3055
-msgid "cannot write init file -- reldesc"
-msgstr "ÎÞ·¨Ð´Èë³õʼ»¯Îļþ -- reldesc"
+#: catalog/heap.c:223
+msgid "System catalog modifications are currently disallowed."
+msgstr "ϵͳ±íÐÞ¸ÄÊDz»±»Í¬Ê±ÔÊÐíµÄ"
 
-#: utils/cache/relcache.c:3060
-msgid "cannot write init file -- relation tuple form length"
-msgstr ""
+#: catalog/heap.c:399
+#, c-format
+msgid "column name \"%s\" conflicts with a system column name"
+msgstr "×Ö¶ÎÃû \"%s\" Óëϵͳ×Ö¶ÎÃû³åÍ»"
 
-#: utils/cache/relcache.c:3063
-msgid "cannot write init file -- relation tuple form"
-msgstr ""
+#: catalog/heap.c:415
+#, c-format
+msgid "column name \"%s\" is duplicated"
+msgstr "×Ö¶ÎÃû \"%s\" ±»¸´ÖÆ"
 
-#: utils/cache/relcache.c:3070
+#: catalog/heap.c:452
 #, c-format
-msgid "cannot write init file -- length of attdesc %d"
-msgstr ""
+msgid "column \"%s\" has type \"unknown\""
+msgstr "×ֶΠ\"%s\" ÀàÐÍΪ \"δ֪\""
 
-#: utils/cache/relcache.c:3072
+#: catalog/heap.c:453
+msgid "Proceeding with relation creation anyway."
+msgstr "¼ÌÐø¹ØϵµÄ´´½¨."
+
+#: catalog/heap.c:460
 #, c-format
-msgid "cannot write init file -- attdesc %d"
-msgstr "ÎÞ·¨Ð´Èë³õʼ»¯Îļþ -- attdesc %d"
+msgid "column \"%s\" has pseudo-type %s"
+msgstr "×ֶΠ\"%s\" ÓÐαÀàÐÍ %s"
 
-#: utils/cache/relcache.c:3091
+#: catalog/heap.c:1601
 #, c-format
-msgid "write_relcache_init_file: no pg_index entry for index %u"
-msgstr ""
+msgid "only table \"%s\" can be referenced in check constraint"
+msgstr "ÔÚ¼ì²éÔ¼ÊøÖÐÖ»Óбí \"%s\" Äܱ»¹ØÁªµÄ"
 
-#: utils/cache/relcache.c:3095
-#, fuzzy
-msgid "cannot write init file -- index tuple form length"
-msgstr "ÎÞ·¨Ð´Èë³õʼ»¯Îļþ -- reldesc"
+#: catalog/heap.c:1614
+msgid "cannot use aggregate function in check constraint"
+msgstr "ÔÚ¼ì²éÔ¼ÊøÖв»ÄÜʹÓþۼ¯º¯Êý"
 
-#: utils/cache/relcache.c:3097
-#, fuzzy
-msgid "cannot write init file -- index tuple form"
-msgstr "ÎÞ·¨Ð´Èë³õʼ»¯Îļþ -- reldesc"
+#: catalog/heap.c:1640
+#, c-format
+msgid "check constraint \"%s\" already exists"
+msgstr "¼ì²éÔ¼Êø \"%s\" ÒѾ­´æÔÚ"
 
-#: utils/cache/relcache.c:3103
-msgid "cannot write init file -- am tuple form length"
-msgstr ""
+#: catalog/heap.c:1789
+msgid "cannot use column references in default expression"
+msgstr "ÔÚĬÈϵıí´ïʽÖв»ÄÜʹÓÃ×ֶιØÁª"
 
-#: utils/cache/relcache.c:3106
-msgid "cannot write init file -- am tuple form"
-msgstr ""
+#: catalog/heap.c:1797
+msgid "default expression must not return a set"
+msgstr "ĬÈϱí´ïʽ²»ÄÜ·µ»ØÒ»¸ö×éºÏ"
 
-#: utils/cache/relcache.c:3112
-msgid "cannot write init file -- strategy map length"
-msgstr ""
+#: catalog/heap.c:1805
+msgid "cannot use subquery in default expression"
+msgstr "ÔÚĬÈϵıí´ïʽÖв»ÄÜʹÓÃ×Ó²éѯ"
 
-#: utils/cache/relcache.c:3115
-msgid "cannot write init file -- strategy map"
-msgstr ""
+#: catalog/heap.c:1809
+msgid "cannot use aggregate function in default expression"
+msgstr "ÔÚĬÈϵıí´ïʽÖв»ÄÜʹÓþۼ¯º¯Êý"
 
-#: utils/cache/relcache.c:3120
-#, fuzzy
-msgid "cannot write init file -- operator vector length"
-msgstr "ÎÞ·¨Ð´Èë³õʼ»¯Îļþ -- reldesc"
+#: catalog/heap.c:2093
+msgid "cannot truncate a table referenced in a foreign key constraint"
+msgstr "ÔÚÒ»¸öÍâ¼üÔ¼ÊøÖÐÎÞ·¨É¾³ý (truncate) Ò»¸ö±íµÄ¹ØÁª"
 
-#: utils/cache/relcache.c:3123
-#, fuzzy
-msgid "cannot write init file -- operator vector"
-msgstr "ÎÞ·¨Ð´Èë³õʼ»¯Îļþ -- reldesc"
+#: catalog/heap.c:2094
+#, c-format
+msgid "Table \"%s\" references \"%s\" via foreign key constraint \"%s\"."
+msgstr "ͨ¹ýÍâ¼üÔ¼Êø \"%3$s\", ±í \"%1$s\" ¹ØÁª \"%2$s\"."
 
-#: utils/cache/relcache.c:3128
-msgid "cannot write init file -- support vector length"
-msgstr ""
+#: catalog/pg_aggregate.c:80
+msgid "cannot determine transition data type"
+msgstr "ÎÞ·¨È·¶¨×ª»»Êý¾ÝÀàÐÍ"
 
-#: utils/cache/relcache.c:3131
-msgid "cannot write init file -- support vector"
+#: catalog/pg_aggregate.c:81
+msgid ""
+"An aggregate using \"anyarray\" or \"anyelement\" as transition type must "
+"have one of them as its base type."
 msgstr ""
+"ʹÓà\"anyarray\" »òÕß \"anyelement ×÷Ϊת»»ÀàÐ͵ľۼ¯º¯Êý±ØÐëÓÐÆäÖÐÒ»¸ö×÷Ϊ"
+"ËüµÄ»ùÀà"
 
-#: utils/cache/relcache.c:3175
+#: catalog/pg_aggregate.c:110
 #, c-format
+msgid "return type of transition function %s is not %s"
+msgstr "ת»»º¯ÊýµÄ·µ»ØÀàÐÍ %s ²»ÊÇ %s"
+
+#: catalog/pg_aggregate.c:132
 msgid ""
-"Cannot rename init file %s to %s: %m\n"
-"\tContinuing anyway, but there's something wrong."
+"must not omit initial value when transition function is strict and "
+"transition type is not compatible with input type"
 msgstr ""
 
-#: utils/cache/syscache.c:478
-#, c-format
-msgid "InitCatalogCache: Can't init cache %s (%d)"
+#: 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 "
+"as its base type."
 msgstr ""
+"·µ»Ø \"anyarray\" »òÕß \"anyelement µÄ¾Û¼¯º¯Êý±ØÐëÓÐÆäÖÐÒ»¸ö×÷ΪËüµÄ»ùÀà"
 
-#: utils/cache/syscache.c:534
+#: catalog/pg_aggregate.c:286
 #, c-format
-msgid "SearchSysCache: Bad cache id %d"
-msgstr ""
+msgid "function %s returns a set"
+msgstr "º¯Êý %s ·µ»ØÒ»¸ö×éºÏ"
 
-#: utils/cache/syscache.c:715
+#: catalog/pg_aggregate.c:317 catalog/pg_aggregate.c:326
 #, c-format
-msgid "SysCacheGetAttr: Bad cache id %d"
-msgstr ""
+msgid "function %s requires run-time type coercion"
+msgstr "º¯Êý %s ÐèÒªÔËÐÐʱÀàÐÍÇ¿ÖÆ"
 
-#: utils/cache/syscache.c:718
+#: catalog/namespace.c:173 catalog/namespace.c:228
 #, c-format
-msgid "SysCacheGetAttr: missing cache data for id %d"
-msgstr ""
+msgid "cross-database references are not implemented: \"%s.%s.%s\""
+msgstr "δʵÏÖ¿çÊý¾Ý¿â¹ØÁª: \"%s.%s.%s\""
 
-#: utils/cache/syscache.c:734
+#: catalog/namespace.c:195
 #, c-format
-msgid "SearchSysCacheList: Bad cache id %d"
-msgstr ""
+msgid "relation \"%s.%s\" does not exist"
+msgstr "¹Øϵ \"%s.%s\" ²»´æÔÚ"
 
-#: utils/error/elog.c:128
-msgid "Pre-7.3 object file made an elog() call.  Recompile."
-msgstr ""
+#: catalog/namespace.c:239
+msgid "temporary tables may not specify a schema name"
+msgstr "ÁÙʱ±íÒ²ÐíûÓÐÖ¸¶¨Ä£Ê½Ãû³Æ"
 
-#: utils/error/elog.c:218
-#, c-format
-msgid "copy: line %d, "
-msgstr "¿½±´: ÐР%d, "
+#: catalog/namespace.c:267 catalog/namespace.c:1278
+msgid "no schema has been selected to create in"
+msgstr "´´½¨ÖÐûÓÐÑ¡Ôñģʽ"
 
-#. translator: This must fit in fmt_fixedbuf.
-#: utils/error/elog.c:241 utils/error/elog.c:337
-msgid "elog: out of memory"
-msgstr "elog: ÄÚ´æÓþ¡"
+#: catalog/namespace.c:1313
+#, c-format
+msgid "improper relation name (too many dotted names): %s"
+msgstr "²»ºÏÊʵĹØϵÃû³Æ (Ãû×ÖÖÐÌ«¶àµÄµã·ûºÅ): %s"
 
-#: utils/error/elog.c:438
+#: catalog/namespace.c:1659
 #, c-format
-msgid "statement: %s"
-msgstr ""
+msgid "permission denied to create temporary tables in database \"%s\""
+msgstr "²»ÔÊÐíÔÚÊý¾Ý¿â \"%s\" Öд´½¨ÁÙʱ±í"
 
-#: utils/error/elog.c:488
-msgid "elog: error during error recovery, giving up!"
+#: 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\" µÄº¯Êý±ØÐëÖÁÉÙÓÐÒ»¸ö²ÎÊýµÄÀàÐÍÊÇÒÔÉÏÁ½"
+"ÖÖ"
 
-#: utils/error/elog.c:533
+#: catalog/pg_proc.c:148
 #, c-format
-msgid "DebugFileOpen: open of %s: %m"
-msgstr ""
+msgid "\"%s\" is already an attribute of type %s"
+msgstr "\"%s\" ÒѾ­ÊÇÀàÐÍ %s µÄÒ»¸öÊôÐÔ"
 
-#: utils/error/elog.c:542
+#: catalog/pg_proc.c:203
 #, c-format
-msgid "DebugFileOpen: %s reopen as stderr: %m"
-msgstr ""
+msgid "function \"%s\" already exists with same argument types"
+msgstr "´øÏàͬ²ÎÊýÀàÐ͵ĺ¯Êý \"%s\" ÒѾ­´æÔÚ"
 
-#: utils/error/elog.c:554
-#, c-format
-msgid "DebugFileOpen: %s reopen as stdout: %m"
-msgstr ""
+#: catalog/pg_proc.c:217
+msgid "cannot change return type of existing function"
+msgstr "²»ÄܸıäÒѾ­´æÔڵĺ¯ÊýµÄ·µ»ØÖµÀàÐÍ"
 
-#: utils/error/elog.c:571
-msgid "DebugFileOpen: could not open debugging file"
-msgstr "DebugFileOpen: ÎÞ·¨´ò¿ªÓÃÀ´³ý´íµÄÎļþ"
+#: catalog/pg_proc.c:218
+msgid "Use DROP FUNCTION first."
+msgstr "ÇëÏÈʹÓàDROP FUNCTION."
 
-#: utils/error/elog.c:776
-msgid "Numerical result out of range"
-msgstr "ÊýÖµ½á¹û³¬³ö·¶Î§"
+#: catalog/pg_proc.c:226
+#, c-format
+msgid "function \"%s\" is an aggregate"
+msgstr "º¯Êý \"%s\" ÊÇÒ»¸ö¾Û¼¯º¯Êý"
 
-#: utils/error/elog.c:790
+#: catalog/pg_proc.c:231
 #, c-format
-msgid "operating system error %d"
-msgstr "²Ù×÷ϵͳ´íÎó %d"
+msgid "function \"%s\" is not an aggregate"
+msgstr "º¯Êý \"%s\" ²»ÊÇÒ»¸ö¾Û¼¯º¯Êý"
 
-#: utils/error/elog.c:812
-msgid "DEBUG:  "
-msgstr "µ÷ÊÔ:  "
+#: 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 ²»Æ¥Åä"
 
-#: utils/error/elog.c:816
-msgid "LOG:  "
-msgstr "ÈÕÖ¾:  "
+#: catalog/pg_proc.c:394 catalog/pg_proc.c:425
+msgid "Function's final statement must be a SELECT."
+msgstr "º¯ÊýµÄ×îºóÓï¾ä±ØÐëÊÇÒ»¸ö SELECT"
 
-#: utils/error/elog.c:819
-msgid "INFO:  "
-msgstr "ÐÅÏ¢:  "
+#: catalog/pg_proc.c:415
+msgid "Function's final statement must not be a SELECT."
+msgstr "º¯ÊýµÄ×îºóÓï¾ä±ØÐë²»ÊÇÒ»¸ö SELECT"
 
-#: utils/error/elog.c:822
-msgid "NOTICE:  "
-msgstr "×¢Òâ:  "
+#: catalog/pg_proc.c:449
+msgid "Final SELECT must return exactly one column."
+msgstr "×îºó SELECT ±ØÐë·µ»ØÒ»ÁÐ."
 
-#: utils/error/elog.c:825
-msgid "WARNING:  "
-msgstr "¾¯¸æ:  "
+#: catalog/pg_proc.c:457
+#, c-format
+msgid "Actual return type is %s."
+msgstr "ʵ¼Ê·µ»ØÀàÐÍÊÇ %s."
 
-#: utils/error/elog.c:828
-msgid "ERROR:  "
-msgstr "´íÎó:  "
+#: catalog/pg_proc.c:509
+msgid "Final SELECT returns too many columns."
+msgstr "×îºó SELECT ·µ»ØÁËÌ«¶àÁÐ."
 
-#: utils/error/elog.c:831
-msgid "FATAL:  "
-msgstr "ÖÂÃü´íÎó:  "
+#: 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"
 
-#: utils/error/elog.c:834
-msgid "PANIC:  "
-msgstr "±ÈÖÂÃü´íÎó»¹¹ý·ÖµÄ´íÎó:  "
+#: catalog/pg_proc.c:541
+msgid "Final SELECT returns too few columns."
+msgstr "×îºó SELECT ·µ»ØÁËÌ«ÉÙÁÐ."
 
-#: utils/hash/dynahash.c:662
+#: catalog/pg_proc.c:582
 #, c-format
-msgid "hash_search: bogus action %d"
-msgstr ""
+msgid "return type %s is not supported for SQL functions"
+msgstr "SQL º¯Êý²»Ö§³Ö·µ»ØÀàÐÍ %s"
 
-#: utils/hash/dynahash.c:935 utils/hash/dynahash.c:937
+#: catalog/pg_proc.c:626
 #, c-format
-msgid "Hash table '%s' corrupted"
-msgstr ""
+msgid "there is no built-in function named \"%s\""
+msgstr "ûÓÐÃûΪ \"%s\" µÄÄÚ½¨º¯Êý"
 
-#: utils/init/findbe.c:63
+#: catalog/pg_proc.c:726
 #, c-format
-msgid "ValidateBinary: can't stat \"%s\""
-msgstr ""
+msgid "SQL functions cannot return type %s"
+msgstr "SQL º¯ÊýÎÞ·¨·µ»Ø %s ÀàÐÍ"
 
-#: utils/init/findbe.c:69
+#: catalog/pg_proc.c:742
 #, c-format
-msgid "ValidateBinary: \"%s\" is not a regular file"
-msgstr ""
+msgid "SQL functions cannot have arguments of type %s"
+msgstr "SQL º¯Êý²»ÄÜÓР%s ÀàÐ͵IJÎÊý"
 
-#: utils/init/findbe.c:91
-#, c-format
-msgid "ValidateBinary: \"%s\" is not user read/execute"
-msgstr ""
+#: catalog/index.c:508
+msgid "user-defined indexes on system catalog tables are not supported"
+msgstr "ÔÚϵͳ±íÉÏÓû§¶¨ÒåµÄË÷ÒýÊDz»±»Ö§³ÖµÄ"
+
+#: catalog/index.c:522
+msgid "shared indexes cannot be created after initdb"
+msgstr "ÔÚ initdb Ö®ºó, ²»ÄÜ´´½¨¹²ÏíË÷Òý"
 
-#: utils/init/findbe.c:117
+#: catalog/index.c:1692
 #, c-format
-msgid "ValidateBinary: \"%s\" is not group read/execute"
-msgstr ""
+msgid "shared index \"%s\" can only be reindexed in stand-alone mode"
+msgstr "¹²ÏíË÷Òý \"%s\" Ö»ÄÜÔÚ¶ÀÁ¢ÔËÐÐģʽÖÐÖؽ¨Ë÷Òý"
 
-#: utils/init/findbe.c:125
+#: catalog/pg_type.c:198
 #, c-format
-msgid "ValidateBinary: \"%s\" is not other read/execute"
-msgstr ""
+msgid "invalid type internal size %d"
+msgstr "ÎÞЧÀàÐÍÄÚ²¿´óС %d"
 
-#: utils/init/findbe.c:174
+#: catalog/pg_type.c:204
 #, c-format
-msgid "FindExec: found \"%s\" using argv[0]"
+msgid "internal size %d is invalid for passed-by-value type"
 msgstr ""
 
-#: utils/init/findbe.c:177
-#, fuzzy, c-format
-msgid "FindExec: invalid binary \"%s\""
-msgstr "Define: ¸ø \"%s\" µÄÎÞЧ²ÎÊý"
-
-#: utils/init/findbe.c:187
-msgid "FindExec: searching PATH ..."
-msgstr ""
+#: catalog/pg_type.c:211
+msgid "fixed-size types must have storage PLAIN"
+msgstr "¹Ì¶¨´óСÀàÐͱØÐèÓÐÃ÷È·µÄ´æ´¢"
 
-#: utils/init/findbe.c:208
+#: catalog/pg_type.c:293 catalog/pg_type.c:525
 #, c-format
-msgid "FindExec: found \"%s\" using PATH"
-msgstr ""
+msgid "type \"%s\" already exists"
+msgstr "ÀàÐÍ \"%s\" ÒѾ­´æÔÚ"
 
-#: utils/init/findbe.c:215
+#: postmaster/pgarch.c:164
 #, c-format
-msgid "FindExec: could not read binary \"%s\""
+msgid "could not fork archiver: %m"
 msgstr ""
 
-#: utils/init/findbe.c:225
+#: postmaster/pgarch.c:392
 #, c-format
-msgid "FindExec: could not find a %s to execute"
-msgstr ""
-
-#: utils/init/miscinit.c:147 utils/init/miscinit.c:166
-#: utils/init/miscinit.c:174 utils/misc/guc.c:957 utils/misc/guc.c:1140
-#: utils/misc/guc.c:1936 utils/misc/guc.c:1950 utils/misc/guc.c:2705
-#: utils/misc/guc.c:2711 utils/misc/guc.c:2718 guc-file.l:147 guc-file.l:267
-#: guc-file.l:302
-msgid "out of memory"
-msgstr "ÄÚ´æÓþ¡"
+msgid "transaction log file \"%s\" could not be archived"
+msgstr "ÊÂÎñÈÕÖ¾Îļþ \"%s\" ²»Äܱ»¹éµµ"
 
-#: utils/init/miscinit.c:160
+#: postmaster/pgarch.c:475
 #, c-format
-msgid "cannot get current working directory: %m"
-msgstr "ÎÞ·¨»ñµÃµ±Ç°¹¤×÷Ŀ¼: %m"
+msgid "archive command \"%s\" failed: return code %d"
+msgstr "¹éµµÃüÁî \"%s\" Ê§°Ü: ·µ»ØÂëΪ %d"
 
-#: utils/init/miscinit.c:250
+#: postmaster/pgarch.c:480
 #, c-format
-msgid "SetCharSet: unknown tag %s in file %s"
-msgstr ""
+msgid "archived transaction log file \"%s\""
+msgstr "¹éµµÊÂÎñÈÕÖ¾Îļþ \"%s\""
 
-#: utils/init/miscinit.c:405 utils/init/miscinit.c:461
+#: postmaster/pgarch.c:526
 #, c-format
-msgid "GetCharSetByHost: unknown tag %s in file %s"
-msgstr ""
+msgid "could not open archive status directory \"%s\": %m"
+msgstr "ÎÞ·¨´ò¿ª¹éµµ×´Ì¬Ä¿Â¼ \"%s\": %m"
 
-#: utils/init/miscinit.c:619
-msgid "SET SESSION AUTHORIZATION: permission denied"
-msgstr "SET SESSION AUTHORIZATION: È¨ÏÞ²»¹»"
-
-#: utils/init/miscinit.c:639
+#: postmaster/pgarch.c:565
 #, c-format
-msgid "invalid user id %d"
-msgstr "·Ç·¨Óû§ id %d"
+msgid "could not read archive status directory \"%s\": %m"
+msgstr "ÎÞ·¨¶ÁÈ¡¹éµµ×´Ì¬Ä¿Â¼ \"%s\": %m"
 
-#: utils/init/miscinit.c:721
+#: postmaster/postmaster.c:390
 #, c-format
-msgid "Can't create lock file %s: %m"
-msgstr "ÎÞ·¨´´½¨ËøÎļþ %s: %m"
+msgid "%s: assert checking is not compiled in\n"
+msgstr "%s: Ã»ÓаѶÏÑÔ (assert) ¼ì²é±àÒë½øÀ´\n"
 
-#: utils/init/miscinit.c:732 utils/init/miscinit.c:735
+#: postmaster/postmaster.c:515 postmaster/postmaster.c:528
 #, c-format
-msgid "Can't read lock file %s: %m"
-msgstr "ÎÞ·¨¶ÁÈ¡ËøÎļþ %s: %m"
+msgid "Try \"%s --help\" for more information.\n"
+msgstr "ÇëÓà\"%s --help\" »ñÈ¡¸ü¶àµÄÐÅÏ¢.\n"
 
-#: utils/init/miscinit.c:745
+#: postmaster/postmaster.c:526
 #, c-format
-msgid "Bogus data in lock file %s"
-msgstr "ÔÚËøÎļþ %s ÖдæÔÚαÊý¾Ý"
+msgid "%s: invalid argument: \"%s\"\n"
+msgstr "%s: ÎÞЧ²ÎÊý: \"%s\"\n"
 
-#: utils/init/miscinit.c:819
+#: postmaster/postmaster.c:550
 #, c-format
 msgid ""
-"Can't remove old lock file %s: %m\n"
-"\tThe file seems accidentally left, but I couldn't remove it.\n"
-"\tPlease remove the file by hand and try again."
+"%s does not know where to find the database system data.\n"
+"This should be specified as \"pgdata\" in %s%s.\n"
 msgstr ""
-"ÎÞ·¨É¾³ý¾ÉµÄËøÎļþ %s: %m\n"
-"\tÎļþÏñÊÇÒâÍâÁôϵÄ, µ«ÊÇÎÒ²»ÄÜɾ³ýËü.\n"
-"\tÇëÊÖ¹¤É¾³ý´ËÎļþ, È»ºóÔÙÖØÊÔÒ»´Î."
 
-#: utils/init/miscinit.c:840
+#: postmaster/postmaster.c:582
 #, c-format
-msgid "Can't write lock file %s: %m"
-msgstr "ÎÞ·¨Ð´ÈëËøÎļþ %s: %m"
-
-#: utils/init/miscinit.c:946
-#, c-format
-msgid "Failed to rewrite %s: %m"
-msgstr "ÖØд %s Ê§°Ü: %m"
+msgid "%s could not write to external pid file %s\n"
+msgstr ""
 
-#: utils/init/miscinit.c:965
+#: postmaster/postmaster.c:603
 #, c-format
-msgid "Bogus data in %s"
-msgstr "ÔÚ %s ÖдæÔÚαÊý¾Ý"
+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"
 
-#: utils/init/miscinit.c:1031
+#: postmaster/postmaster.c:609
 #, c-format
-msgid "File %s is missing. This is not a valid data directory."
-msgstr ""
+msgid "%s: superuser_reserved_connections must be less than max_connections\n"
+msgstr "%s: ³¬¼¶Óû§±£ÁôÁª½ÓÊý±ØÐëСÓÚ×î´óÁª½ÓÊý\n"
 
-#: utils/init/miscinit.c:1038
+#: postmaster/postmaster.c:618
 #, c-format
-msgid "File %s does not contain valid data. You need to initdb."
-msgstr "Îļþ %s Ã»Óаüº¬ÓÐЧÊý¾Ý. ÄãÐèÒª initdb"
+msgid "%s: invalid datetoken tables, please fix\n"
+msgstr "%s: ÎÞЧµÄ datetoken ±í, ÇëÐÞ¸´\n"
 
-#: utils/init/miscinit.c:1043
+#: postmaster/postmaster.c:652
 #, c-format
-msgid ""
-"The data directory was initialized by PostgreSQL version %ld.%ld, which is "
-"not compatible with this version %s."
+msgid "%s: could not locate matching postgres executable"
 msgstr ""
 
-#: utils/init/postinit.c:114
-#, c-format
-msgid "Database \"%s\", OID %u, has disappeared from pg_database"
+#: postmaster/postmaster.c:719
+msgid "invalid list syntax for \"listen_addresses\""
 msgstr ""
 
-#: utils/init/postinit.c:123
+#: postmaster/postmaster.c:738
 #, c-format
-msgid "Database \"%s\" is not currently accepting connections"
-msgstr ""
+msgid "could not create listen socket for \"%s\""
+msgstr "ÎÞ·¨Îª \"%s\" ´´½¨¼àÌýÌ×½Ó×Ö"
 
-#: utils/init/postinit.c:259
-#, c-format
-msgid "Database \"%s\" does not exist in the system catalog."
-msgstr "ÔÚϵͳ±íÖÐÊý¾Ý¿â \"%s\" ²»´æÔÚ."
+#: postmaster/postmaster.c:767
+msgid "could not create Unix-domain socket"
+msgstr "ÎÞ·¨´´½¨ Unix-domain Ì×½Ó×Ö"
+
+#: postmaster/postmaster.c:775
+msgid "no socket created for listening"
+msgstr "ûÓÐΪ¼àÌý´´½¨Ì×½Ó×Ö"
 
-#: utils/init/postinit.c:267
+#: postmaster/postmaster.c:963
 #, c-format
-msgid ""
-"Database \"%s\" does not exist.\n"
-"\tThe database subdirectory '%s' is missing."
-msgstr ""
+msgid "data directory \"%s\" does not exist"
+msgstr "Êý¾ÝĿ¼ \"%s\" ²»´æÔÚ"
 
-#: utils/init/postinit.c:274
+#: postmaster/postmaster.c:968
 #, c-format
-msgid "Unable to change directory to '%s': %m"
-msgstr "ÎÞ·¨Ìøתµ½ '%s' Ä¿Â¼ÖÐ: %m"
+msgid "could not read permissions of directory \"%s\": %m"
+msgstr "ûÓжÁȡĿ¼ \"%s\" µÄȨÏÞ: %m"
 
-#: utils/init/postinit.c:303
+#: postmaster/postmaster.c:983
 #, c-format
-msgid "InitPostgres: bad backend id %d"
-msgstr "InitPostgres: ÎÞЧºó¶Ë id %d"
+msgid "data directory \"%s\" has group or world access"
+msgstr "×é»òÆäËûÓû§¶¼¿ÉÒÔ·ÃÎÊÊý¾ÝĿ¼ \"%s\""
 
-#: utils/init/postinit.c:354
-msgid "There are currently no users defined in this database system."
-msgstr "µ±Ç°Êý¾Ý¿âϵͳÖÐûÓж¨ÒåÓû§."
+#: postmaster/postmaster.c:985
+msgid "Permissions should be u=rwx (0700)."
+msgstr "ȨÏÞÓ¦¸ÃΪ u=rwx (0700)."
 
-#: utils/init/postinit.c:355
+#: postmaster/postmaster.c:996
 #, 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:390
-msgid "Non-superuser connection limit exceeded"
+"%s: could not find the database system\n"
+"Expected to find it in the directory \"%s\",\n"
+"but could not open file \"%s\": %s\n"
 msgstr ""
+"%s: ÎÞ·¨ÕÒµ½Êý¾Ý¿âϵͳ\n"
+"Ô¤ÆÚÔÚĿ¼ \"%s\" ÕÒµ½,\n"
+"µ«ÊÇÎÞ·¨´ò¿ªÎļþ \"%s\": %s\n"
 
-#: utils/mb/conv.c:374
+#: postmaster/postmaster.c:1041
 #, c-format
-msgid "UtfToLocal: could not convert UTF-8 (0x%04x). Ignored"
-msgstr "UtfToLocal: ÎÞ·¨×ª»» UTF-8 (0x%04x). ºöÂÔ"
+msgid "%s: could not fork background process: %s\n"
+msgstr "%s: ÎÞ·¨ fork ºǫ́½ø³Ì: %s\n"
 
-#: utils/mb/conv.c:401
+#: postmaster/postmaster.c:1063
 #, c-format
-msgid "Invalid encoding number %d"
-msgstr "ÎÞЧ±àÂë±àºÅ %d"
+msgid "%s: could not dissociate from controlling TTY: %s\n"
+msgstr "%s: ÎÞ·¨Óë¿ØÖÆ TTY ¶Ï¿ªÁªÏµ: %s\n"
 
-#: utils/mb/conv.c:438
+#: postmaster/postmaster.c:1086
 #, c-format
-msgid "LocalToUtf: could not convert (0x%04x) %s to UTF-8. Ignored"
-msgstr "LocalToUtf: ÎÞ·¨°Ñ (0x%04x) %s ×ª»»Îª UTF-8. ºöÂÔ"
-
-#: utils/mb/encnames.c:445
-msgid "pg_char_to_encname_struct(): encoding name too long"
-msgstr "pg_char_to_encname_struct(): ±àÂëÃû×ÖÌ«³¤"
-
-#: utils/mb/mbutils.c:196
-#, fuzzy, c-format
-msgid "default conversion proc for %s to %s not found"
-msgstr "δÕÒµ½Êý¾ÝĿ¼ %s"
+msgid ""
+"%s is the PostgreSQL server.\n"
+"\n"
+msgstr ""
+"%s ÊÇ PostgreSQL ·þÎñÆ÷.\n"
+"\n"
 
-#: utils/mb/mbutils.c:210
+#: postmaster/postmaster.c:1087
 #, c-format
-msgid "default conversion proc %u for %s to %s not found in pg_proc"
+msgid ""
+"Usage:\n"
+"  %s [OPTION]...\n"
+"\n"
 msgstr ""
+"Ó÷¨:\n"
+"  %s [Ñ¡Ïî]...\n"
+"\n"
 
-#: utils/mb/mbutils.c:269
+#: postmaster/postmaster.c:1094
 #, c-format
-msgid "Invalid source encoding name %s"
-msgstr "ÎÞЧ±àÂëÃû '%s'"
+msgid "  -d 1-5          debugging level\n"
+msgstr "  -d 1-5          µ÷ÊÔ¼¶±ð\n"
 
-#: utils/mb/mbutils.c:271
+#: postmaster/postmaster.c:1097
 #, c-format
-msgid "Invalid destination encoding name %s"
-msgstr "ÎÞЧÓû§Ãû '%s'"
-
-#: utils/mb/mbutils.c:281
-msgid "Encoding conversion failed"
-msgstr "±àÂëת»»Ê§°Ü"
+msgid "  -h HOSTNAME     host name or IP address to listen on\n"
+msgstr "  -h Ö÷»úÃû       ÕìÌýµÄÖ÷»úÃû»òÕß IP µØÖ·\n"
 
-#: utils/mb/mbutils.c:502
-msgid "SetDatabaseEncoding(): invalid database encoding"
-msgstr "SetDatabaseEncoding(): ÎÞЧµÄÊý¾Ý¿â±àÂë"
+#: postmaster/postmaster.c:1098
+#, c-format
+msgid "  -i              enable TCP/IP connections\n"
+msgstr "  -i              ´ò¿ª TCP/IP Áª½Ó\n"
 
-#: utils/mb/conversion_procs/utf8_and_iso8859_1/utf8_and_iso8859_1.c:87
-msgid "Could not convert UTF-8 to ISO8859-1"
-msgstr "ÎÞ·¨°Ñ UTF-8 ×ª»»Îª ISO8859-1"
+#: postmaster/postmaster.c:1099
+#, c-format
+msgid "  -k DIRECTORY    Unix-domain socket location\n"
+msgstr "  -k Ä¿Â¼         Unix ÓòÌ×½Ó×ÖµÄλÖÃ\n"
 
-#: utils/misc/guc.c:1238 utils/misc/guc.c:1253 utils/misc/guc.c:1268
-#: utils/misc/guc.c:1297
+#: postmaster/postmaster.c:1101
 #, c-format
-msgid "Failed to reset %s"
-msgstr "ÖØÖà%s Ê§°Ü"
+msgid "  -l              enable SSL connections\n"
+msgstr "  -l              ´ò¿ª SSL Áª½Ó\n"
 
-#: utils/misc/guc.c:1365 utils/misc/guc.c:1387 utils/misc/guc.c:1409
-#: utils/misc/guc.c:1439
+#: postmaster/postmaster.c:1103
 #, c-format
-msgid "Failed to commit %s"
-msgstr "Ìá½» %s Ê§°Ü"
+msgid "  -N MAX-CONNECT  maximum number of allowed connections\n"
+msgstr "  -N MAX-CONNECT  ÔÊÐí½¨Á¢µÄ×î´óÁª½ÓÊýÄ¿\n"
 
-#: utils/misc/guc.c:1618 utils/misc/guc.c:2168
+#: postmaster/postmaster.c:1104
 #, c-format
-msgid "'%s' is not a valid option name"
-msgstr "'%s' ²»ÊÇÒ»¸öÓÐЧµÄÑ¡ÏîÃû×Ö"
+msgid "  -o OPTIONS      pass \"OPTIONS\" to each server process\n"
+msgstr "  -o OPTIONS      °Ñ \"OPTIONS\" ´«µÝ¸øÿһ¸öºó¶Ë·þÎñÆ÷½ø³Ì\n"
 
-#: utils/misc/guc.c:1635
+#: postmaster/postmaster.c:1105
 #, c-format
-msgid "'%s' cannot be changed after server start"
-msgstr "·þÎñÆ÷Æô¶¯ºó, '%s' ²»Äܸıä"
+msgid "  -p PORT         port number to listen on\n"
+msgstr "  -p PORT         ¼àÌýµÄ¶Ë¿ÚºÅ\n"
 
-#: utils/misc/guc.c:1643
+#: postmaster/postmaster.c:1106
 #, c-format
-msgid "'%s' cannot be changed now"
-msgstr "'%s' ÏÖÔÚ²»Äܸıä"
+msgid ""
+"  -S              silent mode (start in background without logging output)\n"
+msgstr "  -S              °²¾²Ä£Ê½(ºó¶ËÆô¶¯Ö®ºó²»ÔټǼÈÕÖ¾Êä³ö)\n"
 
-#: utils/misc/guc.c:1670
+#: postmaster/postmaster.c:1111
 #, c-format
-msgid "'%s' cannot be set after connection start"
-msgstr "Áª½ÓÆô¶¯ºó, '%s' ²»ÄÜÉèÖÃ"
+msgid ""
+"  -n              do not reinitialize shared memory after abnormal exit\n"
+msgstr "  -n              ÔÚÒì³£Í˳öÖ®ºó²»ÔÙÖØгõʼ»¯¹²ÏíÄÚ´æ\n"
 
-#: utils/misc/guc.c:1678
+#: postmaster/postmaster.c:1112
 #, c-format
-msgid "'%s': permission denied"
-msgstr "'%s': È¨ÏÞ²»¹»"
+msgid "  -s              send SIGSTOP to all backend servers if one dies\n"
+msgstr "  -s              Èç¹ûÒ»¸öºó¶ËÍ˳ö, ÄÇôÏòËùÓкó¶Ë·¢ËÍ SIGSTOP\n"
 
-#: utils/misc/guc.c:1708
+#: postmaster/postmaster.c:1114
 #, c-format
-msgid "%s: setting ignored because previous source is higher priority"
+msgid ""
+"\n"
+"Please read the documentation for the complete list of run-time\n"
+"configuration settings and how to set them on the command line or in\n"
+"the configuration file.\n"
+"\n"
+"Report bugs to <pgsql-bugs@postgresql.org>.\n"
 msgstr ""
+"\n"
+"ÇëÔĶÁÎĵµ»ñÈ¡ÔËÐÐʱÅäÖÃÉèÖõÄÍêÕûÁбí\n"
+"ÒÔ¼°ÈçºÎÔÚÃüÁîÐлòÕßÔÚÅäÖÃÎļþÀïÉèÖÃËüÃǵÄÏêϸÐÅÏ¢.\n"
+"\n"
+"ÇëÏò <pgsql-bugs@postgresql.org> ±¨¸æ³ô³æ.\n"
 
-#: utils/misc/guc.c:1729
+#: postmaster/postmaster.c:1176
 #, c-format
-msgid "option '%s' requires a boolean value"
-msgstr "Ñ¡Ïî '%s' ÐèÒªÒ»¸ö²¼¶ûÖµ"
+msgid "select() failed in postmaster: %m"
+msgstr "postmaster select() Ê§°Ü: %m"
 
-#: utils/misc/guc.c:1743 utils/misc/guc.c:1814
-#, c-format
-msgid "invalid value for option '%s': %d"
-msgstr "Ñ¡Ïî '%s' µÄÖµÎÞЧ: %d"
+#: postmaster/postmaster.c:1327 postmaster/postmaster.c:1358
+msgid "incomplete startup packet"
+msgstr "²»ÍêÕûµÄÆô¶¯°ü"
 
-#: utils/misc/guc.c:1793
-#, c-format
-msgid "option '%s' expects an integer value"
-msgstr "Ñ¡Ïî '%s' ÒªÇóÊÇÒ»¸öÕûÊýÖµ"
+#: postmaster/postmaster.c:1339
+msgid "invalid length of startup packet"
+msgstr "ÎÞЧµÄÆô¶¯°ü³¤¶È"
 
-#: utils/misc/guc.c:1799
+#: postmaster/postmaster.c:1391
 #, c-format
-msgid "option '%s' value %d is outside of permissible range [%d .. %d]"
-msgstr "Ñ¡Ïî '%s' µÄÖµ %d ³¬³öÁËÔÊÐí·¶Î§ [%d .. %d]"
+msgid "failed to send SSL negotiation response: %m"
+msgstr "·¢ËÍ SSL Ð­ÉÌÏìӦʧ°Ü: %m"
 
-#: utils/misc/guc.c:1864
+#: postmaster/postmaster.c:1420
 #, c-format
-msgid "option '%s' expects a real number"
-msgstr "Ñ¡Ïî '%s' ÒªÇóÒ»¸öʵÊý"
+msgid "unsupported frontend protocol %u.%u: server supports %u.0 to %u.%u"
+msgstr "²»Ö§³ÖµÄÇ°¶ËЭÒé %u.%u: ·þÎñ¶ËÖ§³Ö %u.0 µ½ %u.%u"
 
-#: utils/misc/guc.c:1870
-#, c-format
-msgid "option '%s' value %g is outside of permissible range [%g .. %g]"
-msgstr "Ñ¡Ïî '%s' µÄÖµ %g ³¬³öÁËÔÊÐíµÄ·¶Î§ [%g .. %g]"
+#: postmaster/postmaster.c:1484
+msgid "invalid startup packet layout: expected terminator as last byte"
+msgstr "ÎÞЧµÄÆô¶¯°ü¸ñʽ: Ô¤¼Æ½áÊø·ûΪ×îºóÒ»¸ö×Ö½Ú"
 
-#: utils/misc/guc.c:1885
-#, c-format
-msgid "invalid value for option '%s': %g"
-msgstr "Ñ¡Ïî '%s' µÄÖµÎÞЧ: %g"
+#: postmaster/postmaster.c:1513
+msgid "no PostgreSQL user name specified in startup packet"
+msgstr "ÔÚÆô¶¯°üÖÐûÓÐÖ¸¶¨ PostgreSQL Óû§Ãû"
 
-#: utils/misc/guc.c:1979
-#, c-format
-msgid "invalid value for option '%s': '%s'"
-msgstr "Ñ¡Ïî '%s' µÄÖµÎÞЧ: '%s'"
+#: postmaster/postmaster.c:1566
+msgid "the database system is starting up"
+msgstr "Êý¾Ý¿âϵͳÆô¶¯ÖÐ"
 
-#: utils/misc/guc.c:2080 utils/misc/guc.c:2114 utils/misc/guc.c:2428
-#, c-format
-msgid "Option '%s' is not recognized"
-msgstr "Ñ¡Ïî '%s' ²»±»ÈÏ¿É"
+#: postmaster/postmaster.c:1571
+msgid "the database system is shutting down"
+msgstr "Êý¾Ý¿âϵͳֹͣÖÐ"
+
+#: postmaster/postmaster.c:1576
+msgid "the database system is in recovery mode"
+msgstr "Êý¾Ý¿âϵͳÔÚ»Ö¸´Ä£Ê½ÖÐ"
+
+#: postmaster/postmaster.c:1808
+msgid "received SIGHUP, reloading configuration files"
+msgstr "½ÓÊÕµ½ SIGHUP, ÖØÔØÅäÖÃÎļþ"
+
+#: postmaster/postmaster.c:1860
+msgid "received smart shutdown request"
+msgstr "½Óµ½µ½ÖÇÄÜ (smart) Í£Ö¹ÇëÇó"
+
+#: postmaster/postmaster.c:1896
+msgid "received fast shutdown request"
+msgstr "½ÓÊÕµ½¿ìËÙ (fast) Í£Ö¹ÇëÇó"
+
+#: postmaster/postmaster.c:1903
+msgid "aborting any active transactions"
+msgstr "ÖжÏÈκ줻îÊÂÎñ"
+
+#: postmaster/postmaster.c:1941
+msgid "received immediate shutdown request"
+msgstr "½ÓÊÕµ½Á¢¼´ (immediate) Í£Ö¹ÇëÇó"
+
+#: postmaster/postmaster.c:2014
+msgid "startup process"
+msgstr "Æô¶¯½ø³Ì"
+
+#: postmaster/postmaster.c:2017
+msgid "aborting startup due to startup process failure"
+msgstr "ÓÉÓÚÆô¶¯½ø³Ìʧ°Ü, ÖÕÖ¹Æô¶¯"
+
+#: postmaster/postmaster.c:2080
+msgid "background writer process"
+msgstr "ºǫ́дÈë½ø³Ì"
+
+#: postmaster/postmaster.c:2093
+msgid "archiver process"
+msgstr "¹éµµ½ø³Ì"
+
+#: postmaster/postmaster.c:2110
+msgid "statistics collector process"
+msgstr "ͳ¼ÆÊÕ¼¯Æ÷½ø³Ì"
+
+#: postmaster/postmaster.c:2124
+msgid "system logger process"
+msgstr "ϵͳÈÕÖ¾½ø³Ì"
+
+#: postmaster/postmaster.c:2145
+msgid "all server processes terminated; reinitializing"
+msgstr "ËùÓеķþÎñÆ÷½ø³Ì±»ÖÐÖ¹; ÖØгõʼ»¯"
+
+#: postmaster/postmaster.c:2191 postmaster/postmaster.c:2201
+msgid "server process"
+msgstr "·þÎñÆ÷½ø³Ì"
+
+#: postmaster/postmaster.c:2246
+msgid "terminating any other active server processes"
+msgstr "ÖжÏÈκÎÆäËüÒѼ¤»îµÄ·þÎñÆ÷½ø³Ì"
 
-#: utils/misc/guc.c:2175
+#: postmaster/postmaster.c:2343
 #, c-format
-msgid "SET %s takes only one argument"
-msgstr "SET %s Ö»ÄÜ´øÒ»¸ö²ÎÊý"
+msgid "%s (PID %d) exited with exit code %d"
+msgstr "%s (PID %d) ÒÑÍ˳ö, Í˳ö´úÂë %d"
 
-#: utils/misc/guc.c:2188 utils/misc/guc.c:2237
-msgid "flatten_set_variable_args: unexpected input"
-msgstr "flatten_set_variable_args: ÒâÍâµÄÊäÈë"
+#: postmaster/postmaster.c:2352
+#, c-format
+msgid "%s (PID %d) was terminated by signal %d"
+msgstr "%s (PID %d) ±»ÐźŠ%d ÖжÏ"
 
-#: utils/misc/guc.c:2276
-msgid "SET variable name is required"
-msgstr "SET ±äÁ¿ÃûÊDZØÐèµÄ"
+#: postmaster/postmaster.c:2361
+#, c-format
+msgid "%s (PID %d) exited with unexpected status %d"
+msgstr "%s (PID %d) ÒÑÍ˳ö, ÒâÍâ״̬ %d"
 
-#: utils/misc/guc.c:2812
+#: postmaster/postmaster.c:2486
 #, c-format
-msgid "cannot parse setting \"%s\""
-msgstr "ÎÞ·¨·ÖÎöÉèÖà\"%s\""
+msgid "could not fork new process for connection: %m"
+msgstr "ÎÞ·¨ÎªÁª½ÓÅÉÉúнø³Ì: %m"
 
-#: guc-file.l:158
-msgid "could not read configuration file `"
-msgstr "ÎÞ·¨¶ÁÈ¡ÅäÖÃÎļþ `"
+#: postmaster/postmaster.c:2525
+msgid "could not fork new process for connection: "
+msgstr "ÎÞ·¨ÎªÁª½ÓÅÉÉúнø³Ì: "
 
-#: guc-file.l:158
+#: postmaster/postmaster.c:2667
 #, c-format
-msgid "': %s"
-msgstr "': %s"
+msgid "getnameinfo_all() failed: %s"
+msgstr "getnameinfo_all() Ê§°Ü: %s"
 
-#: guc-file.l:259
+#: postmaster/postmaster.c:2676
 #, c-format
-msgid ":%u: syntax error, token=\"%s\""
-msgstr ":%u: Óï·¨´íÎó, ±ê¼Ç=\"%s\""
+msgid "connection received: host=%s port=%s"
+msgstr "Áª½Ó½ÓÊÕµ½: Ö÷»ú=%s ¶Ë¿Ú=%s"
 
-#: utils/mmgr/aset.c:333
+#: postmaster/postmaster.c:2748
 #, c-format
-msgid "Memory exhausted in AllocSetContextCreate(%lu)"
-msgstr "ÔÚ AllocSetContextCreate(%lu) ÖÐÄÚ´æºÄ¾¡"
+msgid "connection authorized: user=%s database=%s"
+msgstr "Áª½ÓÈÏÖ¤: Ö÷»ú=%s Êý¾Ý¿â=%s"
 
-#: utils/mmgr/aset.c:496 utils/mmgr/aset.c:693
+#: postmaster/postmaster.c:2924
 #, c-format
-msgid "Memory exhausted in AllocSetAlloc(%lu)"
-msgstr "ÔÚ AllocSetAlloc(%lu) ÖÐÄÚ´æºÄ¾¡"
+msgid "could not exec backend process \"%s\": %m"
+msgstr "ÎÞ·¨Ö´Ðкǫ́½ø³Ì \"%s\": %m"
 
-#: utils/mmgr/aset.c:757
+#: postmaster/postmaster.c:3321
 #, c-format
-msgid "AllocSetFree: detected write past chunk end in %s %p"
-msgstr ""
+msgid "could not fork startup process: %m"
+msgstr "ÎÞ·¨ÅÉÉúÆô¶¯½ø³Ì: %m"
 
-#: utils/mmgr/aset.c:778
+#: postmaster/postmaster.c:3325
 #, c-format
-msgid "AllocSetFree: cannot find block containing chunk %p"
-msgstr ""
+msgid "could not fork background writer process: %m"
+msgstr "ÎÞ·¨ fork ºǫ́дÈë½ø³Ì: %m"
 
-#: utils/mmgr/aset.c:832
+#: postmaster/postmaster.c:3329
 #, c-format
-msgid "AllocSetRealloc: detected write past chunk end in %s %p"
-msgstr ""
+msgid "could not fork process: %m"
+msgstr "ÎÞ·¨ÅÉÉú½ø³Ì: %m"
 
-#: utils/mmgr/aset.c:872
+#: postmaster/postmaster.c:3513
 #, c-format
-msgid "AllocSetRealloc: cannot find block containing chunk %p"
-msgstr ""
+msgid "could not read from backend variables file \"%s\": %m"
+msgstr "ÎÞ·¨´Óºó¶Ë¿É±ä (variables) Îļþ \"%s\" ¶ÁÈ¡: %m"
 
-#: utils/mmgr/aset.c:885
+#: postmaster/postmaster.c:3827
 #, c-format
-msgid "Memory exhausted in AllocSetReAlloc(%lu)"
-msgstr "ÔÚ AllocSetReAlloc(%lu) ÖÐÄÚ´æºÄ¾¡"
+msgid "ERROR: failed to wait on child process handle: %d\n"
+msgstr "´íÎó: µÈ´ý×Ó½ø³Ìʧ°Ü: %d\n"
 
-#: utils/mmgr/aset.c:1055
+#: postmaster/pgstat.c:257
 #, c-format
-msgid "AllocSetCheck: %s: empty block %p"
-msgstr "AllocSetCheck: %s: ¿Õ¿é %p"
+msgid "could not resolve \"localhost\": %s"
+msgstr "ÎÞ·¨½âÎö \"localhost\": %s"
 
-#: utils/mmgr/aset.c:1077
+#: postmaster/pgstat.c:285
 #, c-format
-msgid "AllocSetCheck: %s: req size > alloc size for chunk %p in block %p"
-msgstr ""
+msgid "could not create socket for statistics collector: %m"
+msgstr "ÎÞ·¨ÎªÍ³¼ÆÊÕ¼¯Æ÷´´½¨Ì×½Ó×Ö: %m"
 
-#: utils/mmgr/aset.c:1080
+#: postmaster/pgstat.c:297
 #, c-format
-msgid "AllocSetCheck: %s: bad size %lu for chunk %p in block %p"
-msgstr ""
+msgid "could not bind socket for statistics collector: %m"
+msgstr "ÎÞ·¨°ó¶¨Í³¼ÆÊÕ¼¯Æ÷µÄÌ×½Ó×Ö: %m"
 
-#: utils/mmgr/aset.c:1086
+#: postmaster/pgstat.c:308
 #, c-format
-msgid "AllocSetCheck: %s: bad single-chunk %p in block %p"
-msgstr ""
+msgid "could not get address of socket for statistics collector: %m"
+msgstr "ÎÞ·¨»ñµÃͳ¼ÆÊÕ¼¯Æ÷µÄÌ×½Ó×ÖµØÖ·: %m"
 
-#: utils/mmgr/aset.c:1095
+#: postmaster/pgstat.c:324
 #, c-format
-msgid "AllocSetCheck: %s: bogus aset link in block %p, chunk %p"
-msgstr ""
+msgid "could not connect socket for statistics collector: %m"
+msgstr "ÎÞ·¨Áª½Óͳ¼ÆÊÕ¼¯Æ÷µÄÌ×½Ó×Ö: %m"
 
-#: utils/mmgr/aset.c:1102
+#: postmaster/pgstat.c:341
 #, c-format
-msgid "AllocSetCheck: %s: detected write past chunk end in block %p, chunk %p"
-msgstr ""
+msgid "could not send test message on socket for statistics collector: %m"
+msgstr "ÎÞ·¨ÎªÍ³¼ÆÊÕ¼¯Æ÷ÔÚÌ×½Ó×ÖÉÏ·¢ËͲâÊÔÐÅÏ¢: %m"
 
-#: utils/mmgr/aset.c:1112
+#: postmaster/pgstat.c:366 postmaster/pgstat.c:1610
 #, c-format
-msgid "AllocSetCheck: %s: found inconsistent memory block %p"
-msgstr "AllocSetCheck: %s: ·¢ÏÖ²»Ò»ÖµÄÄÚ´æ¿é %p"
+msgid "select() failed in statistics collector: %m"
+msgstr "ÔÚͳ¼ÆÊÕ¼¯Æ÷ÖРselect() Ê§°Ü: %m"
 
-#: utils/mmgr/mcxt.c:478 utils/mmgr/mcxt.c:499 utils/mmgr/mcxt.c:524
+#: postmaster/pgstat.c:381
+msgid "test message did not get through on socket for statistics collector"
+msgstr "ͳ¼ÆÊÕ¼¯Æ÷µÄ²âÊÔÐÅϢûÓÐͨ¹ýÌ×½Ó×Ö: %m"
+
+#: postmaster/pgstat.c:393
 #, c-format
-msgid "MemoryContextAlloc: invalid request size %lu"
-msgstr "MemoryContextAlloc: ÎÞЧµÄÄÚ´æ·ÖÅä³ß´ç %lu"
+msgid "could not receive test message on socket for statistics collector: %m"
+msgstr "ÎÞ·¨ÎªÍ³¼ÆÊÕ¼¯Æ÷ÔÚÌ×½Ó×ÖÉϽÓÊÕ²âÊÔÐÅÏ¢: %m"
+
+#: postmaster/pgstat.c:403
+msgid "incorrect test message transmission on socket for statistics collector"
+msgstr "ͳ¼ÆÊÕ¼¯Æ÷ÔÚÌ×½Ó×ÖÉϲ»ÕýÈ·µÄ²âÊÔÐÅÏ¢ transmission: %m"
 
-#: utils/mmgr/mcxt.c:588
+#: postmaster/pgstat.c:418
+msgid "disabling statistics collector for lack of working socket"
+msgstr "µ±È±·¦¿ÉÓÃÌ×½Ó×ÖʱȡÏûͳ¼ÆÊÕ¼¯Æ÷"
+
+#: postmaster/pgstat.c:432
 #, c-format
-msgid "repalloc: invalid request size %lu"
-msgstr "repalloc: ÎÞЧµÄÄÚ´æ·ÖÅä³ß´ç %lu"
+msgid "could not set statistics collector socket to nonblocking mode: %m"
+msgstr "ÎÞ·¨°Ñͳ¼ÆÊÕ¼¯Æ÷µÄÌ×½Ó×ÖÉèÖÃΪ·Ç×èÈûģʽ: %m"
 
-#: utils/mmgr/portalmem.c:87
-msgid "out of memory in PortalHashTable"
-msgstr "ÔÚ PortalHashTable ÖÐÄÚ´æÒç³ö"
+#: postmaster/pgstat.c:571
+msgid "statistics collector startup skipped"
+msgstr "ºöÂÔͳ¼ÆÊÕ¼¯Æ÷Æô¶¯"
 
-#: utils/mmgr/portalmem.c:89
-msgid "trying to insert a portal name that exists."
-msgstr "ÊÔ×ŲåÈëÒ»¸öÒѾ­´æÔÚµÄÈë¿ÚÃû×Ö"
+#: postmaster/pgstat.c:605
+#, c-format
+msgid "could not fork statistics buffer: %m"
+msgstr "ÎÞ·¨ÅÉÉú (fork) Í³¼ÆÐÅÏ¢»º³åÇø: %m"
 
-#: utils/mmgr/portalmem.c:102
-msgid "trying to delete portal name that does not exist."
-msgstr "ÊÔ×Åɾ³ýÒ»¸ö²»´æÔÚµÄÈë¿ÚÃû×Ö"
+#: postmaster/pgstat.c:963
+msgid "must be superuser to reset statistics counters"
+msgstr "±ØÐëΪ³¬¼¶Óû§²Å¿ÉÒÔÖØÖÃͳ¼Æ¼ÆÊýÆ÷"
 
-#: utils/mmgr/portalmem.c:197
+#: postmaster/pgstat.c:1411
 #, c-format
-msgid "CreatePortal: portal \"%s\" already exists"
-msgstr "CreatePortal: Èë¿Ú \"%s\" ÒѾ­´æÔÚ"
+msgid "could not create pipe for statistics buffer: %m"
+msgstr "ÎÞ·¨ÎªÍ³¼Æ»º³åÇø´´½¨¹ÜµÀ: %m"
 
-#: utils/sort/logtape.c:199
+#: postmaster/pgstat.c:1424
 #, c-format
-msgid ""
-"ltsWriteBlock: failed to write block %ld of temporary file\n"
-"\t\tPerhaps out of disk space?"
-msgstr ""
-"ltsWriteBlock: Ð´ÁÙʱÎļþ¿é %ld Ê§°Ü\n"
-"\t\tÊÇ·ñ´ÅÅÌÂúÁË?"
+msgid "could not fork statistics collector: %m"
+msgstr "ÎÞ·¨ÅÉÉú (fork) Í³¼ÆÊÕ¼¯Æ÷: %m"
 
-#: utils/sort/logtape.c:214
+#: 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
 #, c-format
-msgid "ltsReadBlock: failed to read block %ld of temporary file"
-msgstr "ltsReadBlock: ¶ÁÈ¡ÁÙʱÎļþ¿é %ld Ê§°Ü"
+msgid "could not read from statistics collector pipe: %m"
+msgstr "ÎÞ·¨´Óͳ¼ÆÊÕ¼¯Æ÷¹ÜµÀ¶ÁÈ¡: %m"
 
-#: utils/sort/logtape.c:569
-msgid "LogicalTapeWrite: impossible state"
-msgstr "LogicalTapeWrite: ²»¿ÉÄܵÄ״̬"
+#: postmaster/pgstat.c:1674
+msgid "invalid statistics message length"
+msgstr "ÎÞЧµÄͳ¼ÆÐÅÏ¢³¤¶È"
 
-#: utils/sort/logtape.c:831
-msgid "LogicalTapeBackspace: unexpected end of tape"
-msgstr ""
+#: postmaster/pgstat.c:1821
+#, c-format
+msgid "could not set statistics collector pipe to nonblocking mode: %m"
+msgstr "ÎÞ·¨°Ñͳ¼ÆÊÕ¼¯Æ÷¹ÜµÀÉèÖÃΪ·Ç×èÈûģʽ: %m"
 
-#: utils/sort/logtape.c:888 utils/sort/logtape.c:898
-msgid "LogicalTapeSeek: unexpected end of tape"
-msgstr ""
+#: postmaster/pgstat.c:1861
+msgid "statistics buffer is full"
+msgstr "ͳ¼ÆÐÅÏ¢»º³åÇøÒÑÂú"
 
-#: utils/sort/tuplesort.c:694
-msgid "tuplesort_puttuple: invalid state"
-msgstr "tuplesort_puttuple: ÎÞЧ״̬"
+#: postmaster/pgstat.c:1892
+#, c-format
+msgid "select() failed in statistics buffer: %m"
+msgstr "ÔÚͳ¼Æ»º³åÇøÖРselect() Ê§°Ü: %m"
 
-#: utils/sort/tuplesort.c:741
-msgid "tuplesort_performsort: invalid state"
-msgstr "tuplesort_performsort: ÎÞЧ״̬"
+#: postmaster/pgstat.c:1908
+#, c-format
+msgid "could not read statistics message: %m"
+msgstr "ÎÞ·¨¶Áȡͳ¼ÆÐÅÏ¢: %m"
 
-#: utils/sort/tuplesort.c:859 utils/sort/tuplesort.c:874
-msgid "tuplesort_gettuple: bogus tuple len in backward scan"
-msgstr ""
+#: postmaster/pgstat.c:1973
+#, c-format
+msgid "could not write to statistics collector pipe: %m"
+msgstr "ÎÞ·¨Ð´Èëͳ¼ÆÊÕ¼¯Æ÷¹ÜµÀ: %m"
 
-#: utils/sort/tuplesort.c:926
-msgid "tuplesort_gettuple: invalid state"
-msgstr "tuplesort_gettuple: ÎÞЧ״̬"
+#: postmaster/pgstat.c:2039
+#, c-format
+msgid "invalid server process ID %d"
+msgstr "ÎÞЧµÄ·þÎñÆ÷½ø³Ì ID %d"
+
+#: postmaster/pgstat.c:2234
+#, c-format
+msgid "could not open temporary statistics file \"%s\": %m"
+msgstr "ÎÞ·¨´ò¿ªÁÙʱͳ¼ÆÎļþ \"%s\": %m"
 
-#: utils/sort/tuplesort.c:1486
-msgid "tuplesort_rescan: invalid state"
-msgstr "tuplesort_rescan: ÎÞЧ״̬"
+#: postmaster/pgstat.c:2261
+msgid "database hash table corrupted during cleanup --- abort"
+msgstr "ÇåÀí¹ý³ÌÖÐÊý¾Ý¿âÉ¢Áбí»Ù»µ --- ÖÕÖ¹"
 
-#: utils/sort/tuplesort.c:1513
-msgid "tuplesort_markpos: invalid state"
-msgstr "tuplesort_markpos: ÎÞЧ״̬"
+#: postmaster/pgstat.c:2298
+#, c-format
+msgid "tables hash table for database %u corrupted during cleanup --- abort"
+msgstr "ÇåÀí¹ý³ÌÖÐÊý¾Ý¿â %u µÄ±íÉ¢Áбí»Ù»µ --- ÖÕÖ¹"
 
-#: utils/sort/tuplesort.c:1538
-msgid "tuplesort_restorepos failed"
-msgstr "tuplesort_restorepos Ê§°Ü"
+#: postmaster/pgstat.c:2347
+#, c-format
+msgid "could not close temporary statistics file \"%s\": %m"
+msgstr "ÎÞ·¨¹Ø±ÕÁÙʱͳ¼ÆÎļþ \"%s\": %m"
 
-#: utils/sort/tuplesort.c:1542
-msgid "tuplesort_restorepos: invalid state"
-msgstr "tuplesort_restorepos: ÎÞЧ״̬"
+#: postmaster/pgstat.c:2356
+#, c-format
+msgid "could not rename temporary statistics file \"%s\" to \"%s\": %m"
+msgstr "ÎÞ·¨°ÑÁÙʱͳ¼ÆÎļþ \"%s\" ÖØÃüÃûΪ \"%s\": %m"
 
-#: utils/sort/tuplesort.c:1665
-msgid "tuplesort: unexpected end of tape"
-msgstr ""
+#: postmaster/pgstat.c:2378
+msgid "dead-server-process hash table corrupted during cleanup --- abort"
+msgstr "ÇåÀí¹ý³ÌÖÐËÀ·þÎñÆ÷½ø³Ì (dead-server-process) É¢Áбí»Ù»µ --- ÖÕÖ¹"
 
-#: utils/sort/tuplesort.c:1667 utils/sort/tuplesort.c:2006
-#: utils/sort/tuplesort.c:2010 utils/sort/tuplesort.c:2133
-#: utils/sort/tuplesort.c:2137 utils/sort/tuplesort.c:2205
-#: utils/sort/tuplesort.c:2209
-msgid "tuplesort: unexpected end of data"
-msgstr ""
+#: 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
+msgid "corrupted pgstat.stat file"
+msgstr "Ë𻵵Ġpgstat.stat Îļþ"
 
-#: utils/sort/tuplesort.c:1785
+#: postmaster/syslogger.c:315
 #, c-format
-msgid "SelectSortFunction: cache lookup failed for operator %u"
-msgstr ""
+msgid "select() failed in logger process: %m"
+msgstr "ÈÕÖ¾½ø³ÌÖеĠselect() Ê§°Ü: %m"
 
-#: utils/sort/tuplesort.c:1897
+#: postmaster/syslogger.c:327 postmaster/syslogger.c:732
 #, c-format
-msgid "Invalid SortFunctionKind %d"
-msgstr "ÎÞЧµÄ SortFunctionKind %d"
+msgid "could not read from logger pipe: %m"
+msgstr "ÎÞ·¨´ÓÈÕÖ¾¹ÜµÀ¶ÁÈ¡: %m"
 
-#: utils/sort/tuplesort.c:2085
-msgid "Cannot create unique index. Table contains non-unique values"
-msgstr "ÎÞ·¨´´½¨Î¨Ò»Ë÷Òý. ±íº¬ÓзÇΨһֵ"
+#: postmaster/syslogger.c:359
+msgid "logger shutting down"
+msgstr "ÈÕÖ¾ÕýÔڹرÕ"
 
-#: utils/sort/tuplesort.c:2161
-msgid "copytup_datum() should not be called"
-msgstr "copytup_datum() ½«²»±»µ÷ÓÃ"
+#: postmaster/syslogger.c:403 postmaster/syslogger.c:417
+#, c-format
+msgid "could not create pipe for syslogging: %m"
+msgstr "ÎÞ·¨ÎªÍ³¼ÆÈÕÖ¾ (syslogging) ´´½¨¹ÜµÀ: %m"
 
-#: utils/sort/tuplestore.c:341
-msgid "tuplestore_puttuple: seek(EOF) failed"
-msgstr "tuplestore_puttuple: seek(EOF) Ê§°Ü"
+#: postmaster/syslogger.c:445
+#, c-format
+msgid "could not create logfile \"%s\": %m"
+msgstr "ÎÞ·¨´´½¨ÈÕÖ¾Îļþ \"%s\": %m"
 
-#: utils/sort/tuplestore.c:346
-msgid "tuplestore_puttuple: invalid state"
-msgstr "tuplestore_puttuple: ÎÞЧ״̬"
+#: postmaster/syslogger.c:475
+#, c-format
+msgid "could not fork system logger: %m"
+msgstr "ÎÞ·¨ÅÉÉú (fork) ÏµÍ³ÈÕÖ¾: %m"
 
-#: utils/sort/tuplestore.c:410
-msgid "tuplestore_gettuple: seek() failed"
-msgstr "tuplestore_gettuple: seek() Ê§°Ü"
+#: postmaster/syslogger.c:507
+#, c-format
+msgid "could not redirect stdout: %m"
+msgstr "ÎÞ·¨Öض¨Ïòµ½±ê×¼Êä³ö (stdout) : %m"
 
-#: utils/sort/tuplestore.c:468 utils/sort/tuplestore.c:482
-msgid "tuplestore_gettuple: bogus tuple len in backward scan"
-msgstr ""
+#: postmaster/syslogger.c:512 postmaster/syslogger.c:525
+#, c-format
+msgid "could not redirect stderr: %m"
+msgstr "ÎÞ·¨Öض¨Ïòµ½±ê×¼´íÎó (stderr) : %m"
 
-#: utils/sort/tuplestore.c:487
-msgid "tuplestore_gettuple: invalid state"
-msgstr "tuplestore_gettuple: ÎÞЧ״̬"
+#: postmaster/syslogger.c:701
+#, c-format
+msgid "could not write to logfile: %m"
+msgstr "ÎÞ·¨Ð´ÈëÈÕÖ¾Îļþ: %m"
 
-#: utils/sort/tuplestore.c:539
-msgid "tuplestore_rescan: seek(0) failed"
-msgstr "tuplestore_rescan: seek(0) Ê§°Ü"
+#: postmaster/syslogger.c:775
+#, c-format
+msgid "could not open new logfile \"%s\": %m"
+msgstr "ÎÞ·¨´ò¿ªÐµÄÈÕÖ¾Îļþ \"%s\": %m"
 
-#: utils/sort/tuplestore.c:542
-msgid "tuplestore_rescan: invalid state"
-msgstr "tuplestore_rescan: ÎÞЧ״̬"
+#: postmaster/syslogger.c:787
+msgid "disabling auto rotation (use SIGHUP to reenable)"
+msgstr ""
 
-#: utils/sort/tuplestore.c:578
-msgid "tuplestore_markpos: invalid state"
-msgstr "tuplestore_markpos: ÎÞЧ״̬"
+#: postmaster/bgwriter.c:336
+#, c-format
+msgid "checkpoints are occurring too frequently (%d seconds apart)"
+msgstr ""
 
-#: utils/sort/tuplestore.c:607
-msgid "tuplestore_restorepos failed"
-msgstr "tuplestore_restorepos Ê§°Ü"
+#: postmaster/bgwriter.c:338
+msgid ""
+"Consider increasing the configuration parameter \"checkpoint_segments\"."
+msgstr "ÈÏΪÔö¼ÓÅäÖòÎÊý \"checkpoint_segments\"."
 
-#: utils/sort/tuplestore.c:610
-msgid "tuplestore_restorepos: invalid state"
-msgstr "tuplestore_restorepos: ÎÞЧ״̬"
+#: postmaster/bgwriter.c:490
+msgid "insufficient shared memory for bgwriter"
+msgstr "ûÓÐ×ã¹»µÄ¹²ÏíÄÚ´æ¸øºǫ́дÈë½ø³Ì"
 
-#: utils/sort/tuplestore.c:630
-msgid "tuplestore: unexpected end of tape"
+#: postmaster/bgwriter.c:555
+msgid "checkpoint request failed"
 msgstr ""
 
-#: utils/sort/tuplestore.c:632 utils/sort/tuplestore.c:692
-#: utils/sort/tuplestore.c:696
-msgid "tuplestore: unexpected end of data"
+#: postmaster/bgwriter.c:556
+msgid "Consult the postmaster log for details."
+msgstr "ÏêϸÐÅÏ¢Çë²Î¿¼·þÎñÆ÷ÈÕÖ¾."
+
+#: bootstrap/bootstrap.c:500
+msgid ""
+"Usage:\n"
+"  postgres -boot [OPTION]... DBNAME\n"
+"  -c NAME=VALUE    set run-time parameter\n"
+"  -d 1-5           debug level\n"
+"  -D datadir       data directory\n"
+"  -F               turn off fsync\n"
+"  -o file          send debug output to file\n"
+"  -x num           internal use\n"
 msgstr ""
+"Ó÷¨:\n"
+"  postgres -boot [OPTION]... DBNAME\n"
+"  -c NAME=VALUE    ÉèÖÃÔËÐÐʱ²ÎÊý\n"
+"  -d 1-5           ³ý´í¼¶±ð\n"
+"  -D               Êý¾ÝĿ¼\n"
+"  -F               ¹Ø±Õ fsync\n"
+"  -o file          °Ñµ÷ÊÔÐÅÏ¢Êä³öµ½Îļþ file\n"
+"  -x num           ÄÚ²¿Ê¹ÓÃ\n"
 
-#: utils/sort/tuplestore.c:664 utils/sort/tuplestore.c:667
-#: utils/sort/tuplestore.c:671
-msgid "tuplestore: write failed"
-msgstr "tuplestore: Ð´Ê§°Ü"
+#~ msgid "could not remove junction dir \"%s\": %m"
+#~ msgstr "ÎÞ·¨É¾³ýÁ¬½Ó (junction) Ä¿Â¼ \"%s\": %m"
 
-#: utils/time/tqual.c:982
-msgid "CopyQuerySnapshot: no snapshot has been set"
-msgstr "CopyQuerySnapshot: Ã»ÓпìÕÕ±»ÉèÖÃ"
+#~ msgid "Input has wrong number of columns."
+#~ msgstr "´íÎóµÄÊäÈë×ֶθöÊý"