diff --git a/src/bin/initdb/nls.mk b/src/bin/initdb/nls.mk
index 6b2b72a78574f9e1050eaf791dc2a3b54a95c0b3..dc6ae86867a7b8e9446c67850f1ac979c989fcd0 100644
--- a/src/bin/initdb/nls.mk
+++ b/src/bin/initdb/nls.mk
@@ -1,5 +1,5 @@
-# $PostgreSQL: pgsql/src/bin/initdb/nls.mk,v 1.9 2004/08/02 15:17:16 petere Exp $
+# $PostgreSQL: pgsql/src/bin/initdb/nls.mk,v 1.10 2004/08/10 19:06:18 petere Exp $
 CATALOG_NAME	:= initdb
-AVAIL_LANGUAGES	:= de fr it pt_BR ru sk sv zh_TW
+AVAIL_LANGUAGES	:= de fr it pt_BR ru sk sv zh_CN zh_TW
 GETTEXT_FILES	:= initdb.c
 GETTEXT_TRIGGERS:= _ simple_prompt
diff --git a/src/bin/initdb/po/zh_CN.po b/src/bin/initdb/po/zh_CN.po
new file mode 100644
index 0000000000000000000000000000000000000000..70dd3b86ed5e00374fe36ed27191e8b77ad89067
--- /dev/null
+++ b/src/bin/initdb/po/zh_CN.po
@@ -0,0 +1,544 @@
+# SOME DESCRIPTIVE TITLE.
+# This file is put in the public domain.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: PostgreSQL 7.4\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2004-08-05 14:27+0000\n"
+"PO-Revision-Date: 2003-09-15 13:48:19+0800\n"
+"Last-Translator: Bao Wei <weibao@qmail.zhengmai.net.cn>\n"
+"Language-Team: Weiping He <laser@zhengmai.com.cn>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=GB2312\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: initdb.c:233 initdb.c:247
+#, c-format
+msgid "%s: out of memory\n"
+msgstr "%s: 内存溢出\n"
+
+#: initdb.c:329 initdb.c:1300
+#, c-format
+msgid "%s: could not open file \"%s\" for reading: %s\n"
+msgstr "%s: 为了读取, 无法打开文件 \"%s\": %s\n"
+
+#: initdb.c:387
+#, c-format
+msgid "%s: could not open file \"%s\" for writing: %s\n"
+msgstr "%s: 为了写, 无法打开文件 \"%s\": %s\n"
+
+#: initdb.c:515 initdb.c:524 initdb.c:532
+#, c-format
+msgid "%s: failed\n"
+msgstr "%s: 失败\n"
+
+#: initdb.c:521
+#, c-format
+msgid "%s: removing data directory \"%s\"\n"
+msgstr "%s: 删除数据目录 \"%s\"\n"
+
+#: initdb.c:529
+#, c-format
+msgid "%s: removing contents of data directory \"%s\"\n"
+msgstr "%s: 删除数据目录 \"%s\" 的内容\n"
+
+#: initdb.c:540
+#, c-format
+msgid "%s: data directory \"%s\" not removed at user's request\n"
+msgstr "%s: 在用户的要求下数据库目录 \"%s\" 不被删除\n"
+
+#: initdb.c:566
+#, c-format
+msgid ""
+"%s: cannot be run as root\n"
+"Please log in (using, e.g., \"su\") as the (unprivileged) user that will\n"
+"own the server process.\n"
+msgstr ""
+"%s: 无法以 root 用户运行\n"
+"请以服务器进程所有者的用户 (无特权) 身份\n"
+"登陆 (使用, e.g., \"su\").\n"
+
+#: initdb.c:617
+#, c-format
+msgid "%s: \"%s\" is not a valid server encoding name\n"
+msgstr "%s: \"%s\" 不是一个有效的服务器编码名字\n"
+
+#: initdb.c:772
+#, c-format
+msgid "%s: warning: encoding mismatch\n"
+msgstr "%s: 警告: 编码不匹配\n"
+
+#: initdb.c:774
+#, c-format
+msgid ""
+"The encoding you selected (%s) and the encoding that the selected\n"
+"locale uses (%s) are not known to match.  This may lead to\n"
+"misbehavior in various character string processing functions.  To fix\n"
+"this situation, rerun %s and either do not specify an encoding\n"
+"explicitly, or choose a matching combination.\n"
+msgstr ""
+"你选择的编码 (%s) 和选择的 locale 使用的编码 (%s) 是明显不匹配的.\n"
+"这样将导致处理不同字符串的函数产生错误.\n"
+"要修复次问题, 重新运行 %s 并且不要明确指定编码, 或者先则一个匹配\n"
+"类型.\n"
+"\n"
+
+#: initdb.c:926
+#, c-format
+msgid ""
+"%s: file \"%s\" does not exist\n"
+"This means you have a corrupted installation or identified\n"
+"the wrong directory with the invocation option -L.\n"
+msgstr ""
+"%s: 文件 \"%s\" 不存在\n"
+"这意味着您的安装发生了错误或\n"
+"使用 -L 选项指定了错误的路径.\n"
+
+#: initdb.c:991
+#, c-format
+msgid "selecting default max_connections ... "
+msgstr "选择默认最大联接数 (max_connections) ... "
+
+#: initdb.c:1027
+#, c-format
+msgid "selecting default shared_buffers ... "
+msgstr "选择默认共享缓冲区大小 (shared_buffers) ... "
+
+#: initdb.c:1060
+msgid "creating configuration files ... "
+msgstr "创建配置文件 ... "
+
+#: initdb.c:1147
+#, c-format
+msgid "creating template1 database in %s/base/1 ... "
+msgstr "在 %s/base/1 中创建 template1 数据库 ... "
+
+#: initdb.c:1163
+#, c-format
+msgid ""
+"%s: input file \"%s\" does not belong to PostgreSQL %s\n"
+"Check your installation or specify the correct path using the option -L.\n"
+msgstr ""
+"%s: 输入文件 \"%s\" 不属于 PostgreSQL %s\n"
+"检查你的安装或使用 -L 选项指定正确的路径.\n"
+
+#: initdb.c:1239
+msgid "initializing pg_shadow ... "
+msgstr "初始化 pg_shadow ... "
+
+#: initdb.c:1275
+msgid "Enter new superuser password: "
+msgstr "输入新的超级用户口令: "
+
+#: initdb.c:1276
+msgid "Enter it again: "
+msgstr "再输入一遍: "
+
+#: initdb.c:1279
+#, c-format
+msgid "Passwords didn't match.\n"
+msgstr "口令不匹配.\n"
+
+#: initdb.c:1306
+#, c-format
+msgid "%s: could not read password from file \"%s\": %s\n"
+msgstr "%s: 无法从文件 \"%s\" 读取口令: %s\n"
+
+#: initdb.c:1319
+#, c-format
+msgid "setting password ... "
+msgstr "设置口令 ... "
+
+#: initdb.c:1343
+#, c-format
+msgid "%s: The password file was not generated. Please report this problem.\n"
+msgstr "%s: 口令文件没有生成. 请报告这个问题.\n"
+
+#: initdb.c:1373
+msgid "enabling unlimited row size for system tables ... "
+msgstr "启动不限制系统表行大小 ... "
+
+#: initdb.c:1446
+msgid "initializing pg_depend ... "
+msgstr "初始化 pg_depend ... "
+
+#: initdb.c:1474
+msgid "creating system views ... "
+msgstr "创建系统视图 ... "
+
+#: initdb.c:1511
+msgid "loading pg_description ... "
+msgstr "加载 pg_description ... "
+
+#: initdb.c:1559
+msgid "creating conversions ... "
+msgstr "创建字符集转换 ... "
+
+#: initdb.c:1615
+msgid "setting privileges on built-in objects ... "
+msgstr "对内建对象设置权限 ... "
+
+#: initdb.c:1673
+msgid "creating information schema ... "
+msgstr "创建信息模式 ... "
+
+#: initdb.c:1735
+msgid "vacuuming database template1 ... "
+msgstr "清理数据库 template1 ... "
+
+#: initdb.c:1791
+msgid "copying template1 to template0 ... "
+msgstr "拷贝 template1 到 template0 ... "
+
+#: initdb.c:1848
+#, c-format
+msgid "caught signal\n"
+msgstr "捕获信号\n"
+
+#: initdb.c:1853
+#, c-format
+msgid "could not write to child process\n"
+msgstr "无法写到子进程\n"
+
+#: initdb.c:1859
+#, c-format
+msgid "ok\n"
+msgstr "成功\n"
+
+#: initdb.c:1889
+#, c-format
+msgid "%s: invalid locale name \"%s\"\n"
+msgstr "%s: 无效的 locale 名字 \"%s\"\n"
+
+#: initdb.c:1956
+#, c-format
+msgid ""
+"%s initializes a PostgreSQL database cluster.\n"
+"\n"
+msgstr ""
+"%s 初始化一个 PostgreSQL 数据库簇.\n"
+"\n"
+
+#: initdb.c:1957
+#, c-format
+msgid "Usage:\n"
+msgstr "使用方法:\n"
+
+#: initdb.c:1958
+#, c-format
+msgid "  %s [OPTION]... [DATADIR]\n"
+msgstr "  %s [选项]... [DATADIR]\n"
+
+#: initdb.c:1959
+#, c-format
+msgid ""
+"\n"
+"Options:\n"
+msgstr ""
+"\n"
+"选项:\n"
+
+#: initdb.c:1960
+#, c-format
+msgid " [-D, --pgdata=]DATADIR     location for this database cluster\n"
+msgstr "  -D, --pgdata=DATADIR      当前数据库簇的位置\n"
+
+#: initdb.c:1961
+#, c-format
+msgid "  -E, --encoding=ENCODING   set default encoding for new databases\n"
+msgstr "  -E, --encoding=ENCODING   为新数据库设置默认编码\n"
+
+#: initdb.c:1962
+#, c-format
+msgid ""
+"  --locale=LOCALE           initialize database cluster with given locale\n"
+msgstr "  --locale=LOCALE           初始化数据库簇的 locale\n"
+
+#: initdb.c:1963
+#, c-format
+msgid ""
+"  --lc-collate, --lc-ctype, --lc-messages=LOCALE\n"
+"  --lc-monetary, --lc-numeric, --lc-time=LOCALE\n"
+"                            initialize database cluster with given locale\n"
+"                            in the respective category (default taken from\n"
+"                            environment)\n"
+msgstr ""
+"  --lc-collate, --lc-ctype, --lc-messages=LOCALE\n"
+"  --lc-monetary, --lc-numeric, --lc-time=LOCALE\n"
+"                            初始化数据库簇分别指定\n"
+"                            locale (默认使用环境变\n"
+"                            量)\n"
+
+#: initdb.c:1968
+#, c-format
+msgid "  --no-locale               equivalent to --locale=C\n"
+msgstr "  --no-locale               等同于 --locale=C\n"
+
+#: initdb.c:1969
+#, c-format
+msgid ""
+"  -A, --auth=method         default authentication method for local "
+"connections\n"
+msgstr ""
+"  -A, --auth=method         本地连接的默认认证方法\n"
+
+#: initdb.c:1970
+#, c-format
+msgid "  -U, --username=NAME       database superuser name\n"
+msgstr "  -U, --username=NAME       数据库超级用户名\n"
+
+#: initdb.c:1971
+#, c-format
+msgid ""
+"  -W, --pwprompt            prompt for a password for the new superuser\n"
+msgstr "  -W, --pwprompt            对于新的超级用户提示输入口令\n"
+
+#: initdb.c:1972
+#, c-format
+msgid ""
+"  --pwfile=filename         read password for the new superuser from file\n"
+msgstr "  --pwfile=文件名           对于新的超级用户从文件读取口令\n"
+
+#: initdb.c:1973
+#, c-format
+msgid "  -?, --help                show this help, then exit\n"
+msgstr "  -?, --help                显示此帮助, 然后退出\n"
+
+#: initdb.c:1974
+#, c-format
+msgid "  -V, --version             output version information, then exit\n"
+msgstr "  -V, --version             输出版本信息, 然后退出\n"
+
+#: initdb.c:1975
+#, c-format
+msgid ""
+"\n"
+"Less commonly used options:\n"
+msgstr ""
+"\n"
+"非普通使用选项:\n"
+
+#: initdb.c:1976
+#, c-format
+msgid "  -d, --debug               generate lots of debugging output\n"
+msgstr "  -d, --debug               产生大量的除错信息\n"
+
+#: initdb.c:1977
+#, c-format
+msgid "  -s, --show                show internal settings\n"
+msgstr "  -s, --show                显示内部设置\n"
+
+#: initdb.c:1978
+#, c-format
+msgid "  -L DIRECTORY              where to find the input files\n"
+msgstr "  -L DIRECTORY              输入文件的位置\n"
+
+#: initdb.c:1979
+#, c-format
+msgid "  -n, --noclean             do not clean up after errors\n"
+msgstr "  -n, --noclean             出错后不清理\n"
+
+#: initdb.c:1980
+#, c-format
+msgid ""
+"\n"
+"If the data directory is not specified, the environment variable PGDATA\n"
+"is used.\n"
+msgstr ""
+"\n"
+"如果没有指定数据目录, 将使用环境变量 PGDATA\n"
+
+#: initdb.c:1982
+#, c-format
+msgid ""
+"\n"
+"Report bugs to <pgsql-bugs@postgresql.org>.\n"
+msgstr ""
+"\n"
+"报告错误至 <pgql-bugs@postgresql.org>.\n"
+
+#: initdb.c:2073
+#, c-format
+msgid "Running in debug mode.\n"
+msgstr "运行在除错模式中. \n"
+
+#: initdb.c:2077
+#, c-format
+msgid "Running in noclean mode.  Mistakes will not be cleaned up.\n"
+msgstr "运行在 noclean 模式中. 错误将不被清理.\n"
+
+#: initdb.c:2113 initdb.c:2130 initdb.c:2335
+#, c-format
+msgid "Try \"%s --help\" for more information.\n"
+msgstr "请用 \"%s --help\" 获取更多的信息.\n"
+
+#: initdb.c:2128
+#, c-format
+msgid "%s: too many command-line arguments (first is \"%s\")\n"
+msgstr "%s: 命令行参数太多 (第一个是 \"%s\")\n"
+
+#: initdb.c:2136
+#, c-format
+msgid "%s: you cannot specify both password prompt and password file\n"
+msgstr "%s: 你不能同时指定提示输入口令和口令文件\n"
+
+#: initdb.c:2142
+msgid ""
+"\n"
+"WARNING: enabling \"trust\" authentication for local connections.\n"
+"You can change this by editing pg_hba.conf or using the -A flag the\n"
+"next time you run initdb.\n"
+msgstr ""
+"\n"
+"警告: 为本地连接启动了 \"trust\" 认证.\n"
+"你可以通过编辑 pg_hba.conf 更改或你下\n"
+"次运行 initdb 时使用 -A 选项.\n"
+
+#: initdb.c:2164
+#, c-format
+msgid "%s: unknown authentication method \"%s\".\n"
+msgstr "%s: 未知认证方法 \"%s\".\n"
+
+#: initdb.c:2173
+#, c-format
+msgid ""
+"%s: you need to specify a password for the superuser to enable %s "
+"authentication.\n"
+msgstr ""
+"%s: 为了启动 %s 认证, 你需要为超级用户指定一个口令.\n"
+
+#: initdb.c:2188
+#, c-format
+msgid ""
+"%s: no data directory specified\n"
+"You must identify the directory where the data for this database system\n"
+"will reside.  Do this with either the invocation option -D or the\n"
+"environment variable PGDATA.\n"
+msgstr ""
+"%s: 没有指定数据目录\n"
+"您必须确认此数据库系统的数据所在目录\n"
+"存在. 使用 -D 选项或者\n"
+"环境变量 PGDATA.\n"
+
+#: initdb.c:2214
+#, c-format
+msgid ""
+"The program \"postgres\" is needed by %s but was not found in the same "
+"directory as \"%s\".\n"
+"Check your installation.\n"
+msgstr ""
+"%s 需要程序 \"postgres\", 但是在同一个目录 \"%s\" 中没找到.\n"
+"检查您的安装.\n"
+
+#: initdb.c:2220
+#, c-format
+msgid ""
+"The program \"postgres\" was found by %s but was not the same version as \"%s"
+"\".\n"
+"Check your installation.\n"
+msgstr ""
+"%s 找到程序 \"postgres\", 但是和版本 \"%s\" 不一致.\n"
+"检查您的安装.\n"
+
+#: initdb.c:2241
+#, c-format
+msgid "%s: could not determine valid short version string\n"
+msgstr "%s: 无法确定有效的短版本字符串\n"
+
+#: initdb.c:2294
+#, c-format
+msgid ""
+"The files belonging to this database system will be owned by user \"%s\".\n"
+"This user must also own the server process.\n"
+"\n"
+msgstr ""
+"属于此数据库系统的文件宿主为用户 \"%s\".\n"
+"此用户也必须为服务器进程的宿主.\n"
+
+#: initdb.c:2305
+#, c-format
+msgid "The database cluster will be initialized with locale %s.\n"
+msgstr "数据库簇将带有 locale %s 初始化.\n"
+
+#: initdb.c:2309
+#, c-format
+msgid ""
+"The database cluster will be initialized with locales\n"
+"  COLLATE:  %s\n"
+"  CTYPE:    %s\n"
+"  MESSAGES: %s\n"
+"  MONETARY: %s\n"
+"  NUMERIC:  %s\n"
+"  TIME:     %s\n"
+msgstr ""
+"数据库簇将带有一下 locales 初始化\n"
+"  COLLATE:  %s\n"
+"  CTYPE:    %s\n"
+"  MESSAGES: %s\n"
+"  MONETARY: %s\n"
+"  NUMERIC:  %s\n"
+"  TIME:     %s\n"
+
+#: initdb.c:2333
+#, c-format
+msgid "%s: could not find suitable encoding for locale \"%s\"\n"
+msgstr "%s: 无法为 locale \"%s\" 找到合适的编码\n"
+
+#: initdb.c:2334
+#, c-format
+msgid "Rerun %s with the -E option.\n"
+msgstr "带 -E 选项重新运行 %s.\n"
+
+#: initdb.c:2341
+#, c-format
+msgid "The default database encoding has accordingly been set to %s.\n"
+msgstr "默认的数据库编码已经相应的设置为 %s.\n"
+
+#: initdb.c:2382
+#, c-format
+msgid "creating directory %s ... "
+msgstr "创建目录 %s ... "
+
+#: initdb.c:2396
+#, c-format
+msgid "fixing permissions on existing directory %s ... "
+msgstr "修复已存在目录 %s 的权限 ... "
+
+#: initdb.c:2414
+#, c-format
+msgid ""
+"%s: directory \"%s\" exists but is not empty\n"
+"If you want to create a new database system, either remove or empty\n"
+"the directory \"%s\" or run %s\n"
+"with an argument other than \"%s\".\n"
+msgstr ""
+"%s: 目录 \"%s\" 已存在, 但不是空的\n"
+"如果您想创建一个新的数据库系统, 请删除或清空\n"
+"目录 \"%s\" 或者运行带参数的 %s\n"
+"而不是 \"%s\".\n"
+
+#: initdb.c:2431
+#, c-format
+msgid "creating directory %s/%s ... "
+msgstr "创建目录 %s/%s ... "
+
+#: initdb.c:2492
+#, c-format
+msgid ""
+"\n"
+"Success. You can now start the database server using:\n"
+"\n"
+"    %s%s%s/postmaster -D %s%s%s\n"
+"or\n"
+"    %s%s%s/pg_ctl -D %s%s%s -l logfile start\n"
+"\n"
+msgstr ""
+"\n"
+"成功. 您现在可以用下面的命令运行数据库服务器:\n"
+"\n"
+"    %s%s%s/postmaster -D %s%s%s\n"
+"或者\n"
+"    %s%s%s/pg_ctl -D %s%s%s -l logfile start\n"
+"\n"
diff --git a/src/bin/pg_ctl/nls.mk b/src/bin/pg_ctl/nls.mk
index b0aabb321e63221ffb1c611d953381bef91a1305..61a82b12055381847164a52de918a5f317ef665b 100644
--- a/src/bin/pg_ctl/nls.mk
+++ b/src/bin/pg_ctl/nls.mk
@@ -1,5 +1,5 @@
-# $PostgreSQL: pgsql/src/bin/pg_ctl/nls.mk,v 1.4 2004/08/02 15:17:18 petere Exp $
+# $PostgreSQL: pgsql/src/bin/pg_ctl/nls.mk,v 1.5 2004/08/10 19:06:20 petere Exp $
 CATALOG_NAME	:= pg_ctl
-AVAIL_LANGUAGES	:= ru sk sv zh_TW
+AVAIL_LANGUAGES	:= ru sk sv zh_CN zh_TW
 GETTEXT_FILES	:= pg_ctl.c
 GETTEXT_TRIGGERS:= _ simple_prompt
diff --git a/src/bin/pg_ctl/po/zh_CN.po b/src/bin/pg_ctl/po/zh_CN.po
new file mode 100644
index 0000000000000000000000000000000000000000..3cc2a423e3ac02a9a4c71de275ec531081556835
--- /dev/null
+++ b/src/bin/pg_ctl/po/zh_CN.po
@@ -0,0 +1,496 @@
+# SOME DESCRIPTIVE TITLE.
+# This file is put in the public domain.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: PostgreSQL 7.5\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2004-08-05 14:26+0000\n"
+"PO-Revision-Date: 2004-06-10 11:23+0000\n"
+"Last-Translator: Bao Wei<weibao@imsi.cn>\n"
+"Language-Team: Weiping He <laser@imsi.cn>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=GB2312\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: pg_ctl.c:184 pg_ctl.c:200 pg_ctl.c:1230
+#, c-format
+msgid "%s: out of memory\n"
+msgstr "%s: 内存溢出\n"
+
+#: pg_ctl.c:431
+#, c-format
+msgid ""
+"%s: Another postmaster may be running. Trying to start postmaster anyway.\n"
+msgstr "%s: 其他 postmaster 可能正在运行. 尝试启动 postmaster.\n"
+
+#: pg_ctl.c:449
+#, c-format
+msgid "%s: cannot read %s\n"
+msgstr "%s: 无法读取 %s\n"
+
+#: pg_ctl.c:455
+#, c-format
+msgid "%s: option file %s must have exactly 1 line\n"
+msgstr "%s: 选项文件 %s 只能有一行\n"
+
+#: pg_ctl.c:497
+#, c-format
+msgid ""
+"The program \"postmaster\" is needed by %s but was not found in the same "
+"directory as \"%s\".\n"
+"Check your installation.\n"
+msgstr ""
+"程序 \"postmaster\" 是 %s 需要的, 但没有在同一个目录 \"%s\" 发现.\n"
+"检查您的安装.\n"
+
+#: pg_ctl.c:503
+#, c-format
+msgid ""
+"The program \"postmaster\" was found by %s but was not the same version as "
+"\"%s\".\n"
+"Check your installation.\n"
+msgstr ""
+"%s 找到程序 \"postmaster\", 但版本和 \"%s\" 不一致.\n"
+"检查您的安装.\n"
+
+#: pg_ctl.c:514
+msgid "Unable to run the postmaster binary\n"
+msgstr "无法运行 postmaster 二进制文件\n"
+
+#: pg_ctl.c:524
+#, c-format
+msgid ""
+"%s: cannot start postmaster\n"
+"Examine the log output\n"
+msgstr ""
+"%s: 无法启动 postmaster\n"
+"检查日志输出\n"
+
+#: pg_ctl.c:535
+#, c-format
+msgid "waiting for postmaster to start..."
+msgstr "等待 postmaster 启动 ..."
+
+#: pg_ctl.c:540
+#, c-format
+msgid "could not start postmaster\n"
+msgstr "无法启动 postmaster\n"
+
+#: pg_ctl.c:542
+#, c-format
+msgid ""
+"done\n"
+"postmaster started\n"
+msgstr ""
+"完成\n"
+"postmaster 已经启动\n"
+
+#: pg_ctl.c:545
+#, c-format
+msgid "postmaster starting\n"
+msgstr "启动 postmaster\n"
+
+#: pg_ctl.c:560 pg_ctl.c:639 pg_ctl.c:709
+#, c-format
+msgid "%s: could not find %s\n"
+msgstr "%s: 无法找到 %s\n"
+
+#: pg_ctl.c:561 pg_ctl.c:710
+msgid "Is postmaster running?\n"
+msgstr "是否 postmaster 正在运行?\n"
+
+#: pg_ctl.c:567
+#, c-format
+msgid "%s: cannot stop postmaster; postgres is running (PID: %ld)\n"
+msgstr "%s: 无法停止 postmaster; postgres 正在运行 (PID: %ld)\n"
+
+#: pg_ctl.c:575 pg_ctl.c:656
+#, c-format
+msgid "stop signal failed (PID: %ld): %s\n"
+msgstr "停止信号失败 (PID: %ld): %s\n"
+
+#: pg_ctl.c:583
+#, c-format
+msgid "postmaster shutting down\n"
+msgstr "关闭 postmaster\n"
+
+#: pg_ctl.c:590 pg_ctl.c:663
+#, c-format
+msgid "waiting for postmaster to shut down..."
+msgstr "等待 postmaster 关闭 ..."
+
+#: pg_ctl.c:612 pg_ctl.c:687
+#, c-format
+msgid " failed\n"
+msgstr " 失败\n"
+
+#: pg_ctl.c:614 pg_ctl.c:689
+#, c-format
+msgid "%s: postmaster does not shut down\n"
+msgstr "%s: postmaster 没有关闭\n"
+
+#: pg_ctl.c:618 pg_ctl.c:694
+#, c-format
+msgid "done\n"
+msgstr "完成\n"
+
+#: pg_ctl.c:620 pg_ctl.c:696
+#, c-format
+msgid "postmaster stopped\n"
+msgstr "postmaster 已经关闭\n"
+
+#: pg_ctl.c:640
+msgid ""
+"Is postmaster running?\n"
+"starting postmaster anyway\n"
+msgstr ""
+"是否 postmaster 正在运行?\n"
+"尝试启动 postmaster\n"
+
+#: pg_ctl.c:647
+#, c-format
+msgid "%s: cannot restart postmaster; postgres is running (PID: %ld)\n"
+msgstr "%s: 无法重启 postmaster; postgres 正在运行 (PID: %ld)\n"
+
+#: pg_ctl.c:650 pg_ctl.c:719
+msgid "Please terminate postgres and try again.\n"
+msgstr "请终止 postgres 再重试.\n"
+
+#: pg_ctl.c:716
+#, c-format
+msgid "%s: cannot reload postmaster; postgres is running (PID: %ld)\n"
+msgstr "%s: 无法重载 postmaser; postgres 正在运行 (PID: %ld)\n"
+
+#: pg_ctl.c:725
+#, c-format
+msgid "reload signal failed (PID: %ld): %s\n"
+msgstr "重载信号失败 (PID: %ld): %s\n"
+
+#: pg_ctl.c:731
+#, c-format
+msgid "postmaster signaled\n"
+msgstr "postmaster 发出信号\n"
+
+#: pg_ctl.c:746
+#, c-format
+msgid "%s: postmaster or postgres not running\n"
+msgstr "%s: postmaster 或者 postgres 没有运行\n"
+
+#: pg_ctl.c:752
+#, c-format
+msgid "%s: a standalone backend \"postgres\" is running (PID: %ld)\n"
+msgstr "%s: 一个独立的后端 \"postgres\" 正在运行 (PID: %ld)\n"
+
+#: pg_ctl.c:758
+#, c-format
+msgid "%s: postmaster is running (PID: %ld)\n"
+msgstr "%s: postmaster 正在运行 (PID: %ld)\n"
+
+#: pg_ctl.c:774
+#, c-format
+msgid "signal %d failed (PID: %ld): %s\n"
+msgstr "信号 %d 失败 (PID: %ld): %s\n"
+
+#: pg_ctl.c:801
+msgid "Unable to find exe"
+msgstr "无法找到执行文件"
+
+#: pg_ctl.c:844 pg_ctl.c:875
+msgid "Unable to open service manager\n"
+msgstr "无法打开服务管理器\n"
+
+#: pg_ctl.c:850
+#, c-format
+msgid "Service \"%s\" already registered\n"
+msgstr "服务 \"%s\" 已经注册了\n"
+
+#: pg_ctl.c:861
+#, c-format
+msgid "Unable to register service \"%s\" [%d]\n"
+msgstr "无法注册服务 \"%s\" [%d]\n"
+
+#: pg_ctl.c:881
+#, c-format
+msgid "Service \"%s\" not registered\n"
+msgstr "服务 \"%s\" 没有注册\n"
+
+#: pg_ctl.c:888
+#, c-format
+msgid "Unable to open service \"%s\" [%d]\n"
+msgstr "无法打开服务 \"%s\" [%d]\n"
+
+#: pg_ctl.c:894
+#, c-format
+msgid "Unable to unregister service \"%s\" [%d]\n"
+msgstr "无法取消注册服务 \"%s\" [%d]\n"
+
+#: pg_ctl.c:1012
+#, c-format
+msgid ""
+"\n"
+"Try \"%s --help\" for more information.\n"
+msgstr ""
+"\n"
+"请用 \"%s --help\" 获取更多的信息.\n"
+
+#: pg_ctl.c:1020
+#, c-format
+msgid ""
+"%s is a utility to start, stop, restart, reload configuration files,\n"
+"report the status of a PostgreSQL server, or kill a PostgreSQL process\n"
+"\n"
+msgstr ""
+"%s 是一个启动, 停止, 重启, 重载配置文件, 报告 PostgreSQL 服务器状态,\n"
+"或者杀掉 PostgreSQL 进程的工具\n"
+"\n"
+
+#: pg_ctl.c:1022
+#, c-format
+msgid "Usage:\n"
+msgstr "使用方法:\n"
+
+#: pg_ctl.c:1023
+#, c-format
+msgid "  %s start   [-w] [-D DATADIR] [-s] [-l FILENAME] [-o \"OPTIONS\"]\n"
+msgstr "  %s start   [-w] [-D 数据目录] [-s] [-l 文件名] [-o \"选项\"]\n"
+
+#: pg_ctl.c:1024
+#, c-format
+msgid "  %s stop    [-W] [-D DATADIR] [-s] [-m SHUTDOWN-MODE]\n"
+msgstr "  %s stop    [-W] [-D 数据目录] [-s] [-m 关闭模式]\n"
+
+#: pg_ctl.c:1025
+#, c-format
+msgid ""
+"  %s restart [-w] [-D DATADIR] [-s] [-m SHUTDOWN-MODE] [-o \"OPTIONS\"]\n"
+msgstr "  %s restart [-w] [-D 数据目录] [-s] [-m 关闭模式] [-o \"选项\"]\n"
+
+#: pg_ctl.c:1026
+#, c-format
+msgid "  %s reload  [-D DATADIR] [-s]\n"
+msgstr "  %s reload  [-D 数据目录] [-s]\n"
+
+#: pg_ctl.c:1027
+#, c-format
+msgid "  %s status  [-D DATADIR]\n"
+msgstr "  %s status  [-D 数据目录]\n"
+
+#: pg_ctl.c:1028
+#, c-format
+msgid "  %s kill    SIGNALNAME PROCESSID\n"
+msgstr "  %s kill    信号名称 进程 ID\n"
+
+#: pg_ctl.c:1030
+#, c-format
+msgid ""
+"  %s register   [-N servicename] [-U username] [-P password] [-D DATADIR] [-"
+"o \"OPTIONS\"]\n"
+msgstr ""
+"  %s register   [-N 服务名称] [-U 用户名] [-P 口令] [-D DATADIR] [-o "
+"\"OPTIONS\"]\n"
+
+#: pg_ctl.c:1031
+#, c-format
+msgid "  %s unregister [-N servicename]\n"
+msgstr "  %s unregister [-N 服务名称]\n"
+
+#: pg_ctl.c:1033
+#, c-format
+msgid "Common options:\n"
+msgstr "普通选项:\n"
+
+#: pg_ctl.c:1034
+#, c-format
+msgid "  -D, --pgdata DATADIR   location of the database storage area\n"
+msgstr "  -D, --pgdata 数据目录  数据存储的位置\n"
+
+#: pg_ctl.c:1035
+#, c-format
+msgid "  -s, --silent only print errors, no informational messages\n"
+msgstr "  -s, --silent 只打印错误信息, 没有其他信息\n"
+
+#: pg_ctl.c:1037
+#, c-format
+msgid "  -N       service name with which to register PostgreSQL server\n"
+msgstr "  -N       注册到 PostgreSQL 服务器的服务名称\n"
+
+#: pg_ctl.c:1038
+#, c-format
+msgid "  -P       password of account to register PostgreSQL server\n"
+msgstr "  -P       注册到 PostgreSQL 服务器帐户的口令\n"
+
+#: pg_ctl.c:1039
+#, c-format
+msgid "  -U       user name of account to register PostgreSQL server\n"
+msgstr "  -U       注册到 PostgreSQL 服务器帐户的用户名\n"
+
+#: pg_ctl.c:1041
+#, c-format
+msgid "  -w           wait until operation completes\n"
+msgstr "  -w           等待直到操作完成\n"
+
+#: pg_ctl.c:1042
+#, c-format
+msgid "  -W           do not wait until operation completes\n"
+msgstr "  -W           不用等待操作完成\n"
+
+#: pg_ctl.c:1043
+#, c-format
+msgid "  --help       show this help, then exit\n"
+msgstr "  --help       显示此帮助信息, 然后退出\n"
+
+#: pg_ctl.c:1044
+#, c-format
+msgid "  --version    output version information, then exit\n"
+msgstr "  --version    输出版本信息, 然后退出\n"
+
+#: pg_ctl.c:1045
+#, c-format
+msgid ""
+"(The default is to wait for shutdown, but not for start or restart.)\n"
+"\n"
+msgstr ""
+"(默认为关闭等待, 但不是启动或重启.)\n"
+"\n"
+
+#: pg_ctl.c:1046
+#, c-format
+msgid ""
+"If the -D option is omitted, the environment variable PGDATA is used.\n"
+"\n"
+msgstr ""
+"如果省略了 -D 选项, 将使用 PGDATA 环境变量.\n"
+"\n"
+
+#: pg_ctl.c:1047
+#, c-format
+msgid "Options for start or restart:\n"
+msgstr "启动或重启的选项:\n"
+
+#: pg_ctl.c:1048
+#, c-format
+msgid ""
+"  -l, --log FILENAME      write (or append) server log to FILENAME.  The\n"
+"                          use of this option is highly recommended.\n"
+msgstr ""
+"  -l, --log FILENAME      写入 (或追加) 服务器日志到文件 FILENAME.\n"
+"                          强烈建议使用此选项.\n"
+
+#: pg_ctl.c:1050
+#, c-format
+msgid ""
+"  -o OPTIONS              command line options to pass to the postmaster\n"
+"                          (PostgreSQL server executable)\n"
+msgstr ""
+"  -o OPTIONS              传递给 postmaster 的命令行选项\n"
+"                          (PostgreSQL 服务器执行)\n"
+
+#: pg_ctl.c:1052
+#, c-format
+msgid ""
+"  -p PATH-TO-POSTMASTER   normally not necessary\n"
+"\n"
+msgstr ""
+"  -p PATH-TO-POSTMASTER   正常情况不需要\n"
+"\n"
+
+#: pg_ctl.c:1053
+#, c-format
+msgid "Options for stop or restart:\n"
+msgstr "停止或重启的选项:\n"
+
+#: pg_ctl.c:1054
+#, c-format
+msgid ""
+"  -m SHUTDOWN-MODE   may be 'smart', 'fast', or 'immediate'\n"
+"\n"
+msgstr ""
+"  -m SHUTDOWN-MODE   可以是 'smart', 'fast', 或者 'immediate'\n"
+"\n"
+
+#: pg_ctl.c:1055
+#, c-format
+msgid "Allowed signal names for kill:\n"
+msgstr "允许关闭的信号名称:\n"
+
+#: pg_ctl.c:1056
+#, c-format
+msgid ""
+"  HUP INT QUIT ABRT TERM USR1 USR2\n"
+"\n"
+msgstr ""
+"  HUP INT QUIT ABRT TERM USR1 USR2\n"
+"\n"
+
+#: pg_ctl.c:1057
+#, c-format
+msgid "Shutdown modes are:\n"
+msgstr "关闭模式有如下几种:\n"
+
+#: pg_ctl.c:1058
+#, c-format
+msgid "  smart       quit after all clients have disconnected\n"
+msgstr "  smart       所有客户端断开连接后退出\n"
+
+#: pg_ctl.c:1059
+#, c-format
+msgid "  fast        quit directly, with proper shutdown\n"
+msgstr "  fast        直接退出, 正确的关闭\n"
+
+#: pg_ctl.c:1060
+#, c-format
+msgid ""
+"  immediate   quit without complete shutdown; will lead to recovery on "
+"restart\n"
+"\n"
+msgstr ""
+"  immediate   不完全的关闭退出; 重启后恢复\n"
+"\n"
+
+#: pg_ctl.c:1061
+#, c-format
+msgid "Report bugs to <pgsql-bugs@postgresql.org>.\n"
+msgstr "错误报告至 <pgsql-bugs@postgresql.org>.\n"
+
+#: pg_ctl.c:1086
+#, c-format
+msgid "%s: invalid shutdown mode %s\n"
+msgstr "%s: 无效的关闭模式 %s\n"
+
+#: pg_ctl.c:1119
+#, c-format
+msgid "%s: invalid signal \"%s\"\n"
+msgstr "%s: 无效信号 \"%s\"\n"
+
+#: pg_ctl.c:1246
+#, c-format
+msgid "%s: invalid option %s\n"
+msgstr "%s: 无效选项 %s\n"
+
+#: pg_ctl.c:1257
+#, c-format
+msgid "%s: extra operation mode %s\n"
+msgstr "%s: 额外的操作模式 %s\n"
+
+#: pg_ctl.c:1276
+#, c-format
+msgid "%s: invalid kill syntax\n"
+msgstr "%s: 无效的 kill 语法\n"
+
+#: pg_ctl.c:1294
+#, c-format
+msgid "%s: invalid operation mode %s\n"
+msgstr "%s: 无效的操作模式 %s\n"
+
+#: pg_ctl.c:1304
+#, c-format
+msgid "%s: no operation specified\n"
+msgstr "%s: 没有指定操作\n"
+
+#: pg_ctl.c:1320
+#, c-format
+msgid ""
+"%s: no database directory specified and environment variable PGDATA unset\n"
+msgstr "%s: 没有指定数据目录, 并且没有设置 PGDATA 环境变量\n"
diff --git a/src/bin/pg_dump/po/zh_CN.po b/src/bin/pg_dump/po/zh_CN.po
index e78055053bb1b6d8488fe4f99bb99fae0184fbd9..3b1c6f08407e04c443bc76d8f396e905adf90dd1 100644
--- a/src/bin/pg_dump/po/zh_CN.po
+++ b/src/bin/pg_dump/po/zh_CN.po
@@ -1,117 +1,97 @@
 # simplified Chinese translation file for pg_dump and friends
 # Weiping He <laser@zhengmai.com.cn>, 2001.
-# $PostgreSQL: pgsql/src/bin/pg_dump/po/zh_CN.po,v 1.4 2003/11/29 19:52:05 pgsql Exp $
+# $PostgreSQL: pgsql/src/bin/pg_dump/po/zh_CN.po,v 1.5 2004/08/10 19:06:21 petere Exp $
 #
 msgid ""
 msgstr ""
 "Project-Id-Version: PostgreSQL 7.4\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2003-08-11 11:22+0000\n"
-"PO-Revision-Date: 2003-09-15 13:46:59+0800\n"
-"Last-Translator: Bao Wei <bao_paul@yahoo.com.cn>\n"
+"POT-Creation-Date: 2004-08-05 14:25+0000\n"
+"PO-Revision-Date: 2004-01-10 13:46:59+0800\n"
+"Last-Translator: Bao Wei <weibao@qmail.zhengmai.net.cn>\n"
 "Language-Team: Weiping He <laser@zhengmai.com.cn>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=GB2312\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: pg_dump.c:344 pg_restore.c:244
+#: pg_dump.c:363 pg_restore.c:225
 msgid "User name: "
 msgstr "用户名: "
 
-#: pg_dump.c:378 pg_restore.c:271
+#: pg_dump.c:399 pg_restore.c:252 pg_dumpall.c:238
 #, c-format
 msgid "%s: invalid -X option -- %s\n"
 msgstr "%s: 无效的 -X 选项 -- %s\n"
 
-#: pg_dump.c:380 pg_dump.c:394 pg_dump.c:403 pg_restore.c:273 pg_restore.c:283
-#: pg_dumpall.c:190 pg_dumpall.c:199
+#: pg_dump.c:401 pg_dump.c:415 pg_dump.c:424 pg_restore.c:254 pg_restore.c:264
+#: pg_restore.c:281 pg_dumpall.c:240 pg_dumpall.c:249 pg_dumpall.c:266
 #, c-format
 msgid "Try \"%s --help\" for more information.\n"
 msgstr "输入 \"%s --help\" 获取更多的信息.\n"
 
-#: pg_dump.c:401 pg_dumpall.c:197
+#: pg_dump.c:422 pg_dumpall.c:264
 #, c-format
 msgid "%s: too many command-line arguments (first is \"%s\")\n"
 msgstr "%s: 命令行参数太多 (第一个是 \"%s\")\n"
 
-#: pg_dump.c:414
+#: pg_dump.c:435
 msgid ""
 "options \"schema only\" (-s) and \"data only\" (-a) cannot be used together\n"
-msgstr "选项 \"只转储大纲\" (-s) 和 \"只转储数据\" (-a) 不能同时使用.\n"
+msgstr "选项 \"只转储模式\" (-s) 和 \"只转储数据\" (-a) 不能同时使用.\n"
 
-#: pg_dump.c:420
+#: pg_dump.c:441
 msgid "options \"clean\" (-c) and \"data only\" (-a) cannot be used together\n"
 msgstr "选项 \"清洁\" (-c) 和 \"只转储数据\" (-a) 不能同时使用.\n"
 
-#: pg_dump.c:426
+#: pg_dump.c:447
 msgid "large-object output not supported for a single table\n"
 msgstr "不支持单个表的大对象输出.\n"
 
-#: pg_dump.c:427 pg_dump.c:434
+#: pg_dump.c:448 pg_dump.c:455
 msgid "use a full dump instead\n"
 msgstr "使用完整转储替代.\n"
 
-#: pg_dump.c:433
+#: pg_dump.c:454
 msgid "large-object output not supported for a single schema\n"
-msgstr "不支持单个大纲的大对象输出.\n"
+msgstr "不支持单个模式的大对象输出.\n"
 
-#: pg_dump.c:440
+#: pg_dump.c:461
 msgid "INSERT (-d, -D) and OID (-o) options cannot be used together\n"
 msgstr "INSERT (-d, -D) 和 OID (-o) 选项不能同时使用.\n"
 
-#: pg_dump.c:441
+#: pg_dump.c:462
 msgid "(The INSERT command cannot set OIDs.)\n"
 msgstr "(INSERT 命令无法设置对象标识(oid).)\n"
 
-#: pg_dump.c:447
+#: pg_dump.c:468
 msgid "large-object output is not supported for plain-text dump files\n"
 msgstr "纯文本转储文件不支持输出大对象.\n"
 
-#: pg_dump.c:448
+#: pg_dump.c:469
 msgid "(Use a different output format.)\n"
 msgstr "(使用不同的输出格式.)\n"
 
-#: pg_dump.c:477
+#: pg_dump.c:498
 #, c-format
 msgid "invalid output format \"%s\" specified\n"
 msgstr "声明了非法的输出格式 \"%s\"\n"
 
-#: pg_dump.c:483
+#: pg_dump.c:504
 #, c-format
 msgid "could not open output file \"%s\" for writing\n"
 msgstr "无法打开输出文件 \"%s\" 用于写出\n"
 
-#: pg_dump.c:494 pg_backup_db.c:48
+#: pg_dump.c:515 pg_backup_db.c:48
 #, c-format
 msgid "could not parse version string \"%s\"\n"
 msgstr "无法分析版本字串 \"%s\"\n"
 
-#: pg_dump.c:510
-#, c-format
-msgid "BEGIN command failed: %s"
-msgstr "BEGIN 命令失败: %s"
-
-#: pg_dump.c:516
-#, c-format
-msgid "could not set transaction isolation level to serializable: %s"
-msgstr "无法把事务隔离级别设置为可串行化: %s"
-
-#: pg_dump.c:523
-#, c-format
-msgid "could not set datestyle to ISO: %s"
-msgstr "无法设置 ISO 日期类型: %s"
-
-#: pg_dump.c:535
-#, c-format
-msgid "could not set extra_float_digits: %s"
-msgstr "无法设置 extra_float_digits: %s"
-
-#: pg_dump.c:548
+#: pg_dump.c:551
 #, c-format
 msgid "last built-in OID is %u\n"
 msgstr "最后的内置 OID 是 %u\n"
 
-#: pg_dump.c:636
+#: pg_dump.c:663
 #, c-format
 msgid ""
 "%s dumps a database as a text file or to other formats.\n"
@@ -120,16 +100,18 @@ msgstr ""
 "%s 把一个数据库转储为纯文本文件或者是其它格式.\n"
 "\n"
 
-#: pg_dump.c:637 pg_restore.c:365 pg_dumpall.c:235
+#: pg_dump.c:664 pg_restore.c:354 pg_dumpall.c:311
+#, c-format
 msgid "Usage:\n"
 msgstr "用法:\n"
 
-#: pg_dump.c:638
+#: pg_dump.c:665
 #, c-format
 msgid "  %s [OPTION]... [DBNAME]\n"
 msgstr "  %s [选项]... [数据库名字]\n"
 
-#: pg_dump.c:640 pg_restore.c:368
+#: pg_dump.c:667 pg_restore.c:357 pg_dumpall.c:314
+#, c-format
 msgid ""
 "\n"
 "General options:\n"
@@ -137,16 +119,19 @@ msgstr ""
 "\n"
 "一般选项:\n"
 
-#: pg_dump.c:641 pg_restore.c:370
+#: pg_dump.c:668 pg_restore.c:359
+#, c-format
 msgid "  -f, --file=FILENAME      output file name\n"
 msgstr "  -f, --file=文件名        输出文件名\n"
 
-#: pg_dump.c:642
+#: pg_dump.c:669
+#, c-format
 msgid ""
 "  -F, --format=c|t|p       output file format (custom, tar, plain text)\n"
 msgstr "  -F, --format=c|t|p       输出文件格式 (定制, tar, 明文)\n"
 
-#: pg_dump.c:643
+#: pg_dump.c:670
+#, c-format
 msgid ""
 "  -i, --ignore-version     proceed even when server version mismatches\n"
 "                           pg_dump version\n"
@@ -154,23 +139,28 @@ msgstr ""
 "  -i, --ignore-version     当服务器的版本号与 pg_dump 的版本号不匹配时\n"
 "                           仍继续运行\n"
 
-#: pg_dump.c:645 pg_restore.c:374 pg_dumpall.c:248
+#: pg_dump.c:672 pg_restore.c:363
+#, c-format
 msgid "  -v, --verbose            verbose mode\n"
 msgstr "  -v, --verbose            详细模式\n"
 
-#: pg_dump.c:646
+#: pg_dump.c:673
+#, c-format
 msgid "  -Z, --compress=0-9       compression level for compressed formats\n"
 msgstr "  -Z, --compress=0-9       被压缩格式的压缩级别\n"
 
-#: pg_dump.c:647 pg_restore.c:375 pg_dumpall.c:250
+#: pg_dump.c:674 pg_restore.c:364 pg_dumpall.c:317
+#, c-format
 msgid "  --help                   show this help, then exit\n"
 msgstr "  --help                   显示此帮助信息, 然后退出\n"
 
-#: pg_dump.c:648 pg_restore.c:376 pg_dumpall.c:251
+#: pg_dump.c:675 pg_restore.c:365 pg_dumpall.c:318
+#, c-format
 msgid "  --version                output version information, then exit\n"
 msgstr "  --version                输出版本信息, 然后退出\n"
 
-#: pg_dump.c:650 pg_restore.c:378
+#: pg_dump.c:677 pg_restore.c:367 pg_dumpall.c:319
+#, c-format
 msgid ""
 "\n"
 "Options controlling the output content:\n"
@@ -178,63 +168,66 @@ msgstr ""
 "\n"
 "控制输出内容选项:\n"
 
-#: pg_dump.c:651 pg_dumpall.c:239
+#: pg_dump.c:678 pg_dumpall.c:320
+#, c-format
 msgid "  -a, --data-only          dump only the data, not the schema\n"
-msgstr "  -a, --data-only          只转储数据,不包括大纲\n"
+msgstr "  -a, --data-only          只转储数据,不包括模式\n"
 
-#: pg_dump.c:652
+#: pg_dump.c:679
+#, c-format
 msgid "  -b, --blobs              include large objects in dump\n"
 msgstr "  -b, --blobs              在转储中包括大对象\n"
 
-#: pg_dump.c:653 pg_restore.c:380
+#: pg_dump.c:680 pg_restore.c:369
+#, c-format
 msgid "  -c, --clean              clean (drop) schema prior to create\n"
-msgstr "  -c, --clean              先清楚(删除)预先的大纲,再建立\n"
+msgstr "  -c, --clean              先清楚(删除)预先的模式,再建立\n"
 
-#: pg_dump.c:654
+#: pg_dump.c:681
+#, c-format
 msgid ""
 "  -C, --create             include commands to create database in dump\n"
 msgstr "  -C, --create             在转储中包括命令,以便创建数据库\n"
 
-#: pg_dump.c:655 pg_dumpall.c:241
+#: pg_dump.c:682 pg_dumpall.c:322
+#, c-format
 msgid ""
 "  -d, --inserts            dump data as INSERT, rather than COPY, commands\n"
 msgstr ""
 "  -d, --inserts            象 INSERT 一样的转储数据, 相当于 COPY, 命令\n"
 
-#: pg_dump.c:656 pg_dumpall.c:242
+#: pg_dump.c:683 pg_dumpall.c:323
+#, c-format
 msgid ""
 "  -D, --column-inserts     dump data as INSERT commands with column names\n"
 msgstr "  -D, --column-inserts     象 INSERT 带字段名字命令一样转储数据\n"
 
-#: pg_dump.c:657
+#: pg_dump.c:684
+#, c-format
 msgid "  -n, --schema=SCHEMA      dump the named schema only\n"
-msgstr "  -n, --schema=SCHEMA      只转储指定名称的大纲\n"
+msgstr "  -n, --schema=SCHEMA      只转储指定名称的模式\n"
 
-#: pg_dump.c:658 pg_dumpall.c:247
+#: pg_dump.c:685 pg_dumpall.c:325
+#, c-format
 msgid "  -o, --oids               include OIDs in dump\n"
 msgstr "  -o, --oids               在转储中包括 OID\n"
 
-#: pg_dump.c:659
-msgid ""
-"  -O, --no-owner           do not output \\connect commands in plain\n"
-"                           text format\n"
-msgstr ""
-"  -O, --no-owner           在明文格式中, 不显示 \\connect 命令\n"
-"                           的输出\n"
-
-#: pg_dump.c:661
+#: pg_dump.c:686
+#, c-format
 msgid ""
-"  -R, --no-reconnect       disable ALL reconnections to the database in\n"
-"                           plain text format\n"
+"  -O, --no-owner           do not output commands to set object ownership\n"
+"                           in plain text format\n"
 msgstr ""
-"  -R, --no-reconnect       在明文格式中, 取消所有联接数据库的\n"
-"                           重联接\n"
+"  -O, --no-owner           在明文格式中, 设置对象所属者时不输出\n"
+"                           明令\n"
 
-#: pg_dump.c:663 pg_dumpall.c:246
+#: pg_dump.c:688 pg_dumpall.c:327
+#, c-format
 msgid "  -s, --schema-only        dump only the schema, no data\n"
-msgstr "  -s, --schema-only        只转储大纲, 不包括数据\n"
+msgstr "  -s, --schema-only        只转储模式, 不包括数据\n"
 
-#: pg_dump.c:664
+#: pg_dump.c:689
+#, c-format
 msgid ""
 "  -S, --superuser=NAME     specify the superuser user name to use in\n"
 "                           plain text format\n"
@@ -242,25 +235,27 @@ msgstr ""
 "  -S, --superuser=NAME     在明文格式中, 使用指定的超级用户\n"
 "                           名称\n"
 
-#: pg_dump.c:666
+#: pg_dump.c:691
+#, c-format
 msgid "  -t, --table=TABLE        dump the named table only\n"
 msgstr "  -t, --table=TABLE        只转储指定名称的表\n"
 
-#: pg_dump.c:667 pg_dumpall.c:249
+#: pg_dump.c:692 pg_dumpall.c:329
+#, c-format
 msgid "  -x, --no-privileges      do not dump privileges (grant/revoke)\n"
 msgstr "  -x, --no-privileges      不要转储权限 (grant/revoke)\n"
 
-#: pg_dump.c:668
+#: pg_dump.c:693 pg_dumpall.c:330
+#, c-format
 msgid ""
-"  -X use-set-session-authorization, --use-set-session-authorization\n"
-"                           output SET SESSION AUTHORIZATION commands rather\n"
-"                           than \\connect commands\n"
+"  -X disable-dollar-quoting, --disable-dollar-quoting\n"
+"                           disable dollar quoting, use SQL standard quoting\n"
 msgstr ""
-"  -X use-set-session-authorization, --use-set-session-authorization\n"
-"                           输出 SET SESSION AUTHORIZATION 命令, 相当于\n"
-"                           \\connect 命令\n"
+"  -X disable-dollar-quoting, --disable-dollar-quoting\n"
+"                           取消美元 (符号) 引号, 使用 SQL 标准引号\n"
 
-#: pg_dump.c:671 pg_restore.c:402
+#: pg_dump.c:695 pg_restore.c:383 pg_dumpall.c:332
+#, c-format
 msgid ""
 "  -X disable-triggers, --disable-triggers\n"
 "                           disable triggers during data-only restore\n"
@@ -268,7 +263,19 @@ msgstr ""
 "  -X disable-triggers, --disable-triggers\n"
 "                           在只恢复数据的过程中取消触发器\n"
 
-#: pg_dump.c:674 pg_restore.c:405 pg_dumpall.c:253
+#: pg_dump.c:697 pg_restore.c:385 pg_dumpall.c:334
+#, c-format
+msgid ""
+"  -X use-set-session-authorization, --use-set-session-authorization\n"
+"                           use SESSION AUTHORIZATION commands instead of\n"
+"                           OWNER TO commands\n"
+msgstr ""
+"  -X use-set-session-authorization, --use-set-session-authorization\n"
+"                           使用 SESSION AUTHORIZATION 命令代替\n"
+"                           OWNER TO 命令\n"
+
+#: pg_dump.c:701 pg_restore.c:389 pg_dumpall.c:338
+#, c-format
 msgid ""
 "\n"
 "Connection options:\n"
@@ -276,25 +283,30 @@ msgstr ""
 "\n"
 "联接选项:\n"
 
-#: pg_dump.c:675 pg_restore.c:406 pg_dumpall.c:254
+#: pg_dump.c:702 pg_restore.c:390 pg_dumpall.c:339
+#, c-format
 msgid "  -h, --host=HOSTNAME      database server host or socket directory\n"
 msgstr "  -h, --host=主机名        数据库服务器的主机名或套接字目录\n"
 
-#: pg_dump.c:676 pg_restore.c:407 pg_dumpall.c:255
+#: pg_dump.c:703 pg_restore.c:391 pg_dumpall.c:340
+#, c-format
 msgid "  -p, --port=PORT          database server port number\n"
 msgstr "  -p, --port=端口号        数据库服务器的端口号\n"
 
-#: pg_dump.c:677 pg_restore.c:408 pg_dumpall.c:256
+#: pg_dump.c:704 pg_restore.c:392 pg_dumpall.c:341
+#, c-format
 msgid "  -U, --username=NAME      connect as specified database user\n"
 msgstr "  -U, --username=名字      以指定的数据库用户联接\n"
 
-#: pg_dump.c:678 pg_restore.c:409 pg_dumpall.c:257
+#: pg_dump.c:705 pg_restore.c:393 pg_dumpall.c:342
+#, c-format
 msgid ""
 "  -W, --password           force password prompt (should happen "
 "automatically)\n"
 msgstr "  -W, --password           强制口令提示 (自动)\n"
 
-#: pg_dump.c:680
+#: pg_dump.c:707
+#, c-format
 msgid ""
 "\n"
 "If no database name is supplied, then the PGDATABASE environment\n"
@@ -306,651 +318,413 @@ msgstr ""
 "的数值.\n"
 "\n"
 
-#: pg_dump.c:682 pg_restore.c:412 pg_dumpall.c:260
+#: pg_dump.c:709 pg_restore.c:396 pg_dumpall.c:345
+#, c-format
 msgid "Report bugs to <pgsql-bugs@postgresql.org>.\n"
 msgstr "报告错误至 <pgsql-bugs@postgresql.org>.\n"
 
-#: pg_dump.c:690 pg_backup_archiver.c:1298
+#: pg_dump.c:717 pg_backup_archiver.c:1195
 msgid "*** aborted because of error\n"
 msgstr "*** 因为错误退出\n"
 
-#: pg_dump.c:772
+#: pg_dump.c:799
 #, c-format
 msgid "dumping contents of table %s\n"
 msgstr "正在转储表 %s 的内容\n"
 
-#: pg_dump.c:811
+#: pg_dump.c:911
 #, c-format
-msgid "SQL command to dump the contents of table \"%s\" failed\n"
-msgstr "转储表 \"%s\" 的内容的 SQL 命令失败\n"
+msgid ""
+"SQL command to dump the contents of table \"%s\" failed: PQendcopy() "
+"failed.\n"
+msgstr "转储表 \"%s\" 的内容的 SQL 命令失败: PQendcopy() 失败.\n"
 
-#: pg_dump.c:813 pg_dump.c:902 pg_dump.c:952 pg_dump.c:966 pg_dump.c:1070
-#: pg_dump.c:1189
+#: pg_dump.c:912 pg_dump.c:8057
 #, c-format
 msgid "Error message from server: %s"
 msgstr "来自服务器的错误信息: %s"
 
-#: pg_dump.c:814 pg_dump.c:823 pg_dump.c:903 pg_dump.c:953 pg_dump.c:1190
+#: pg_dump.c:913 pg_dump.c:8058
 #, c-format
 msgid "The command was: %s\n"
 msgstr "命令是: %s\n"
 
-#: pg_dump.c:819
-#, c-format
-msgid "SQL command to dump the contents of table \"%s\" executed abnormally.\n"
-msgstr "转储表 \"%s\" 的内容的 SQL 命令非正常执行.\n"
-
-#: pg_dump.c:821
-#, c-format
-msgid "The server returned status %d when %d was expected.\n"
-msgstr "期望状态 %2$d 的时候服务器返回状态 %1$d.\n"
-
-#: pg_dump.c:901
-#, c-format
-msgid ""
-"SQL command to dump the contents of table \"%s\" failed: PQendcopy() "
-"failed.\n"
-msgstr "转储表 \"%s\" 的内容的 SQL 命令失败: PQendcopy() 失败.\n"
-
-#: pg_dump.c:951 pg_dump.c:965 pg_dump.c:1069
-msgid "dumpClasses(): SQL command failed\n"
-msgstr "dumpClasses(): SQL 命令失败\n"
-
-#: pg_dump.c:967
-msgid "The command was: FETCH 100 FROM _pg_dump_cursor\n"
-msgstr "命令是: FETCH 100 FROM _pg_dump_cursor\n"
-
-#: pg_dump.c:1071
-msgid "The command was: CLOSE _pg_dump_cursor\n"
-msgstr "命令是: CLOSE _pg_dump_cursor\n"
-
-#: pg_dump.c:1109
-#, c-format
-msgid "preparing to dump the contents of table %s\n"
-msgstr "准备转储表 %s 的内容\n"
-
-#: pg_dump.c:1172
+#: pg_dump.c:1182
 msgid "saving database definition\n"
 msgstr "保存数据库定义\n"
 
-#: pg_dump.c:1188
-msgid "SQL command failed\n"
-msgstr "SQL 命令失败\n"
-
-#: pg_dump.c:1198
+#: pg_dump.c:1228
 #, c-format
 msgid "missing pg_database entry for database \"%s\"\n"
 msgstr "缺少用于 \"%s\" 的 pg_database 记录\n"
 
-#: pg_dump.c:1205
+#: pg_dump.c:1235
 #, c-format
 msgid ""
 "query returned more than one (%d) pg_database entry for database \"%s\"\n"
 msgstr "查询为数据库 \"%2$s\" 返回了超过一条 (%1$d) pg_database 记录\n"
 
-#: pg_dump.c:1278
+#: pg_dump.c:1343
+msgid "saving encoding\n"
+msgstr "保存编码\n"
+
+#: pg_dump.c:1393
 msgid "saving large objects\n"
 msgstr "保存大对象\n"
 
-#: pg_dump.c:1292
-#, c-format
-msgid "dumpBlobs(): cursor declaration failed: %s"
-msgstr "dumpBlobs(): 游标声明失败: %s"
-
-#: pg_dump.c:1307
-#, c-format
-msgid "dumpBlobs(): fetch from cursor failed: %s"
-msgstr "dumpBlobs(): 从游标抓取失败: %s"
-
-#: pg_dump.c:1320
+#: pg_dump.c:1426
 #, c-format
 msgid "dumpBlobs(): could not open large object: %s"
 msgstr "dumpBlobs(): 无法打开大对象: %s"
 
-#: pg_dump.c:1333
+#: pg_dump.c:1439
 #, c-format
 msgid "dumpBlobs(): error reading large object: %s"
 msgstr "dumpBlobs(): 读取大对象错误: %s"
 
-#: pg_dump.c:1421
-#, c-format
-msgid "query to obtain list of schemas failed: %s"
-msgstr "获取大纲列表的查询失败: %s"
-
-#: pg_dump.c:1445
+#: pg_dump.c:1573
 #, c-format
 msgid "WARNING: owner of schema \"%s\" appears to be invalid\n"
-msgstr "警告: 大纲 \"%s\" 的所有者非法\n"
+msgstr "警告: 模式 \"%s\" 的所有者非法\n"
 
-#: pg_dump.c:1462
+#: pg_dump.c:1590
 #, c-format
 msgid "specified schema \"%s\" does not exist\n"
-msgstr "指定的大纲 \"%s\" 不存在\n"
+msgstr "指定的模式 \"%s\" 不存在\n"
 
-#: pg_dump.c:1499
+#: pg_dump.c:1627
 #, c-format
-msgid "schema with OID %s does not exist\n"
-msgstr "OID 为 %s 的大纲不存在\n"
+msgid "schema with OID %u does not exist\n"
+msgstr "OID %u 的模式不存在\n"
 
-#: pg_dump.c:1579
-#, c-format
-msgid "query to obtain list of data types failed: %s"
-msgstr "获取数据类型列表的查询失败: %s"
-
-#: pg_dump.c:1624
+#: pg_dump.c:1812
 #, c-format
 msgid "WARNING: owner of data type \"%s\" appears to be invalid\n"
 msgstr "警告: 数据类型 \"%s\" 的所有者非法\n"
 
-#: pg_dump.c:1687 pg_dump.c:4155
-#, c-format
-msgid "query to obtain list of operators failed: %s"
-msgstr "获取操作符列表的查询失败: %s"
-
-#: pg_dump.c:1712
+#: pg_dump.c:1910
 #, c-format
 msgid "WARNING: owner of operator \"%s\" appears to be invalid\n"
 msgstr "警告: 操作符 \"%s\" 的所有者非法\n"
 
-#: pg_dump.c:1770
-#, c-format
-msgid "query to obtain list of operator classes failed: %s"
-msgstr "获取操作符表列表的查询失败: %s"
-
-#: pg_dump.c:1795
+#: pg_dump.c:2075
 #, c-format
 msgid "WARNING: owner of operator class \"%s\" appears to be invalid\n"
 msgstr "警告: 操作符表 \"%s\" 无效\n"
 
-#: pg_dump.c:1863 pg_dump.c:4775
-#, c-format
-msgid "query to obtain list of aggregate functions failed: %s"
-msgstr "获取聚集函数列表的查询失败: %s"
-
-#: pg_dump.c:1889
+#: pg_dump.c:2179
 #, c-format
 msgid "WARNING: owner of aggregate function \"%s\" appears to be invalid\n"
 msgstr "警告: 聚集函数 \"%s\" 的所有者非法\n"
 
-#: pg_dump.c:1963
-#, c-format
-msgid "query to obtain list of functions failed: %s"
-msgstr "获取函数列表的查询失败: %s"
-
-#: pg_dump.c:2010
+#: pg_dump.c:2312
 #, c-format
 msgid "WARNING: owner of function \"%s\" appears to be invalid\n"
 msgstr "警告: 函数 \"%s\" 的所有者非法\n"
 
-#: pg_dump.c:2160
-#, c-format
-msgid "query to obtain list of tables failed: %s"
-msgstr "获取数据表列表的查询失败: %s"
-
-#: pg_dump.c:2256
-#, c-format
-msgid "attempt to lock table \"%s\" failed: %s"
-msgstr "尝试锁住表 \"%s\" 失败: %s"
-
-#: pg_dump.c:2265
+#: pg_dump.c:2590
 #, c-format
 msgid "WARNING: owner of table \"%s\" appears to be invalid\n"
 msgstr "警告: 数据表 \"%s\" 的所有者非法\n"
 
-#: pg_dump.c:2284
+#: pg_dump.c:2608
 #, c-format
 msgid "specified table \"%s\" does not exist\n"
 msgstr "指定的表 \"%s\" 不存在\n"
 
-#: pg_dump.c:2328
+#: pg_dump.c:2715
 #, c-format
-msgid "query to obtain inheritance relationships failed: %s"
-msgstr "获取继承关系的查询失败: %s"
+msgid "reading indexes for table \"%s\"\n"
+msgstr "为表 \"%s\" 读取索引\n"
 
-#: pg_dump.c:2416
+#: pg_dump.c:2952
 #, c-format
-msgid "finding the columns and types of table \"%s\"\n"
-msgstr "正在查找表 \"%s\" 的字段和类型\n"
+msgid "reading foreign key constraints for table \"%s\"\n"
+msgstr "为表 \"%s\" 读取外键约束\n"
 
-#: pg_dump.c:2468
+#: pg_dump.c:3227
 #, c-format
-msgid "query to get table columns failed: %s"
-msgstr "获取表字段的查询失败: %s"
+msgid "reading triggers for table \"%s\"\n"
+msgstr "为表 \"%s\" 读取触发器\n"
 
-#: pg_dump.c:2507
+#: pg_dump.c:3299
 #, c-format
-msgid "invalid attribute numbering in table \"%s\"\n"
-msgstr "表 \"%s\" 中的无效属性计算\n"
+msgid "expected %d triggers on table \"%s\" but found %d\n"
+msgstr "预期在表 \"%2$s\" 上有触发器 %1$d , 却发现 %3$d\n"
 
-#: pg_dump.c:2537
+#: pg_dump.c:3344
 #, c-format
-msgid "finding default expressions of table \"%s\"\n"
-msgstr "正在查找表 \"%s\" 的默认表达式\n"
+msgid ""
+"query produced null referenced table name for foreign key trigger \"%s\" on "
+"table \"%s\" (OID of table: %u)\n"
+msgstr ""
+"对在表 \"%2$s\" 上的外键触发器 \"%1$s\" 上的查询生成了 NULL 个引用表(表的 "
+"OID 是: %3$u)\n"
 
-#: pg_dump.c:2568
+#: pg_dump.c:3644
 #, c-format
-msgid "query to get column default values failed: %s"
-msgstr "获取字段缺省值的查询失败: %s"
+msgid "finding the columns and types of table \"%s\"\n"
+msgstr "正在查找表 \"%s\" 的字段和类型\n"
 
-#: pg_dump.c:2580
+#: pg_dump.c:3730
 #, c-format
-msgid "invalid adnum value %d for table \"%s\"\n"
-msgstr "表 \"%2$s\" 的无效 adnum 值 %1$d\n"
+msgid "invalid column numbering in table \"%s\"\n"
+msgstr "在表 \"%s\" 中的字段个数是无效的\n"
 
-#: pg_dump.c:2697
+#: pg_dump.c:3764
 #, c-format
-msgid "query to get comment on OID %s failed: %s"
-msgstr "获取 OID 为 %s 的注释的查询失败: %s"
+msgid "finding default expressions of table \"%s\"\n"
+msgstr "正在查找表 \"%s\" 的默认表达式\n"
 
-#: pg_dump.c:2781
+#: pg_dump.c:3847
 #, c-format
-msgid "query to get comments on table %s failed: %s"
-msgstr "获取表为 %s 的注释的查询失败: %s"
+msgid "invalid adnum value %d for table \"%s\"\n"
+msgstr "表 \"%2$s\" 的无效 adnum 值 %1$d\n"
 
-#: pg_dump.c:2864
+#: pg_dump.c:3865
 #, c-format
-msgid "query to get database OID failed: %s"
-msgstr "获取数据库 OID 的查询失败: %s"
+msgid "finding check constraints for table \"%s\"\n"
+msgstr "正在为表 \"%s\" 查找检查约束\n"
 
-#: pg_dump.c:3061
+#: pg_dump.c:3929
 #, c-format
-msgid "query to obtain information on data type \"%s\" failed: %s"
-msgstr "获取数据类型 \"%s\" 的信息查询失败: %s"
+msgid "expected %d check constraints on table \"%s\" but found %d\n"
+msgstr "预计有 %d 个检查约束在表 \"%s\" 上, 但只找到 %d 个\n"
+
+#: pg_dump.c:3931
+msgid "(The system catalogs might be corrupted.)\n"
+msgstr "(系统表可能损坏了.)\n"
 
-#: pg_dump.c:3070 pg_dump.c:3272 pg_dump.c:3819 pg_dump.c:4163 pg_dump.c:4476
-#: pg_dump.c:4784
+#: pg_dump.c:4617 pg_dump.c:4782 pg_dump.c:5188 pg_dump.c:5572 pg_dump.c:5869
+#: pg_dump.c:6069 pg_dump.c:6252
 #, c-format
 msgid "Got %d rows instead of one from: %s"
 msgstr "已得到 %d 条记录替代来自 %s 的一条"
 
-#: pg_dump.c:3264
-#, c-format
-msgid "query to obtain domain information failed: %s"
-msgstr "获取域信息的查询失败: %s"
-
-#: pg_dump.c:3329
-#, c-format
-msgid "query to obtain domain constraint information failed: %s"
-msgstr "获取域信息的查询失败: %s"
-
-#: pg_dump.c:3407
-#, c-format
-msgid "query to obtain data type information failed: %s"
-msgstr "获取数据类型信息的查询失败: %s"
-
-#: pg_dump.c:3415
+#: pg_dump.c:4891
 #, c-format
 msgid "query yielded no rows: %s\n"
 msgstr "查询放弃, 没有记录: %s\n"
 
-#: pg_dump.c:3546
-#, c-format
-msgid "query to obtain list of procedural languages failed: %s"
-msgstr "获取过程语言列表的查询失败: %s"
-
-#: pg_dump.c:3581
-#, c-format
-msgid "handler procedure for procedural language \"%s\" not found\n"
-msgstr "未找到用于过程语言 \"%s\" 的句柄过程\n"
-
-#: pg_dump.c:3591
-#, c-format
-msgid "validator procedure for procedural language \"%s\" not found\n"
-msgstr "未找到用于过程语言 \"%s\" 的校验过程\n"
-
-#: pg_dump.c:3810
-#, c-format
-msgid "query to obtain information on function \"%s\" failed: %s"
-msgstr "获取函数 \"%s\" 的信息查询失败: %s"
+#: pg_dump.c:5243
+msgid "WARNING: could not parse proargnames array\n"
+msgstr "警告: 无法分析 proargnames 数组\n"
 
-#: pg_dump.c:3886
+#: pg_dump.c:5280
 #, c-format
 msgid "unrecognized provolatile value for function \"%s\"\n"
 msgstr "函数 \"%s\" 的意外正向易失值\n"
 
-#: pg_dump.c:3952
-#, c-format
-msgid "query to obtain list of casts failed: %s"
-msgstr "获取类型转换列表的查询失败: %s"
-
-#: pg_dump.c:4384
+#: pg_dump.c:5794
 #, c-format
 msgid "WARNING: could not find operator with OID %s\n"
 msgstr "警告: 未找到 OID 为 %s 的操作符\n"
 
-#: pg_dump.c:4468
-#, c-format
-msgid "query to obtain operator class details failed: %s"
-msgstr "获取操作符表查询失败: %s"
-
-#: pg_dump.c:4538
-#, c-format
-msgid "query to obtain operator class operators failed: %s"
-msgstr "获取操作符表的操作符查询失败: %s"
-
-#: pg_dump.c:4583
-#, c-format
-msgid "query to obtain operator class functions failed: %s"
-msgstr "获取操作符表的函数查询失败: %s"
-
-#: pg_dump.c:4812
+#: pg_dump.c:6280
 #, c-format
 msgid ""
 "WARNING: aggregate function %s could not be dumped correctly for this "
 "database version; ignored\n"
 msgstr "警告: 无法为此版本的数据库正确转储聚集函数 \"%s\"; 忽略\n"
 
-#: pg_dump.c:4946
+#: pg_dump.c:6412
 #, c-format
 msgid "could not parse ACL list (%s) for object \"%s\" (%s)\n"
 msgstr "无法为对象 \"%2$s\" 分析 ACL 列表 (%1$s) (%3$s)\n"
 
-#: pg_dump.c:5109
-#, c-format
-msgid "query to obtain definition of view \"%s\" failed: %s"
-msgstr "获取视图 \"%s\" 定义的查询失败: %s"
-
-#: pg_dump.c:5117
+#: pg_dump.c:6505
 #, c-format
 msgid "query to obtain definition of view \"%s\" returned no data\n"
 msgstr "获取视图 \"%s\" 定义的查询没有返回数据\n"
 
-#: pg_dump.c:5120
+#: pg_dump.c:6508
 #, c-format
 msgid ""
 "query to obtain definition of view \"%s\" returned more than one definition\n"
 msgstr "获取视图 \"%s\" 定义的查询返回超过一个定义\n"
 
-#: pg_dump.c:5127
-#, c-format
-msgid "query to obtain definition of view \"%s\" returned null OID\n"
-msgstr "获取视图 \"%s\" 定义的查询返回空 OID\n"
-
-#: pg_dump.c:5136
+#: pg_dump.c:6517
 #, c-format
 msgid "definition of view \"%s\" appears to be empty (length zero)\n"
 msgstr "视图 \"%s\" 的定义是空的(零长)\n"
 
-#: pg_dump.c:5274
-#, c-format
-msgid "finding check constraints for table \"%s\"\n"
-msgstr "正在为表 \"%s\" 查找检查约束\n"
-
-#: pg_dump.c:5338
-#, c-format
-msgid "query to obtain check constraints failed: %s"
-msgstr "获取检查约束的查询失败: %s"
-
-#: pg_dump.c:5344
-#, c-format
-msgid "expected %d check constraints on table \"%s\" but found %d\n"
-msgstr "预计有 %d 个检查约束在表 \"%s\" 上, 但只找到 %d 个\n"
-
-#: pg_dump.c:5346
-msgid "(The system catalogs might be corrupted.)\n"
-msgstr "(系统表可能损坏了.)\n"
-
-#: pg_dump.c:5508
+#: pg_dump.c:6824
 #, c-format
 msgid "invalid column number %d for table \"%s\"\n"
 msgstr "对于表 \"%2$s\" 字段个数 %1$d 是无效的\n"
 
-#: pg_dump.c:5597
+#: pg_dump.c:6925
 #, c-format
-msgid "query to obtain list of indexes failed: %s"
-msgstr "获取索引列表的查询失败: %s"
+msgid "missing index for constraint %s\n"
+msgstr "对于约束 %s 缺少索引\n"
 
-#: pg_dump.c:5757
-#, c-format
-msgid "could not create pgdump_oid table: %s"
-msgstr "无法创建 pgdump_oid 表: %s"
+#: pg_dump.c:7092
+msgid "unexpected constraint type\n"
+msgstr "意外的约束类型\n"
 
-#: pg_dump.c:5765
-#, c-format
-msgid "could not insert into pgdump_oid table: %s"
-msgstr "无法插入到 pgdump_oid 表: %s"
-
-#: pg_dump.c:5771
+#: pg_dump.c:7134
 msgid "inserted invalid OID\n"
 msgstr "插入了非法 OID\n"
 
-#: pg_dump.c:5779
-#, c-format
-msgid "could not drop pgdump_oid table: %s"
-msgstr "无法删除 pgdump_oid 表: %s"
-
-#: pg_dump.c:5784
+#: pg_dump.c:7140
 #, c-format
 msgid "maximum system OID is %u\n"
 msgstr "最大系统 OID 是 %u\n"
 
-#: pg_dump.c:5821
-#, c-format
-msgid "error in finding the last system OID: %s"
-msgstr "查找最后的系统 OID 时出错: %s"
-
-#: pg_dump.c:5827
+#: pg_dump.c:7181
 msgid "missing pg_database entry for this database\n"
 msgstr "缺少此数据库的 pg_database 记录\n"
 
-#: pg_dump.c:5832
+#: pg_dump.c:7186
 msgid "found more than one pg_database entry for this database\n"
 msgstr "找到此数据库的多于一条的 pg_database 记录\n"
 
-#: pg_dump.c:5860
-#, c-format
-msgid "error in finding the template1 database: %s"
-msgstr "查找 template1 数据库出错: %s"
+#: pg_dump.c:7218
+msgid "could not find entry for pg_indexes in pg_class\n"
+msgstr "在 pg_class 中无法为 pg_indexes 找到记录\n"
 
-#: pg_dump.c:5866
-msgid "could not find entry for database template1 in table pg_database\n"
-msgstr "无法在 pg_database 表中找到 template1 数据库记录\n"
+#: pg_dump.c:7223
+msgid "found more than one entry for pg_indexes in pg_class\n"
+msgstr "在 pg_class 表中找到多条 pg_indexes 的记录\n"
 
-#: pg_dump.c:5871
-msgid "found more than one entry for database template1 in table pg_database\n"
-msgstr "在 pg_database 表中找到多条 template1 数据库记录\n"
-
-#: pg_dump.c:5919
-#, c-format
-msgid "query to get data of sequence \"%s\" failed: %s"
-msgstr "获取序列 \"%s\" 的数据的查询失败: %s"
-
-#: pg_dump.c:5925
+#: pg_dump.c:7272
 #, c-format
 msgid "query to get data of sequence \"%s\" returned %d rows (expected 1)\n"
 msgstr "获取序列 \"%s\" 的数据的查询返回了 %d 行 (预期是 1)\n"
 
-#: pg_dump.c:5934
+#: pg_dump.c:7281
 #, c-format
 msgid "query to get data of sequence \"%s\" returned name \"%s\"\n"
 msgstr "获取序列 \"%s\" 的数据的查询返回了名字 \"%s\"\n"
 
-#: pg_dump.c:6074
-#, c-format
-msgid "dumping foreign key constraints for table \"%s\"\n"
-msgstr "为表 \"%s\" 转储外键约束\n"
-
-#: pg_dump.c:6095
-#, c-format
-msgid "query to obtain list of foreign key definitions failed: %s"
-msgstr "获取外键定义列表的查询失败: %s"
-
-#: pg_dump.c:6185
-#, c-format
-msgid "dumping triggers for table \"%s\"\n"
-msgstr "为表 \"%s\" 转储触发器\n"
-
-#: pg_dump.c:6234
-#, c-format
-msgid "query to obtain list of triggers failed: %s"
-msgstr "获取触发器的查询失败: %s"
-
-#: pg_dump.c:6245
-#, c-format
-msgid "expected %d triggers on table \"%s\" but found %d\n"
-msgstr "预期在表 \"%2$s\" 上有触发器 %1$d , 却发现 %3$d\n"
-
-#: pg_dump.c:6355
-#, c-format
-msgid ""
-"query produced null referenced table name for foreign key trigger \"%s\" on "
-"table \"%s\" (OID of table: %s)\n"
-msgstr ""
-"对在表 \"%2$s\" 上的外键触发器 \"%1$s\" 上的查询生成 NULL 个引用表(表的 OID "
-"是: %3$s)\n"
-
-#: pg_dump.c:6399
+#: pg_dump.c:7516
 #, c-format
 msgid "invalid argument string (%s) for trigger \"%s\" on table \"%s\"\n"
 msgstr "给表 \"%3$s\" 上的触发器 \"%2$s\" 的错误参数 (%1$s)\n"
 
-#: pg_dump.c:6469
-msgid "dumping out rules\n"
-msgstr "转储规则\n"
-
-#: pg_dump.c:6522
-#, c-format
-msgid "query to get rules associated with table \"%s\" failed: %s"
-msgstr "获取与表 \"%s\" 关联的规则失败: %s"
-
-#: pg_dump.c:6605
+#: pg_dump.c:7622
 #, c-format
-msgid "command to set search_path failed: %s"
-msgstr "设置 search_path 的查询失败: %s"
+msgid ""
+"query to get rule \"%s\" for table \"%s\" failed: wrong number of rows "
+"returned"
+msgstr "获取表 \"%s\" 的规则 \"%s\" 查询失败: 返回了错误的行数"
 
-#: pg_dump.c:6667
-#, c-format
-msgid "query to obtain name of data type %s failed: %s"
-msgstr "获取数据类型 %s 的名字查询失败: %s"
+#: pg_dump.c:7689
+msgid "fetching dependency data\n"
+msgstr "取回从属数据\n"
 
-#: pg_dump.c:6676
+#: pg_dump.c:7865
 #, c-format
 msgid "query yielded %d rows instead of one: %s\n"
 msgstr "查询放弃 %d 条记录, 由一条记录代替: %s\n"
 
-#: common.c:74
+#: pg_dump.c:8052
+msgid "SQL command failed\n"
+msgstr "SQL 命令失败\n"
+
+#: common.c:99
 msgid "reading schemas\n"
-msgstr "读取大纲\n"
+msgstr "读取模式\n"
+
+#: common.c:103
+msgid "reading user-defined functions\n"
+msgstr "读取用户定义函数\n"
 
-#: common.c:78
+#: common.c:108
 msgid "reading user-defined types\n"
 msgstr "读取用户定义类型\n"
 
-#: common.c:82
-msgid "reading user-defined functions\n"
-msgstr "读取用户定义函数\n"
+#: common.c:113
+msgid "reading procedural languages\n"
+msgstr "读取过程语言\n"
 
-#: common.c:86
+#: common.c:117
 msgid "reading user-defined aggregate functions\n"
 msgstr "读取用户定义聚集函数\n"
 
-#: common.c:90
+#: common.c:121
 msgid "reading user-defined operators\n"
 msgstr "读取用户定义操作符\n"
 
-#: common.c:94
+#: common.c:125
 msgid "reading user-defined operator classes\n"
 msgstr "读取用户定义操作符集\n"
 
-#: common.c:98
+#: common.c:129
+msgid "reading user-defined conversions\n"
+msgstr "读取用户定义的字符集转换\n"
+
+#: common.c:133
 msgid "reading user-defined tables\n"
 msgstr "读取用户定义表\n"
 
-#: common.c:102
+#: common.c:137
 msgid "reading table inheritance information\n"
 msgstr "读取表继承信息\n"
 
-#: common.c:107
+#: common.c:141
+msgid "reading rewrite rules\n"
+msgstr "读取重写规则\n"
+
+#: common.c:145
+msgid "reading type casts\n"
+msgstr "读取类型转换\n"
+
+#: common.c:150
 msgid "finding inheritance relationships\n"
 msgstr "正在查找关系继承\n"
 
-#: common.c:111
+#: common.c:154
 msgid "reading column info for interesting tables\n"
 msgstr "正在读取感兴趣表的列信息\n"
 
-#: common.c:115
+#: common.c:158
 msgid "flagging inherited columns in subtables\n"
 msgstr "在子表里标记继承字段\n"
 
-#: common.c:121
-msgid "dumping out database comment\n"
-msgstr "转储数据库注释\n"
-
-#: common.c:128
-msgid "dumping out user-defined schemas\n"
-msgstr "转储出用户定义的大纲\n"
-
-#: common.c:135
-msgid "dumping out user-defined types\n"
-msgstr "转储用户定义类型\n"
-
-#: common.c:140
-msgid "dumping out tables\n"
-msgstr "转储表\n"
-
-#: common.c:147
-msgid "dumping out indexes\n"
-msgstr "转储索引\n"
-
-#: common.c:154
-msgid "dumping out user-defined procedural languages\n"
-msgstr "转储用户定义过程语言\n"
-
-#: common.c:161
-msgid "dumping out user-defined functions\n"
-msgstr "转储用户定义函数\n"
-
-#: common.c:168
-msgid "dumping out user-defined aggregate functions\n"
-msgstr "转储用户定义聚集函数\n"
-
-#: common.c:175
-msgid "dumping out user-defined operators\n"
-msgstr "转储用户定义操作符\n"
-
-#: common.c:182
-msgid "dumping out user-defined operator classes\n"
-msgstr "转储用户定义操作符集\n"
-
-#: common.c:189
-msgid "dumping out user-defined casts\n"
-msgstr "转储用户定义类型转换\n"
-
-#: common.c:450
-#, c-format
-msgid "failed sanity check, operator with OID %s not found\n"
-msgstr "健全检查失败, 未找到 OID 为 %s 的操作符\n"
-
-#: common.c:500
-#, c-format
-msgid "failed sanity check, parent OID %s of table \"%s\" (OID %s) not found\n"
-msgstr "健全检查失败, 未找到表 \"%2$s\" (OID %3$s) 的 OID 为 %1$s 的父辈\n"
+#: common.c:162
+msgid "reading indexes\n"
+msgstr "读取索引\n"
+
+#: common.c:166
+msgid "reading constraints\n"
+msgstr "读取约束\n"
+
+#: common.c:170
+msgid "reading triggers\n"
+msgstr "读取触发器\n"
+
+#: common.c:421 common.c:553 common.c:587 pg_backup_archiver.c:602
+#: pg_backup_archiver.c:946 pg_backup_archiver.c:1060
+#: pg_backup_archiver.c:1469 pg_backup_archiver.c:1619
+#: pg_backup_archiver.c:1652 pg_backup_custom.c:141 pg_backup_custom.c:146
+#: pg_backup_custom.c:152 pg_backup_custom.c:167 pg_backup_custom.c:544
+#: pg_backup_db.c:152 pg_backup_db.c:228 pg_backup_files.c:112
+#: pg_backup_tar.c:168 pg_backup_tar.c:960
+msgid "out of memory\n"
+msgstr "内存用尽\n"
 
-#: common.c:505
+#: common.c:728
 #, c-format
-msgid "failed sanity check, parent OID %s of table (OID %s) not found\n"
-msgstr "健全检查失败, 表 (OID %2$s) 的 OID 为 %1$s 的父辈\n"
+msgid "failed sanity check, parent OID %u of table \"%s\" (OID %u) not found\n"
+msgstr "健全检查失败, 未找到表 \"%2$s\" (OID %3$u) 的 OID 为 %1$u 的父辈\n"
 
-#: common.c:543
+#: common.c:770
 msgid "could not parse numeric array: too many numbers\n"
 msgstr "无法分析数组: 数字太多\n"
 
-#: common.c:558
+#: common.c:785
 msgid "could not parse numeric array: invalid character in number\n"
 msgstr "无法分析数组: 数字中有无效的字符\n"
 
-#: pg_backup_archiver.c:67
+#: pg_backup_archiver.c:45
 msgid "archiver"
 msgstr "归档"
 
-#: pg_backup_archiver.c:122
+#: pg_backup_archiver.c:126
 msgid "could not close output archive file\n"
 msgstr "无法关闭输出归档文件\n"
 
-#: pg_backup_archiver.c:149
-msgid "-C and -R are incompatible options\n"
-msgstr "-C 和 -R 是互不兼容的选项\n"
-
 #: pg_backup_archiver.c:152
 msgid "-C and -c are incompatible options\n"
 msgstr "-C 和 -c 是互不兼容的选项\n"
@@ -967,299 +741,275 @@ msgstr "1.3 
 msgid "implied data-only restore\n"
 msgstr "隐含的只恢复数据\n"
 
-#: pg_backup_archiver.c:222
+#: pg_backup_archiver.c:227
 #, c-format
 msgid "dropping %s %s\n"
 msgstr "删除 %s %s\n"
 
-#: pg_backup_archiver.c:246 pg_backup_archiver.c:248
+#: pg_backup_archiver.c:251 pg_backup_archiver.c:253
 #, c-format
 msgid "warning from original dump file: %s\n"
 msgstr "来自原始转储文件的警告: %s\n"
 
-#: pg_backup_archiver.c:255
+#: pg_backup_archiver.c:260
 #, c-format
 msgid "creating %s %s\n"
 msgstr "创建 %s %s\n"
 
-#: pg_backup_archiver.c:262
+#: pg_backup_archiver.c:268
 #, c-format
 msgid "connecting to new database \"%s\" as user \"%s\"\n"
 msgstr "以用户 \"%2$s\" 身份联接到新数据库 \"%1$s\"\n"
 
-#: pg_backup_archiver.c:287
+#: pg_backup_archiver.c:293
 msgid ""
 "cannot restore from compressed archive (not configured for compression "
 "support)\n"
 msgstr "无法从压缩的归档中恢复 (未配置压缩支持)\n"
 
-#: pg_backup_archiver.c:307
+#: pg_backup_archiver.c:313
 msgid "WARNING: skipping large-object restoration\n"
 msgstr "警告: 忽略大对象的恢复\n"
 
-#: pg_backup_archiver.c:320
+#: pg_backup_archiver.c:323
 #, c-format
 msgid "restoring data for table \"%s\"\n"
 msgstr "为表 \"%s\" 恢复数据\n"
 
-#: pg_backup_archiver.c:345
-#, c-format
-msgid "executing %s %s\n"
-msgstr "执行 %s %s\n"
-
-#: pg_backup_archiver.c:367
-#, c-format
-msgid "checking whether we loaded \"%s\"\n"
-msgstr "检查我们是否装载了 \"%s\"\n"
-
-#: pg_backup_archiver.c:373
+#: pg_backup_archiver.c:355 pg_backup_archiver.c:440
 #, c-format
 msgid "fixing up large-object cross-reference for \"%s\"\n"
 msgstr "为 \"%s\" 修复大对象的交叉引用\n"
 
-#: pg_backup_archiver.c:378
+#: pg_backup_archiver.c:366
+#, c-format
+msgid "executing %s %s\n"
+msgstr "执行 %s %s\n"
+
+#: pg_backup_archiver.c:386
 #, c-format
-msgid "ignoring large-object cross-references for %s %s\n"
-msgstr "为 %s %s 忽略大对象交叉引用\n"
+msgid "setting owner and acl for %s %s\n"
+msgstr "为 %s %s 设置属主和权限 (acl)\n"
 
-#: pg_backup_archiver.c:471
+#: pg_backup_archiver.c:502
 msgid "disabling triggers\n"
 msgstr "关闭触发器\n"
 
-#: pg_backup_archiver.c:538
+#: pg_backup_archiver.c:541
 msgid "enabling triggers\n"
 msgstr "打开触发器\n"
 
-#: pg_backup_archiver.c:587
+#: pg_backup_archiver.c:576
 msgid ""
 "internal error -- WriteData cannot be called outside the context of a "
 "DataDumper routine\n"
 msgstr "内部错误 -- WriteData 不能在 DataDumper 过程的环境之外调用\n"
 
-#: pg_backup_archiver.c:614 pg_backup_archiver.c:1044
-#: pg_backup_archiver.c:1163 pg_backup_archiver.c:1552
-#: pg_backup_archiver.c:1702 pg_backup_archiver.c:1735 pg_backup_custom.c:141
-#: pg_backup_custom.c:146 pg_backup_custom.c:152 pg_backup_custom.c:167
-#: pg_backup_custom.c:545 pg_backup_db.c:157 pg_backup_db.c:233
-#: pg_backup_files.c:112 pg_backup_tar.c:169 pg_backup_tar.c:961
-msgid "out of memory\n"
-msgstr "内存用尽\n"
-
-#: pg_backup_archiver.c:711
+#: pg_backup_archiver.c:709
 msgid "large-object output not supported in chosen format\n"
 msgstr "选定的格式不支持大对象输出\n"
 
-#: pg_backup_archiver.c:751 pg_backup_archiver.c:836
+#: pg_backup_archiver.c:749 pg_backup_archiver.c:837
 msgid "committing large-object transactions\n"
 msgstr "提交大对象事务\n"
 
-#: pg_backup_archiver.c:758
+#: pg_backup_archiver.c:759
 #, c-format
 msgid "restored %d large objects\n"
 msgstr "恢复了 %d 个大对象\n"
 
-#: pg_backup_archiver.c:775
+#: pg_backup_archiver.c:776
 msgid "cannot restore large objects without a database connection\n"
 msgstr "没有数据库联接时无法恢复大对象\n"
 
-#: pg_backup_archiver.c:789
+#: pg_backup_archiver.c:790
 msgid "starting large-object transactions\n"
 msgstr "开始大对象事务\n"
 
-#: pg_backup_archiver.c:797
+#: pg_backup_archiver.c:798
 msgid "could not create large object\n"
 msgstr "无法创建大对象\n"
 
-#: pg_backup_archiver.c:799
+#: pg_backup_archiver.c:800
 #, c-format
 msgid "restoring large object with OID %u as %u\n"
 msgstr "把 OID 为 %u 的大对象恢复为 %u\n"
 
-#: pg_backup_archiver.c:805
+#: pg_backup_archiver.c:806
 msgid "could not open large object\n"
 msgstr "无法打开大对象\n"
 
-#: pg_backup_archiver.c:820
+#: pg_backup_archiver.c:821
 #, c-format
 msgid "wrote remaining %lu bytes of large-object data (result = %lu)\n"
 msgstr "写剩下了 %lu 字节的大对象数据 (结果 = %lu)\n"
 
-#: pg_backup_archiver.c:823 pg_backup_archiver.c:1220
+#: pg_backup_archiver.c:824 pg_backup_archiver.c:1117
 #, c-format
 msgid "could not write to large object (result: %lu, expected: %lu)\n"
 msgstr "无法写入大对象 (结果: %lu, 预期: %lu)\n"
 
-#: pg_backup_archiver.c:960
+#: pg_backup_archiver.c:870
 msgid "could not open TOC file\n"
 msgstr "无法打开 TOC 文件\n"
 
-#: pg_backup_archiver.c:981
+#: pg_backup_archiver.c:891
 #, c-format
 msgid "WARNING: line ignored: %s\n"
 msgstr "警告: 忽略的行: %s\n"
 
-#: pg_backup_archiver.c:988
+#: pg_backup_archiver.c:898
 #, c-format
 msgid "could not find entry for ID %d\n"
 msgstr "无法为 ID %d 找到记录\n"
 
-#: pg_backup_archiver.c:997 pg_backup_files.c:156 pg_backup_files.c:438
+#: pg_backup_archiver.c:908 pg_backup_files.c:156 pg_backup_files.c:439
 #, c-format
 msgid "could not close TOC file: %s\n"
 msgstr "无法关闭 TOC 文件: %s\n"
 
-#: pg_backup_archiver.c:1112 pg_backup_files.c:130
+#: pg_backup_archiver.c:1008 pg_backup_files.c:130
 #, c-format
 msgid "could not open output file: %s\n"
 msgstr "无法打开输出文件: %s\n"
 
-#: pg_backup_archiver.c:1128
+#: pg_backup_archiver.c:1024
 #, c-format
 msgid "could not close output file: %s\n"
 msgstr "无法关闭输出文件: %s\n"
 
-#: pg_backup_archiver.c:1216
+#: pg_backup_archiver.c:1113
 #, c-format
 msgid "wrote %lu bytes of large object data (result = %lu)\n"
 msgstr "写了 %lu 字节的大对象数据 (结果 = %lu)\n"
 
-#: pg_backup_archiver.c:1238
+#: pg_backup_archiver.c:1135
 msgid "could not write to compressed archive\n"
 msgstr "无法写入压缩的归档\n"
 
-#: pg_backup_archiver.c:1246
+#: pg_backup_archiver.c:1143
 msgid "could not write to custom output routine\n"
 msgstr "无法写出到客户输出过程\n"
 
-#: pg_backup_archiver.c:1261
+#: pg_backup_archiver.c:1158
 #, c-format
 msgid "could not write to output file (%lu != %lu)\n"
 msgstr "无法写出到输出文件 (%lu != %lu)\n"
 
-#: pg_backup_archiver.c:1445
+#: pg_backup_archiver.c:1362
 #, c-format
 msgid "Unexpected data offset flag %d\n"
 msgstr "意外的数据偏移标志 %d\n"
 
-#: pg_backup_archiver.c:1458
+#: pg_backup_archiver.c:1375
 msgid "file offset in dump file is too large\n"
 msgstr "在转储文件中的文件偏移量太大\n"
 
-#: pg_backup_archiver.c:1570
+#: pg_backup_archiver.c:1487
 msgid "attempting to ascertain archive format\n"
 msgstr "试图确认归档格式\n"
 
-#: pg_backup_archiver.c:1590 pg_backup_files.c:148
+#: pg_backup_archiver.c:1507 pg_backup_files.c:148
 #, c-format
 msgid "could not open input file: %s\n"
 msgstr "无法打开输入文件: %s\n"
 
-#: pg_backup_archiver.c:1597
+#: pg_backup_archiver.c:1514
 #, c-format
 msgid "could not read input file: %s\n"
 msgstr "无法读取输入文件: %s\n"
 
-#: pg_backup_archiver.c:1599
+#: pg_backup_archiver.c:1516
 #, c-format
 msgid "input file is too short (read %lu, expected 5)\n"
 msgstr "输入文件太短 (读了 %lu, 预期 5)\n"
 
-#: pg_backup_archiver.c:1652
+#: pg_backup_archiver.c:1569
 msgid "input file does not appear to be a valid archive (too short?)\n"
 msgstr "输入文件看上去不象有效的归档 (太短?)\n"
 
-#: pg_backup_archiver.c:1655
+#: pg_backup_archiver.c:1572
 msgid "input file does not appear to be a valid archive\n"
 msgstr "输入文件看上去不象有效的归档\n"
 
-#: pg_backup_archiver.c:1673
+#: pg_backup_archiver.c:1590
 #, c-format
 msgid "read %lu bytes into lookahead buffer\n"
 msgstr "读取 %lu 字节到预览缓冲区\n"
 
-#: pg_backup_archiver.c:1680
+#: pg_backup_archiver.c:1597
 #, c-format
 msgid "could not close the input file after reading header: %s\n"
 msgstr "读取头之后无法关闭输入文件: %s\n"
 
-#: pg_backup_archiver.c:1697
+#: pg_backup_archiver.c:1614
 #, c-format
 msgid "allocating AH for %s, format %d\n"
 msgstr "为 %s 分配 AH, 格式 %d\n"
 
-#: pg_backup_archiver.c:1751
+#: pg_backup_archiver.c:1668
 #, c-format
 msgid "archive format is %d\n"
 msgstr "归档格式是 %d\n"
 
-#: pg_backup_archiver.c:1779
+#: pg_backup_archiver.c:1696
 #, c-format
 msgid "unrecognized file format \"%d\"\n"
 msgstr "不可识别的文件格式 \"%d\"\n"
 
-#: pg_backup_archiver.c:1892
+#: pg_backup_archiver.c:1823
 #, c-format
 msgid "entry ID %d out of range -- perhaps a corrupt TOC\n"
 msgstr "记录 ID %d 超出范围 - 可能是损坏了的 TOC\n"
 
-#: pg_backup_archiver.c:1927
-#, c-format
-msgid "read dependency for %s -> %s\n"
-msgstr "读取 %s -> %s 的依赖性\n"
-
-#: pg_backup_archiver.c:1949
+#: pg_backup_archiver.c:1905
 #, c-format
 msgid "read TOC entry %d (ID %d) for %s %s\n"
 msgstr "为 %3$s %4$s 读取 TOC 记录 %1$d (ID %2$d)\n"
 
-#: pg_backup_archiver.c:2075
+#: pg_backup_archiver.c:2064
 #, c-format
 msgid "could not set session user to \"%s\": %s"
 msgstr "无法设置会话用户为 \"%s\": %s"
 
-#: pg_backup_archiver.c:2189
-#, c-format
-msgid "could not set search_path to \"%s\": %s"
-msgstr "无法设置查找路径为 \"%s\": %s"
-
-#: pg_backup_archiver.c:2249
+#: pg_backup_archiver.c:2427
 msgid ""
 "WARNING: requested compression not available in this installation -- archive "
 "will be uncompressed\n"
 msgstr "警告: 所要求的压缩无法在本次安装中获取 - 归档将不被压缩\n"
 
-#: pg_backup_archiver.c:2282
+#: pg_backup_archiver.c:2460
 msgid "did not find magic string in file header\n"
 msgstr "在文件头中没有找到魔术字串\n"
 
-#: pg_backup_archiver.c:2296
+#: pg_backup_archiver.c:2474
 #, c-format
 msgid "unsupported version (%d.%d) in file header\n"
 msgstr "在文件头中有不支持的版本 (%d.%d)\n"
 
-#: pg_backup_archiver.c:2301
+#: pg_backup_archiver.c:2479
 #, c-format
 msgid "sanity check on integer size (%lu) failed\n"
 msgstr "整数尺寸 (%lu) 的健全检查失败\n"
 
-#: pg_backup_archiver.c:2305
+#: pg_backup_archiver.c:2483
 msgid ""
 "WARNING: archive was made on a machine with larger integers, some operations "
 "may fail\n"
 msgstr "警告: 归档是在一台有着更大的整数的机器上制作的, 有些操作可能失败\n"
 
-#: pg_backup_archiver.c:2315
+#: pg_backup_archiver.c:2493
 #, c-format
 msgid "expected format (%d) differs from format found in file (%d)\n"
 msgstr "预期的格式 (%d) 和在文件里找到的格式 (%d) 不同\n"
 
-#: pg_backup_archiver.c:2331
+#: pg_backup_archiver.c:2509
 msgid ""
 "WARNING: archive is compressed, but this installation does not support "
 "compression -- no data will be available\n"
 msgstr "警告: 归档是压缩过的, 但是当前安装不支持压缩 - 数据将不可使用\n"
 
-#: pg_backup_archiver.c:2349
+#: pg_backup_archiver.c:2527
 msgid "WARNING: invalid creation date in header\n"
 msgstr "警告: 在头中的创建日期无效\n"
 
@@ -1272,11 +1022,11 @@ msgstr "
 msgid "could not open archive file \"%s\": %s\n"
 msgstr "无法打开归档文件 \"%s\": %s\n"
 
-#: pg_backup_custom.c:388
+#: pg_backup_custom.c:389
 msgid "invalid OID for large object\n"
 msgstr "大对象的无效 OID\n"
 
-#: pg_backup_custom.c:446
+#: pg_backup_custom.c:447
 msgid ""
 "Dumping a specific TOC data block out of order is not supported without ID "
 "on this input stream (fseek required)\n"
@@ -1284,83 +1034,83 @@ msgstr ""
 "如果在此输入流中没有 ID (标识) (fseek 要求的), 那么是不支持乱序转储特定 TOC "
 "数据块的\n"
 
-#: pg_backup_custom.c:461
+#: pg_backup_custom.c:462
 #, c-format
 msgid "unrecognized data block type (%d) while searching archive\n"
 msgstr "搜索归档是碰到不识别的数据块类型 (%d)\n"
 
-#: pg_backup_custom.c:472
+#: pg_backup_custom.c:473
 #, c-format
 msgid "error during file seek: %s\n"
 msgstr "在文件内定位时出错: %s\n"
 
-#: pg_backup_custom.c:479
+#: pg_backup_custom.c:480
 #, c-format
 msgid "found unexpected block ID (%d) when reading data -- expected %d\n"
 msgstr "读取数据时发现意外块 ID (%d) - 预期是 %d\n"
 
-#: pg_backup_custom.c:490
+#: pg_backup_custom.c:491
 msgid "large objects cannot be loaded without a database connection\n"
 msgstr "没有数据库联接时无法装载大对象\n"
 
-#: pg_backup_custom.c:496
+#: pg_backup_custom.c:497
 #, c-format
 msgid "unrecognized data block type %d while restoring archive\n"
 msgstr "恢复归档时碰到不识别的数据块类型 %d\n"
 
-#: pg_backup_custom.c:532 pg_backup_custom.c:894
+#: pg_backup_custom.c:531 pg_backup_custom.c:893
 #, c-format
 msgid "could not initialize compression library: %s\n"
 msgstr "无法初始化压缩库: %s\n"
 
-#: pg_backup_custom.c:554 pg_backup_custom.c:677
+#: pg_backup_custom.c:553 pg_backup_custom.c:676
 #, c-format
 msgid "could not read data block -- expected %lu, got %lu\n"
 msgstr "无法读取数据块 - 预期 %lu, 实际 %lu\n"
 
-#: pg_backup_custom.c:572 pg_backup_custom.c:602
+#: pg_backup_custom.c:571 pg_backup_custom.c:601
 #, c-format
 msgid "could not uncompress data: %s\n"
 msgstr "无法解压缩数据: %s\n"
 
-#: pg_backup_custom.c:608
+#: pg_backup_custom.c:607
 #, c-format
 msgid "could not close compression library: %s\n"
 msgstr "无法关闭压缩库: %s\n"
 
-#: pg_backup_custom.c:705
+#: pg_backup_custom.c:704
 #, c-format
 msgid "could not write byte: %s\n"
 msgstr "无法写字节: %s\n"
 
-#: pg_backup_custom.c:749 pg_backup_files.c:413
+#: pg_backup_custom.c:748 pg_backup_files.c:414
 #, c-format
 msgid "write error in _WriteBuf (%lu != %lu)\n"
 msgstr "在 _WriteBuf 里的写错误 (%lu != %lu)\n"
 
-#: pg_backup_custom.c:820
+#: pg_backup_custom.c:819
 #, c-format
 msgid "could not close archive file: %s\n"
 msgstr "无法关闭归档文件: %s\n"
 
-#: pg_backup_custom.c:843
+#: pg_backup_custom.c:842
 msgid "WARNING: ftell mismatch with expected position -- ftell used\n"
 msgstr "警告: ftell 和预期位置不匹配 -- 使用 ftell\n"
 
-#: pg_backup_custom.c:926
+#: pg_backup_custom.c:925
 #, c-format
 msgid "could not compress data: %s\n"
 msgstr "无法压缩数据: %s\n"
 
-#: pg_backup_custom.c:946
+#: pg_backup_custom.c:945
 msgid "could not write compressed chunk\n"
 msgstr "无法写入压缩的块\n"
 
-#: pg_backup_custom.c:960
+#: pg_backup_custom.c:959
 msgid "could not write uncompressed chunk\n"
 msgstr "无法写入未压缩的块\n"
 
-#: pg_backup_custom.c:1006
+#: pg_backup_custom.c:1005
 #, c-format
 msgid "could not close compression stream: %s\n"
 msgstr "无法关闭压缩流: %s\n"
@@ -1388,128 +1138,127 @@ msgid ""
 "anyway.)\n"
 msgstr "因版本差异退出 (用 -i 选项忽略差异继续处理.)\n"
 
-#: pg_backup_db.c:151
+#: pg_backup_db.c:146
 #, c-format
 msgid "connecting to database \"%s\" as user \"%s\"\n"
 msgstr "以用户 \"%2$s\" 的身份联接到数据库 \"%1$s\"\n"
 
-#: pg_backup_db.c:155 pg_backup_db.c:188 pg_backup_db.c:231 pg_backup_db.c:260
-#: pg_dumpall.c:705 pg_dumpall.c:731
+#: pg_backup_db.c:150 pg_backup_db.c:183 pg_backup_db.c:226 pg_backup_db.c:255
+#: pg_dumpall.c:887 pg_dumpall.c:913
 msgid "Password: "
 msgstr "口令: "
 
-#: pg_backup_db.c:167
+#: pg_backup_db.c:162
 msgid "failed to reconnect to database\n"
 msgstr "与数据库重新联接失败\n"
 
-#: pg_backup_db.c:191
+#: pg_backup_db.c:186
 #, c-format
 msgid "could not reconnect to database: %s"
 msgstr "无法与数据库重新联接: %s"
 
-#: pg_backup_db.c:227
+#: pg_backup_db.c:222
 msgid "already connected to a database\n"
 msgstr "已经与一个数据库联接\n"
 
-#: pg_backup_db.c:250
+#: pg_backup_db.c:245
 msgid "failed to connect to database\n"
 msgstr "与数据库联接失败\n"
 
-#: pg_backup_db.c:269
+#: pg_backup_db.c:264
 #, c-format
 msgid "connection to database \"%s\" failed: %s"
 msgstr "与数据库 \"%s\" 联接失败: %s"
 
-#: pg_backup_db.c:284
+#: pg_backup_db.c:279
 #, c-format
 msgid "%s"
 msgstr "%s"
 
-#: pg_backup_db.c:312
+#: pg_backup_db.c:307
 #, c-format
 msgid "%s: no result from server\n"
 msgstr "%s: 没有来自服务器的结果\n"
 
-#: pg_backup_db.c:319
+#: pg_backup_db.c:314
 msgid "COPY command executed in non-primary connection\n"
 msgstr "COPY 命令在没有主联接的环境下执行\n"
 
-#: pg_backup_db.c:324
-#, c-format
-msgid "%s: %s"
-msgstr "%s: %s"
-
-#: pg_backup_db.c:398
+#: pg_backup_db.c:393
 msgid "error returned by PQputline\n"
 msgstr "PQputline 返回错误\n"
 
-#: pg_backup_db.c:409
+#: pg_backup_db.c:404
 msgid "error returned by PQendcopy\n"
 msgstr "PQendcopy 返回错误\n"
 
-#: pg_backup_db.c:453
+#: pg_backup_db.c:448
 msgid "could not execute query"
 msgstr "无法执行查询"
 
-#: pg_backup_db.c:588
+#: pg_backup_db.c:583
 #, c-format
 msgid "could not find OID columns of table \"%s\": %s"
 msgstr "无法寻找表 \"%s\" 的 OID 字段: %s"
 
-#: pg_backup_db.c:594
+#: pg_backup_db.c:589
 #, c-format
 msgid "no OID type columns in table %s\n"
 msgstr "表 %s 中没有 OID 类型字段\n"
 
-#: pg_backup_db.c:608
+#: pg_backup_db.c:603
 #, c-format
 msgid "fixing large object cross-references for %s.%s\n"
 msgstr "为 %s.%s 修补大对象交叉引用\n"
 
-#: pg_backup_db.c:647
+#: pg_backup_db.c:642
 #, c-format
 msgid "SQL: %s\n"
 msgstr "SQL: %s\n"
 
-#: pg_backup_db.c:652
+#: pg_backup_db.c:647
 #, c-format
 msgid "could not update column \"%s\" of table \"%s\": %s"
 msgstr "无法更新表 \"%2$s\" 的字段 \"%1$s\": %3$s"
 
-#: pg_backup_db.c:657
+#: pg_backup_db.c:652
 #, c-format
 msgid "error while updating column \"%s\" of table \"%s\": %s"
 msgstr "更新表 \"%2$s\" 的字段 \"%1$s\" 时出错: %3$s"
 
-#: pg_backup_db.c:680
+#: pg_backup_db.c:675
 msgid "creating table for large object cross-references\n"
 msgstr "为大对象交叉引用创建表\n"
 
-#: pg_backup_db.c:684
+#: pg_backup_db.c:678
 msgid "could not create large object cross-reference table"
 msgstr "无法创建大对象交叉引用表"
 
-#: pg_backup_db.c:689
+#: pg_backup_db.c:688
+msgid "creating index for large object cross-references\n"
+msgstr "为大对象交叉引用创建索引\n"
+
+#: pg_backup_db.c:692
 msgid "could not create index on large object cross-reference table"
 msgstr "无法在大对象交叉引用表上创建索引"
 
-#: pg_backup_db.c:703
+#: pg_backup_db.c:705
 msgid "could not create large object cross-reference entry"
 msgstr "无法创建大对象交叉引用记录"
 
-#: pg_backup_db.c:715
+#: pg_backup_db.c:717
 msgid "could not start database transaction"
 msgstr "无法开始数据库事务"
 
-#: pg_backup_db.c:729
+#: pg_backup_db.c:731
 msgid "could not start transaction for large object cross-references"
 msgstr "无法为大对象交叉引用启动事务"
 
-#: pg_backup_db.c:742
+#: pg_backup_db.c:744
 msgid "could not commit database transaction"
 msgstr "无法提交数据库事务"
 
-#: pg_backup_db.c:755
+#: pg_backup_db.c:757
 msgid "could not commit transaction for large object cross-references"
 msgstr "无法为大对象交叉引用提交事务"
 
@@ -1527,118 +1276,118 @@ msgstr ""
 "  这个格式仅用于演示; 并非用于一般用途.\n"
 "  文件将写入当前工作目录.\n"
 
-#: pg_backup_files.c:245
+#: pg_backup_files.c:246
 msgid "could not open data file for output\n"
 msgstr "无法为输出打开数据文件\n"
 
-#: pg_backup_files.c:265
+#: pg_backup_files.c:266
 msgid "could not close data file\n"
 msgstr "无法关闭数据文件\n"
 
-#: pg_backup_files.c:289
+#: pg_backup_files.c:290
 msgid "could not open data file for input\n"
 msgstr "无法为输入打开数据文件\n"
 
-#: pg_backup_files.c:298
+#: pg_backup_files.c:299
 msgid "could not close data file after reading\n"
 msgstr "读取之后无法关闭数据文件\n"
 
-#: pg_backup_files.c:361
+#: pg_backup_files.c:362
 #, c-format
 msgid "could not open large object TOC for input: %s\n"
 msgstr "无法打开大对象 TOC 进行输入: %s\n"
 
-#: pg_backup_files.c:374 pg_backup_files.c:544
+#: pg_backup_files.c:375 pg_backup_files.c:545
 #, c-format
 msgid "could not close large object TOC file: %s\n"
 msgstr "无法关闭大对象 TOC 文件: %s\n"
 
-#: pg_backup_files.c:386
+#: pg_backup_files.c:387
 msgid "could not write byte\n"
 msgstr "无法写字节\n"
 
-#: pg_backup_files.c:472
+#: pg_backup_files.c:473
 #, c-format
 msgid "could not open large object TOC for output: %s\n"
 msgstr "无法打开大对象 TOC 进行输出: %s\n"
 
-#: pg_backup_files.c:492 pg_backup_tar.c:885
+#: pg_backup_files.c:493 pg_backup_tar.c:884
 #, c-format
 msgid "invalid OID for large object (%u)\n"
 msgstr "用于大对象的非法 OID (%u)\n"
 
-#: pg_backup_files.c:511
+#: pg_backup_files.c:512
 msgid "could not open large object file\n"
 msgstr "无法打开大对象文件\n"
 
-#: pg_backup_files.c:526
+#: pg_backup_files.c:527
 msgid "could not close large object file\n"
 msgstr "无法关闭大对象文件\n"
 
-#: pg_backup_null.c:57
+#: pg_backup_null.c:55
 msgid "this format cannot be read\n"
 msgstr "无法读取这个格式\n"
 
-#: pg_backup_tar.c:107
+#: pg_backup_tar.c:105
 msgid "tar archiver"
 msgstr "tar 归档"
 
-#: pg_backup_tar.c:184
+#: pg_backup_tar.c:183
 #, c-format
 msgid "could not open TOC file for output: %s\n"
 msgstr "无法为输出打开 TOC 文件: %s\n"
 
-#: pg_backup_tar.c:209
+#: pg_backup_tar.c:208
 msgid "compression not supported by tar output format\n"
 msgstr "tar 输出格式不支持压缩\n"
 
-#: pg_backup_tar.c:221
+#: pg_backup_tar.c:220
 #, c-format
 msgid "could not open TOC file for input: %s\n"
 msgstr "无法为输入打开 TOC 文件: %s\n"
 
-#: pg_backup_tar.c:342
+#: pg_backup_tar.c:341
 #, c-format
 msgid "could not find file %s in archive\n"
 msgstr "无法在归档中找到文件 %s\n"
 
-#: pg_backup_tar.c:353
+#: pg_backup_tar.c:352
 msgid "compression support is disabled in this format\n"
 msgstr "在这个格式里, 压缩支持时被关闭了的\n"
 
-#: pg_backup_tar.c:368
+#: pg_backup_tar.c:367
 #, c-format
 msgid "could not generate temporary file name: %s\n"
 msgstr "无法生成临时文件名: %s\n"
 
-#: pg_backup_tar.c:377
+#: pg_backup_tar.c:376
 msgid "could not open temporary file\n"
 msgstr "无法打开临时文件\n"
 
-#: pg_backup_tar.c:407
+#: pg_backup_tar.c:406
 msgid "could not close tar member\n"
 msgstr "无法关闭 tar 成员\n"
 
-#: pg_backup_tar.c:507
+#: pg_backup_tar.c:506
 msgid "internal error -- neither th nor fh specified in tarReadRaw()\n"
 msgstr "内部错误 -- 在 tarReadRaw() 里既未声明 th 也未声明 fh\n"
 
-#: pg_backup_tar.c:511
+#: pg_backup_tar.c:510
 #, c-format
 msgid "requested %d bytes, got %d from lookahead and %d from file\n"
 msgstr "要求 %d 字节, 从预览中获取 %d, 从文件中获取 %d\n"
 
-#: pg_backup_tar.c:550
+#: pg_backup_tar.c:549
 #, c-format
 msgid "could not write to tar member (wrote %lu, attempted %lu)\n"
 msgstr "无法写入 tar 成员 (写了 %lu, 企图写 %lu)\n"
 
-#: pg_backup_tar.c:639
+#: pg_backup_tar.c:638
 #, c-format
 msgid "invalid COPY statement -- could not find \"copy\" in string \"%s\"\n"
 msgstr "COPY 语句错 -- 无法在字串 \"%s\" 中找到 \"copy\"\n"
 
-#: pg_backup_tar.c:657
+#: pg_backup_tar.c:656
 #, c-format
 msgid ""
 "invalid COPY statement -- could not find \"from stdin\" in string \"%s\" "
@@ -1647,59 +1396,59 @@ msgstr ""
 "COPY 语句错 -- 无法在从 %2$lu 位置开始的字串 \"%1$s\" 里找到 \"from stdin\" "
 "字样\n"
 
-#: pg_backup_tar.c:693
+#: pg_backup_tar.c:692
 #, c-format
 msgid "restoring large object OID %u\n"
 msgstr "恢复 OID %u 的大对象\n"
 
-#: pg_backup_tar.c:830
+#: pg_backup_tar.c:829
 msgid "could not write null block at end of tar archive\n"
 msgstr "无法在 tar 归档末尾写 null 块\n"
 
-#: pg_backup_tar.c:1024
+#: pg_backup_tar.c:1023
 msgid "archive member too large for tar format\n"
 msgstr "在 tar 格式中归档成员太大\n"
 
-#: pg_backup_tar.c:1034
+#: pg_backup_tar.c:1033
 #, c-format
 msgid "write error appending to tar archive (wrote %lu, attempted %lu)\n"
 msgstr "向 tar 归档附加时写错误 (写了 %lu, 试图写 %lu)\n"
 
-#: pg_backup_tar.c:1040
+#: pg_backup_tar.c:1039
 #, c-format
 msgid "could not close tar member: %s\n"
 msgstr "无法关闭 tar 成员: %s\n"
 
-#: pg_backup_tar.c:1049
+#: pg_backup_tar.c:1048
 #, c-format
 msgid "actual file length (%s) does not match expected (%s)\n"
 msgstr "实际文件长度 (%s) 不匹配预期的长度 (%s)\n"
 
-#: pg_backup_tar.c:1057
+#: pg_backup_tar.c:1056
 msgid "could not output padding at end of tar member\n"
 msgstr "无法在 tar 成员尾部输出填充内容\n"
 
-#: pg_backup_tar.c:1086
+#: pg_backup_tar.c:1085
 #, c-format
 msgid "moving from position %s to next member at file position %s\n"
 msgstr "从位置 %s 移动到文件位置 %s 的下一个成员\n"
 
-#: pg_backup_tar.c:1097
+#: pg_backup_tar.c:1096
 #, c-format
 msgid "now at file position %s\n"
 msgstr "现在在文件的位置 %s\n"
 
-#: pg_backup_tar.c:1106 pg_backup_tar.c:1133
+#: pg_backup_tar.c:1105 pg_backup_tar.c:1132
 #, c-format
 msgid "could not find header for file %s in tar archive\n"
 msgstr "无法在 tar 归档里为文件 %s 找到头标\n"
 
-#: pg_backup_tar.c:1117
+#: pg_backup_tar.c:1116
 #, c-format
 msgid "skipping tar member %s\n"
 msgstr "忽略 tar 成员 %s\n"
 
-#: pg_backup_tar.c:1121
+#: pg_backup_tar.c:1120
 #, c-format
 msgid ""
 "dumping data out of order is not supported in this archive format: %s is "
@@ -1707,33 +1456,43 @@ msgid ""
 msgstr ""
 "这个归档格式里不支持乱序转储数据: 要求 %s,但它在归档文件里位于 %s 前面.\n"
 
-#: pg_backup_tar.c:1169
+#: pg_backup_tar.c:1168
 #, c-format
 msgid "mismatch in actual vs. predicted file position (%s vs. %s)\n"
 msgstr "实际文件位置和预期文件位置不匹配 (%s 对 %s)\n"
 
-#: pg_backup_tar.c:1184
+#: pg_backup_tar.c:1183
 #, c-format
 msgid "incomplete tar header found (%lu bytes)\n"
 msgstr "发现不完整 tar 头 (%lu 字节)\n"
 
-#: pg_backup_tar.c:1219
+#: pg_backup_tar.c:1218
 #, c-format
 msgid "TOC Entry %s at %s (length %lu, checksum %d)\n"
 msgstr "在 %2$s 的 TOC 记录 %1$s (长度 %3$lu, 校验和 %4$d)\n"
 
-#: pg_backup_tar.c:1229
+#: pg_backup_tar.c:1228
 #, c-format
 msgid ""
 "corrupt tar header found in %s (expected %d, computed %d) file position %s\n"
 msgstr ""
 "在文件 %1$s 的位置 %4$s 发现崩溃的 tar 头(预计在 %2$d, 计算出来在 %3$d)\n"
 
-#: pg_backup_tar.c:1322
+#: pg_backup_tar.c:1321
 msgid "could not write tar header\n"
 msgstr "无法写 tar 头\n"
 
-#: pg_restore.c:364
+#: pg_restore.c:279
+#, c-format
+msgid "%s: cannot specify both -d and -f output\n"
+msgstr "%s: 不能同时指定 -d 和 -f 输出\n"
+
+#: pg_restore.c:339
+#, c-format
+msgid "WARNING, errors ignored on restore: %d\n"
+msgstr "警告, 恢复中忽略错误: %d\n"
+
+#: pg_restore.c:353
 #, c-format
 msgid ""
 "%s restores a PostgreSQL database from an archive created by pg_dump.\n"
@@ -1742,41 +1501,49 @@ msgstr ""
 "%s 从一个归档中恢复一个由 pg_dump 创建的 PostgreSQL 数据库.\n"
 "\n"
 
-#: pg_restore.c:366
+#: pg_restore.c:355
 #, c-format
 msgid "  %s [OPTION]... [FILE]\n"
 msgstr "  %s [选项]... [文件名]\n"
 
-#: pg_restore.c:369
+#: pg_restore.c:358
+#, c-format
 msgid "  -d, --dbname=NAME        output database name\n"
-msgstr "  -d, --dbname=名字        输出数据库名字\n"
+msgstr "  -d, --dbname=名字        数据库名字\n"
 
-#: pg_restore.c:371
+#: pg_restore.c:360
+#, c-format
 msgid "  -F, --format=c|t         specify backup file format\n"
 msgstr "  -F, --format=c|t         指定备份文件格式\n"
 
-#: pg_restore.c:372
+#: pg_restore.c:361
+#, c-format
 msgid ""
 "  -i, --ignore-version     proceed even when server version mismatches\n"
 msgstr "  -i, --ignore-version     当服务器版本不匹配时继续运行\n"
 
-#: pg_restore.c:373
+#: pg_restore.c:362
+#, c-format
 msgid "  -l, --list               print summarized TOC of the archive\n"
 msgstr "  -l, --list               打印归档文件的 TOC 概述\n"
 
-#: pg_restore.c:379
+#: pg_restore.c:368
+#, c-format
 msgid "  -a, --data-only          restore only the data, no schema\n"
-msgstr "  -a, --data-only          只恢复数据, 不包括大纲\n"
+msgstr "  -a, --data-only          只恢复数据, 不包括模式\n"
 
-#: pg_restore.c:381
+#: pg_restore.c:370
+#, c-format
 msgid "  -C, --create             issue commands to create the database\n"
 msgstr "  -C, --create             运行命令创建数据库\n"
 
-#: pg_restore.c:382
+#: pg_restore.c:371
+#, c-format
 msgid "  -I, --index=NAME         restore named index\n"
 msgstr "  -I, --index=名字         恢复指定命字的索引\n"
 
-#: pg_restore.c:383
+#: pg_restore.c:372
+#, c-format
 msgid ""
 "  -L, --use-list=FILENAME  use specified table of contents for ordering\n"
 "                           output from this file\n"
@@ -1784,23 +1551,16 @@ msgstr ""
 "  -L, --use-list=文件名    从这个文件中使用指定的内容表排序\n"
 "                           输出\n"
 
-#: pg_restore.c:385
-msgid "  -N, --orig-order         restore in original dump order\n"
-msgstr "  -N, --orig-order         以原始的转储顺序恢复\n"
-
-#: pg_restore.c:386
-msgid "  -o, --oid-order          restore in OID order\n"
-msgstr "  -o, --oid-order          以 OID 顺序恢复\n"
-
-#: pg_restore.c:387
+#: pg_restore.c:374 pg_dumpall.c:326
+#, c-format
 msgid ""
-"  -O, --no-owner           do not reconnect to database to match\n"
-"                           object owner\n"
+"  -O, --no-owner           do not output commands to set object ownership\n"
 msgstr ""
-"  -O, --no-owner           匹配对象所属者时不重新联接\n"
-"                           数据库\n"
+"  -O, --no-owner           设置对象的所属者时不输出\n"
+"                           命令\n"
 
-#: pg_restore.c:389
+#: pg_restore.c:375
+#, c-format
 msgid ""
 "  -P, --function=NAME(args)\n"
 "                           restore named function\n"
@@ -1808,20 +1568,13 @@ msgstr ""
 "  -P, --function=名字(参数)\n"
 "                           恢复指定名字的函数\n"
 
-#: pg_restore.c:391
-msgid ""
-"  -r, --rearrange          rearrange output to put indexes etc. at end\n"
-msgstr "  -r, --rearrange          重新排列输出, 把索引等置于末尾\n"
-
-#: pg_restore.c:392
-msgid "  -R, --no-reconnect       disallow ALL reconnections to the database\n"
-msgstr "  -R, --no-reconnect       不允许所有的数据库重联接\n"
-
-#: pg_restore.c:393
+#: pg_restore.c:377
+#, c-format
 msgid "  -s, --schema-only        restore only the schema, no data\n"
-msgstr "  -s, --schema-only        只恢复大纲, 不包括数据\n"
+msgstr "  -s, --schema-only        只恢复模式, 不包括数据\n"
 
-#: pg_restore.c:394
+#: pg_restore.c:378
+#, c-format
 msgid ""
 "  -S, --superuser=NAME     specify the superuser user name to use for\n"
 "                           disabling triggers\n"
@@ -1829,32 +1582,25 @@ msgstr ""
 "  -S, --superuser=NAME     使用指定的超级用户来取消\n"
 "                           触发器\n"
 
-#: pg_restore.c:396
+#: pg_restore.c:380
+#, c-format
 msgid "  -t, --table=NAME         restore named table\n"
 msgstr "  -t, --table=NAME         恢复指定命字的表\n"
 
-#: pg_restore.c:397
+#: pg_restore.c:381
+#, c-format
 msgid "  -T, --trigger=NAME       restore named trigger\n"
 msgstr "  -T, --trigger=NAME       恢复指定命字的触发器\n"
 
-#: pg_restore.c:398
+#: pg_restore.c:382
+#, c-format
 msgid ""
 "  -x, --no-privileges      skip restoration of access privileges (grant/"
 "revoke)\n"
 msgstr "  -x, --no-privileges      跳过处理权限的恢复 (grant/revoke)\n"
 
-#: pg_restore.c:399
-msgid ""
-"  -X use-set-session-authorization, --use-set-session-authorization\n"
-"                           use SET SESSION AUTHORIZATION commands instead\n"
-"                           of reconnecting, if possible\n"
-msgstr ""
-"  -X use-set-session-authorization, --use-set-session-authorization\n"
-"                           如果可能, 使用 SET SESSION AUTHORIZATION 命令替"
-"代\n"
-"                           重联接\n"
-
-#: pg_restore.c:411
+#: pg_restore.c:395
+#, c-format
 msgid ""
 "\n"
 "If no input file name is supplied, then standard input is used.\n"
@@ -1864,7 +1610,27 @@ msgstr ""
 "如果没有提供输入文件名, 则使用标准输入.\n"
 "\n"
 
-#: pg_dumpall.c:234
+#: pg_dumpall.c:143
+#, c-format
+msgid ""
+"The program \"pg_dump\" is needed by %s but was not found in the same "
+"directory as \"%s\".\n"
+"Check your installation.\n"
+msgstr ""
+"%s 需要程序 \"pg_dump\", 但是在同一个目录 \"%s\" 没有找到.\n"
+"检查您的安装.\n"
+
+#: pg_dumpall.c:149
+#, c-format
+msgid ""
+"The program \"pg_dump\" was found by %s but was not the same version as \"%s"
+"\".\n"
+"Check your installation.\n"
+msgstr ""
+"%s 找到程序 \"pg_dump\", 但是和版本 \"%s\" 不一致.\n"
+"检查您的安装.\n"
+
+#: pg_dumpall.c:310
 #, c-format
 msgid ""
 "%s extracts a PostgreSQL database cluster into an SQL script file.\n"
@@ -1873,36 +1639,39 @@ msgstr ""
 "%s 抽取一个 PostgreSQL 数据库簇进一个 SQL 脚本文件.\n"
 "\n"
 
-#: pg_dumpall.c:236
+#: pg_dumpall.c:312
 #, c-format
 msgid "  %s [OPTION]...\n"
 msgstr "  %s [选项]...\n"
 
-#: pg_dumpall.c:238
+#: pg_dumpall.c:315
+#, c-format
 msgid ""
-"\n"
-"Options:\n"
+"  -i, --ignore-version     proceed even when server version mismatches\n"
+"                           pg_dumpall version\n"
 msgstr ""
-"\n"
-"选项:\n"
+"  -i, --ignore-version     当服务器版本与 pg_dumpall 不匹配时\n"
+"                           继续运行\n"
 
-#: pg_dumpall.c:240
+#: pg_dumpall.c:321
+#, c-format
 msgid "  -c, --clean              clean (drop) databases prior to create\n"
 msgstr "  -c, --clean              清除 (删除) 预先的数据库, 以便再创建\n"
 
-#: pg_dumpall.c:243
+#: pg_dumpall.c:324
+#, c-format
 msgid "  -g, --globals-only       dump only global objects, no databases\n"
 msgstr "  -g, --globals-only       只转储全局对象, 不包括数据库\n"
 
-#: pg_dumpall.c:244
+#: pg_dumpall.c:328
+#, c-format
 msgid ""
-"  -i, --ignore-version     proceed even when server version mismatches\n"
-"                           pg_dumpall version\n"
-msgstr ""
-"  -i, --ignore-version     当服务器版本与 pg_dumpall 不匹配时\n"
-"                           继续运行\n"
+"  -S, --superuser=NAME     specify the superuser user name to use in the "
+"dump\n"
+msgstr "  -S, --superuser=NAME     在转储中, 指定的超级用户名\n"
 
-#: pg_dumpall.c:259
+#: pg_dumpall.c:344
+#, c-format
 msgid ""
 "\n"
 "The SQL script will be written to the standard output.\n"
@@ -1912,66 +1681,91 @@ msgstr ""
 "将把 SQL 脚本写到标准输出上.\n"
 "\n"
 
-#: pg_dumpall.c:495
+#: pg_dumpall.c:539
+#, c-format
+msgid "%s: could not parse ACL list (%s) for tablespace \"%s\"\n"
+msgstr "%1$s: 无法为表空间 \"%3$s\" 分析 ACL 列表 (%2$s)\n"
+
+#: pg_dumpall.c:671
 #, c-format
 msgid "%s: could not parse ACL list (%s) for database \"%s\"\n"
 msgstr "%1$s: 无法为数据库 \"%3$s\" 分析 ACL 列表 (%2$s)\n"
 
-#: pg_dumpall.c:636
+#: pg_dumpall.c:817
 #, c-format
 msgid "%s: dumping database \"%s\"...\n"
 msgstr "%s: 正在转储数据库 \"%s\"...\n"
 
-#: pg_dumpall.c:642
+#: pg_dumpall.c:823
 #, c-format
 msgid "%s: pg_dump failed on database \"%s\", exiting\n"
 msgstr "%s: pg_dump 失败在数据库 \"%s\", 正在退出\n"
 
-#: pg_dumpall.c:677
+#: pg_dumpall.c:859
 #, c-format
 msgid "%s: running \"%s\"\n"
 msgstr "%s: 正在运行 \"%s\"\n"
 
-#: pg_dumpall.c:718
+#: pg_dumpall.c:900
 #, c-format
 msgid "%s: could not connect to database \"%s\"\n"
 msgstr "%s: 无法与数据库 \"%s\" 联接\n"
 
-#: pg_dumpall.c:741
+#: pg_dumpall.c:923
 #, c-format
 msgid "%s: could not connect to database \"%s\": %s\n"
 msgstr "%s: 无法与数据库 \"%s\" 联接: %s\n"
 
-#: pg_dumpall.c:749
+#: pg_dumpall.c:931
 #, c-format
 msgid "%s: could not get server version\n"
 msgstr "%s: 无法从服务器获取版本\n"
 
-#: pg_dumpall.c:755
+#: pg_dumpall.c:937
 #, c-format
 msgid "%s: could not parse server version \"%s\"\n"
 msgstr "%s: 无法分析版本字串 \"%s\"\n"
 
-#: pg_dumpall.c:774
+#: pg_dumpall.c:956
 #, c-format
 msgid "%s: executing %s\n"
 msgstr "%s: 执行 %s\n"
 
-#: pg_dumpall.c:780
+#: pg_dumpall.c:962
 #, c-format
 msgid "%s: query failed: %s"
 msgstr "%s: 查询失败: %s"
 
-#: pg_dumpall.c:781
+#: pg_dumpall.c:963
 #, c-format
 msgid "%s: query was: %s\n"
 msgstr "%s: 查询是: %s\n"
 
-#: pg_dumpall.c:827
-#, c-format
-msgid ""
-"%s: could not find pg_dump\n"
-"Make sure it is in the path or in the same directory as %s.\n"
-msgstr ""
-"%s: 没找到 pg_dump\n"
-"确定在路径中或与 %s 一样的目录中.\n"
+#~ msgid ""
+#~ "\n"
+#~ "Options:\n"
+#~ msgstr ""
+#~ "\n"
+#~ "选项:\n"
+
+#~ msgid ""
+#~ "%s: could not find pg_dump\n"
+#~ "Make sure it is in the path or in the same directory as %s.\n"
+#~ msgstr ""
+#~ "%s: 没找到 pg_dump\n"
+#~ "确定在路径中或与 %s 一样的目录中.\n"
+
+#~ msgid "could not set default_with_oids: %s"
+#~ msgstr "无法设置 default_with_oids: %s"
+
+#~ msgid "could not set search_path to \"%s\": %s"
+#~ msgstr "无法设置查找路径为 \"%s\": %s"
+
+#~ msgid "%s: %s"
+#~ msgstr "%s: %s"
+
+#~ msgid "checking whether we loaded \"%s\"\n"
+#~ msgstr "检查我们是否装载了 \"%s\"\n"
+
+#~ msgid "ignoring large-object cross-references for %s %s\n"
+#~ msgstr "为 %s %s 忽略大对象交叉引用\n"
diff --git a/src/bin/psql/po/zh_CN.po b/src/bin/psql/po/zh_CN.po
index 8bb1aa7aecb85c4b8c2f53047f8a5bf78ae4f19e..620049f4ef2f28a18db4dd89a73ddd07a9ee5ea2 100644
--- a/src/bin/psql/po/zh_CN.po
+++ b/src/bin/psql/po/zh_CN.po
@@ -1,286 +1,300 @@
 # simplified Chinese translation file for psql
 # Weiping He <laser@zhengmai.com.cn>, 2002.
 # 
-# $PostgreSQL: pgsql/src/bin/psql/po/zh_CN.po,v 1.4 2003/11/29 19:52:07 pgsql Exp $
+# $PostgreSQL: pgsql/src/bin/psql/po/zh_CN.po,v 1.5 2004/08/10 19:02:01 petere Exp $
 # 
 msgid ""
 msgstr ""
 "Project-Id-Version: PostgreSQL 7.4\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2003-08-26 10:29+0000\n"
-"PO-Revision-Date: 2003-09-15 13:48:19+0800\n"
-"Last-Translator: Bao Wei <bao_paul@yahoo.com.cn>\n"
+"POT-Creation-Date: 2004-08-05 10:13+0000\n"
+"PO-Revision-Date: 2004-01-12 13:48:19+0800\n"
+"Last-Translator: Bao Wei <weibao@qmail.zhengmai.net.cn>\n"
 "Language-Team: Weiping He <laser@zhengmai.com.cn>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=GB2312\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: command.c:154
+#: command.c:112
 msgid "Warning: This syntax is deprecated.\n"
 msgstr "警告: 这种语法已经废弃.\n"
 
-#: command.c:161
+#: command.c:120
 #, c-format
 msgid "Invalid command \\%s. Try \\? for help.\n"
 msgstr "无效的命令 \\%s. 用 \\? 获取帮助.\n"
 
-#: command.c:163
+#: command.c:122
 #, c-format
 msgid "invalid command \\%s\n"
 msgstr "无效的命令 \\%s\n"
 
-#: command.c:290
+#: command.c:131
+#, c-format
+msgid "\\%s: extra argument \"%s\" ignored\n"
+msgstr "\\%s: 忽略多余的参数 \"%s\"\n"
+
+#: command.c:240
 #, c-format
 msgid "could not get home directory: %s\n"
 msgstr "无法获得家目录: %s\n"
 
-#: command.c:306
+#: command.c:256
 #, c-format
 msgid "\\%s: could not change directory to \"%s\": %s\n"
 msgstr "\\%s: 不能改变到 \"%s\" 目录: %s\n"
 
-#: command.c:411 command.c:780
+#: command.c:370 command.c:759
 msgid "no query buffer\n"
 msgstr "无查询缓冲区\n"
 
-#: command.c:476
+#: command.c:432
 #, c-format
 msgid "%s: invalid encoding name or conversion procedure not found\n"
 msgstr "%s: 无效编码名字或没有找到转换过程\n"
 
-#: command.c:538 command.c:569 command.c:580 command.c:594 command.c:636
-#: command.c:760 command.c:789
+#: command.c:500 command.c:534 command.c:548 command.c:565 command.c:611
+#: command.c:739 command.c:770
 #, c-format
 msgid "\\%s: missing required argument\n"
 msgstr "\\%s: 缺少所需参数\n"
 
-#: command.c:624
+#: command.c:597
 msgid "Query buffer is empty."
 msgstr "查询缓冲区为空."
 
-#: command.c:657
+#: command.c:631
 msgid "Query buffer reset (cleared)."
 msgstr "重置(清空)查询缓冲区."
 
-#: command.c:668
+#: command.c:645
 #, c-format
 msgid "Wrote history to file \"%s\".\n"
-msgstr "向 \"%s\" 中写出历史.\n"
+msgstr "向文件 \"%s\" 中写入历史.\n"
 
-#: command.c:700 command.c:1160 command.c:1257 command.c:1975 common.c:80
-#: copy.c:88 copy.c:116 mainloop.c:78 mainloop.c:341 describe.c:51
+#: command.c:680 common.c:86 common.c:100 mainloop.c:70
 msgid "out of memory\n"
 msgstr "内存用尽\n"
 
-#: command.c:715 command.c:765
+#: command.c:695 command.c:744
 #, c-format
 msgid "\\%s: error\n"
 msgstr "\\%s: 错误\n"
 
-#: command.c:804 command.c:824 command.c:1022 command.c:1035 command.c:1046
-#: command.c:1617 command.c:1630 command.c:1642 command.c:1655 command.c:1669
-#: command.c:1691 command.c:1721 common.c:129 copy.c:378
+#: command.c:725
+msgid "Timing is on."
+msgstr "开始计时."
+
+#: command.c:727
+msgid "Timing is off."
+msgstr "结束计时."
+
+#: command.c:787 command.c:807 command.c:1163 command.c:1170 command.c:1180
+#: command.c:1192 command.c:1205 command.c:1219 command.c:1241 command.c:1272
+#: common.c:171 copy.c:539 copy.c:584
 #, c-format
 msgid "%s: %s\n"
 msgstr "%s: %s\n"
 
-#: command.c:890
-#, c-format
-msgid "\\%s: extra argument \"%s\" ignored\n"
-msgstr "\\%s: 忽略多余的参数 \"%s\"\n"
-
-#: command.c:983 command.c:1011 command.c:1133
-msgid "parse error at the end of line\n"
-msgstr "在行尾发生分析错\n"
-
-#: command.c:1362 command.c:1386 startup.c:173 startup.c:191
+#: command.c:914 command.c:938 startup.c:184 startup.c:202
 msgid "Password: "
 msgstr "口令: "
 
-#: command.c:1400 common.c:175 common.c:345 common.c:396 common.c:611
+#: command.c:952 common.c:217 common.c:599 common.c:654 common.c:897
 #, c-format
 msgid "%s"
 msgstr "%s"
 
-#: command.c:1404
+#: command.c:956
 msgid "Previous connection kept\n"
 msgstr "保留上一次联接\n"
 
-#: command.c:1416
+#: command.c:968
 #, c-format
 msgid "\\connect: %s"
-msgstr "\\connect: %s"
+msgstr "\\联接: %s"
 
-#: command.c:1428
+#: command.c:980
 #, c-format
 msgid "You are now connected to database \"%s\".\n"
 msgstr "你现在已经联接到数据库 \"%s\".\n"
 
-#: command.c:1430
+#: command.c:982
 #, c-format
 msgid "You are now connected as new user \"%s\".\n"
 msgstr "你现在是作为新用户 \"%s\" 联接的.\n"
 
-#: command.c:1433
+#: command.c:985
 #, c-format
 msgid "You are now connected to database \"%s\" as user \"%s\".\n"
 msgstr "你现在是以用户 \"%2$s\" 的身份联接到数据库 \"%1$s\".\n"
 
-#: command.c:1555
+#: command.c:1102
 #, c-format
 msgid "could not start editor \"%s\"\n"
 msgstr "无法运行编辑器 \"%s\"\n"
 
-#: command.c:1557
+#: command.c:1104
 msgid "could not start /bin/sh\n"
 msgstr "无法运行 /bin/sh\n"
 
-#: command.c:1602
+#: command.c:1148
 #, c-format
 msgid "could not open temporary file \"%s\": %s\n"
 msgstr "无法打开临时文件 \"%s\": %s\n"
 
-#: command.c:1794
+#: command.c:1340
 msgid "\\pset: allowed formats are unaligned, aligned, html, latex\n"
 msgstr "\\pset: 允许的格式是无对齐, 对齐, html, latex\n"
 
-#: command.c:1799
+#: command.c:1345
 #, c-format
 msgid "Output format is %s.\n"
 msgstr "输出格式是 %s.\n"
 
-#: command.c:1809
+#: command.c:1355
 #, c-format
 msgid "Border style is %d.\n"
 msgstr "边界风格是 %d.\n"
 
-#: command.c:1818
+#: command.c:1364
+#, c-format
 msgid "Expanded display is on.\n"
 msgstr "扩展显示已打开.\n"
 
-#: command.c:1819
+#: command.c:1365
+#, c-format
 msgid "Expanded display is off.\n"
 msgstr "扩展显示已关闭.\n"
 
-#: command.c:1831
+#: command.c:1377
 #, c-format
 msgid "Null display is \"%s\".\n"
 msgstr "Null 显示为 \"%s\".\n"
 
-#: command.c:1843
+#: command.c:1389
 #, c-format
 msgid "Field separator is \"%s\".\n"
 msgstr "域分隔符是 \"%s\".\n"
 
-#: command.c:1857
+#: command.c:1403
+#, c-format
 msgid "Record separator is <newline>."
 msgstr "记录分隔符是 <新行>."
 
-#: command.c:1859
+#: command.c:1405
 #, c-format
 msgid "Record separator is \"%s\".\n"
 msgstr "记录分隔符是 \"%s\".\n"
 
-#: command.c:1870
+#: command.c:1416
 msgid "Showing only tuples."
 msgstr "只显示元组."
 
-#: command.c:1872
+#: command.c:1418
 msgid "Tuples only is off."
 msgstr "关闭只显示元组."
 
-#: command.c:1888
+#: command.c:1434
 #, c-format
 msgid "Title is \"%s\".\n"
 msgstr "标题是 \"%s\".\n"
 
-#: command.c:1890
+#: command.c:1436
+#, c-format
 msgid "Title is unset.\n"
 msgstr "无标题.\n"
 
-#: command.c:1906
+#: command.c:1452
 #, c-format
 msgid "Table attribute is \"%s\".\n"
 msgstr "表属性是 \"%s\".\n"
 
-#: command.c:1908
+#: command.c:1454
+#, c-format
 msgid "Table attributes unset.\n"
 msgstr "未设置表属性.\n"
 
-#: command.c:1924
+#: command.c:1470
 msgid "Pager is used for long output."
 msgstr "分页器是为长输出使用的."
 
-#: command.c:1926
+#: command.c:1472
 msgid "Pager is always used."
 msgstr "总是使用分页器."
 
-#: command.c:1928
+#: command.c:1474
 msgid "Pager usage is off."
 msgstr "关闭分页器的使用."
 
-#: command.c:1939
+#: command.c:1485
 msgid "Default footer is on."
 msgstr "打开缺省脚标."
 
-#: command.c:1941
+#: command.c:1487
 msgid "Default footer is off."
 msgstr "关闭缺省脚标."
 
-#: command.c:1947
+#: command.c:1493
 #, c-format
 msgid "\\pset: unknown option: %s\n"
 msgstr "\\pset: 未知选项: %s\n"
 
-#: command.c:1994
+#: command.c:1532
 msgid "\\!: failed\n"
 msgstr "\\!: 失败\n"
 
-#: common.c:73
+#: common.c:79
 #, c-format
 msgid "%s: xstrdup: cannot duplicate null pointer (internal error)\n"
 msgstr "%s: xstrdup: 无法复制空指针(内部错误)\n"
 
-#: common.c:257
+#: common.c:124
+msgid "out of memory"
+msgstr "内存用尽"
+
+#: common.c:299
 msgid "connection to server was lost\n"
 msgstr "与数据库的联接丢失\n"
 
-#: common.c:261
+#: common.c:303
 msgid "The connection to the server was lost. Attempting reset: "
 msgstr "与服务器的联接已丢失. 尝试重置: "
 
-#: common.c:266
+#: common.c:308
 msgid "Failed.\n"
 msgstr "失败.\n"
 
-#: common.c:273
+#: common.c:315
 msgid "Succeeded.\n"
 msgstr "成功.\n"
 
-#: common.c:372 common.c:579
+#: common.c:383
+#, c-format
+msgid "INTERNAL ERROR: unexpected statement position \"%s\"\n"
+msgstr "内部错误: 意外的语句位置 \"%s\"\n"
+
+#: common.c:519
+#, c-format
+msgid "LINE %d: "
+msgstr "第 %d 行: "
+
+#: common.c:538 common.c:547
+#, c-format
+msgid "%s\n"
+msgstr "%s\n"
+
+#: common.c:630 common.c:865
 msgid "You are currently not connected to a database.\n"
 msgstr "你目前没有与数据库联接.\n"
 
-#: common.c:428
+#: common.c:685
 #, c-format
 msgid ""
 "Asynchronous notification \"%s\" received from server process with PID %d.\n"
 msgstr "接收到服务器进程 PID %2$d 的异步通知 \"%1$s\".\n"
 
-#: common.c:531
-msgid ""
-"Enter data to be copied followed by a newline.\n"
-"End with a backslash and a period on a line by itself."
-msgstr ""
-"输入要拷贝的数据然后输入一个新行.\n"
-"在独立的一行上输入一个反斜扛和一个句点结束."
-
-#: common.c:550
-#, c-format
-msgid "Time: %.2f ms\n"
-msgstr "时间: %.2f ms\n"
-
-#: common.c:587
+#: common.c:873
 #, c-format
 msgid ""
 "***(Single step mode: verify command)"
@@ -291,36 +305,49 @@ msgid ""
 msgstr ""
 "***(单步模式: 验证命令)*******************************************\n"
 "%s\n"
-"***(敲回车继续或者敲 x 然后敲回车取消)********************\n"
+"***(按回车继续或者输入 x 然后按回车取消)********************\n"
+
+#: common.c:924
+#, c-format
+msgid "Time: %.3f ms\n"
+msgstr "时间: %.3f ms\n"
 
-#: copy.c:110
+#: copy.c:122
 msgid "\\copy: arguments required\n"
 msgstr "\\copy: 需要参数\n"
 
-#: copy.c:289
+#: copy.c:412
 #, c-format
 msgid "\\copy: parse error at \"%s\"\n"
 msgstr "\\copy: 在 \"%s\" 分析错误\n"
 
-#: copy.c:291
+#: copy.c:414
 msgid "\\copy: parse error at end of line\n"
 msgstr "\\copy: 在行尾分析错误\n"
 
-#: copy.c:389
+#: copy.c:550
 #, c-format
 msgid "%s: cannot copy from/to a directory\n"
 msgstr "%s: 无法从一个目录拷贝, 或拷贝到一个目录\n"
 
-#: copy.c:410
+#: copy.c:571
 #, c-format
 msgid "\\copy: %s"
 msgstr "\\拷贝: %s"
 
-#: copy.c:414
+#: copy.c:575
 #, c-format
 msgid "\\copy: unexpected response (%d)\n"
 msgstr "\\copy: 意外响应(%d)\n"
 
+#: copy.c:676
+msgid ""
+"Enter data to be copied followed by a newline.\n"
+"End with a backslash and a period on a line by itself."
+msgstr ""
+"输入要拷贝的数据然后输入一个新行.\n"
+"在独立的一行上输入一个反斜扛和一个句点结束."
+
 #: help.c:48
 msgid "on"
 msgstr "打开"
@@ -523,6 +550,7 @@ msgstr ""
 "向 <pgsql-bugs@postgresql.org> 汇报臭虫."
 
 #: help.c:174
+#, c-format
 msgid "General\n"
 msgstr "一般选项\n"
 
@@ -533,39 +561,45 @@ msgid ""
 "                 connect to new database (currently \"%s\")\n"
 msgstr ""
 "  \\c[onnect] [数据库名|- [用户名]]\n"
-"                    联接到新的数据库 (当前为 \"%s\")\n"
+"                   联接到新的数据库 (当前为 \"%s\")\n"
 
 #: help.c:178
+#, c-format
 msgid "  \\cd [DIR]      change the current working directory\n"
 msgstr "  \\cd [目录名]     改变当前的工作目录\n"
 
 #: help.c:179
+#, c-format
 msgid "  \\copyright     show PostgreSQL usage and distribution terms\n"
 msgstr "  \\copyright       显示 PostgreSQL 用法和发布信息\n"
 
 #: help.c:180
+#, c-format
 msgid ""
 "  \\encoding [ENCODING]\n"
 "                 show or set client encoding\n"
 msgstr ""
 "  \\encoding [编码]\n"
-"                 显示或设置客户端编码\n"
+"                   显示或设置客户端编码\n"
 
 #: help.c:182
+#, c-format
 msgid "  \\h [NAME]      help on syntax of SQL commands, * for all commands\n"
 msgstr "  \\h [名字]        SQL 命令的语法帮助, 用 * 可以看所有命令的帮助\n"
 
 #: help.c:183
+#, c-format
 msgid "  \\q             quit psql\n"
 msgstr "  \\q               退出 psql\n"
 
 #: help.c:184
+#, c-format
 msgid ""
 "  \\set [NAME [VALUE]]\n"
 "                 set internal variable, or list all if no parameters\n"
 msgstr ""
 "  \\set [名字 [值]]\n"
-"                 设置内部变量, 如果没有参数就列出所有\n"
+"                   设置内部变量, 如果没有参数就列出所有\n"
 
 #: help.c:186
 #, c-format
@@ -573,23 +607,28 @@ msgid "  \\timing        toggle timing of commands (currently %s)\n"
 msgstr "  \\timing          查询计时开关切换 (目前是 %s)\n"
 
 #: help.c:188
+#, c-format
 msgid "  \\unset NAME    unset (delete) internal variable\n"
 msgstr "  \\unset 名字      取消(删除)内部变量\n"
 
 #: help.c:189
+#, c-format
 msgid "  \\! [COMMAND]   execute command in shell or start interactive shell\n"
 msgstr "  \\! [命令]        在 shell 里执行命令或者开始一个交互的 shell\n"
 
 #: help.c:192
+#, c-format
 msgid "Query Buffer\n"
 msgstr "查询缓冲区选项\n"
 
 #: help.c:193
+#, c-format
 msgid ""
 "  \\e [FILE]      edit the query buffer (or file) with external editor\n"
 msgstr "  \\e [文件名]      用一个外部编辑器编辑当前查询缓冲区或者文件\n"
 
 #: help.c:194
+#, c-format
 msgid ""
 "  \\g [FILE]      send query buffer to server (and results to file or |"
 "pipe)\n"
@@ -597,191 +636,238 @@ msgstr ""
 "  \\g [文件名]      向服务器发送 SQL 命令 (并且把结果写到文件或者 |管道)\n"
 
 #: help.c:195
+#, c-format
 msgid "  \\p             show the contents of the query buffer\n"
 msgstr "  \\p               显示当前查询缓冲区的内容\n"
 
 #: help.c:196
+#, c-format
 msgid "  \\r             reset (clear) the query buffer\n"
 msgstr "  \\r               重置 (清理) 查询缓冲区\n"
 
 #: help.c:197
+#, c-format
 msgid "  \\s [FILE]      display history or save it to file\n"
 msgstr "  \\s [文件名]      打印历史或者将其保存到文件\n"
 
 #: help.c:198
-msgid "  \\w [FILE]      write query buffer to file\n"
-msgstr "  \\w [文件名]      将当前查询缓冲区写出到文件\n"
+#, c-format
+msgid "  \\w FILE        write query buffer to file\n"
+msgstr "  \\w [文件名]      将查询缓冲区写出到文件\n"
 
 #: help.c:201
+#, c-format
 msgid "Input/Output\n"
 msgstr "输入/输出选项\n"
 
 #: help.c:202
+#, c-format
 msgid "  \\echo [STRING] write string to standard output\n"
 msgstr "  \\echo [字串]     向标准输出写出文本\n"
 
 #: help.c:203
+#, c-format
 msgid "  \\i FILE        execute commands from file\n"
 msgstr "  \\i 文件名        执行来自文件的命令\n"
 
 #: help.c:204
+#, c-format
 msgid "  \\o [FILE]      send all query results to file or |pipe\n"
 msgstr "  \\o [文件名]      向文件或者 |管道 发送所有查询结果\n"
 
 #: help.c:205
+#, c-format
 msgid ""
 "  \\qecho [STRING]\n"
 "                 write string to query output stream (see \\o)\n"
 msgstr ""
 "  \\qecho [字串]\n"
-"                 向查询输出流写出文本 (见 \\o)\n"
+"                   向查询输出流写出文本 (见 \\o)\n"
 
 #: help.c:209
+#, c-format
 msgid "Informational\n"
 msgstr "信息选项\n"
 
 #: help.c:210
+#, c-format
 msgid "  \\d [NAME]      describe table, index, sequence, or view\n"
 msgstr "  \\d [名字]        描述表, 索引, 序列, 或者视图\n"
 
 #: help.c:211
+#, c-format
 msgid ""
 "  \\d{t|i|s|v|S} [PATTERN] (add \"+\" for more detail)\n"
 "                 list tables/indexes/sequences/views/system tables\n"
 msgstr ""
 "  \\d{t|i|s|v|S} [模式] (加 \"+\" 获取更多信息)\n"
-"                    列出表/索引/序列/视图/系统表\n"
+"                   列出表/索引/序列/视图/系统表\n"
 
 #: help.c:213
+#, c-format
 msgid "  \\da [PATTERN]  list aggregate functions\n"
 msgstr "  \\da [模式]       列出聚集函数\n"
 
 #: help.c:214
+#, c-format
+msgid "  \\db [PATTERN]  list tablespaces (add \"+\" for more detail)\n"
+msgstr "  \\db [模式]       列出表空间 (加 \"+\" 获取更多的信息)\n"
+
+#: help.c:215
+#, c-format
 msgid "  \\dc [PATTERN]  list conversions\n"
 msgstr "  \\dc [模式]       列出编码转换\n"
 
-#: help.c:215
+#: help.c:216
+#, c-format
 msgid "  \\dC            list casts\n"
 msgstr "  \\dC              列出类型转换\n"
 
-#: help.c:216
+#: help.c:217
+#, c-format
 msgid "  \\dd [PATTERN]  show comment for object\n"
 msgstr "  \\dd [模式]       显示目标的注释\n"
 
-#: help.c:217
+#: help.c:218
+#, c-format
 msgid "  \\dD [PATTERN]  list domains\n"
 msgstr "  \\dD [模式]       列出域\n"
 
-#: help.c:218
+#: help.c:219
+#, c-format
 msgid "  \\df [PATTERN]  list functions (add \"+\" for more detail)\n"
 msgstr "  \\df [模式]       列出函数 (加 \"+\" 获取更多的信息)\n"
 
-#: help.c:219
-msgid "  \\dn [PATTERN]  list schemas\n"
-msgstr "  \\dn [模式]       列出大纲\n"
-
 #: help.c:220
+#, c-format
+msgid "  \\dg [PATTERN]  list groups\n"
+msgstr "  \\dg [模式]       列出组\n"
+
+#: help.c:221
+#, c-format
+msgid "  \\dn [PATTERN]  list schemas (add \"+\" for more detail)\n"
+msgstr "  \\dn [模式]       列出模式 (加 \"+\" 获取更多的信息)\n"
+
+#: help.c:222
+#, c-format
 msgid "  \\do [NAME]     list operators\n"
 msgstr "  \\do [名字]       列出操作符\n"
 
-#: help.c:221
+#: help.c:223
+#, c-format
 msgid "  \\dl            list large objects, same as \\lo_list\n"
 msgstr "  \\dl              列出大对象, 和 \\lo_list 一样\n"
 
-#: help.c:222
-msgid "  \\dp [PATTERN]  list table access privileges\n"
-msgstr "  \\dp [模式]       列出表访问权限\n"
+#: help.c:224
+#, c-format
+msgid "  \\dp [PATTERN]  list table, view and sequence access privileges\n"
+msgstr "  \\dp [模式]       列出表, 视图, 序列的访问权限\n"
 
-#: help.c:223
+#: help.c:225
+#, c-format
 msgid "  \\dT [PATTERN]  list data types (add \"+\" for more detail)\n"
 msgstr "  \\dT [模式]       列出数据类型 (加 \"+\" 获取更多的信息)\n"
 
-#: help.c:224
+#: help.c:226
+#, c-format
 msgid "  \\du [PATTERN]  list users\n"
 msgstr "  \\du [模式]       列出用户\n"
 
-#: help.c:225
+#: help.c:227
+#, c-format
 msgid "  \\l             list all databases (add \"+\" for more detail)\n"
 msgstr "  \\l               列出所有数据库 (加 \"+\" 获取更多的信息)\n"
 
-#: help.c:226
-msgid "  \\z [PATTERN]   list table access privileges (same as \\dp)\n"
-msgstr "  \\z [模式]        列出表访问权限 (和 \\dp 一样)\n"
+#: help.c:228
+#, c-format
+msgid ""
+"  \\z [PATTERN]   list table, view and sequence access privileges (same as "
+"\\dp)\n"
+msgstr "  \\z [模式]        列出表, 视图, 序列的访问权限 (和 \\dp 一样)\n"
 
-#: help.c:229
+#: help.c:231
+#, c-format
 msgid "Formatting\n"
 msgstr "格式选项\n"
 
-#: help.c:230
+#: help.c:232
+#, c-format
 msgid "  \\a             toggle between unaligned and aligned output mode\n"
 msgstr "  \\a               在非对齐和对齐的输出模式之间切换\n"
 
-#: help.c:231
+#: help.c:233
+#, c-format
 msgid "  \\C [STRING]    set table title, or unset if none\n"
 msgstr "  \\C [字串]        设置表标题, 如果参数空则取消标题\n"
 
-#: help.c:232
+#: help.c:234
+#, c-format
 msgid ""
 "  \\f [STRING]    show or set field separator for unaligned query output\n"
 msgstr " \\f [字串]         为非对齐查询输出显示或设置域分隔符\n"
 
-#: help.c:233
+#: help.c:235
 #, c-format
 msgid "  \\H             toggle HTML output mode (currently %s)\n"
 msgstr "  \\H               在 HTML 输出模式之间切换 (当前是 %s)\n"
 
-#: help.c:235
+#: help.c:237
+#, c-format
 msgid ""
 "  \\pset NAME [VALUE]\n"
 "                 set table output option\n"
-"                 (NAME := {format|border|expanded|fieldsep|null|recordsep|\n"
-"                 tuples_only|title|tableattr|pager})\n"
+"                 (NAME := {format|border|expanded|fieldsep|footer|null|\n"
+"                 recordsep|tuples_only|title|tableattr|pager})\n"
 msgstr ""
 "  \\pset 变量 [值]\n"
-"                    设置表的输出选项\n"
-"                    (变量 := {foramt|border|expanded|fieldsep|null|\n"
-"                    recordsep|tuples_only|title|tableattr|pager})\n"
+"                   设置表的输出选项\n"
+"                   (变量 := {foramt|border|expanded|fieldsep|null|\n"
+"                   recordsep|tuples_only|title|tableattr|pager})\n"
 
-#: help.c:239
+#: help.c:241
 #, c-format
 msgid "  \\t             show only rows (currently %s)\n"
 msgstr "  \\t               只显示行 (当前是 %s)\n"
 
-#: help.c:241
+#: help.c:243
+#, c-format
 msgid "  \\T [STRING]    set HTML <table> tag attributes, or unset if none\n"
 msgstr "  \\T [字串]        设置 HTML <表> 标记属性, 如果没有参数就取消设置\n"
 
-#: help.c:242
+#: help.c:244
 #, c-format
 msgid "  \\x             toggle expanded output (currently %s)\n"
 msgstr "  \\x               在扩展输出之间切换 (目前是 %s)\n"
 
-#: help.c:246
+#: help.c:248
+#, c-format
 msgid "Copy, Large Object\n"
 msgstr "拷贝, 大对象选项\n"
 
-#: help.c:247
+#: help.c:249
+#, c-format
 msgid ""
 "  \\copy ...      perform SQL COPY with data stream to the client host\n"
 msgstr "  \\copy ...        执行 SQL COPY, 数据流指向客户端主机\n"
 
-#: help.c:248
+#: help.c:250
+#, c-format
 msgid ""
-"  \\lo_export\n"
-"  \\lo_import\n"
+"  \\lo_export LOBOID FILE\n"
+"  \\lo_import FILE [COMMENT] \n"
 "  \\lo_list\n"
-"  \\lo_unlink     large object operations\n"
+"  \\lo_unlink LOBOID    large object operations\n"
 msgstr ""
-"  \\lo_export\n"
-"  \\lo_import\n"
+"  \\lo_export LOBOID FILE\n"
+"  \\lo_import FILE [COMMENT]\n"
 "  \\lo_list\n"
-"  \\lo_unlink       大对象操作\n"
+"  \\lo_unlink LOBOID    大对象操作\n"
 
-#: help.c:281
+#: help.c:283
 msgid "Available help:\n"
 msgstr "可用帮助:\n"
 
-#: help.c:319
+#: help.c:342
 #, c-format
 msgid ""
 "Command:     %s\n"
@@ -796,127 +882,129 @@ msgstr ""
 "%s\n"
 "\n"
 
-#: help.c:330
+#: help.c:355
 #, c-format
 msgid ""
 "No help available for \"%-.*s\".\n"
 "Try \\h with no arguments to see available help.\n"
 msgstr ""
-"还没有 \"%-.*s\" 的可用帮助.\n"
+"没有 \"%-.*s\" 的可用帮助.\n"
 "用不带参数的 \\h 获取可用帮助.\n"
 
-#: input.c:226
+#: input.c:215
 #, c-format
 msgid "could not save history to file \"%s\": %s\n"
 msgstr "无法将历史保存到文件 \"%s\": %s\n"
 
-#: large_obj.c:39
+#: large_obj.c:36
 #, c-format
 msgid "%s: not connected to a database\n"
 msgstr "%s: 未与数据库联接\n"
 
-#: large_obj.c:58
+#: large_obj.c:55
 #, c-format
 msgid "%s: current transaction is aborted\n"
 msgstr "%s: 当前事务被终止\n"
 
-#: large_obj.c:61
+#: large_obj.c:58
 #, c-format
 msgid "%s: unknown transaction status\n"
 msgstr "%s: 未知事务状态\n"
 
-#: large_obj.c:278 describe.c:106 describe.c:157 describe.c:230 describe.c:292
-#: describe.c:339 describe.c:438 describe.c:718 describe.c:1343
+#: large_obj.c:255 describe.c:83 describe.c:180 describe.c:253 describe.c:315
+#: describe.c:362 describe.c:462 describe.c:749 describe.c:1472
+#: describe.c:1719
 msgid "Description"
 msgstr "描述"
 
-#: large_obj.c:286
+#: large_obj.c:263
 msgid "Large objects"
 msgstr "大对象"
 
-#: mainloop.c:206
+#: mainloop.c:173
 #, c-format
 msgid "Use \"\\q\" to leave %s.\n"
 msgstr "使用 \"\\q\" 离开 %s.\n"
 
-#: print.c:421
+#: print.c:424
 msgid "(No rows)\n"
 msgstr "(没有行)\n"
 
-#: print.c:1186
+#: print.c:1193
+#, c-format
 msgid "(1 row)"
 msgstr "(1 行)"
 
-#: print.c:1188
+#: print.c:1195
 #, c-format
 msgid "(%d rows)"
 msgstr "(%d 行)"
 
-#: startup.c:128 startup.c:567
+#: startup.c:133
 #, c-format
 msgid "%s: out of memory\n"
 msgstr "%s: 内存用尽\n"
 
-#: startup.c:167
+#: startup.c:178
 msgid "User name: "
 msgstr "用户名:"
 
-#: startup.c:263
+#: startup.c:283
 #, c-format
 msgid ""
 "Welcome to %s %s, the PostgreSQL interactive terminal.\n"
 "\n"
 "Type:  \\copyright for distribution terms\n"
 "       \\h for help with SQL commands\n"
-"       \\? for help on internal slash commands\n"
+"       \\? for help with psql commands\n"
 "       \\g or terminate with semicolon to execute query\n"
 "       \\q to quit\n"
 "\n"
 msgstr ""
-"欢迎来到 %s %s, PostgreSQL 的交互终端.\n"
+"欢迎使用 %s %s, PostgreSQL 的交互终端.\n"
 "\n"
-"键入:  \\copyright 获取发布信息\n"
+"输入:  \\copyright 获取发布信息\n"
 "       \\h         获取 SQL 命令的帮助\n"
-"       \\?         获取内部反斜扛命令的帮助\n"
-"       \\g         或者以分号结尾执行查询\n"
+"       \\?         获取 psql 命令的帮助\n"
+"       \\g         或者以分号作为执行查询的结尾\n"
 "       \\q         退出\n"
 "\n"
 
-#: startup.c:421
+#: startup.c:444
 #, c-format
 msgid "%s: couldn't set printing parameter \"%s\"\n"
 msgstr "%s: 无法设置打印参数 \"%s\"\n"
 
-#: startup.c:467
+#: startup.c:490
 #, c-format
 msgid "%s: could not delete variable \"%s\"\n"
 msgstr "%s: 无法删除变量 \"%s\"\n"
 
-#: startup.c:477
+#: startup.c:500
 #, c-format
 msgid "%s: could not set variable \"%s\"\n"
 msgstr "%s: 无法设置变量 \"%s\"\n"
 
-#: startup.c:508 startup.c:514
+#: startup.c:531 startup.c:537
 #, c-format
 msgid "Try \"%s --help\" for more information.\n"
 msgstr "用 \"%s --help\" 获取更多信息.\n"
 
-#: startup.c:532
+#: startup.c:555
 #, c-format
 msgid "%s: warning: extra command-line argument \"%s\" ignored\n"
 msgstr "%s: 警告: 忽略额外的命令行参数 \"%s\"\n"
 
-#: startup.c:539
+#: startup.c:562
 #, c-format
 msgid "%s: Warning: The -u option is deprecated. Use -U.\n"
 msgstr "%s: 警告: -u 选项已经废弃. 请用 -U.\n"
 
-#: startup.c:596
+#: startup.c:626
 msgid "contains support for command-line editing"
 msgstr "包括命令行编辑的支持"
 
-#: startup.c:619
+#: startup.c:649
 #, c-format
 msgid ""
 "SSL connection (cipher: %s, bits: %i)\n"
@@ -925,226 +1013,240 @@ msgstr ""
 "SSL 联接 (加密: %s, 位: %i)\n"
 "\n"
 
-#: describe.c:105 describe.c:147 describe.c:217 describe.c:290 describe.c:384
-#: describe.c:438 describe.c:1336 describe.c:1442 describe.c:1490
+#: describe.c:82 describe.c:170 describe.c:240 describe.c:313 describe.c:408
+#: describe.c:462 describe.c:1465 describe.c:1571 describe.c:1619
 msgid "Schema"
 msgstr "模式"
 
-#: describe.c:105 describe.c:147 describe.c:217 describe.c:290 describe.c:332
-#: describe.c:438 describe.c:1336 describe.c:1443 describe.c:1491
-#: describe.c:1586
+#: describe.c:82 describe.c:121 describe.c:170 describe.c:240 describe.c:313
+#: describe.c:355 describe.c:408 describe.c:462 describe.c:1465
+#: describe.c:1572 describe.c:1620 describe.c:1713
 msgid "Name"
 msgstr "名字"
 
-#: describe.c:105
+#: describe.c:82
 msgid "(all types)"
 msgstr "(所有类型)"
 
-#: describe.c:106
+#: describe.c:83
 msgid "Data type"
 msgstr "数据类型"
 
-#: describe.c:120
+#: describe.c:97
 msgid "List of aggregate functions"
 msgstr "聚集函数列表"
 
-#: describe.c:147
+#: describe.c:121 describe.c:179 describe.c:355 describe.c:1467
+#: describe.c:1713
+msgid "Owner"
+msgstr "所有者"
+
+#: describe.c:121
+msgid "Location"
+msgstr "位置"
+
+#: describe.c:126 describe.c:408 describe.c:1719
+msgid "Access privileges"
+msgstr "访问权限"
+
+#: describe.c:143
+msgid "List of tablespaces"
+msgstr "表空间列表"
+
+#: describe.c:170
 msgid "Result data type"
 msgstr "结果数据类型"
 
-#: describe.c:148
+#: describe.c:171
 msgid "Argument data types"
 msgstr "参数数据类型"
 
-#: describe.c:156 describe.c:332 describe.c:1338 describe.c:1587
-msgid "Owner"
-msgstr "所有者"
-
-#: describe.c:156
+#: describe.c:179
 msgid "Language"
 msgstr "语言"
 
-#: describe.c:157
+#: describe.c:180
 msgid "Source code"
 msgstr "源代码"
 
-#: describe.c:191
+#: describe.c:214
 msgid "List of functions"
 msgstr "函数列表"
 
-#: describe.c:227
+#: describe.c:250
 msgid "Internal name"
 msgstr "内部名称"
 
-#: describe.c:227
+#: describe.c:250
 msgid "Size"
 msgstr "大小"
 
-#: describe.c:259
+#: describe.c:282
 msgid "List of data types"
 msgstr "数据类型列表"
 
-#: describe.c:291
+#: describe.c:314
 msgid "Left arg type"
 msgstr "左参数类型"
 
-#: describe.c:291
+#: describe.c:314
 msgid "Right arg type"
 msgstr "右参数类型"
 
-#: describe.c:292
+#: describe.c:315
 msgid "Result type"
 msgstr "结果类型"
 
-#: describe.c:306
+#: describe.c:329
 msgid "List of operators"
 msgstr "操作符列表"
 
-#: describe.c:335
+#: describe.c:358
 msgid "Encoding"
 msgstr "编码"
 
-#: describe.c:351
+#: describe.c:374
 msgid "List of databases"
 msgstr "数据库列表"
 
-#: describe.c:384 describe.c:1353
-msgid "Table"
+#: describe.c:408 describe.c:536 describe.c:1466
+msgid "table"
 msgstr "表"
 
-#: describe.c:384
-msgid "Access privileges"
-msgstr "访问权限"
+#: describe.c:408 describe.c:536 describe.c:1466
+msgid "view"
+msgstr "视图"
+
+#: describe.c:408 describe.c:536 describe.c:1466
+msgid "sequence"
+msgstr "序列"
 
-#: describe.c:406
+#: describe.c:408 describe.c:736 describe.c:1467 describe.c:1573
+msgid "Type"
+msgstr "类型"
+
+#: describe.c:430
 #, c-format
 msgid "Access privileges for database \"%s\""
 msgstr "数据库 \"%s\" 的访问权限"
 
-#: describe.c:438
+#: describe.c:462
 msgid "Object"
 msgstr "对象"
 
-#: describe.c:449
+#: describe.c:473
 msgid "aggregate"
 msgstr "聚集"
 
-#: describe.c:467
+#: describe.c:491
 msgid "function"
 msgstr "函数"
 
-#: describe.c:481
+#: describe.c:505
 msgid "operator"
 msgstr "操作符"
 
-#: describe.c:495
+#: describe.c:519
 msgid "data type"
 msgstr "数据类型"
 
-#: describe.c:512 describe.c:1337
-msgid "table"
-msgstr "表"
-
-#: describe.c:512 describe.c:1337
-msgid "view"
-msgstr "视图"
-
-#: describe.c:512 describe.c:1337
+#: describe.c:536 describe.c:1466
 msgid "index"
 msgstr "索引"
 
-#: describe.c:512 describe.c:1337
-msgid "sequence"
-msgstr "序列"
-
-#: describe.c:528
+#: describe.c:552
 msgid "rule"
 msgstr "规则"
 
-#: describe.c:544
+#: describe.c:568
 msgid "trigger"
 msgstr "触发器"
 
-#: describe.c:562
+#: describe.c:586
 msgid "Object descriptions"
 msgstr "对象描述"
 
-#: describe.c:608
+#: describe.c:634
 #, c-format
 msgid "Did not find any relation named \"%s\".\n"
 msgstr "没有找到任何名为 \"%s\" 的关系.\n"
 
-#: describe.c:691
+#: describe.c:720
 #, c-format
 msgid "Did not find any relation with OID %s.\n"
 msgstr "没有找到任何 OID 为 %s 的关系.\n"
 
-#: describe.c:704
+#: describe.c:735
 msgid "Column"
-msgstr "列"
+msgstr "字段名"
 
-#: describe.c:705 describe.c:1338 describe.c:1444
-msgid "Type"
-msgstr "类型"
-
-#: describe.c:712
+#: describe.c:743
 msgid "Modifiers"
 msgstr "修饰词"
 
-#: describe.c:819
+#: describe.c:850
 #, c-format
 msgid "Table \"%s.%s\""
 msgstr "表 \"%s.%s\""
 
-#: describe.c:823
+#: describe.c:854
 #, c-format
 msgid "View \"%s.%s\""
 msgstr "视图 \"%s.%s\""
 
-#: describe.c:827
+#: describe.c:858
 #, c-format
 msgid "Sequence \"%s.%s\""
 msgstr "序列 \"%s.%s\""
 
-#: describe.c:831
+#: describe.c:862
 #, c-format
 msgid "Index \"%s.%s\""
 msgstr "索引 \"%s.%s\""
 
-#: describe.c:835
+#: describe.c:866
 #, c-format
 msgid "Special relation \"%s.%s\""
 msgstr "特殊关系 \"%s.%s\""
 
-#: describe.c:839
+#: describe.c:870
 #, c-format
 msgid "TOAST table \"%s.%s\""
 msgstr "TOAST 表 \"%s.%s\""
 
-#: describe.c:843
+#: describe.c:874
 #, c-format
 msgid "Composite type \"%s.%s\""
 msgstr "复合类型 \"%s.%s\""
 
-#: describe.c:847
+#: describe.c:878
 #, c-format
 msgid "?%c? \"%s.%s\""
 msgstr "?%c? \"%s.%s\""
 
-#: describe.c:883
-msgid "primary key, "
-msgstr "主键, "
+#: describe.c:916
+msgid "PRIMARY KEY, "
+msgstr " PRIMARY KEY, "
 
-#: describe.c:885
-msgid "unique, "
-msgstr "唯一, "
+#: describe.c:918
+msgid "UNIQUE, "
+msgstr " UNIQUE, "
 
-#: describe.c:891
+#: describe.c:924
 #, c-format
 msgid "for table \"%s.%s\""
 msgstr "给表 \"%s.%s\""
 
-#: describe.c:929
+#: describe.c:928
+#, c-format
+msgid ", predicate (%s)"
+msgstr ", 术语 (%s)"
+
+#: describe.c:931
+msgid ", CLUSTER"
+msgstr ", CLUSTER"
+
+#: describe.c:968
 #, c-format
 msgid ""
 "View definition:\n"
@@ -1153,268 +1255,1866 @@ msgstr ""
 "视图定义:\n"
 "%s"
 
-#: describe.c:935
-msgid "Rules"
-msgstr "规则"
+#: describe.c:974 describe.c:1195
+msgid "Rules:"
+msgstr "规则:"
 
-#: describe.c:1084
+#: describe.c:1129
 msgid "Indexes:"
 msgstr "索引:"
 
-#: describe.c:1092
+#: describe.c:1137
 #, c-format
 msgid "    \"%s\""
 msgstr "    \"%s\""
 
-#: describe.c:1098
-msgid " primary key,"
-msgstr " 主键,"
+#: describe.c:1143
+msgid " PRIMARY KEY,"
+msgstr " PRIMARY KEY,"
 
-#: describe.c:1100
-msgid " unique,"
-msgstr " 唯一,"
+#: describe.c:1145
+msgid " UNIQUE,"
+msgstr " UNIQUE,"
 
-#: describe.c:1118
+#: describe.c:1156
+msgid " CLUSTER"
+msgstr " CLUSTER"
+
+#: describe.c:1165
 msgid "Check constraints:"
 msgstr "检查约束:"
 
-#: describe.c:1122
-#, c-format
-msgid "    \"%s\" CHECK %s"
-msgstr "    \"%s\" CHECK %s"
-
-#: describe.c:1133
-msgid "Foreign-key constraints:"
-msgstr "外键约束:"
-
-#: describe.c:1137
+#: describe.c:1169 describe.c:1184
 #, c-format
 msgid "    \"%s\" %s"
 msgstr "    \"%s\" %s"
 
-#: describe.c:1148
-msgid "Rules:"
-msgstr "规则:"
+#: describe.c:1180
+msgid "Foreign-key constraints:"
+msgstr "外键约束:"
 
-#: describe.c:1167
+#: describe.c:1214
 msgid "Triggers:"
 msgstr "触发器:"
 
-#: describe.c:1189
+#: describe.c:1236
 msgid "Inherits"
 msgstr "继承"
 
-#: describe.c:1275
+#: describe.c:1250
+msgid "Contains OIDs"
+msgstr "Contains OIDs"
+
+#: describe.c:1252 describe.c:1623 describe.c:1680
+msgid "yes"
+msgstr "yes"
+
+#: describe.c:1252 describe.c:1624 describe.c:1678
+msgid "no"
+msgstr "no"
+
+#: describe.c:1331
+#, c-format
+msgid "Tablespace: \"%s\""
+msgstr "表空间: \"%s\""
+
+#: describe.c:1364
 msgid "User name"
 msgstr "用户名"
 
-#: describe.c:1275
+#: describe.c:1364
 msgid "User ID"
 msgstr "用户 ID"
 
-#: describe.c:1276
+#: describe.c:1365
 msgid "superuser, create database"
 msgstr "超级用户, 创建数据库"
 
-#: describe.c:1277
+#: describe.c:1366
 msgid "superuser"
 msgstr "超级用户"
 
-#: describe.c:1277
+#: describe.c:1366
 msgid "create database"
 msgstr "创建数据库"
 
-#: describe.c:1278
+#: describe.c:1367
 msgid "Attributes"
 msgstr "属性"
 
-#: describe.c:1291
+#: describe.c:1367
+msgid "Groups"
+msgstr "组"
+
+#: describe.c:1380
 msgid "List of database users"
 msgstr "数据库用户列表"
 
-#: describe.c:1338
+#: describe.c:1407
+msgid "Group name"
+msgstr "组名"
+
+#: describe.c:1407
+msgid "Group ID"
+msgstr "组 ID"
+
+#: describe.c:1420
+msgid "List of database groups"
+msgstr "数据库组列表"
+
+#: describe.c:1467
 msgid "special"
 msgstr "特殊"
 
-#: describe.c:1399
+#: describe.c:1482
+msgid "Table"
+msgstr "表"
+
+#: describe.c:1528
+#, c-format
 msgid "No matching relations found.\n"
 msgstr "没有找到匹配的关系.\n"
 
-#: describe.c:1401
+#: describe.c:1530
+#, c-format
 msgid "No relations found.\n"
 msgstr "没有找到关系.\n"
 
-#: describe.c:1406
+#: describe.c:1535
 msgid "List of relations"
 msgstr "关系列表"
 
-#: describe.c:1445
+#: describe.c:1574
 msgid "Modifier"
 msgstr "修改者"
 
-#: describe.c:1459
+#: describe.c:1588
 msgid "List of domains"
 msgstr "域列表"
 
-#: describe.c:1492
+#: describe.c:1621
 msgid "Source"
 msgstr "Source"
 
-#: describe.c:1493
+#: describe.c:1622
 msgid "Destination"
 msgstr "Destination"
 
-#: describe.c:1494 describe.c:1551
-msgid "yes"
-msgstr "yes"
-
-#: describe.c:1495 describe.c:1549
-msgid "no"
-msgstr "no"
-
-#: describe.c:1496
+#: describe.c:1625
 msgid "Default?"
 msgstr "Default?"
 
-#: describe.c:1510
+#: describe.c:1639
 msgid "List of conversions"
 msgstr "转换列表"
 
-#: describe.c:1545
+#: describe.c:1674
 msgid "Source type"
 msgstr "源类型"
 
-#: describe.c:1546
+#: describe.c:1675
 msgid "Target type"
 msgstr "目标类型"
 
-#: describe.c:1547
+#: describe.c:1676
 msgid "(binary compatible)"
 msgstr "(二进制兼容)"
 
-#: describe.c:1548
+#: describe.c:1677
 msgid "Function"
 msgstr "函数"
 
-#: describe.c:1550
+#: describe.c:1679
 msgid "in assignment"
 msgstr "in assignment"
 
-#: describe.c:1552
+#: describe.c:1681
 msgid "Implicit?"
 msgstr "隐含的?"
 
-#: describe.c:1560
+#: describe.c:1689
 msgid "List of casts"
 msgstr "类型转换列表"
 
-#: describe.c:1601
+#: describe.c:1739
 msgid "List of schemas"
-msgstr "大纲列表"
-
-#~ msgid "Asynchronous NOTIFY '%s' from backend with pid %d received.\n"
-#~ msgstr "收到来自进程号为 %2$d 的后端的异步 NOTIFY (通知) '%1$s'.\n"
+msgstr "模式列表"
 
-#~ msgid "\n"
-#~ msgstr "\n"
+#: sql_help.h:25 sql_help.h:369
+msgid "abort the current transaction"
+msgstr "终止当前事务"
 
-#~ msgid "  \\lo_export\n"
-#~ msgstr "  \\lo_export\n"
+#: sql_help.h:26
+msgid "ABORT [ WORK | TRANSACTION ]"
+msgstr "ABORT [ WORK | TRANSACTION ]"
 
-#~ msgid "  \\lo_import\n"
-#~ msgstr "  \\lo_import\n"
+#: sql_help.h:29
+msgid "change the definition of an aggregate function"
+msgstr "改变一个聚集函数的定义"
 
-#~ msgid "  \\lo_list\n"
-#~ msgstr "  \\lo_list\n"
+#: sql_help.h:30
+msgid ""
+"ALTER AGGREGATE name ( type ) RENAME TO newname\n"
+"ALTER AGGREGATE name ( type ) OWNER TO newowner"
+msgstr ""
+"ALTER AGGREGATE 名字 ( 类型 ) RENAME TO 新名字\n"
+"ALTER AGGREGATE 名字 ( 类型 ) OWNER TO 新属主"
 
-#~ msgid " PRIMARY KEY"
-#~ msgstr " PRIMARY KEY"
+#: sql_help.h:33
+msgid "change the definition of a conversion"
+msgstr "改变一个转换的定义"
 
-#~ msgid " UNIQUE"
-#~ msgstr " UNIQUE"
+#: sql_help.h:34
+msgid ""
+"ALTER CONVERSION name RENAME TO newname\n"
+"ALTER CONVERSION name OWNER TO newowner"
+msgstr ""
+"ALTER CONVERSION 名字 RENAME TO 新名字\n"
+"ALTER CONVERSION 名字 OWNER TO 新属主"
 
-#~ msgid "BINARY"
-#~ msgstr "BINARY"
+#: sql_help.h:37
+msgid "change a database"
+msgstr "改变一个数据库"
 
-#~ msgid "Warning: Your transaction in progress has been committed."
-#~ msgstr "警告: 你的正在处理的事务已经提交."
+#: sql_help.h:38
+msgid ""
+"ALTER DATABASE name SET parameter { TO | = } { value | DEFAULT }\n"
+"ALTER DATABASE name RESET parameter\n"
+"\n"
+"ALTER DATABASE name RENAME TO newname\n"
+"\n"
+"ALTER DATABASE name OWNER TO new_owner"
+msgstr ""
+"ALTER DATABASE 名字 SET 参数 { TO | = } { 值 | DEFAULT }\n"
+"ALTER DATABASE 名字 RESET 参数\n"
+"\n"
+"ALTER DATABASE 名字 RENAME TO 新名字\n"
+"\n"
+"ALTER DATABASE 名字 OWNER TO 新属主"
 
-#~ msgid "Warning: Your transaction in progress has been rolled back."
-#~ msgstr "警告: 你的正在处理的事务已经回卷."
+#: sql_help.h:41
+msgid "change the definition of a domain"
+msgstr "改变一个域的定义"
 
-#~ msgid "\\lo_import: not connected to a database\n"
-#~ msgstr "\\lo_import: 未与数据库联接\n"
+#: sql_help.h:42
+msgid ""
+"ALTER DOMAIN name\n"
+"    { SET DEFAULT expression | DROP DEFAULT }\n"
+"ALTER DOMAIN name\n"
+"    { SET | DROP } NOT NULL\n"
+"ALTER DOMAIN name\n"
+"    ADD domain_constraint\n"
+"ALTER DOMAIN name\n"
+"    DROP CONSTRAINT constraint_name [ RESTRICT | CASCADE ]\n"
+"ALTER DOMAIN name\n"
+"    OWNER TO new_owner"
+msgstr ""
+"ALTER DOMAIN 名字\n"
+"    { SET DEFAULT 说明 | DROP DEFAULT }\n"
+"ALTER DOMAIN 名字\n"
+"    { SET | DROP } NOT NULL\n"
+"ALTER DOMAIN 名字\n"
+"    ADD 域约束\n"
+"ALTER DOMAIN 名字\n"
+"    DROP CONSTRAINT 约束名字 [ RESTRICT | CASCADE ]\n"
+"ALTER DOMAIN 名字\n"
+"    OWNER TO 新宿主"
+
+#: sql_help.h:45
+msgid "change the definition of a function"
+msgstr "改变一个函数的定义"
+
+#: sql_help.h:46
+msgid ""
+"ALTER FUNCTION name ( [ type [, ...] ] ) RENAME TO newname\n"
+"ALTER FUNCTION name ( [ type [, ...] ] ) OWNER TO newowner"
+msgstr ""
+"ALTER FUNCTION 名字 ( [ 类型 [, ...] ] ) RENAME TO 新名字\n"
+"ALTER FUNCTION 名字 ( [ 类型 [, ...] ] ) OWNER TO 新属主"
 
-#~ msgid "\\lo_unlink: not connected to a database\n"
-#~ msgstr "\\lo_unlink: 未与数据库联接\n"
+#: sql_help.h:49
+msgid "change a user group"
+msgstr "改变一个用户组"
 
-#~ msgid "%s: \"%s\" %s"
-#~ msgstr "%s: \"%s\" %s"
+#: sql_help.h:50
+msgid ""
+"ALTER GROUP groupname ADD USER username [, ... ]\n"
+"ALTER GROUP groupname DROP USER username [, ... ]\n"
+"\n"
+"ALTER GROUP groupname RENAME TO newname"
+msgstr ""
+"ALTER GROUP 组名 ADD USER 用户名 [, ... ]\n"
+"ALTER GROUP 组名 DROP USER 用户名 [, ... ]\n"
+"\n"
+"ALTER GROUP 组名 RENAME TO 新名字"
 
-#~ msgid "%s: %s %s"
-#~ msgstr "%s: %s %s"
+#: sql_help.h:53
+msgid "change the definition of a procedural language"
+msgstr "改变一个过程语言的定义"
 
-#~ msgid "%*s  %s %s"
-#~ msgstr "%*s  %s %s"
+#: sql_help.h:54
+msgid "ALTER LANGUAGE name RENAME TO newname"
+msgstr "ALTER LANGUAGE 名字 RENAME TO 新名字"
 
-#~ msgid "Timing is on."
-#~ msgstr "开始计时."
+#: sql_help.h:57
+msgid "change the definition of an operator class"
+msgstr "改变一个操作符表的定义"
 
-#~ msgid "Timing is off."
-#~ msgstr "结束计时."
+#: sql_help.h:58
+msgid ""
+"ALTER OPERATOR CLASS name USING index_method RENAME TO newname\n"
+"ALTER OPERATOR CLASS name USING index_method OWNER TO newowner"
+msgstr ""
+"ALTER OPERATOR CLASS 名字 USING 索引方法 RENAME TO 新名字\n"
+"ALTER OPERATOR CLASS 名字 USING 索引方法 OWNER TO 新属主"
 
-#~ msgid "Using pager is on."
-#~ msgstr "打开分页器的使用."
+#: sql_help.h:61
+msgid "change the definition of an operator"
+msgstr "改变一个操作符的定义"
 
-#~ msgid "Options:"
-#~ msgstr "选项:"
+#: sql_help.h:62
+msgid ""
+"ALTER OPERATOR name ( { lefttype | NONE } , { righttype | NONE } ) OWNER TO "
+"newowner"
+msgstr ""
+"ALTER OPERATOR 名字 ( { 左边类型 | NONE } , { 右边类型 | NONE } ) OWNER TO 新"
+"属主"
 
-#~ msgid ""
-#~ "%s was compiled without support for long options.\n"
-#~ "Use --help for help on invocation options.\n"
-#~ msgstr ""
-#~ "%s 没有带着长选项支持编译.\n"
-#~ "用 --help 获取关于调用选项的帮助.\n"
+#: sql_help.h:65
+msgid "change the definition of a schema"
+msgstr "改变一个模式的定义"
 
-#~ msgid ""
-#~ "Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group\n"
-#~ "Portions Copyright (c) 1996, Regents of the University of California\n"
-#~ "Read the file COPYRIGHT or use the command \\copyright to see the\n"
-#~ "usage and distribution terms."
-#~ msgstr ""
-#~ "部分版权 (c) 1996-2002, PostgreSQL 全球开发组\n"
-#~ "部分版权 (c) 1996, University of California 理事\n"
-#~ "阅读 COPYRIGHT 或者使用 \\copyright 命令查看\n"
-#~ "用法和发布条款."
+#: sql_help.h:66
+msgid ""
+"ALTER SCHEMA name RENAME TO newname\n"
+"ALTER SCHEMA name OWNER TO newowner"
+msgstr ""
+"ALTER SCHEMA 名字 RENAME TO 新名字\n"
+"ALTER SCHEMA 名字 OWNER TO 新属主"
 
-#~ msgid "  psql [options] [dbname [username]]\n"
-#~ msgstr " psql [选项] [数据库名 [用户名]]\n"
+#: sql_help.h:69
+msgid "alter the definition of a sequence generator"
+msgstr "改变一个序列的定义"
 
-#~ msgid " \\d{t|i|s|v|S} [PATTERN] (add '+' for more detail)\n"
-#~ msgstr " \\d{t|i|s|v|S} [模式] (加 '+' 获取更多的信息)\n"
+#: sql_help.h:70
+msgid ""
+"ALTER SEQUENCE name [ INCREMENT [ BY ] increment ]\n"
+"    [ MINVALUE minvalue | NO MINVALUE ] [ MAXVALUE maxvalue | NO MAXVALUE ]\n"
+"    [ RESTART [ WITH ] start ] [ CACHE cache ] [ [ NO ] CYCLE ]"
+msgstr ""
+"ALTER SEQUENCE 名字 [ INCREMENT [ BY ] 递增 ]\n"
+"    [ MINVALUE 最小值 | NO MINVALUE ] [ MAXVALUE 最大值 | NO MAXVALUE ]\n"
+"    [ RESTART [ WITH ] 开始 ] [ CACHE 缓存 ] [ [ NO ] CYCLE ]"
 
-#~ msgid "\\%s: multibyte support is not enabled\n"
-#~ msgstr "\\%s: 多字节支持未打开\n"
+#: sql_help.h:73
+msgid "change the definition of a table"
+msgstr "改变一个表的定义"
 
-#~ msgid ""
-#~ " \\d{p|S|l}      list access privileges, system tables, or large objects\n"
-#~ msgstr " \\d{p|S|l}      列出访问权限, 系统表, 或者大对象\n"
+#: sql_help.h:74
+msgid ""
+"ALTER TABLE [ ONLY ] name [ * ]\n"
+"    action [, ... ]\n"
+"ALTER TABLE [ ONLY ] name [ * ]\n"
+"    RENAME [ COLUMN ] column TO new_column\n"
+"ALTER TABLE name\n"
+"    RENAME TO new_name\n"
+"\n"
+"where action is one of:\n"
+"\n"
+"    ADD [ COLUMN ] column type [ column_constraint [ ... ] ]\n"
+"    DROP [ COLUMN ] column [ RESTRICT | CASCADE ]\n"
+"    ALTER [ COLUMN ] column TYPE type [ USING expression ]\n"
+"    ALTER [ COLUMN ] column SET DEFAULT expression\n"
+"    ALTER [ COLUMN ] column DROP DEFAULT\n"
+"    ALTER [ COLUMN ] column { SET | DROP } NOT NULL\n"
+"    ALTER [ COLUMN ] column SET STATISTICS integer\n"
+"    ALTER [ COLUMN ] column SET STORAGE { PLAIN | EXTERNAL | EXTENDED | "
+"MAIN }\n"
+"    ADD table_constraint\n"
+"    DROP CONSTRAINT constraint_name [ RESTRICT | CASCADE ]\n"
+"    CLUSTER ON index_name\n"
+"    SET WITHOUT CLUSTER\n"
+"    SET WITHOUT OIDS\n"
+"    OWNER TO new_owner\n"
+"    SET TABLESPACE tablespace_name"
+msgstr ""
+"ALTER TABLE [ ONLY ] 表名 [ * ]\n"
+"    action [, ... ]\n"
+"ALTER TABLE [ ONLY ] 表名 [ * ]\n"
+"    RENAME [ COLUMN ] 字段名 TO 新字段名\n"
+"ALTER TABLE 表名\n"
+"    RENAME TO 新表名\n"
+"\n"
+"action 为下面的一种:\n"
+"\n"
+"    ADD [ COLUMN ] 字段名 类型 [ 字段约束 [ ... ] ]\n"
+"    DROP [ COLUMN ] 字段名 [ RESTRICT | CASCADE ]\n"
+"    ALTER [ COLUMN ] 字段名 TYPE 类型 [ USING 表达式 ]\n"
+"    ALTER [ COLUMN ] 字段名 SET DEFAULT 表达式\n"
+"    ALTER [ COLUMN ] 字段名 DROP DEFAULT\n"
+"    ALTER [ COLUMN ] 字段名 { SET | DROP } NOT NULL\n"
+"    ALTER [ COLUMN ] 字段名 SET STATISTICS integer\n"
+"    ALTER [ COLUMN ] 字段名 SET STORAGE { PLAIN | EXTERNAL | EXTENDED | "
+"MAIN }\n"
+"    ADD 表约束\n"
+"    DROP CONSTRAINT 约束名字 [ RESTRICT | CASCADE ]\n"
+"    CLUSTER ON 索引名称\n"
+"    SET WITHOUT CLUSTER\n"
+"    SET WITHOUT OIDS\n"
+"    OWNER TO 新属主\n"
+"    SET TABLESPACE 表空间名字"
+
+#: sql_help.h:77
+msgid "change the definition of a tablespace"
+msgstr "改变一个表空间的定义"
+
+#: sql_help.h:78
+msgid ""
+"ALTER TABLESPACE name RENAME TO newname\n"
+"ALTER TABLESPACE name OWNER TO newowner"
+msgstr ""
+"ALTER TABLESPACE 名字 RENAME TO 新名字\n"
+"ALTER TABLESPACE 名字 OWNER TO 新属主"
 
-#~ msgid ""
-#~ " \\dd NAME       show comment for table, type, function, or operator\n"
-#~ msgstr " \\dd 名字      显示表, 类型, 函数, 或者操作符的注释\n"
+#: sql_help.h:81
+msgid "change the definition of a trigger"
+msgstr "改变一个触发器的定义"
 
-#~ msgid " \\dT            list data types\n"
-#~ msgstr " \\dT           列出数据类型\n"
+#: sql_help.h:82
+msgid "ALTER TRIGGER name ON table RENAME TO newname"
+msgstr "ALTER TRIGGER 名字 ON 表 RENAME TO 新名字"
 
-#~ msgid "history"
-#~ msgstr "历史"
+#: sql_help.h:85
+msgid "change the definition of a type"
+msgstr "改变一个类型的定义"
 
-#~ msgid "multibyte"
-#~ msgstr "多字节"
+#: sql_help.h:86
+msgid "ALTER TYPE name OWNER TO new_owner"
+msgstr "ALTER TYPE 名字 OWNER TO 新属主"
 
-#~ msgid "Index predicate: %s"
-#~ msgstr "索引谓词: %s"
+#: sql_help.h:89
+msgid "change a database user account"
+msgstr "改变一个数据库用户"
 
-#~ msgid "Unique keys"
-#~ msgstr "唯一键字"
+#: sql_help.h:90
+msgid ""
+"ALTER USER name [ [ WITH ] option [ ... ] ]\n"
+"\n"
+"where option can be:\n"
+"\n"
+"    [ ENCRYPTED | UNENCRYPTED ] PASSWORD 'password' \n"
+"    | CREATEDB | NOCREATEDB\n"
+"    | CREATEUSER | NOCREATEUSER \n"
+"    | VALID UNTIL 'abstime'\n"
+"\n"
+"ALTER USER name RENAME TO newname\n"
+"\n"
+"ALTER USER name SET parameter { TO | = } { value | DEFAULT }\n"
+"ALTER USER name RESET parameter"
+msgstr ""
+"ALTER USER 名字 [ [ WITH ] 选项 [ ... ] ]\n"
+"\n"
+"选项可以是:\n"
+"\n"
+"    [ ENCRYPTED | UNENCRYPTED ] PASSWORD '口令' \n"
+"    | CREATEDB | NOCREATEDB\n"
+"    | CREATEUSER | NOCREATEUSER \n"
+"    | VALID UNTIL '时间'\n"
+"\n"
+"ALTER USER 名字 RENAME TO 新名字\n"
+"\n"
+"ALTER USER 名字 SET 参数 { TO | = } { 值 | DEFAULT }\n"
+"ALTER USER 名字 RESET 参数"
+
+#: sql_help.h:93
+msgid "collect statistics about a database"
+msgstr "收集关于数据库的统计数字"
+
+#: sql_help.h:94
+msgid "ANALYZE [ VERBOSE ] [ table [ (column [, ...] ) ] ]"
+msgstr "ANALYZE [ VERBOSE ] [ 表 [ (字段 [, ...] ) ] ]"
+
+#: sql_help.h:97 sql_help.h:409
+msgid "start a transaction block"
+msgstr "开始一个事务块"
+
+#: sql_help.h:98
+msgid ""
+"BEGIN [ WORK | TRANSACTION ]\n"
+"    [ ISOLATION LEVEL { READ UNCOMMITTED | READ COMMITTED | REPEATABLE READ "
+"| SERIALIZABLE } ]\n"
+"    [ READ WRITE | READ ONLY ]"
+msgstr ""
+"BEGIN [ WORK | TRANSACTION ]\n"
+"    [ ISOLATION LEVEL { READ UNCOMMITTED | READ COMMITTED | REPEATABLE READ "
+"| SERIALIZABLE } ]\n"
+"    [ READ WRITE | READ ONLY ]"
+
+#: sql_help.h:101
+msgid "force a transaction log checkpoint"
+msgstr "强行交易日志检查"
+
+#: sql_help.h:102
+msgid "CHECKPOINT"
+msgstr "CHECKPOINT"
+
+#: sql_help.h:105
+msgid "close a cursor"
+msgstr "关闭一个游标"
+
+#: sql_help.h:106
+msgid "CLOSE name"
+msgstr "CLOSE 名字"
+
+#: sql_help.h:109
+msgid "cluster a table according to an index"
+msgstr "根据一个索引建表簇"
+
+#: sql_help.h:110
+msgid ""
+"CLUSTER indexname ON tablename\n"
+"CLUSTER tablename\n"
+"CLUSTER"
+msgstr ""
+"CLUSTER 索引名字 ON 表名\n"
+"CLUSTER 表名\n"
+"CLUSTER"
+
+#: sql_help.h:113
+msgid "define or change the comment of an object"
+msgstr "定义或改变一个对象的评注"
+
+#: sql_help.h:114
+msgid ""
+"COMMENT ON\n"
+"{\n"
+"  TABLE object_name |\n"
+"  COLUMN table_name.column_name |\n"
+"  AGGREGATE agg_name (agg_type) |\n"
+"  CAST (sourcetype AS targettype) |\n"
+"  CONSTRAINT constraint_name ON table_name |\n"
+"  CONVERSION object_name |\n"
+"  DATABASE object_name |\n"
+"  DOMAIN object_name |\n"
+"  FUNCTION func_name (arg1_type, arg2_type, ...) |\n"
+"  INDEX object_name |\n"
+"  LARGE OBJECT large_object_oid |\n"
+"  OPERATOR op (leftoperand_type, rightoperand_type) |\n"
+"  OPERATOR CLASS object_name USING index_method |\n"
+"  [ PROCEDURAL ] LANGUAGE object_name |\n"
+"  RULE rule_name ON table_name |\n"
+"  SCHEMA object_name |\n"
+"  SEQUENCE object_name |\n"
+"  TRIGGER trigger_name ON table_name |\n"
+"  TYPE object_name |\n"
+"  VIEW object_name\n"
+"} IS 'text'"
+msgstr ""
+"COMMENT ON\n"
+"{\n"
+"  TABLE object_name |\n"
+"  COLUMN table_name.column_name |\n"
+"  AGGREGATE agg_name (agg_type) |\n"
+"  CAST (sourcetype AS targettype) |\n"
+"  CONSTRAINT constraint_name ON table_name |\n"
+"  CONVERSION object_name |\n"
+"  DATABASE object_name |\n"
+"  DOMAIN object_name |\n"
+"  FUNCTION func_name (arg1_type, arg2_type, ...) |\n"
+"  INDEX object_name |\n"
+"  LARGE OBJECT large_object_oid |\n"
+"  OPERATOR op (leftoperand_type, rightoperand_type) |\n"
+"  OPERATOR CLASS object_name USING index_method |\n"
+"  [ PROCEDURAL ] LANGUAGE object_name |\n"
+"  RULE rule_name ON table_name |\n"
+"  SCHEMA object_name |\n"
+"  SEQUENCE object_name |\n"
+"  TRIGGER trigger_name ON table_name |\n"
+"  TYPE object_name |\n"
+"  VIEW object_name\n"
+"} IS 'text'"
+
+#: sql_help.h:117 sql_help.h:305
+msgid "commit the current transaction"
+msgstr "提交当前事务"
+
+#: sql_help.h:118
+msgid "COMMIT [ WORK | TRANSACTION ]"
+msgstr "COMMIT [ WORK | TRANSACTION ]"
+
+#: sql_help.h:121
+msgid "copy data between a file and a table"
+msgstr "在一个文件和一个表之间拷贝数据"
+
+#: sql_help.h:122
+msgid ""
+"COPY tablename [ ( column [, ...] ) ]\n"
+"    FROM { 'filename' | STDIN }\n"
+"    [ [ WITH ] \n"
+"          [ BINARY ] \n"
+"          [ OIDS ]\n"
+"          [ DELIMITER [ AS ] 'delimiter' ]\n"
+"          [ NULL [ AS ] 'null string' ]\n"
+"          [ CSV [ QUOTE [ AS ] 'quote' ] \n"
+"                [ ESCAPE [ AS ] 'escape' ]\n"
+"                [ FORCE NOT NULL column [, ...] ]\n"
+"\n"
+"COPY tablename [ ( column [, ...] ) ]\n"
+"    TO { 'filename' | STDOUT }\n"
+"    [ [ WITH ] \n"
+"          [ BINARY ]\n"
+"          [ OIDS ]\n"
+"          [ DELIMITER [ AS ] 'delimiter' ]\n"
+"          [ NULL [ AS ] 'null string' ]\n"
+"          [ CSV [ QUOTE [ AS ] 'quote' ] \n"
+"                [ ESCAPE [ AS ] 'escape' ]\n"
+"                [ FORCE QUOTE column [, ...] ]"
+msgstr ""
+"COPY 表名 [ ( 字段 [, ...] ) ]\n"
+"    FROM { '文件名' | STDIN }\n"
+"    [ [ WITH ] \n"
+"          [ BINARY ] \n"
+"          [ OIDS ]\n"
+"          [ DELIMITER [ AS ] 'delimiter' ]\n"
+"          [ NULL [ AS ] 'null string' ]\n"
+"          [ CSV [ QUOTE [ AS ] 'quote' ] \n"
+"                [ ESCAPE [ AS ] 'escape' ]\n"
+"                [ FORCE NOT NULL column [, ...] ]\n"
+"\n"
+"COPY 表名 [ ( 字段 [, ...] ) ]\n"
+"    TO { '文件名' | STDOUT }\n"
+"    [ [ WITH ] \n"
+"          [ BINARY ]\n"
+"          [ OIDS ]\n"
+"          [ DELIMITER [ AS ] 'delimiter' ]\n"
+"          [ NULL [ AS ] 'null string' ]\n"
+"          [ CSV [ QUOTE [ AS ] 'quote' ] \n"
+"                [ ESCAPE [ AS ] 'escape' ]\n"
+"                [ FORCE QUOTE column [, ...] ]"
+
+#: sql_help.h:125
+msgid "define a new aggregate function"
+msgstr "定义一个新的聚集函数"
+
+#: sql_help.h:126
+msgid ""
+"CREATE AGGREGATE name (\n"
+"    BASETYPE = input_data_type,\n"
+"    SFUNC = sfunc,\n"
+"    STYPE = state_data_type\n"
+"    [ , FINALFUNC = ffunc ]\n"
+"    [ , INITCOND = initial_condition ]\n"
+")"
+msgstr ""
+"CREATE AGGREGATE name (\n"
+"    BASETYPE = input_data_type,\n"
+"    SFUNC = sfunc,\n"
+"    STYPE = state_data_type\n"
+"    [ , FINALFUNC = ffunc ]\n"
+"    [ , INITCOND = initial_condition ]\n"
+")"
+
+#: sql_help.h:129
+msgid "define a new cast"
+msgstr "定义一个新的类型转换"
+
+#: sql_help.h:130
+msgid ""
+"CREATE CAST (sourcetype AS targettype)\n"
+"    WITH FUNCTION funcname (argtypes)\n"
+"    [ AS ASSIGNMENT | AS IMPLICIT ]\n"
+"\n"
+"CREATE CAST (sourcetype AS targettype)\n"
+"    WITHOUT FUNCTION\n"
+"    [ AS ASSIGNMENT | AS IMPLICIT ]"
+msgstr ""
+"CREATE CAST (源类型 AS 目标类型)\n"
+"    WITH FUNCTION 函数名 (参数类型)\n"
+"    [ AS ASSIGNMENT | AS IMPLICIT ]\n"
+"\n"
+"CREATE CAST (源类型 AS 目标类型)\n"
+"    WITHOUT FUNCTION\n"
+"    [ AS ASSIGNMENT | AS IMPLICIT ]"
+
+#: sql_help.h:133
+msgid "define a new constraint trigger"
+msgstr "定义一个新的约束触发器"
+
+#: sql_help.h:134
+msgid ""
+"CREATE CONSTRAINT TRIGGER name\n"
+"    AFTER events ON\n"
+"    tablename constraint attributes\n"
+"    FOR EACH ROW EXECUTE PROCEDURE funcname ( args )"
+msgstr ""
+"CREATE CONSTRAINT TRIGGER name\n"
+"    AFTER events ON\n"
+"    tablename constraint attributes\n"
+"    FOR EACH ROW EXECUTE PROCEDURE funcname ( args )"
+
+#: sql_help.h:137
+msgid "define a new conversion"
+msgstr "定义一个新的转换"
+
+#: sql_help.h:138
+msgid ""
+"CREATE [DEFAULT] CONVERSION name\n"
+"    FOR source_encoding TO dest_encoding FROM funcname"
+msgstr ""
+"CREATE [DEFAULT] CONVERSION 名字\n"
+"    FOR 源编码 TO 目标编码 FROM 函数名"
+
+#: sql_help.h:141
+msgid "create a new database"
+msgstr "创建一个新的数据库"
+
+#: sql_help.h:142
+msgid ""
+"CREATE DATABASE name\n"
+"    [ [ WITH ] [ OWNER [=] dbowner ]\n"
+"           [ TEMPLATE [=] template ]\n"
+"           [ ENCODING [=] encoding ]\n"
+"           [ TABLESPACE [=] tablespace ] ]"
+msgstr ""
+"CREATE DATABASE 数据库名称\n"
+"    [ [ WITH ] [ OWNER [=] 数据库属主 ]\n"
+"           [ TEMPLATE [=] 模板 ]\n"
+"           [ ENCODING [=] 编码 ]\n"
+"           [ TABLESPACE [=] 表空间 ] ]"
+
+#: sql_help.h:145
+msgid "define a new domain"
+msgstr "定义一个新的域"
+
+#: sql_help.h:146
+msgid ""
+"CREATE DOMAIN name [AS] data_type\n"
+"    [ DEFAULT expression ]\n"
+"    [ constraint [ ... ] ]\n"
+"\n"
+"where constraint is:\n"
+"\n"
+"[ CONSTRAINT constraint_name ]\n"
+"{ NOT NULL | NULL | CHECK (expression) }"
+msgstr ""
+"CREATE DOMAIN name [AS] data_type\n"
+"    [ DEFAULT expression ]\n"
+"    [ constraint [ ... ] ]\n"
+"\n"
+"constraint 是:\n"
+"\n"
+"[ CONSTRAINT constraint_name ]\n"
+"{ NOT NULL | NULL | CHECK (expression) }"
+
+#: sql_help.h:149
+msgid "define a new function"
+msgstr "定义一个新的函数"
+
+#: sql_help.h:150
+msgid ""
+"CREATE [ OR REPLACE ] FUNCTION name ( [ [ argname ] argtype [, ...] ] )\n"
+"    RETURNS rettype\n"
+"  { LANGUAGE langname\n"
+"    | IMMUTABLE | STABLE | VOLATILE\n"
+"    | CALLED ON NULL INPUT | RETURNS NULL ON NULL INPUT | STRICT\n"
+"    | [ EXTERNAL ] SECURITY INVOKER | [ EXTERNAL ] SECURITY DEFINER\n"
+"    | AS 'definition'\n"
+"    | AS 'obj_file', 'link_symbol'\n"
+"  } ...\n"
+"    [ WITH ( attribute [, ...] ) ]"
+msgstr ""
+"CREATE [ OR REPLACE ] FUNCTION 名字 ( [ [ 参数名字 ] 参数类型 [, ...] ] )\n"
+"    RETURNS 返回类型\n"
+"  { LANGUAGE 语言名称\n"
+"    | IMMUTABLE | STABLE | VOLATILE\n"
+"    | CALLED ON NULL INPUT | RETURNS NULL ON NULL INPUT | STRICT\n"
+"    | [ EXTERNAL ] SECURITY INVOKER | [ EXTERNAL ] SECURITY DEFINER\n"
+"    | AS 'definition'\n"
+"    | AS 'obj_file', 'link_symbol'\n"
+"  } ...\n"
+"    [ WITH ( attribute [, ...] ) ]"
+
+#: sql_help.h:153
+msgid "define a new user group"
+msgstr "定义一个新的用户组"
+
+#: sql_help.h:154
+msgid ""
+"CREATE GROUP name [ [ WITH ] option [ ... ] ]\n"
+"\n"
+"where option can be:\n"
+"\n"
+"     SYSID gid\n"
+"   | USER  username [, ...]"
+msgstr ""
+"CREATE GROUP 组名 [ [ WITH ] option [ ... ] ]\n"
+"\n"
+"option 可以为:\n"
+"\n"
+"     SYSID gid\n"
+"   | USER  username [, ...]"
+
+#: sql_help.h:157
+msgid "define a new index"
+msgstr "定义一个新的索引"
+
+#: sql_help.h:158
+msgid ""
+"CREATE [ UNIQUE ] INDEX name ON table [ USING method ]\n"
+"    ( { column | ( expression ) } [ opclass ] [, ...] )\n"
+"    [ TABLESPACE tablespace ]\n"
+"    [ WHERE predicate ]"
+msgstr ""
+"CREATE [ UNIQUE ] INDEX 索引名称 ON 表名 [ USING method ]\n"
+"    ( { column | ( expression ) } [ opclass ] [, ...] )\n"
+"    [ TABLESPACE tablespace ]\n"
+"    [ WHERE predicate ]"
+
+#: sql_help.h:161
+msgid "define a new procedural language"
+msgstr "定义一个新的过程语言"
+
+#: sql_help.h:162
+msgid ""
+"CREATE [ TRUSTED ] [ PROCEDURAL ] LANGUAGE name\n"
+"    HANDLER call_handler [ VALIDATOR valfunction ]"
+msgstr ""
+"CREATE [ TRUSTED ] [ PROCEDURAL ] LANGUAGE name\n"
+"    HANDLER call_handler [ VALIDATOR valfunction ]"
+
+#: sql_help.h:165
+msgid "define a new operator class"
+msgstr "定义一个新的操作符类"
+
+#: sql_help.h:166
+msgid ""
+"CREATE OPERATOR CLASS name [ DEFAULT ] FOR TYPE data_type USING index_method "
+"AS\n"
+"  {  OPERATOR strategy_number operator_name [ ( op_type, op_type ) ] "
+"[ RECHECK ]\n"
+"   | FUNCTION support_number funcname ( argument_type [, ...] )\n"
+"   | STORAGE storage_type\n"
+"  } [, ... ]"
+msgstr ""
+"CREATE OPERATOR CLASS name [ DEFAULT ] FOR TYPE data_type USING index_method "
+"AS\n"
+"  {  OPERATOR strategy_number operator_name [ ( op_type, op_type ) ] "
+"[ RECHECK ]\n"
+"   | FUNCTION support_number funcname ( argument_type [, ...] )\n"
+"   | STORAGE storage_type\n"
+"  } [, ... ]"
+
+#: sql_help.h:169
+msgid "define a new operator"
+msgstr "定义一个新的操作符"
+
+#: sql_help.h:170
+msgid ""
+"CREATE OPERATOR name (\n"
+"    PROCEDURE = funcname\n"
+"    [, LEFTARG = lefttype ] [, RIGHTARG = righttype ]\n"
+"    [, COMMUTATOR = com_op ] [, NEGATOR = neg_op ]\n"
+"    [, RESTRICT = res_proc ] [, JOIN = join_proc ]\n"
+"    [, HASHES ] [, MERGES ]\n"
+"    [, SORT1 = left_sort_op ] [, SORT2 = right_sort_op ]\n"
+"    [, LTCMP = less_than_op ] [, GTCMP = greater_than_op ]\n"
+")"
+msgstr ""
+"CREATE OPERATOR name (\n"
+"    PROCEDURE = funcname\n"
+"    [, LEFTARG = lefttype ] [, RIGHTARG = righttype ]\n"
+"    [, COMMUTATOR = com_op ] [, NEGATOR = neg_op ]\n"
+"    [, RESTRICT = res_proc ] [, JOIN = join_proc ]\n"
+"    [, HASHES ] [, MERGES ]\n"
+"    [, SORT1 = left_sort_op ] [, SORT2 = right_sort_op ]\n"
+"    [, LTCMP = less_than_op ] [, GTCMP = greater_than_op ]\n"
+")"
+
+#: sql_help.h:173
+msgid "define a new rewrite rule"
+msgstr "定义一个新的重写规则"
+
+#: sql_help.h:174
+msgid ""
+"CREATE [ OR REPLACE ] RULE name AS ON event\n"
+"    TO table [ WHERE condition ]\n"
+"    DO [ ALSO | INSTEAD ] { NOTHING | command | ( command ; command ... ) }"
+msgstr ""
+"CREATE [ OR REPLACE ] RULE 名字 AS ON 事件\n"
+"    TO 表 [ WHERE 条件 ]\n"
+"    DO [ ALSO | INSTEAD ] { NOTHING | 命令 | ( 命令 ; 命令 ... ) }"
+
+#: sql_help.h:177
+msgid "define a new schema"
+msgstr "定义一个新的模式"
+
+#: sql_help.h:178
+msgid ""
+"CREATE SCHEMA schemaname [ AUTHORIZATION username ] [ TABLESPACE "
+"tablespace ] [ schema_element [ ... ] ]\n"
+"CREATE SCHEMA AUTHORIZATION username [ TABLESPACE tablespace ] "
+"[ schema_element [ ... ] ]"
+msgstr ""
+"CREATE SCHEMA schemaname [ AUTHORIZATION username ] [ TABLESPACE "
+"tablespace ] [ schema_element [ ... ] ]\n"
+"CREATE SCHEMA AUTHORIZATION username [ TABLESPACE tablespace ] "
+"[ schema_element [ ... ] ]"
+
+#: sql_help.h:181
+msgid "define a new sequence generator"
+msgstr "定义一个新的序列生成器"
+
+#: sql_help.h:182
+msgid ""
+"CREATE [ TEMPORARY | TEMP ] SEQUENCE name [ INCREMENT [ BY ] increment ]\n"
+"    [ MINVALUE minvalue | NO MINVALUE ] [ MAXVALUE maxvalue | NO MAXVALUE ]\n"
+"    [ START [ WITH ] start ] [ CACHE cache ] [ [ NO ] CYCLE ]"
+msgstr ""
+"CREATE [ TEMPORARY | TEMP ] SEQUENCE name [ INCREMENT [ BY ] increment ]\n"
+"    [ MINVALUE minvalue | NO MINVALUE ] [ MAXVALUE maxvalue | NO MAXVALUE ]\n"
+"    [ START [ WITH ] start ] [ CACHE cache ] [ [ NO ] CYCLE ]"
+
+#: sql_help.h:185
+msgid "define a new table"
+msgstr "定义一个新的表"
+
+#: sql_help.h:186
+msgid ""
+"CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } ] TABLE table_name (\n"
+"  { column_name data_type [ DEFAULT default_expr ] [ column_constraint "
+"[ ... ] ]\n"
+"    | table_constraint\n"
+"    | LIKE parent_table [ { INCLUDING | EXCLUDING } DEFAULTS ] }  [, ... ]\n"
+")\n"
+"[ INHERITS ( parent_table [, ... ] ) ]\n"
+"[ WITH OIDS | WITHOUT OIDS ]\n"
+"[ ON COMMIT { PRESERVE ROWS | DELETE ROWS | DROP } ]\n"
+"[ TABLESPACE tablespace ]\n"
+"\n"
+"where column_constraint is:\n"
+"\n"
+"[ CONSTRAINT constraint_name ]\n"
+"{ NOT NULL | \n"
+"  NULL | \n"
+"  UNIQUE [ USING INDEX TABLESPACE tablespace ] |\n"
+"  PRIMARY KEY [ USING INDEX TABLESPACE tablespace ] |\n"
+"  CHECK (expression) |\n"
+"  REFERENCES reftable [ ( refcolumn ) ] [ MATCH FULL | MATCH PARTIAL | MATCH "
+"SIMPLE ]\n"
+"    [ ON DELETE action ] [ ON UPDATE action ] }\n"
+"[ DEFERRABLE | NOT DEFERRABLE ] [ INITIALLY DEFERRED | INITIALLY "
+"IMMEDIATE ]\n"
+"\n"
+"and table_constraint is:\n"
+"\n"
+"[ CONSTRAINT constraint_name ]\n"
+"{ UNIQUE ( column_name [, ... ] ) [ USING INDEX TABLESPACE tablespace ] |\n"
+"  PRIMARY KEY ( column_name [, ... ] ) [ USING INDEX TABLESPACE tablespace ] "
+"|\n"
+"  CHECK ( expression ) |\n"
+"  FOREIGN KEY ( column_name [, ... ] ) REFERENCES reftable [ ( refcolumn "
+"[, ... ] ) ]\n"
+"    [ MATCH FULL | MATCH PARTIAL | MATCH SIMPLE ] [ ON DELETE action ] [ ON "
+"UPDATE action ] }\n"
+"[ DEFERRABLE | NOT DEFERRABLE ] [ INITIALLY DEFERRED | INITIALLY IMMEDIATE ]"
+msgstr ""
+"CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } ] TABLE table_name (\n"
+"  { column_name data_type [ DEFAULT default_expr ] [ column_constraint "
+"[ ... ] ]\n"
+"    | table_constraint\n"
+"    | LIKE parent_table [ { INCLUDING | EXCLUDING } DEFAULTS ] }  [, ... ]\n"
+")\n"
+"[ INHERITS ( parent_table [, ... ] ) ]\n"
+"[ WITH OIDS | WITHOUT OIDS ]\n"
+"[ ON COMMIT { PRESERVE ROWS | DELETE ROWS | DROP } ]\n"
+"[ TABLESPACE tablespace ]\n"
+"\n"
+"where column_constraint is:\n"
+"\n"
+"[ CONSTRAINT constraint_name ]\n"
+"{ NOT NULL | \n"
+"  NULL | \n"
+"  UNIQUE [ USING INDEX TABLESPACE tablespace ] |\n"
+"  PRIMARY KEY [ USING INDEX TABLESPACE tablespace ] |\n"
+"  CHECK (expression) |\n"
+"  REFERENCES reftable [ ( refcolumn ) ] [ MATCH FULL | MATCH PARTIAL | MATCH "
+"SIMPLE ]\n"
+"    [ ON DELETE action ] [ ON UPDATE action ] }\n"
+"[ DEFERRABLE | NOT DEFERRABLE ] [ INITIALLY DEFERRED | INITIALLY "
+"IMMEDIATE ]\n"
+"\n"
+"and table_constraint is:\n"
+"\n"
+"[ CONSTRAINT constraint_name ]\n"
+"{ UNIQUE ( column_name [, ... ] ) [ USING INDEX TABLESPACE tablespace ] |\n"
+"  PRIMARY KEY ( column_name [, ... ] ) [ USING INDEX TABLESPACE tablespace ] "
+"|\n"
+"  CHECK ( expression ) |\n"
+"  FOREIGN KEY ( column_name [, ... ] ) REFERENCES reftable [ ( refcolumn "
+"[, ... ] ) ]\n"
+"    [ MATCH FULL | MATCH PARTIAL | MATCH SIMPLE ] [ ON DELETE action ] [ ON "
+"UPDATE action ] }\n"
+"[ DEFERRABLE | NOT DEFERRABLE ] [ INITIALLY DEFERRED | INITIALLY IMMEDIATE ]"
+
+#: sql_help.h:189 sql_help.h:385
+msgid "create a new table from the results of a query"
+msgstr "以一个查询的结果创建一个新的表"
+
+#: sql_help.h:190
+msgid ""
+"CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } ] TABLE table_name "
+"[ (column_name [, ...] ) ] [ [ WITH | WITHOUT ] OIDS ]\n"
+"    AS query"
+msgstr ""
+"CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } ] TABLE 表名字 [ (字段名字 "
+"[, ...] ) ] [ [ WITH | WITHOUT ] OIDS ]\n"
+"    AS query"
+
+#: sql_help.h:193
+msgid "define a new tablespace"
+msgstr "定义一个新的表空间"
+
+#: sql_help.h:194
+msgid ""
+"CREATE TABLESPACE tablespacename [ OWNER username ] LOCATION 'directory'"
+msgstr "CREATE TABLESPACE 表空间名称 [ OWNER 用户名 ] LOCATION '目录'"
+
+#: sql_help.h:197
+msgid "define a new trigger"
+msgstr "定义一个新的触发器"
+
+#: sql_help.h:198
+msgid ""
+"CREATE TRIGGER name { BEFORE | AFTER } { event [ OR ... ] }\n"
+"    ON table [ FOR [ EACH ] { ROW | STATEMENT } ]\n"
+"    EXECUTE PROCEDURE funcname ( arguments )"
+msgstr ""
+"CREATE TRIGGER 名字 { BEFORE | AFTER } { 事件 [ OR ... ] }\n"
+"    ON 表 [ FOR [ EACH ] { ROW | STATEMENT } ]\n"
+"    EXECUTE PROCEDURE 函数名 ( 参数 )"
+
+#: sql_help.h:201
+msgid "define a new data type"
+msgstr "定义一个新的数据类型"
+
+#: sql_help.h:202
+msgid ""
+"CREATE TYPE name AS\n"
+"    ( attribute_name data_type [, ... ] )\n"
+"\n"
+"CREATE TYPE name (\n"
+"    INPUT = input_function,\n"
+"    OUTPUT = output_function\n"
+"    [ , RECEIVE = receive_function ]\n"
+"    [ , SEND = send_function ]\n"
+"    [ , ANALYZE = analyze_function ]\n"
+"    [ , INTERNALLENGTH = { internallength | VARIABLE } ]\n"
+"    [ , PASSEDBYVALUE ]\n"
+"    [ , ALIGNMENT = alignment ]\n"
+"    [ , STORAGE = storage ]\n"
+"    [ , DEFAULT = default ]\n"
+"    [ , ELEMENT = element ]\n"
+"    [ , DELIMITER = delimiter ]\n"
+")"
+msgstr ""
+"CREATE TYPE name AS\n"
+"    ( attribute_name data_type [, ... ] )\n"
+"\n"
+"CREATE TYPE name (\n"
+"    INPUT = input_function,\n"
+"    OUTPUT = output_function\n"
+"    [ , RECEIVE = receive_function ]\n"
+"    [ , SEND = send_function ]\n"
+"    [ , ANALYZE = analyze_function ]\n"
+"    [ , INTERNALLENGTH = { internallength | VARIABLE } ]\n"
+"    [ , PASSEDBYVALUE ]\n"
+"    [ , ALIGNMENT = alignment ]\n"
+"    [ , STORAGE = storage ]\n"
+"    [ , DEFAULT = default ]\n"
+"    [ , ELEMENT = element ]\n"
+"    [ , DELIMITER = delimiter ]\n"
+")"
+
+#: sql_help.h:205
+msgid "define a new database user account"
+msgstr "定义一个新的数据库用户帐户"
+
+#: sql_help.h:206
+msgid ""
+"CREATE USER name [ [ WITH ] option [ ... ] ]\n"
+"\n"
+"where option can be:\n"
+"    \n"
+"      SYSID uid \n"
+"    | [ ENCRYPTED | UNENCRYPTED ] PASSWORD 'password'\n"
+"    | CREATEDB | NOCREATEDB\n"
+"    | CREATEUSER | NOCREATEUSER\n"
+"    | IN GROUP groupname [, ...]\n"
+"    | VALID UNTIL 'abstime'"
+msgstr ""
+"CREATE USER name [ [ WITH ] option [ ... ] ]\n"
+"\n"
+"option 可以为:\n"
+"    \n"
+"      SYSID uid \n"
+"    | [ ENCRYPTED | UNENCRYPTED ] PASSWORD 'password'\n"
+"    | CREATEDB | NOCREATEDB\n"
+"    | CREATEUSER | NOCREATEUSER\n"
+"    | IN GROUP groupname [, ...]\n"
+"    | VALID UNTIL 'abstime'"
+
+#: sql_help.h:209
+msgid "define a new view"
+msgstr "定义一个新的视图"
+
+#: sql_help.h:210
+msgid "CREATE [ OR REPLACE ] VIEW name [ ( column_name [, ...] ) ] AS query"
+msgstr "CREATE [ OR REPLACE ] VIEW 名字 [ ( 字段名 [, ...] ) ] AS query"
+
+#: sql_help.h:213
+msgid "deallocate a prepared statement"
+msgstr "解除一个准备好的语句"
+
+#: sql_help.h:214
+msgid "DEALLOCATE [ PREPARE ] plan_name"
+msgstr "DEALLOCATE [ PREPARE ] 规划名称"
+
+#: sql_help.h:217
+msgid "define a cursor"
+msgstr "定义一个游标"
+
+#: sql_help.h:218
+msgid ""
+"DECLARE name [ BINARY ] [ INSENSITIVE ] [ [ NO ] SCROLL ]\n"
+"    CURSOR [ { WITH | WITHOUT } HOLD ] FOR query\n"
+"    [ FOR { READ ONLY | UPDATE [ OF column [, ...] ] } ]"
+msgstr ""
+"DECLARE name [ BINARY ] [ INSENSITIVE ] [ [ NO ] SCROLL ]\n"
+"    CURSOR [ { WITH | WITHOUT } HOLD ] FOR query\n"
+"    [ FOR { READ ONLY | UPDATE [ OF column [, ...] ] } ]"
+
+#: sql_help.h:221
+msgid "delete rows of a table"
+msgstr "删除一个表的记录"
+
+#: sql_help.h:222
+msgid "DELETE FROM [ ONLY ] table [ WHERE condition ]"
+msgstr "DELETE FROM [ ONLY ] 表 [ WHERE 条件 ]"
+
+#: sql_help.h:225
+msgid "remove an aggregate function"
+msgstr "删除一个聚集函数"
+
+#: sql_help.h:226
+msgid "DROP AGGREGATE name ( type ) [ CASCADE | RESTRICT ]"
+msgstr "DROP AGGREGATE 名字 ( 类型 ) [ CASCADE | RESTRICT ]"
+
+#: sql_help.h:229
+msgid "remove a cast"
+msgstr "删除一个类型转换"
+
+#: sql_help.h:230
+msgid "DROP CAST (sourcetype AS targettype) [ CASCADE | RESTRICT ]"
+msgstr "DROP CAST (源类型 AS 目标类型) [ CASCADE | RESTRICT ]"
+
+#: sql_help.h:233
+msgid "remove a conversion"
+msgstr "删除一个转换"
+
+#: sql_help.h:234
+msgid "DROP CONVERSION name [ CASCADE | RESTRICT ]"
+msgstr "DROP CONVERSION 名字 [ CASCADE | RESTRICT ]"
+
+#: sql_help.h:237
+msgid "remove a database"
+msgstr "删除一个数据库"
+
+#: sql_help.h:238
+msgid "DROP DATABASE name"
+msgstr "DROP DATABASE 名字"
+
+#: sql_help.h:241
+msgid "remove a domain"
+msgstr "删除一个域"
+
+#: sql_help.h:242
+msgid "DROP DOMAIN name [, ...]  [ CASCADE | RESTRICT ]"
+msgstr "DROP DOMAIN 名字 [, ...]  [ CASCADE | RESTRICT ]"
+
+#: sql_help.h:245
+msgid "remove a function"
+msgstr "删除一个函数"
+
+#: sql_help.h:246
+msgid "DROP FUNCTION name ( [ type [, ...] ] ) [ CASCADE | RESTRICT ]"
+msgstr "DROP FUNCTION 名字 ( [ 类型 [, ...] ] ) [ CASCADE | RESTRICT ]"
+
+#: sql_help.h:249
+msgid "remove a user group"
+msgstr "删除一个用户组"
+
+#: sql_help.h:250
+msgid "DROP GROUP name"
+msgstr "DROP GROUP 名字"
+
+#: sql_help.h:253
+msgid "remove an index"
+msgstr "删除一个索引"
+
+#: sql_help.h:254
+msgid "DROP INDEX name [, ...] [ CASCADE | RESTRICT ]"
+msgstr "DROP INDEX 名字 [, ...] [ CASCADE | RESTRICT ]"
+
+#: sql_help.h:257
+msgid "remove a procedural language"
+msgstr "删除一个过程语言"
+
+#: sql_help.h:258
+msgid "DROP [ PROCEDURAL ] LANGUAGE name [ CASCADE | RESTRICT ]"
+msgstr "DROP [ PROCEDURAL ] LANGUAGE 名字 [ CASCADE | RESTRICT ]"
+
+#: sql_help.h:261
+msgid "remove an operator class"
+msgstr "删除一个操作符类"
+
+#: sql_help.h:262
+msgid "DROP OPERATOR CLASS name USING index_method [ CASCADE | RESTRICT ]"
+msgstr "DROP OPERATOR CLASS name USING index_method [ CASCADE | RESTRICT ]"
+
+#: sql_help.h:265
+msgid "remove an operator"
+msgstr "删除一个操作符"
+
+#: sql_help.h:266
+msgid ""
+"DROP OPERATOR name ( { lefttype | NONE } , { righttype | NONE } ) [ CASCADE "
+"| RESTRICT ]"
+msgstr ""
+"DROP OPERATOR 名字 ( { 左边类型 | NONE } , { 右边类型 | NONE } ) [ CASCADE | "
+"RESTRICT ]"
+
+#: sql_help.h:269
+msgid "remove a rewrite rule"
+msgstr "删除一个重写规则"
+
+#: sql_help.h:270
+msgid "DROP RULE name ON relation [ CASCADE | RESTRICT ]"
+msgstr "DROP RULE 名字 ON 关系 [ CASCADE | RESTRICT ]"
+
+#: sql_help.h:273
+msgid "remove a schema"
+msgstr "删除一个模式"
+
+#: sql_help.h:274
+msgid "DROP SCHEMA name [, ...] [ CASCADE | RESTRICT ]"
+msgstr "DROP SCHEMA 名字 [, ...] [ CASCADE | RESTRICT ]"
+
+#: sql_help.h:277
+msgid "remove a sequence"
+msgstr "删除一个序列"
+
+#: sql_help.h:278
+msgid "DROP SEQUENCE name [, ...] [ CASCADE | RESTRICT ]"
+msgstr "DROP SEQUENCE 名字 [, ...] [ CASCADE | RESTRICT ]"
+
+#: sql_help.h:281
+msgid "remove a table"
+msgstr "删除一个表"
+
+#: sql_help.h:282
+msgid "DROP TABLE name [, ...] [ CASCADE | RESTRICT ]"
+msgstr "DROP TABLE 名字 [, ...] [ CASCADE | RESTRICT ]"
+
+#: sql_help.h:285
+msgid "remove a tablespace"
+msgstr "删除一个表空间"
+
+#: sql_help.h:286
+msgid "DROP TABLESPACE tablespacename"
+msgstr "DROP TABLESPACE 表空间名字"
+
+#: sql_help.h:289
+msgid "remove a trigger"
+msgstr "删除一个触发器"
+
+#: sql_help.h:290
+msgid "DROP TRIGGER name ON table [ CASCADE | RESTRICT ]"
+msgstr "DROP TRIGGER 名字 ON 表 [ CASCADE | RESTRICT ]"
+
+#: sql_help.h:293
+msgid "remove a data type"
+msgstr "删除一个数据类型"
+
+#: sql_help.h:294
+msgid "DROP TYPE name [, ...] [ CASCADE | RESTRICT ]"
+msgstr "DROP TYPE 名字 [, ...] [ CASCADE | RESTRICT ]"
+
+#: sql_help.h:297
+msgid "remove a database user account"
+msgstr "删除一个数据库用户帐户"
+
+#: sql_help.h:298
+msgid "DROP USER name"
+msgstr "DROP USER 名字"
+
+#: sql_help.h:301
+msgid "remove a view"
+msgstr "删除一个视图"
+
+#: sql_help.h:302
+msgid "DROP VIEW name [, ...] [ CASCADE | RESTRICT ]"
+msgstr "DROP VIEW 名字 [, ...] [ CASCADE | RESTRICT ]"
+
+#: sql_help.h:306
+msgid "END [ WORK | TRANSACTION ]"
+msgstr "END [ WORK | TRANSACTION ]"
+
+#: sql_help.h:309
+msgid "execute a prepared statement"
+msgstr "执行一个准备好的语句"
+
+#: sql_help.h:310
+msgid "EXECUTE plan_name [ (parameter [, ...] ) ]"
+msgstr "EXECUTE 规划名称 [ (参数 [, ...] ) ]"
+
+#: sql_help.h:313
+msgid "show the execution plan of a statement"
+msgstr "显示语句的执行规划"
+
+#: sql_help.h:314
+msgid "EXPLAIN [ ANALYZE ] [ VERBOSE ] statement"
+msgstr "EXPLAIN [ ANALYZE ] [ VERBOSE ] 语句"
+
+#: sql_help.h:317
+msgid "retrieve rows from a query using a cursor"
+msgstr "恢复来自一个使用游标查询的行"
+
+#: sql_help.h:318
+msgid ""
+"FETCH [ direction { FROM | IN } ] cursorname\n"
+"\n"
+"where direction can be empty or one of:\n"
+"\n"
+"    NEXT\n"
+"    PRIOR\n"
+"    FIRST\n"
+"    LAST\n"
+"    ABSOLUTE count\n"
+"    RELATIVE count\n"
+"    count\n"
+"    ALL\n"
+"    FORWARD\n"
+"    FORWARD count\n"
+"    FORWARD ALL\n"
+"    BACKWARD\n"
+"    BACKWARD count\n"
+"    BACKWARD ALL"
+msgstr ""
+"FETCH [ direction { FROM | IN } ] cursorname\n"
+"\n"
+"direction 可以为空或下面的一种:\n"
+"\n"
+"    NEXT\n"
+"    PRIOR\n"
+"    FIRST\n"
+"    LAST\n"
+"    ABSOLUTE count\n"
+"    RELATIVE count\n"
+"    count\n"
+"    ALL\n"
+"    FORWARD\n"
+"    FORWARD count\n"
+"    FORWARD ALL\n"
+"    BACKWARD\n"
+"    BACKWARD count\n"
+"    BACKWARD ALL"
+
+#: sql_help.h:321
+msgid "define access privileges"
+msgstr "定义访问权限"
+
+#: sql_help.h:322
+msgid ""
+"GRANT { { SELECT | INSERT | UPDATE | DELETE | RULE | REFERENCES | TRIGGER }\n"
+"    [,...] | ALL [ PRIVILEGES ] }\n"
+"    ON [ TABLE ] tablename [, ...]\n"
+"    TO { username | GROUP groupname | PUBLIC } [, ...] [ WITH GRANT "
+"OPTION ]\n"
+"\n"
+"GRANT { { CREATE | TEMPORARY | TEMP } [,...] | ALL [ PRIVILEGES ] }\n"
+"    ON DATABASE dbname [, ...]\n"
+"    TO { username | GROUP groupname | PUBLIC } [, ...] [ WITH GRANT "
+"OPTION ]\n"
+"\n"
+"GRANT { CREATE | ALL [ PRIVILEGES ] }\n"
+"    ON TABLESPACE tablespacename [, ...]\n"
+"    TO { username | GROUP groupname | PUBLIC } [, ...] [ WITH GRANT "
+"OPTION ]\n"
+"\n"
+"GRANT { EXECUTE | ALL [ PRIVILEGES ] }\n"
+"    ON FUNCTION funcname ([type, ...]) [, ...]\n"
+"    TO { username | GROUP groupname | PUBLIC } [, ...] [ WITH GRANT "
+"OPTION ]\n"
+"\n"
+"GRANT { USAGE | ALL [ PRIVILEGES ] }\n"
+"    ON LANGUAGE langname [, ...]\n"
+"    TO { username | GROUP groupname | PUBLIC } [, ...] [ WITH GRANT "
+"OPTION ]\n"
+"\n"
+"GRANT { { CREATE | USAGE } [,...] | ALL [ PRIVILEGES ] }\n"
+"    ON SCHEMA schemaname [, ...]\n"
+"    TO { username | GROUP groupname | PUBLIC } [, ...] [ WITH GRANT OPTION ]"
+msgstr ""
+"GRANT { { SELECT | INSERT | UPDATE | DELETE | RULE | REFERENCES | TRIGGER }\n"
+"    [,...] | ALL [ PRIVILEGES ] }\n"
+"    ON [ TABLE ] 表名称 [, ...]\n"
+"    TO { 用户名 | GROUP 组名 | PUBLIC } [, ...] [ WITH GRANT OPTION ]\n"
+"\n"
+"GRANT { { CREATE | TEMPORARY | TEMP } [,...] | ALL [ PRIVILEGES ] }\n"
+"    ON DATABASE 数据库名称 [, ...]\n"
+"    TO { 用户名 | GROUP 组名 | PUBLIC } [, ...] [ WITH GRANT OPTION ]\n"
+"\n"
+"GRANT { CREATE | ALL [ PRIVILEGES ] }\n"
+"    ON TABLESPACE 表空间名称 [, ...]\n"
+"    TO { 用户名 | GROUP 组名 | PUBLIC } [, ...] [ WITH GRANT OPTION ]\n"
+"\n"
+"GRANT { EXECUTE | ALL [ PRIVILEGES ] }\n"
+"    ON FUNCTION 函数名称 ([类型, ...]) [, ...]\n"
+"    TO { 用户名 | GROUP 组名 | PUBLIC } [, ...] [ WITH GRANT OPTION ]\n"
+"\n"
+"GRANT { USAGE | ALL [ PRIVILEGES ] }\n"
+"    ON LANGUAGE 语言名称 [, ...]\n"
+"    TO { 用户名 | GROUP 组名 | PUBLIC } [, ...] [ WITH GRANT OPTION ]\n"
+"\n"
+"GRANT { { CREATE | USAGE } [,...] | ALL [ PRIVILEGES ] }\n"
+"    ON SCHEMA 模式名称 [, ...]\n"
+"    TO { 用户名 | GROUP 组名 | PUBLIC } [, ...] [ WITH GRANT OPTION ]"
+
+#: sql_help.h:325
+msgid "create new rows in a table"
+msgstr "在一个表中创建新行"
+
+#: sql_help.h:326
+msgid ""
+"INSERT INTO table [ ( column [, ...] ) ]\n"
+"    { DEFAULT VALUES | VALUES ( { expression | DEFAULT } [, ...] ) | query }"
+msgstr ""
+"INSERT INTO 表名 [ ( 字段 [, ...] ) ]\n"
+"    { DEFAULT VALUES | VALUES ( { 表达式 | DEFAULT } [, ...] ) | 子查询 }"
+
+#: sql_help.h:329
+msgid "listen for a notification"
+msgstr "监听一个通知"
+
+#: sql_help.h:330
+msgid "LISTEN name"
+msgstr "LISTEN 名字"
+
+#: sql_help.h:333
+msgid "load or reload a shared library file"
+msgstr "提取或重载一个共享库文件"
+
+#: sql_help.h:334
+msgid "LOAD 'filename'"
+msgstr "LOAD '文件名'"
+
+#: sql_help.h:337
+msgid "lock a table"
+msgstr "锁定一个表"
+
+#: sql_help.h:338
+msgid ""
+"LOCK [ TABLE ] name [, ...] [ IN lockmode MODE ] [ NOWAIT ]\n"
+"\n"
+"where lockmode is one of:\n"
+"\n"
+"    ACCESS SHARE | ROW SHARE | ROW EXCLUSIVE | SHARE UPDATE EXCLUSIVE\n"
+"    | SHARE | SHARE ROW EXCLUSIVE | EXCLUSIVE | ACCESS EXCLUSIVE"
+msgstr ""
+"LOCK [ TABLE ] 名字 [, ...] [ IN lockmode MODE ] [ NOWAIT ]\n"
+"\n"
+"lockmode 可以是下面的一种:\n"
+"\n"
+"    ACCESS SHARE | ROW SHARE | ROW EXCLUSIVE | SHARE UPDATE EXCLUSIVE\n"
+"    | SHARE | SHARE ROW EXCLUSIVE | EXCLUSIVE | ACCESS EXCLUSIVE"
+
+#: sql_help.h:341
+msgid "position a cursor"
+msgstr "定位一个游标"
+
+#: sql_help.h:342
+msgid "MOVE [ direction { FROM | IN } ] cursorname"
+msgstr "MOVE [ direction { FROM | IN } ] cursorname"
+
+#: sql_help.h:345
+msgid "generate a notification"
+msgstr "生成一个通知"
+
+#: sql_help.h:346
+msgid "NOTIFY name"
+msgstr "NOTIFY 名字"
+
+#: sql_help.h:349
+msgid "prepare a statement for execution"
+msgstr "为执行准备一条语句"
+
+#: sql_help.h:350
+msgid "PREPARE plan_name [ (datatype [, ...] ) ] AS statement"
+msgstr "PREPARE 规划名称 [ (数据类型 [, ...] ) ] AS 语句"
+
+#: sql_help.h:353
+msgid "rebuild indexes"
+msgstr "重建索引"
+
+#: sql_help.h:354
+msgid "REINDEX { DATABASE | TABLE | INDEX } name [ FORCE ]"
+msgstr "REINDEX { DATABASE | TABLE | INDEX } 名字 [ FORCE ]"
+
+#: sql_help.h:357
+msgid "destroy a previously defined savepoint"
+msgstr "删除一个以前定义的 savepoint"
+
+#: sql_help.h:358
+msgid "RELEASE savepoint_name"
+msgstr "RELEASE savepoint_name"
+
+#: sql_help.h:361
+msgid "restore the value of a run-time parameter to the default value"
+msgstr "恢复运行时参数值为默认值"
+
+#: sql_help.h:362
+msgid ""
+"RESET name\n"
+"RESET ALL"
+msgstr ""
+"RESET 名字\n"
+"RESET ALL"
+
+#: sql_help.h:365
+msgid "remove access privileges"
+msgstr "删除访问权限"
+
+#: sql_help.h:366
+msgid ""
+"REVOKE [ GRANT OPTION FOR ]\n"
+"    { { SELECT | INSERT | UPDATE | DELETE | RULE | REFERENCES | TRIGGER }\n"
+"    [,...] | ALL [ PRIVILEGES ] }\n"
+"    ON [ TABLE ] tablename [, ...]\n"
+"    FROM { username | GROUP groupname | PUBLIC } [, ...]\n"
+"    [ CASCADE | RESTRICT ]\n"
+"\n"
+"REVOKE [ GRANT OPTION FOR ]\n"
+"    { { CREATE | TEMPORARY | TEMP } [,...] | ALL [ PRIVILEGES ] }\n"
+"    ON DATABASE dbname [, ...]\n"
+"    FROM { username | GROUP groupname | PUBLIC } [, ...]\n"
+"    [ CASCADE | RESTRICT ]\n"
+"\n"
+"REVOKE [ GRANT OPTION FOR ]\n"
+"    { CREATE | ALL [ PRIVILEGES ] }\n"
+"    ON TABLESPACE tablespacename [, ...]\n"
+"    FROM { username | GROUP groupname | PUBLIC } [, ...]\n"
+"    [ CASCADE | RESTRICT ]\n"
+"\n"
+"REVOKE [ GRANT OPTION FOR ]\n"
+"    { EXECUTE | ALL [ PRIVILEGES ] }\n"
+"    ON FUNCTION funcname ([type, ...]) [, ...]\n"
+"    FROM { username | GROUP groupname | PUBLIC } [, ...]\n"
+"    [ CASCADE | RESTRICT ]\n"
+"\n"
+"REVOKE [ GRANT OPTION FOR ]\n"
+"    { USAGE | ALL [ PRIVILEGES ] }\n"
+"    ON LANGUAGE langname [, ...]\n"
+"    FROM { username | GROUP groupname | PUBLIC } [, ...]\n"
+"    [ CASCADE | RESTRICT ]\n"
+"\n"
+"REVOKE [ GRANT OPTION FOR ]\n"
+"    { { CREATE | USAGE } [,...] | ALL [ PRIVILEGES ] }\n"
+"    ON SCHEMA schemaname [, ...]\n"
+"    FROM { username | GROUP groupname | PUBLIC } [, ...]\n"
+"    [ CASCADE | RESTRICT ]"
+msgstr ""
+"REVOKE [ GRANT OPTION FOR ]\n"
+"    { { SELECT | INSERT | UPDATE | DELETE | RULE | REFERENCES | TRIGGER }\n"
+"    [,...] | ALL [ PRIVILEGES ] }\n"
+"    ON [ TABLE ] 表名称 [, ...]\n"
+"    FROM { 用户名 | GROUP 组名 | PUBLIC } [, ...]\n"
+"    [ CASCADE | RESTRICT ]\n"
+"\n"
+"REVOKE [ GRANT OPTION FOR ]\n"
+"    { { CREATE | TEMPORARY | TEMP } [,...] | ALL [ PRIVILEGES ] }\n"
+"    ON DATABASE 数据库名称 [, ...]\n"
+"    FROM { 用户名 | GROUP 组名 | PUBLIC } [, ...]\n"
+"    [ CASCADE | RESTRICT ]\n"
+"\n"
+"REVOKE [ GRANT OPTION FOR ]\n"
+"    { CREATE | ALL [ PRIVILEGES ] }\n"
+"    ON TABLESPACE 表空间名称 [, ...]\n"
+"    FROM { 用户名 | GROUP 组名 | PUBLIC } [, ...]\n"
+"    [ CASCADE | RESTRICT ]\n"
+"\n"
+"REVOKE [ GRANT OPTION FOR ]\n"
+"    { EXECUTE | ALL [ PRIVILEGES ] }\n"
+"    ON FUNCTION 函数名称 ([类型, ...]) [, ...]\n"
+"    FROM { 用户名 | GROUP 组名 | PUBLIC } [, ...]\n"
+"    [ CASCADE | RESTRICT ]\n"
+"\n"
+"REVOKE [ GRANT OPTION FOR ]\n"
+"    { USAGE | ALL [ PRIVILEGES ] }\n"
+"    ON LANGUAGE 语言名称 [, ...]\n"
+"    FROM { 用户名 | GROUP 组名 | PUBLIC } [, ...]\n"
+"    [ CASCADE | RESTRICT ]\n"
+"\n"
+"REVOKE [ GRANT OPTION FOR ]\n"
+"    { { CREATE | USAGE } [,...] | ALL [ PRIVILEGES ] }\n"
+"    ON SCHEMA 模式名称 [, ...]\n"
+"    FROM { 用户名 | GROUP 组名 | PUBLIC } [, ...]\n"
+"    [ CASCADE | RESTRICT ]"
+
+#: sql_help.h:370
+msgid "ROLLBACK [ WORK | TRANSACTION ]"
+msgstr "ROLLBACK [ WORK | TRANSACTION ]"
+
+#: sql_help.h:373
+msgid "roll back to a savepoint"
+msgstr "回滚到一个 savepoint"
+
+#: sql_help.h:374
+msgid "ROLLBACK TO savepoint_name"
+msgstr "ROLLBACK TO savepoint_name"
+
+#: sql_help.h:377
+msgid "define a new savepoint within the current transaction"
+msgstr "在当前事物中定义一个新的 savepoint"
+
+#: sql_help.h:378
+msgid "SAVEPOINT savepoint_name"
+msgstr "SAVEPOINT savepoint_name"
+
+#: sql_help.h:381
+msgid "retrieve rows from a table or view"
+msgstr "恢复一个表或视图的行"
+
+#: sql_help.h:382
+msgid ""
+"SELECT [ ALL | DISTINCT [ ON ( expression [, ...] ) ] ]\n"
+"    * | expression [ AS output_name ] [, ...]\n"
+"    [ FROM from_item [, ...] ]\n"
+"    [ WHERE condition ]\n"
+"    [ GROUP BY expression [, ...] ]\n"
+"    [ HAVING condition [, ...] ]\n"
+"    [ { UNION | INTERSECT | EXCEPT } [ ALL ] select ]\n"
+"    [ ORDER BY expression [ ASC | DESC | USING operator ] [, ...] ]\n"
+"    [ LIMIT { count | ALL } ]\n"
+"    [ OFFSET start ]\n"
+"    [ FOR UPDATE [ OF table_name [, ...] ] ]\n"
+"\n"
+"where from_item can be one of:\n"
+"\n"
+"    [ ONLY ] table_name [ * ] [ [ AS ] alias [ ( column_alias [, ...] ) ] ]\n"
+"    ( select ) [ AS ] alias [ ( column_alias [, ...] ) ]\n"
+"    function_name ( [ argument [, ...] ] ) [ AS ] alias [ ( column_alias "
+"[, ...] | column_definition [, ...] ) ]\n"
+"    function_name ( [ argument [, ...] ] ) AS ( column_definition [, ...] )\n"
+"    from_item [ NATURAL ] join_type from_item [ ON join_condition | USING "
+"( join_column [, ...] ) ]"
+msgstr ""
+"SELECT [ ALL | DISTINCT [ ON ( 表达式 [, ...] ) ] ]\n"
+"    * | 表达式 [ AS output_name ] [, ...]\n"
+"    [ FROM from_item [, ...] ]\n"
+"    [ WHERE 条件 ]\n"
+"    [ GROUP BY 表达式 [, ...] ]\n"
+"    [ HAVING 条件 [, ...] ]\n"
+"    [ { UNION | INTERSECT | EXCEPT } [ ALL ] select ]\n"
+"    [ ORDER BY expression [ ASC | DESC | USING operator ] [, ...] ]\n"
+"    [ LIMIT { count | ALL } ]\n"
+"    [ OFFSET start ]\n"
+"    [ FOR UPDATE [ OF 表名 [, ...] ] ]\n"
+"\n"
+"from_item 可以是下面的一种:\n"
+"\n"
+"    [ ONLY ] table_name [ * ] [ [ AS ] alias [ ( column_alias [, ...] ) ] ]\n"
+"    ( select ) [ AS ] alias [ ( column_alias [, ...] ) ]\n"
+"    function_name ( [ argument [, ...] ] ) [ AS ] alias [ ( column_alias "
+"[, ...] | column_definition [, ...] ) ]\n"
+"    function_name ( [ argument [, ...] ] ) AS ( column_definition [, ...] )\n"
+"    from_item [ NATURAL ] join_type from_item [ ON join_condition | USING "
+"( join_column [, ...] ) ]"
+
+#: sql_help.h:386
+msgid ""
+"SELECT [ ALL | DISTINCT [ ON ( expression [, ...] ) ] ]\n"
+"    * | expression [ AS output_name ] [, ...]\n"
+"    INTO [ TEMPORARY | TEMP ] [ TABLE ] new_table\n"
+"    [ FROM from_item [, ...] ]\n"
+"    [ WHERE condition ]\n"
+"    [ GROUP BY expression [, ...] ]\n"
+"    [ HAVING condition [, ...] ]\n"
+"    [ { UNION | INTERSECT | EXCEPT } [ ALL ] select ]\n"
+"    [ ORDER BY expression [ ASC | DESC | USING operator ] [, ...] ]\n"
+"    [ LIMIT { count | ALL } ]\n"
+"    [ OFFSET start ]\n"
+"    [ FOR UPDATE [ OF tablename [, ...] ] ]"
+msgstr ""
+"SELECT [ ALL | DISTINCT [ ON ( expression [, ...] ) ] ]\n"
+"    * | expression [ AS output_name ] [, ...]\n"
+"    INTO [ TEMPORARY | TEMP ] [ TABLE ] new_table\n"
+"    [ FROM from_item [, ...] ]\n"
+"    [ WHERE condition ]\n"
+"    [ GROUP BY expression [, ...] ]\n"
+"    [ HAVING condition [, ...] ]\n"
+"    [ { UNION | INTERSECT | EXCEPT } [ ALL ] select ]\n"
+"    [ ORDER BY expression [ ASC | DESC | USING operator ] [, ...] ]\n"
+"    [ LIMIT { count | ALL } ]\n"
+"    [ OFFSET start ]\n"
+"    [ FOR UPDATE [ OF tablename [, ...] ] ]"
+
+#: sql_help.h:389
+msgid "change a run-time parameter"
+msgstr "改变一个运行时参数"
+
+#: sql_help.h:390
+msgid ""
+"SET [ SESSION | LOCAL ] name { TO | = } { value | 'value' | DEFAULT }\n"
+"SET [ SESSION | LOCAL ] TIME ZONE { timezone | LOCAL | DEFAULT }"
+msgstr ""
+"SET [ SESSION | LOCAL ] 名字 { TO | = } { 值 | '值' | DEFAULT }\n"
+"SET [ SESSION | LOCAL ] TIME ZONE { timezone | LOCAL | DEFAULT }"
+
+#: sql_help.h:393
+msgid "set the constraint mode of the current transaction"
+msgstr "设置当前交易的约束模式"
+
+#: sql_help.h:394
+msgid "SET CONSTRAINTS { ALL | name [, ...] } { DEFERRED | IMMEDIATE }"
+msgstr "SET CONSTRAINTS { ALL | 名字 [, ...] } { DEFERRED | IMMEDIATE }"
+
+#: sql_help.h:397
+msgid ""
+"set the session user identifier and the current user identifier of the "
+"current session"
+msgstr "设置当前会话的会话用户确认和当前用户确认"
+
+#: sql_help.h:398
+msgid ""
+"SET [ SESSION | LOCAL ] SESSION AUTHORIZATION username\n"
+"SET [ SESSION | LOCAL ] SESSION AUTHORIZATION DEFAULT\n"
+"RESET SESSION AUTHORIZATION"
+msgstr ""
+"SET [ SESSION | LOCAL ] SESSION AUTHORIZATION 用户名\n"
+"SET [ SESSION | LOCAL ] SESSION AUTHORIZATION DEFAULT\n"
+"RESET SESSION AUTHORIZATION"
+
+#: sql_help.h:401
+msgid "set the characteristics of the current transaction"
+msgstr "设置当前交易的属性"
+
+#: sql_help.h:402
+msgid ""
+"SET TRANSACTION\n"
+"    [ ISOLATION LEVEL { READ UNCOMMITTED | READ COMMITTED | REPEATABLE READ "
+"| SERIALIZABLE } ]\n"
+"    [ READ WRITE | READ ONLY ]\n"
+"\n"
+"SET SESSION CHARACTERISTICS AS TRANSACTION\n"
+"    [ ISOLATION LEVEL { READ UNCOMMITTED | READ COMMITTED | REPEATABLE READ "
+"| SERIALIZABLE } ]\n"
+"    [ READ WRITE | READ ONLY ]"
+msgstr ""
+"SET TRANSACTION\n"
+"    [ ISOLATION LEVEL { READ UNCOMMITTED | READ COMMITTED | REPEATABLE READ "
+"| SERIALIZABLE } ]\n"
+"    [ READ WRITE | READ ONLY ]\n"
+"\n"
+"SET SESSION CHARACTERISTICS AS TRANSACTION\n"
+"    [ ISOLATION LEVEL { READ UNCOMMITTED | READ COMMITTED | REPEATABLE READ "
+"| SERIALIZABLE } ]\n"
+"    [ READ WRITE | READ ONLY ]"
+
+#: sql_help.h:405
+msgid "show the value of a run-time parameter"
+msgstr "显示运行时参数值"
+
+#: sql_help.h:406
+msgid ""
+"SHOW name\n"
+"SHOW ALL"
+msgstr ""
+"SHOW 名字\n"
+"SHOW ALL"
+
+#: sql_help.h:410
+msgid ""
+"START TRANSACTION\n"
+"    [ ISOLATION LEVEL { READ UNCOMMITTED | READ COMMITTED | REPEATABLE READ "
+"| SERIALIZABLE } ]\n"
+"    [ READ WRITE | READ ONLY ]"
+msgstr ""
+"START TRANSACTION\n"
+"    [ ISOLATION LEVEL { READ UNCOMMITTED | READ COMMITTED | REPEATABLE READ "
+"| SERIALIZABLE } ]\n"
+"    [ READ WRITE | READ ONLY ]"
+
+#: sql_help.h:413
+msgid "empty a table"
+msgstr "清空一个表"
+
+#: sql_help.h:414
+msgid "TRUNCATE [ TABLE ] name"
+msgstr "TRUNCATE [ TABLE ] 名字"
+
+#: sql_help.h:417
+msgid "stop listening for a notification"
+msgstr "停止监听通知"
+
+#: sql_help.h:418
+msgid "UNLISTEN { name | * }"
+msgstr "UNLISTEN { 名字 | * }"
+
+#: sql_help.h:421
+msgid "update rows of a table"
+msgstr "更新一个表的记录"
+
+#: sql_help.h:422
+msgid ""
+"UPDATE [ ONLY ] table SET column = { expression | DEFAULT } [, ...]\n"
+"    [ FROM fromlist ]\n"
+"    [ WHERE condition ]"
+msgstr ""
+"UPDATE [ ONLY ] 表名 SET 字段 = { 表达式 | DEFAULT } [, ...]\n"
+"    [ FROM fromlist ]\n"
+"    [ WHERE 条件 ]"
+
+#: sql_help.h:425
+msgid "garbage-collect and optionally analyze a database"
+msgstr "垃圾回收和可选择分析一个数据库"
+
+#: sql_help.h:426
+msgid ""
+"VACUUM [ FULL ] [ FREEZE ] [ VERBOSE ] [ table ]\n"
+"VACUUM [ FULL ] [ FREEZE ] [ VERBOSE ] ANALYZE [ table [ (column "
+"[, ...] ) ] ]"
+msgstr ""
+"VACUUM [ FULL ] [ FREEZE ] [ VERBOSE ] [ 表 ]\n"
+"VACUUM [ FULL ] [ FREEZE ] [ VERBOSE ] ANALYZE [ 表 [ (列 [, ...] ) ] ]"
+
+#~ msgid "  \\db [PATTERN]  list tablespaces\n"
+#~ msgstr "  \\db [模式]       列出表空间\n"
+
+#~ msgid "  \\dn [PATTERN]  list schemas\n"
+#~ msgstr "  \\dn [模式]       列出模式\n"
+
+#~ msgid ""
+#~ "CREATE [ TEMPORARY | TEMP ] SEQUENCE name [ INCREMENT [ BY ] increment ]\n"
+#~ "    [ MINVALUE minvalue | NO MINVALUE ] [ MAXVALUE maxvalue | NO "
+#~ "MAXVALUE ]\n"
+#~ "    [ START [ WITH ] start ] [ CACHE cache ] [ [ NO ] CYCLE ]\n"
+#~ "    [ TABLESPACE tablespace ]"
+#~ msgstr ""
+#~ "CREATE [ TEMPORARY | TEMP ] SEQUENCE name [ INCREMENT [ BY ] increment ]\n"
+#~ "    [ MINVALUE minvalue | NO MINVALUE ] [ MAXVALUE maxvalue | NO "
+#~ "MAXVALUE ]\n"
+#~ "    [ START [ WITH ] start ] [ CACHE cache ] [ [ NO ] CYCLE ]\n"
+#~ "    [ TABLESPACE tablespace ]"
+
+#~ msgid "parse error at the end of line\n"
+#~ msgstr "在行尾发生分析错\n"
diff --git a/src/bin/scripts/po/zh_CN.po b/src/bin/scripts/po/zh_CN.po
index 85e69c5e05089e94409cbe036941581553bb6074..1785518173c5203e4ffb23b62828d88d1bbe1efd 100644
--- a/src/bin/scripts/po/zh_CN.po
+++ b/src/bin/scripts/po/zh_CN.po
@@ -6,44 +6,44 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PostgreSQL 7.4\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2003-08-05 22:14+0000\n"
+"POT-Creation-Date: 2004-06-26 10:44+0000\n"
 "PO-Revision-Date: 2003-09-15 21:03+0000\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"
 
-#: createdb.c:101 createdb.c:120 createlang.c:94 createlang.c:115
-#: createlang.c:157 createuser.c:116 createuser.c:131 dropdb.c:83 dropdb.c:92
-#: dropdb.c:100 droplang.c:88 droplang.c:109 droplang.c:151 dropuser.c:83
-#: dropuser.c:98 clusterdb.c:96 clusterdb.c:111 vacuumdb.c:112 vacuumdb.c:127
+#: createdb.c:102 createdb.c:121 createlang.c:97 createlang.c:118
+#: createlang.c:160 createuser.c:117 createuser.c:132 dropdb.c:84 dropdb.c:93
+#: dropdb.c:101 droplang.c:94 droplang.c:115 droplang.c:157 dropuser.c:84
+#: dropuser.c:99 clusterdb.c:97 clusterdb.c:112 vacuumdb.c:114 vacuumdb.c:129
 #, c-format
 msgid "Try \"%s --help\" for more information.\n"
 msgstr "请用 \"%s --help\" 获取更多的信息.\n"
 
-#: createdb.c:118 createlang.c:113 createuser.c:129 dropdb.c:98 droplang.c:107
-#: dropuser.c:96 clusterdb.c:109 vacuumdb.c:125
+#: createdb.c:119 createlang.c:116 createuser.c:130 dropdb.c:99 droplang.c:113
+#: dropuser.c:97 clusterdb.c:110 vacuumdb.c:127
 #, c-format
 msgid "%s: too many command-line arguments (first is \"%s\")\n"
 msgstr "%s: 太多的命令行参数 (第一个是 \"%s\")\n"
 
-#: createdb.c:128
+#: createdb.c:129
 #, c-format
 msgid "%s: \"%s\" is not a valid encoding name\n"
 msgstr "%s: \"%s\" 不是一个有效的编码名称\n"
 
-#: createdb.c:170
+#: createdb.c:168
 #, c-format
 msgid "%s: database creation failed: %s"
 msgstr "%s: 创建数据库失败: %s"
 
-#: createdb.c:195
+#: createdb.c:196
 #, c-format
 msgid "%s: comment creation failed (database was created): %s"
 msgstr "%s: 创建注释失败 (数据库已创建): %s"
 
-#: createdb.c:213
+#: createdb.c:217
 #, c-format
 msgid ""
 "%s creates a PostgreSQL database.\n"
@@ -52,18 +52,20 @@ msgstr ""
 "%s 创建一个 PostgreSQL 数据库.\n"
 "\n"
 
-#: createdb.c:214 createlang.c:272 createuser.c:236 dropdb.c:143
-#: droplang.c:242 dropuser.c:143 clusterdb.c:232 vacuumdb.c:256
+#: createdb.c:218 createlang.c:299 createuser.c:240 dropdb.c:147
+#: droplang.c:280 dropuser.c:147 clusterdb.c:236 vacuumdb.c:262
+#, c-format
 msgid "Usage:\n"
 msgstr "使用方法:\n"
 
-#: createdb.c:215
+#: createdb.c:219
 #, c-format
 msgid "  %s [OPTION]... [DBNAME] [DESCRIPTION]\n"
 msgstr "  %s [选项]... [数据库名称] [描述]\n"
 
-#: createdb.c:216 createlang.c:274 createuser.c:238 dropdb.c:145
-#: droplang.c:244 dropuser.c:145 clusterdb.c:234 vacuumdb.c:258
+#: createdb.c:220 createlang.c:301 createuser.c:242 dropdb.c:149
+#: droplang.c:282 dropuser.c:149 clusterdb.c:238 vacuumdb.c:264
+#, c-format
 msgid ""
 "\n"
 "Options:\n"
@@ -71,44 +73,49 @@ msgstr ""
 "\n"
 "选项:\n"
 
-#: createdb.c:217
-msgid "  -D, --location=PATH       alternative place to store the database\n"
-msgstr "  -D, --location=PATH       选择一个地方存放数据库\n"
+#: createdb.c:221
+#, c-format
+msgid "  -D, --tablespace=TABLESPACE  default tablespace for the database\n"
+msgstr "  -D, --tablespace=TABLESPACE  数据库默认表空间\n"
 
-#: createdb.c:218
-msgid "  -E, --encoding=ENCODING   encoding for the database\n"
-msgstr "  -E, --encoding=ENCODING   数据库编码\n"
+#: createdb.c:222
+#, c-format
+msgid "  -E, --encoding=ENCODING      encoding for the database\n"
+msgstr "  -E, --encoding=ENCODING      数据库编码\n"
 
-#: createdb.c:219
-msgid "  -O, --owner=OWNER         database user to own the new database\n"
-msgstr "  -O, --owner=OWNER         新数据库的所属用户\n"
+#: createdb.c:223
+#, c-format
+msgid "  -O, --owner=OWNER            database user to own the new database\n"
+msgstr "  -O, --owner=OWNER            新数据库的所属用户\n"
 
-#: createdb.c:220
-msgid "  -T, --template=TEMPLATE   template database to copy\n"
-msgstr "  -T, --template=TEMPLATE   要拷贝的数据库模板\n"
+#: createdb.c:224
+#, c-format
+msgid "  -T, --template=TEMPLATE      template database to copy\n"
+msgstr "  -T, --template=TEMPLATE      要拷贝的数据库模板\n"
 
-#: createdb.c:221 createlang.c:276 createuser.c:247 dropdb.c:146
-#: droplang.c:246 dropuser.c:146 clusterdb.c:238
+#: createdb.c:225
+#, c-format
 msgid ""
-"  -e, --echo                show the commands being sent to the server\n"
-msgstr ""
-"  -e, --echo                显示发送到服务端的命令\n"
+"  -e, --echo                   show the commands being sent to the server\n"
+msgstr "  -e, --echo                   显示发送到服务端的命令\n"
 
-#: createdb.c:222 createuser.c:248 dropdb.c:148 dropuser.c:148 clusterdb.c:239
-msgid "  -q, --quiet               don't write any messages\n"
-msgstr "  -q, --quiet               不写任何信息\n"
+#: createdb.c:226
+#, c-format
+msgid "  -q, --quiet                  don't write any messages\n"
+msgstr "  -q, --quiet                  不写任何信息\n"
 
-#: createdb.c:223 createlang.c:283 createuser.c:249 dropdb.c:153
-#: droplang.c:252 dropuser.c:153 clusterdb.c:240
-msgid "  --help                    show this help, then exit\n"
-msgstr "  --help                    显示此帮助信息, 然后退出\n"
+#: createdb.c:227
+#, c-format
+msgid "  --help                       show this help, then exit\n"
+msgstr "  --help                       显示此帮助信息, 然后退出\n"
 
-#: createdb.c:224 createlang.c:284 createuser.c:250 dropdb.c:154
-#: droplang.c:253 dropuser.c:154 clusterdb.c:241
-msgid "  --version                 output version information, then exit\n"
-msgstr "  --version                 输出版本信息, 然后退出\n"
+#: createdb.c:228
+#, c-format
+msgid "  --version                    output version information, then exit\n"
+msgstr "  --versoin                    输出版本信息, 然后退出\n"
 
-#: createdb.c:225 createuser.c:251 clusterdb.c:242 vacuumdb.c:269
+#: createdb.c:229 createuser.c:255 clusterdb.c:246 vacuumdb.c:275
+#, c-format
 msgid ""
 "\n"
 "Connection options:\n"
@@ -116,27 +123,30 @@ msgstr ""
 "\n"
 "联接选项:\n"
 
-#: createdb.c:226 createlang.c:279 createuser.c:252 dropdb.c:149
-#: droplang.c:248 dropuser.c:149 clusterdb.c:243 vacuumdb.c:270
-msgid "  -h, --host=HOSTNAME       database server host or socket directory\n"
-msgstr "  -h, --host=HOSTNAM        数据库服务器所在机器的主机名或套接字目录\n"
+#: createdb.c:230
+#, c-format
+msgid ""
+"  -h, --host=HOSTNAME          database server host or socket directory\n"
+msgstr ""
+"  -h, --host=HOSTNAME          数据库服务器所在机器的主机名或套接字目录\n"
 
-#: createdb.c:227 createlang.c:280 createuser.c:253 dropdb.c:150
-#: droplang.c:249 dropuser.c:150 clusterdb.c:244 vacuumdb.c:271
-msgid "  -p, --port=PORT           database server port\n"
-msgstr "  -p, --port=PORT           数据库服务器端口号\n"
+#: createdb.c:231
+#, c-format
+msgid "  -p, --port=PORT              database server port\n"
+msgstr "  -p, --port=PORT              数据库服务器端口号\n"
 
-#: createdb.c:228 createlang.c:281 dropdb.c:151 droplang.c:250 clusterdb.c:245
-#: vacuumdb.c:272
-msgid "  -U, --username=USERNAME   user name to connect as\n"
-msgstr "  -U, --username=USERNAME   联接的用户名\n"
+#: createdb.c:232
+#, c-format
+msgid "  -U, --username=USERNAME      user name to connect as\n"
+msgstr "  -U, --username=USERNAME      联接的用户名\n"
 
-#: createdb.c:229 createlang.c:282 dropdb.c:152 droplang.c:251 clusterdb.c:246
-#: vacuumdb.c:273
-msgid "  -W, --password            prompt for password\n"
-msgstr "  -W, --password            提示输入口令\n"
+#: createdb.c:233
+#, c-format
+msgid "  -W, --password               prompt for password\n"
+msgstr "  -W, --password               提示输入口令\n"
 
-#: createdb.c:230
+#: createdb.c:234
+#, c-format
 msgid ""
 "\n"
 "By default, a database with the same name as the current user is created.\n"
@@ -144,8 +154,9 @@ msgstr ""
 "\n"
 "默认情况下, 以当前用户的用户名创建数据库.\n"
 
-#: createdb.c:231 createlang.c:285 createuser.c:258 dropdb.c:155
-#: droplang.c:254 dropuser.c:155 clusterdb.c:248 vacuumdb.c:275
+#: createdb.c:235 createlang.c:312 createuser.c:262 dropdb.c:159
+#: droplang.c:292 dropuser.c:159 clusterdb.c:252 vacuumdb.c:281
+#, c-format
 msgid ""
 "\n"
 "Report bugs to <pgsql-bugs@postgresql.org>.\n"
@@ -153,115 +164,162 @@ msgstr ""
 "\n"
 "臭虫报告至 <pgsql-bugs@postgresql.org>.\n"
 
-#: createlang.c:140 droplang.c:134
+#: createlang.c:143 droplang.c:140
 msgid "Name"
 msgstr "名字"
 
-#: createlang.c:140 droplang.c:134
+#: createlang.c:143 droplang.c:140
 msgid "yes"
 msgstr "yes"
 
-#: createlang.c:140 droplang.c:134
+#: createlang.c:143 droplang.c:140
 msgid "no"
 msgstr "no"
 
-#: createlang.c:140 droplang.c:134
+#: createlang.c:143 droplang.c:140
 msgid "Trusted?"
 msgstr "是否信任?"
 
-#: createlang.c:147 droplang.c:141
+#: createlang.c:150 droplang.c:147
 msgid "Procedural Languages"
 msgstr "过程语言"
 
-#: createlang.c:156 droplang.c:150
+#: createlang.c:159 droplang.c:156
 #, c-format
 msgid "%s: missing required argument language name\n"
 msgstr "%s: 缺少要求的语言名称参数\n"
 
-#: createlang.c:206
+#: createlang.c:210
 #, c-format
 msgid "%s: unsupported language \"%s\"\n"
 msgstr "%s: 不支持语言 \"%s\"\n"
 
-#: createlang.c:207
+#: createlang.c:211
+#, c-format
 msgid ""
 "Supported languages are plpgsql, pltcl, pltclu, plperl, plperlu, and "
 "plpythonu.\n"
-msgstr "已支持的语言有 plpgsql, pltcl, pltclu, plperl, plperlu, 和 plpythonu.\n"
+msgstr ""
+"已支持的语言有 plpgsql, pltcl, pltclu, plperl, plperlu, 和 plpythonu.\n"
 
-#: createlang.c:222
+#: createlang.c:226
 #, c-format
 msgid "%s: language \"%s\" is already installed in database \"%s\"\n"
 msgstr "%1$s: 数据库 \"%3$s\" 中已经安装了语言 \"%2$s\"\n"
 
-#: createlang.c:256
+#: createlang.c:283
 #, c-format
 msgid "%s: language installation failed: %s"
 msgstr "%s: 语言安装失败: %s"
 
-#: createlang.c:271
+#: createlang.c:298
 #, c-format
 msgid ""
 "%s installs a procedural language into a PostgreSQL database.\n"
 "\n"
-msgstr "%s 安装一个过程语言进 PostgreSQL 数据库.\n\n"
+msgstr ""
+"%s 安装一个过程语言进 PostgreSQL 数据库.\n"
+"\n"
 
-#: createlang.c:273 droplang.c:243
+#: createlang.c:300 droplang.c:281
 #, c-format
 msgid "  %s [OPTION]... LANGNAME [DBNAME]\n"
 msgstr "  %s [选项]... 语言名称 [数据库名]\n"
 
-#: createlang.c:275
+#: createlang.c:302
+#, c-format
 msgid "  -d, --dbname=DBNAME       database to install language in\n"
 msgstr "  -d, --dbname=DBNAME       要安装语言的数据库\n"
 
-#: createlang.c:277 droplang.c:247
+#: createlang.c:303 createuser.c:251 dropdb.c:150 droplang.c:284
+#: dropuser.c:150 clusterdb.c:242
+#, c-format
+msgid ""
+"  -e, --echo                show the commands being sent to the server\n"
+msgstr "  -e, --echo                显示发送到服务端的命令\n"
+
+#: createlang.c:304 droplang.c:285
+#, c-format
 msgid ""
 "  -l, --list                show a list of currently installed languages\n"
-msgstr ""
-"  -l, --list                显示当前已经安装了的语言列表\n"
+msgstr "  -l, --list                显示当前已经安装了的语言列表\n"
 
-#: createlang.c:278
+#: createlang.c:305
+#, c-format
 msgid ""
 "  -L, --pglib=DIRECTORY     find language interpreter file in DIRECTORY\n"
-msgstr ""
-"  -L, --pglib=DIRECTORY     在 DIRECTORY 目录中查找语言翻译文件\n"
+msgstr "  -L, --pglib=DIRECTORY     在 DIRECTORY 目录中查找语言翻译文件\n"
+
+#: createlang.c:306 createuser.c:256 dropdb.c:153 droplang.c:286
+#: dropuser.c:153 clusterdb.c:247 vacuumdb.c:276
+#, c-format
+msgid "  -h, --host=HOSTNAME       database server host or socket directory\n"
+msgstr "  -h, --host=HOSTNAM        数据库服务器所在机器的主机名或套接字目录\n"
+
+#: createlang.c:307 createuser.c:257 dropdb.c:154 droplang.c:287
+#: dropuser.c:154 clusterdb.c:248 vacuumdb.c:277
+#, c-format
+msgid "  -p, --port=PORT           database server port\n"
+msgstr "  -p, --port=PORT           数据库服务器端口号\n"
+
+#: createlang.c:308 dropdb.c:155 droplang.c:288 clusterdb.c:249 vacuumdb.c:278
+#, c-format
+msgid "  -U, --username=USERNAME   user name to connect as\n"
+msgstr "  -U, --username=USERNAME   联接的用户名\n"
+
+#: createlang.c:309 dropdb.c:156 droplang.c:289 clusterdb.c:250 vacuumdb.c:279
+#, c-format
+msgid "  -W, --password            prompt for password\n"
+msgstr "  -W, --password            提示输入口令\n"
+
+#: createlang.c:310 createuser.c:253 dropdb.c:157 droplang.c:290
+#: dropuser.c:157 clusterdb.c:244
+#, c-format
+msgid "  --help                    show this help, then exit\n"
+msgstr "  --help                    显示此帮助信息, 然后退出\n"
 
-#: createuser.c:141
+#: createlang.c:311 createuser.c:254 dropdb.c:158 droplang.c:291
+#: dropuser.c:158 clusterdb.c:245
+#, c-format
+msgid "  --version                 output version information, then exit\n"
+msgstr "  --version                 输出版本信息, 然后退出\n"
+
+#: createuser.c:142
 #, c-format
 msgid "%s: user ID must be a positive number\n"
 msgstr "%s: 用户 ID 必需为一个正数\n"
 
-#: createuser.c:147
+#: createuser.c:148
 msgid "Enter name of user to add: "
 msgstr "输入要增加的用户名: "
 
-#: createuser.c:154
+#: createuser.c:155
 msgid "Enter password for new user: "
 msgstr "输入新用户的口令: "
 
-#: createuser.c:155
+#: createuser.c:156
 msgid "Enter it again: "
 msgstr "再输入一遍: "
 
-#: createuser.c:158
+#: createuser.c:159
+#, c-format
 msgid "Passwords didn't match.\n"
 msgstr "口令不匹配.\n"
 
-#: createuser.c:169
+#: createuser.c:170
 msgid "Shall the new user be allowed to create databases? (y/n) "
 msgstr "新用户允许创建数据库吗? (y/n) "
 
-#: createuser.c:180
+#: createuser.c:181
 msgid "Shall the new user be allowed to create more new users? (y/n) "
 msgstr "新用户允许创建用户吗? (y/n) "
 
-#: createuser.c:219
+#: createuser.c:220
 #, c-format
 msgid "%s: creation of new user failed: %s"
 msgstr "%s: 创建新用户失败: %s"
 
-#: createuser.c:235
+#: createuser.c:239
 #, c-format
 msgid ""
 "%s creates a new PostgreSQL user.\n"
@@ -270,54 +328,69 @@ msgstr ""
 "%s 创建一个新的 PostgreSQL 用户.\n"
 "\n"
 
-#: createuser.c:237 dropuser.c:144
+#: createuser.c:241 dropuser.c:148
 #, c-format
 msgid "  %s [OPTION]... [USERNAME]\n"
 msgstr "  %s [选项]... [用户名]\n"
 
-#: createuser.c:239
+#: createuser.c:243
+#, c-format
 msgid "  -a, --adduser             user can add new users\n"
 msgstr "  -a, --adduser             此用户可以创建其他新用户\n"
 
-#: createuser.c:240
+#: createuser.c:244
+#, c-format
 msgid "  -A, --no-adduser          user cannot add new users\n"
 msgstr "  -A, --no-adduser          此用户不可以创建其他新用户\n"
 
-#: createuser.c:241
+#: createuser.c:245
+#, c-format
 msgid "  -d, --createdb            user can create new databases\n"
 msgstr "  -d, --createdb            此用户可以创建新数据库\n"
 
-#: createuser.c:242
+#: createuser.c:246
+#, c-format
 msgid "  -D, --no-createdb         user cannot create databases\n"
 msgstr "  -D, --no-createdb         此用户不可以创建新数据库\n"
 
-#: createuser.c:243
+#: createuser.c:247
+#, c-format
 msgid "  -P, --pwprompt            assign a password to new user\n"
 msgstr "  -P, --pwprompt            给新用户指定口令\n"
 
-#: createuser.c:244
+#: createuser.c:248
+#, c-format
 msgid "  -E, --encrypted           encrypt stored password\n"
 msgstr "  -E, --encrypted           口令加密存储\n"
 
-#: createuser.c:245
+#: createuser.c:249
+#, c-format
 msgid "  -N, --unencrypted         do no encrypt stored password\n"
 msgstr "  -N, --unencrypted         口令不加密存储\n"
 
-#: createuser.c:246
+#: createuser.c:250
+#, c-format
 msgid "  -i, --sysid=SYSID         select sysid for new user\n"
 msgstr "  -i, --sysid=SYSID         选择一个 sysid 给新用户\n"
 
-#: createuser.c:254
+#: createuser.c:252 dropdb.c:152 dropuser.c:152 clusterdb.c:243
+#, c-format
+msgid "  -q, --quiet               don't write any messages\n"
+msgstr "  -q, --quiet               不写任何信息\n"
+
+#: createuser.c:258
+#, c-format
 msgid ""
 "  -U, --username=USERNAME   user name to connect as (not the one to create)\n"
-msgstr ""
-"  -U, --username=USERNAME   联接用户 (不是要创建的用户名)\n"
+msgstr "  -U, --username=USERNAME   联接用户 (不是要创建的用户名)\n"
 
-#: createuser.c:255 dropuser.c:152
+#: createuser.c:259 dropuser.c:156
+#, c-format
 msgid "  -W, --password            prompt for password to connect\n"
 msgstr "  -W, --password            联接提示口令输入\n"
 
-#: createuser.c:256
+#: createuser.c:260
+#, c-format
 msgid ""
 "\n"
 "If one of -a, -A, -d, -D, and USERNAME is not specified, you will\n"
@@ -327,26 +400,26 @@ msgstr ""
 "如果 -a, -A, -d, -D, 和 USERNAME 一个都没有指定,将使用交互式提示\n"
 "你.\n"
 
-#: dropdb.c:91
+#: dropdb.c:92
 #, c-format
 msgid "%s: missing required argument database name\n"
 msgstr "%s: 缺少需要的数据库名参数\n"
 
-#: dropdb.c:108
+#: dropdb.c:109
 #, c-format
 msgid "Database \"%s\" will be permanently removed.\n"
 msgstr "数据库 \"%s\" 将被永久的删除.\n"
 
-#: dropdb.c:109 dropuser.c:110
+#: dropdb.c:110 dropuser.c:111
 msgid "Are you sure? (y/n) "
 msgstr "你确定吗? (y/n) "
 
-#: dropdb.c:126
+#: dropdb.c:127
 #, c-format
 msgid "%s: database removal failed: %s"
 msgstr "%s: 数据库删除失败: %s"
 
-#: dropdb.c:142
+#: dropdb.c:146
 #, c-format
 msgid ""
 "%s removes a PostgreSQL database.\n"
@@ -355,32 +428,33 @@ msgstr ""
 "%s 删除一个 PostgreSQL 数据库.\n"
 "\n"
 
-#: dropdb.c:144
+#: dropdb.c:148
 #, c-format
 msgid "  %s [OPTION]... DBNAME\n"
 msgstr "  %s [选项]... 数据库名\n"
 
-#: dropdb.c:147 dropuser.c:147
+#: dropdb.c:151 dropuser.c:151
+#, c-format
 msgid "  -i, --interactive         prompt before deleting anything\n"
 msgstr "  -i, --interactive         删除任何东西之前给予提示\n"
 
-#: droplang.c:170
+#: droplang.c:176
 #, c-format
 msgid "%s: language \"%s\" is not installed in database \"%s\"\n"
 msgstr "%1$s: 数据库 \"%3$s\" 中, 没有安装语言 \"%2$s\"\n"
 
-#: droplang.c:186
+#: droplang.c:193
 #, c-format
 msgid ""
 "%s: still %s functions declared in language \"%s\"; language not removed\n"
 msgstr "%s: 函数 %s 是用语言 \"%s\" 声明的; 语言未被删除\n"
 
-#: droplang.c:227
+#: droplang.c:265
 #, c-format
 msgid "%s: language removal failed: %s"
 msgstr "%s: 语言删除失败: %s"
 
-#: droplang.c:241
+#: droplang.c:279
 #, c-format
 msgid ""
 "%s removes a procedural language from a database.\n"
@@ -389,27 +463,27 @@ msgstr ""
 "%s 从数据库中删除一个过程语言.\n"
 "\n"
 
-#: droplang.c:245
+#: droplang.c:283
+#, c-format
 msgid ""
 "  -d, --dbname=DBNAME       database from which to remove the language\n"
-msgstr ""
-"  -d, --dbname=DBNAME       要删除语言的数据库\n"
+msgstr "  -d, --dbname=DBNAME       要删除语言的数据库\n"
 
-#: dropuser.c:103
+#: dropuser.c:104
 msgid "Enter name of user to drop: "
 msgstr "输入要删除的用户名: "
 
-#: dropuser.c:109
+#: dropuser.c:110
 #, c-format
 msgid "User \"%s\" will be permanently removed.\n"
 msgstr "用户 \"%s\" 将被永久删除.\n"
 
-#: dropuser.c:126
+#: dropuser.c:127
 #, c-format
 msgid "%s: removal of user \"%s\" failed: %s"
 msgstr "%s: 删除用户 \"%s\" 失败: %s"
 
-#: dropuser.c:142
+#: dropuser.c:146
 #, c-format
 msgid ""
 "%s removes a PostgreSQL user.\n"
@@ -418,38 +492,38 @@ msgstr ""
 "%s 删除一个 PostgreSQL 用户.\n"
 "\n"
 
-#: dropuser.c:151
+#: dropuser.c:155
+#, c-format
 msgid ""
 "  -U, --username=USERNAME   user name to connect as (not the one to drop)\n"
-msgstr ""
-"  -U, --username=USERNAME   联接用户 (不是要删除的用户名)\n"
+msgstr "  -U, --username=USERNAME   联接用户 (不是要删除的用户名)\n"
 
-#: clusterdb.c:119
+#: clusterdb.c:120
 #, c-format
 msgid "%s: cannot cluster all databases and a specific one at the same time\n"
 msgstr "%s: 无法对所有数据库和一个指定的数据库同时建簇\n"
 
-#: clusterdb.c:125
+#: clusterdb.c:126
 #, c-format
 msgid "%s: cannot cluster a specific table in all databases\n"
 msgstr "%s: 无法在所有数据库中对一个指定的表进行建簇\n"
 
-#: clusterdb.c:181
+#: clusterdb.c:182
 #, c-format
 msgid "%s: clustering of table \"%s\" in database \"%s\" failed: %s"
 msgstr "%1$s: 在数据库 \"%3$s\" 中的表 \"%2$s\" 建簇失败: %4$s"
 
-#: clusterdb.c:184
+#: clusterdb.c:185
 #, c-format
 msgid "%s: clustering of database \"%s\" failed: %s"
 msgstr "%s: 数据库 \"%s\" 建簇失败: %s"
 
-#: clusterdb.c:217
+#: clusterdb.c:221
 #, c-format
 msgid "%s: clustering database \"%s\"\n"
 msgstr "%s: 对数据库 \"%s\" 进行建簇\n"
 
-#: clusterdb.c:231
+#: clusterdb.c:235
 #, c-format
 msgid ""
 "%s clusters all previously clustered tables in a database.\n"
@@ -458,24 +532,28 @@ msgstr ""
 "%s 对一个数据库中先前已经建过簇的表进行建簇.\n"
 "\n"
 
-#: clusterdb.c:233 vacuumdb.c:257
+#: clusterdb.c:237 vacuumdb.c:263
 #, c-format
 msgid "  %s [OPTION]... [DBNAME]\n"
 msgstr "  %s [选项]... [数据库名]\n"
 
-#: clusterdb.c:235
+#: clusterdb.c:239
+#, c-format
 msgid "  -a, --all                 cluster all databases\n"
 msgstr "  -a, --all                 对所有数据库建簇\n"
 
-#: clusterdb.c:236
+#: clusterdb.c:240
+#, c-format
 msgid "  -d, --dbname=DBNAME       database to cluster\n"
 msgstr "  -d, --dbname=DBNAME       对数据库 DBNAME 建簇\n"
 
-#: clusterdb.c:237
+#: clusterdb.c:241
+#, c-format
 msgid "  -t, --table=TABLE         cluster specific table only\n"
 msgstr "  -t, --table=TABLE         只对指定的表 TABLE 建簇\n"
 
-#: clusterdb.c:247
+#: clusterdb.c:251
+#, c-format
 msgid ""
 "\n"
 "Read the description of the SQL command CLUSTER for details.\n"
@@ -483,32 +561,32 @@ msgstr ""
 "\n"
 "阅读 SQL 命令 CLUSTER 的描述信息, 以便获得更详细的信息.\n"
 
-#: vacuumdb.c:135
+#: vacuumdb.c:137
 #, c-format
 msgid "%s: cannot vacuum all databases and a specific one at the same time\n"
 msgstr "%s: 无法对所有数据库和一个指定的数据库同时清理\n"
 
-#: vacuumdb.c:141
+#: vacuumdb.c:143
 #, c-format
 msgid "%s: cannot vacuum a specific table in all databases\n"
 msgstr "%s: 无法在所有数据库中对一个指定的表进行清理\n"
 
-#: vacuumdb.c:204
+#: vacuumdb.c:207
 #, c-format
 msgid "%s: vacuuming of table \"%s\" in database \"%s\" failed: %s"
 msgstr "%1$s: 在数据库 \"%3$s\" 中的表 \"%2$s\" 清理失败: %4$s"
 
-#: vacuumdb.c:207
+#: vacuumdb.c:210
 #, c-format
 msgid "%s: vacuuming of database \"%s\" failed: %s"
 msgstr "%s: 数据库 \"%s\" 清理失败: %s"
 
-#: vacuumdb.c:241
+#: vacuumdb.c:247
 #, c-format
 msgid "%s: vacuuming database \"%s\"\n"
 msgstr "%s: 清理数据库 \"%s\"\n"
 
-#: vacuumdb.c:255
+#: vacuumdb.c:261
 #, c-format
 msgid ""
 "%s cleans and analyzes a PostgreSQL database.\n"
@@ -517,52 +595,61 @@ msgstr ""
 "%s 清理并且优化一个 PostgreSQL 数据库.\n"
 "\n"
 
-#: vacuumdb.c:259
+#: vacuumdb.c:265
+#, c-format
 msgid "  -a, --all                       vacuum all databases\n"
 msgstr "  -a, --all                       清理所有的数据库\n"
 
-#: vacuumdb.c:260
+#: vacuumdb.c:266
+#, c-format
 msgid "  -d, --dbname=DBNAME             database to vacuum\n"
 msgstr "  -d, --dbname=DBNAME             清理数据库 DBNAME\n"
 
-#: vacuumdb.c:261
+#: vacuumdb.c:267
+#, c-format
 msgid "  -t, --table='TABLE[(COLUMNS)]'  vacuum specific table only\n"
 msgstr "  -t, --table='TABLE[(COLUMNS)]'  只清理指定的表 TABLE\n"
 
-#: vacuumdb.c:262
+#: vacuumdb.c:268
+#, c-format
 msgid "  -f, --full                      do full vacuuming\n"
 msgstr "  -f, --full                      完全清理\n"
 
-#: vacuumdb.c:263
+#: vacuumdb.c:269
+#, c-format
 msgid "  -z, --analyze                   update optimizer hints\n"
 msgstr "  -z, --anaylze                   更新优化器信息\n"
 
-#: vacuumdb.c:264
+#: vacuumdb.c:270
+#, c-format
 msgid ""
 "  -e, --echo                      show the commands being sent to the "
 "server\n"
-msgstr ""
-"  -e, --echo                      显示发送到服务端的命令\n"
+msgstr "  -e, --echo                      显示发送到服务端的命令\n"
 
-#: vacuumdb.c:265
+#: vacuumdb.c:271
+#, c-format
 msgid "  -q, --quiet                     don't write any messages\n"
 msgstr "  -q, --quiet                     不写任何信息\n"
 
-#: vacuumdb.c:266
+#: vacuumdb.c:272
+#, c-format
 msgid "  -v, --verbose                   write a lot of output\n"
 msgstr "  -v, --verbose                   写大量的输出\n"
 
-#: vacuumdb.c:267
+#: vacuumdb.c:273
+#, c-format
 msgid "  --help                          show this help, then exit\n"
 msgstr "  --help                          显示此帮助信息, 然后退出\n"
 
-#: vacuumdb.c:268
+#: vacuumdb.c:274
+#, c-format
 msgid ""
 "  --version                       output version information, then exit\n"
-msgstr ""
-"  --versoin                       输出版本信息, 然后退出\n"
+msgstr "  --versoin                       输出版本信息, 然后退出\n"
 
-#: vacuumdb.c:274
+#: vacuumdb.c:280
+#, c-format
 msgid ""
 "\n"
 "Read the description of the SQL command VACUUM for details.\n"
@@ -570,36 +657,40 @@ msgstr ""
 "\n"
 "阅读 SQL 命令 VACUUM 的描述信息, 以便获得更详细的信息.\n"
 
-#: common.c:88 common.c:114
+#: common.c:86 common.c:112
 msgid "Password: "
 msgstr "口令: "
 
-#: common.c:101
+#: common.c:99
 #, c-format
 msgid "%s: could not connect to database %s\n"
 msgstr "%s: 无法联接到数据库 %s\n"
 
-#: common.c:124
+#: common.c:122
 #, c-format
 msgid "%s: could not connect to database %s: %s"
 msgstr "%s: 无法联接到数据库 %s: %s"
 
-#: common.c:148
+#: common.c:146
 #, c-format
 msgid "%s: query failed: %s"
 msgstr "%s: 查询失败: %s"
 
-#: common.c:149
+#: common.c:147
 #, c-format
 msgid "%s: query was: %s\n"
 msgstr "%s: 查询是: %s\n"
 
 #. translator: Make sure the (y/n) prompts match the translation of this.
-#: common.c:163
+#: common.c:161
 msgid "y"
 msgstr "y"
 
 #. translator: Make sure the (y/n) prompts match the translation of this.
-#: common.c:165
+#: common.c:163
 msgid "n"
 msgstr "n"
+
+#~ msgid ""
+#~ "  -D, --location=PATH       alternative place to store the database\n"
+#~ msgstr "  -D, --location=PATH       选择一个地方存放数据库\n"
diff --git a/src/interfaces/libpq/po/zh_CN.po b/src/interfaces/libpq/po/zh_CN.po
index 85312779a9d9f7079cbeeee54ffd471036f92b65..61554aea1e6c35381b3015499e3a4d3ede2e09d0 100644
--- a/src/interfaces/libpq/po/zh_CN.po
+++ b/src/interfaces/libpq/po/zh_CN.po
@@ -1,15 +1,15 @@
 # simplified Chinese translation file for libpq
 # Bao Wei <weibao@forevertek.com>, 2002
 #
-# $PostgreSQL: pgsql/src/interfaces/libpq/po/zh_CN.po,v 1.4 2003/11/29 19:52:12 pgsql Exp $
+# $PostgreSQL: pgsql/src/interfaces/libpq/po/zh_CN.po,v 1.5 2004/08/10 19:02:03 petere Exp $
 #
 msgid ""
 msgstr ""
 "Project-Id-Version: PostgreSQL 7.4\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2003-08-26 10:45+0000\n"
+"POT-Creation-Date: 2004-07-22 09:41+0000\n"
 "PO-Revision-Date: 2003-09-15 13:47:06+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"
@@ -40,7 +40,7 @@ msgid "could not restore non-blocking mode on socket: %s\n"
 msgstr "无法在套接字: %s 上恢复非阻塞模式\n"
 
 # fe-auth.c:503
-#: fe-auth.c:509
+#: fe-auth.c:508
 msgid "SCM_CRED authentication method not supported\n"
 msgstr "不支持 SCM_CRED 认证方式\n"
 
@@ -50,47 +50,47 @@ msgid "Kerberos 4 authentication failed\n"
 msgstr "Kerberos 4 认证失败\n"
 
 # fe-auth.c:595
-#: fe-auth.c:606
+#: fe-auth.c:608
 msgid "Kerberos 4 authentication not supported\n"
 msgstr "不支持 Kerberos 4 认证\n"
 
 # fe-auth.c:606
-#: fe-auth.c:616
+#: fe-auth.c:619
 msgid "Kerberos 5 authentication failed\n"
 msgstr "Kerberos 5 认证失败\n"
 
 # fe-auth.c:612
-#: fe-auth.c:622
+#: fe-auth.c:627
 msgid "Kerberos 5 authentication not supported\n"
 msgstr "不支持 Kerberos 5 认证\n"
 
 # fe-auth.c:640
-#: fe-auth.c:650
+#: fe-auth.c:655
 #, c-format
 msgid "authentication method %u not supported\n"
 msgstr "不支持 %u 认证方式\n"
 
 # fe-auth.c:677
-#: fe-auth.c:687
+#: fe-auth.c:692
 #, c-format
 msgid "invalid authentication service name \"%s\", ignored\n"
 msgstr "忽略非法认证服务名 \"%s\"\n"
 
 # fe-auth.c:734
-#: fe-auth.c:758
+#: fe-auth.c:764
 #, c-format
 msgid "fe_getauthname: invalid authentication system: %d\n"
 msgstr "fe_getauthname: 无效的认证系统: %d\n"
 
 #: fe-connect.c:452
 #, c-format
-msgid "unrecognized sslmode: \"%s\"\n"
-msgstr "不被认可的 sslmode: \"%s\"\n"
+msgid "invalid sslmode value: \"%s\"\n"
+msgstr "无效的 sslmode 值: \"%s\"\n"
 
 #: fe-connect.c:472
 #, c-format
-msgid "sslmode \"%s\" invalid when SSL support is not compiled in\n"
-msgstr "无效的 sslmode \"%s\", 当没有把 SSL 支持编译进来时\n"
+msgid "sslmode value \"%s\" invalid when SSL support is not compiled in\n"
+msgstr "无效的 sslmode 值 \"%s\" 当没有把 SSL 支持编译进来时\n"
 
 # fe-connect.c:708
 #: fe-connect.c:783
@@ -129,117 +129,117 @@ msgstr ""
 "%s 上的 TCP/IP 联接?\n"
 
 # fe-misc.c:702
-#: fe-connect.c:937
+#: fe-connect.c:945
 #, c-format
-msgid "could not translate hostname \"%s\" to address: %s\n"
+msgid "could not translate host name \"%s\" to address: %s\n"
 msgstr "无法解释主机名 \"%s\" 到地址: %s\n"
 
 # fe-misc.c:702
-#: fe-connect.c:941
+#: fe-connect.c:949
 #, c-format
-msgid "could not translate local service to address: %s\n"
-msgstr "无法解释本地服务到地址: %s\n"
+msgid "could not translate Unix-domain socket path \"%s\" to address: %s\n"
+msgstr "无法解释 Unix-domian 套接字路径 \"%s\" 到地址: %s\n"
 
 # fe-connect.c:1232
-#: fe-connect.c:1144
+#: fe-connect.c:1153
 msgid "invalid connection state, probably indicative of memory corruption\n"
 msgstr "无效的联接状态, 可能是存储器数据被破坏的标志\n"
 
 # fe-connect.c:891
-#: fe-connect.c:1187
+#: fe-connect.c:1196
 #, c-format
 msgid "could not create socket: %s\n"
 msgstr "无法创建套接字: %s\n"
 
 # fe-connect.c:1263
-#: fe-connect.c:1298
+#: fe-connect.c:1307
 #, c-format
 msgid "could not get socket error status: %s\n"
 msgstr "无法获取套接字错误状态: %s\n"
 
 # fe-connect.c:1283
-#: fe-connect.c:1337
+#: fe-connect.c:1346
 #, c-format
 msgid "could not get client address from socket: %s\n"
 msgstr "无法从套接字获取客户端地址: %s\n"
 
 # fe-connect.c:959
-#: fe-connect.c:1382
+#: fe-connect.c:1391
 #, c-format
 msgid "could not send SSL negotiation packet: %s\n"
 msgstr "无法发送 SSL 握手包: %s\n"
 
 # fe-connect.c:2427 fe-connect.c:2436 fe-connect.c:2933 fe-exec.c:1284
 # fe-lobj.c:536
-#: fe-connect.c:1404 fe-connect.c:2511 fe-connect.c:2520 fe-connect.c:3087
-#: fe-lobj.c:540
+#: fe-connect.c:1413 fe-connect.c:2536 fe-connect.c:2545 fe-connect.c:3112
+#: fe-lobj.c:548
 msgid "out of memory\n"
 msgstr "内存用尽\n"
 
 # fe-connect.c:1322
-#: fe-connect.c:1417
+#: fe-connect.c:1426
 #, c-format
 msgid "could not send startup packet: %s\n"
 msgstr "无法发送启动包: %s\n"
 
 # fe-connect.c:972
-#: fe-connect.c:1457
+#: fe-connect.c:1466
 #, c-format
 msgid "could not receive server response to SSL negotiation packet: %s\n"
 msgstr "无法收到服务器对 SSL 握手包的响应: %s\n"
 
 # fe-connect.c:1010
-#: fe-connect.c:1476 fe-connect.c:1493
+#: fe-connect.c:1485 fe-connect.c:1502
 msgid "server does not support SSL, but SSL was required\n"
 msgstr "服务器不支持 SSL, 但是要求使用 SSL\n"
 
 # fe-connect.c:1001
-#: fe-connect.c:1509
+#: fe-connect.c:1518
 #, c-format
 msgid "received invalid response to SSL negotiation: %c\n"
 msgstr "收到对 SSL 握手的无效响应: %c\n"
 
 # fe-connect.c:1378
-#: fe-connect.c:1566 fe-connect.c:1598
+#: fe-connect.c:1575 fe-connect.c:1607
 #, c-format
 msgid "expected authentication request from server, but received %c\n"
 msgstr "期待来自服务器的认证请求, 却收到 %c\n"
 
 # fe-connect.c:1490
-#: fe-connect.c:1834
+#: fe-connect.c:1843
 msgid "unexpected message from server during startup\n"
 msgstr "启动过程中收到来自服务器的非预期信息\n"
 
 # fe-connect.c:1549
-#: fe-connect.c:1904
+#: fe-connect.c:1913
 #, c-format
 msgid "invalid connection state %c, probably indicative of memory corruption\n"
 msgstr "无效的联接状态 %c, 可能是存储器数据被破坏的标志\n"
 
 # fe-connect.c:2475
-#: fe-connect.c:2559
+#: fe-connect.c:2584
 #, c-format
 msgid "missing \"=\" after \"%s\" in connection info string\n"
 msgstr "在联接信息字串里的 \"%s\" 后面缺少 \"=\"\n"
 
 # fe-connect.c:2524
-#: fe-connect.c:2608
+#: fe-connect.c:2633
 msgid "unterminated quoted string in connection info string\n"
 msgstr "联接信息字串中未结束的引号字串\n"
 
 # fe-connect.c:2558
-#: fe-connect.c:2642
+#: fe-connect.c:2667
 #, c-format
 msgid "invalid connection option \"%s\"\n"
 msgstr "非法联接选项 \"%s\"\n"
 
 # fe-connect.c:2744
-#: fe-connect.c:2854
+#: fe-connect.c:2879
 msgid "connection pointer is NULL\n"
 msgstr "联接指针是 NULL\n"
 
 # fe-connect.c:2953
-#: fe-connect.c:3105
+#: fe-connect.c:3130
 #, c-format
 msgid ""
 "WARNING: Password file %s has world or group read access; permission should "
@@ -251,78 +251,78 @@ msgid "NOTICE"
 msgstr "注意"
 
 # fe-exec.c:737
-#: fe-exec.c:637 fe-exec.c:689
+#: fe-exec.c:653 fe-exec.c:705
 msgid "command string is a null pointer\n"
 msgstr "命令字串是一个空指针\n"
 
 # fe-exec.c:737
-#: fe-exec.c:724
+#: fe-exec.c:740
 msgid "statement name is a null pointer\n"
 msgstr "声明名字是一个空指针\n"
 
 # fe-exec.c:745
-#: fe-exec.c:755
+#: fe-exec.c:771
 msgid "no connection to the server\n"
 msgstr "没有到服务器的联接\n"
 
 # fe-exec.c:752
-#: fe-exec.c:762
+#: fe-exec.c:778
 msgid "another command is already in progress\n"
 msgstr "已经有另外一条命令在处理\n"
 
-#: fe-exec.c:798 fe-exec.c:1432
-msgid "function requires at least 3.0 protocol\n"
+#: fe-exec.c:814 fe-exec.c:1465
+msgid "function requires at least protocol version 3.0\n"
 msgstr "函数至少需要 3.0 版本的协议\n"
 
 # fe-exec.c:1371
-#: fe-exec.c:1100
+#: fe-exec.c:1116
 #, c-format
 msgid "unexpected asyncStatus: %d\n"
 msgstr "意外的 asyncStatus(异步状态): %d\n"
 
-#: fe-exec.c:1205
+#: fe-exec.c:1221
 msgid "COPY terminated by new PQexec"
 msgstr "COPY 被一个新的 PQexec 终止"
 
 # fe-exec.c:1421
-#: fe-exec.c:1213
+#: fe-exec.c:1229
 msgid "COPY IN state must be terminated first\n"
 msgstr "COPY IN 状态必须先结束\n"
 
 # fe-exec.c:1421
-#: fe-exec.c:1233
+#: fe-exec.c:1249
 msgid "COPY OUT state must be terminated first\n"
 msgstr "COPY OUT 状态必须先结束\n"
 
 # fe-exec.c:1780
-#: fe-exec.c:1336 fe-exec.c:1390 fe-exec.c:1474
+#: fe-exec.c:1358 fe-exec.c:1423 fe-exec.c:1507
 msgid "no COPY in progress\n"
 msgstr "没有正在处理的 COPY\n"
 
 # fe-exec.c:1884
-#: fe-exec.c:1666
+#: fe-exec.c:1699
 msgid "connection in wrong state\n"
 msgstr "联接处于错误状态\n"
 
 # fe-exec.c:2055
-#: fe-exec.c:1697
+#: fe-exec.c:1730
 msgid "invalid ExecStatusType code"
 msgstr "非法 ExecStatusType 代码"
 
 # fe-exec.c:2108 fe-exec.c:2141
-#: fe-exec.c:1761 fe-exec.c:1784
+#: fe-exec.c:1794 fe-exec.c:1817
 #, c-format
 msgid "column number %d is out of range 0..%d"
 msgstr "列号码 %d 超出了范围 0..%d"
 
 # fe-exec.c:2130
-#: fe-exec.c:1777
+#: fe-exec.c:1810
 #, c-format
 msgid "row number %d is out of range 0..%d"
 msgstr "行号码 %d 超出了范围 0..%d"
 
 # fe-exec.c:2325
-#: fe-exec.c:2014
+#: fe-exec.c:2094
 #, c-format
 msgid "could not interpret result from server: %s"
 msgstr "无法解释来自服务器的结果: %s"
@@ -352,53 +352,53 @@ msgid "error while reading file \"%s\"\n"
 msgstr "读取文件 \"%s\" 时出错\n"
 
 # fe-lobj.c:498
-#: fe-lobj.c:502
+#: fe-lobj.c:502 fe-lobj.c:515
 #, c-format
 msgid "error while writing to file \"%s\"\n"
 msgstr "写入文件 \"%s\" 时出错\n"
 
 # fe-lobj.c:564
-#: fe-lobj.c:568
+#: fe-lobj.c:593
 msgid "query to initialize large object functions did not return data\n"
 msgstr "初始化大对象函数的查询没有返回数据\n"
 
 # fe-lobj.c:602
-#: fe-lobj.c:606
+#: fe-lobj.c:631
 msgid "cannot determine OID of function lo_open\n"
 msgstr "无法判断函数 lo_open 的 OID\n"
 
 # fe-lobj.c:609
-#: fe-lobj.c:613
+#: fe-lobj.c:638
 msgid "cannot determine OID of function lo_close\n"
 msgstr "无法判断函数 lo_close 的 OID\n"
 
 # fe-lobj.c:616
-#: fe-lobj.c:620
+#: fe-lobj.c:645
 msgid "cannot determine OID of function lo_creat\n"
 msgstr "无法判断函数 lo_creat 的 OID\n"
 
 # fe-lobj.c:623
-#: fe-lobj.c:627
+#: fe-lobj.c:652
 msgid "cannot determine OID of function lo_unlink\n"
 msgstr "无法判断函数 lo_unlink 的 OID\n"
 
 # fe-lobj.c:630
-#: fe-lobj.c:634
+#: fe-lobj.c:659
 msgid "cannot determine OID of function lo_lseek\n"
 msgstr "无法判断函数 lo_lseek 的 OID\n"
 
 # fe-lobj.c:637
-#: fe-lobj.c:641
+#: fe-lobj.c:666
 msgid "cannot determine OID of function lo_tell\n"
 msgstr "无法判断函数 lo_tell 的 OID\n"
 
 # fe-lobj.c:644
-#: fe-lobj.c:648
+#: fe-lobj.c:673
 msgid "cannot determine OID of function loread\n"
 msgstr "无法判断函数 loread 的 OID\n"
 
 # fe-lobj.c:651
-#: fe-lobj.c:655
+#: fe-lobj.c:680
 msgid "cannot determine OID of function lowrite\n"
 msgstr "无法判断函数 lowrite 的 OID\n"
 
@@ -442,141 +442,145 @@ msgstr ""
 msgid "could not send data to server: %s\n"
 msgstr "无法向服务器发送数据: %s\n"
 
-#: fe-misc.c:905
+#: fe-misc.c:922
 msgid "timeout expired\n"
 msgstr "超时满\n"
 
 # fe-misc.c:450 fe-misc.c:642 fe-misc.c:798
-#: fe-misc.c:950
+#: fe-misc.c:967
 msgid "socket not open\n"
 msgstr "套接字未打开\n"
 
 # fe-misc.c:389 fe-misc.c:423 fe-misc.c:838
-#: fe-misc.c:973
+#: fe-misc.c:990
 #, c-format
 msgid "select() failed: %s\n"
 msgstr "select() 失败: %s\n"
 
-#: fe-secure.c:246
+#: fe-secure.c:260
 #, c-format
 msgid "could not establish SSL connection: %s\n"
 msgstr "无法建立 SSL 联接: %s\n"
 
-#: fe-secure.c:308 fe-secure.c:380 fe-secure.c:894
+#: fe-secure.c:323 fe-secure.c:403 fe-secure.c:1022
 #, c-format
 msgid "SSL SYSCALL error: %s\n"
 msgstr "SSL SYSCALL 错误: %s\n"
 
-#: fe-secure.c:313 fe-secure.c:385 fe-secure.c:898
+#: fe-secure.c:328 fe-secure.c:408 fe-secure.c:1026
 msgid "SSL SYSCALL error: EOF detected\n"
 msgstr "SSL SYSCALL 错误: 发现结束符\n"
 
 # fe-auth.c:232
-#: fe-secure.c:322 fe-secure.c:393 fe-secure.c:904
+#: fe-secure.c:339 fe-secure.c:418 fe-secure.c:1034
 #, c-format
 msgid "SSL error: %s\n"
 msgstr "SSL 错误: %s\n"
 
-#: fe-secure.c:330 fe-secure.c:401 fe-secure.c:910
-msgid "Unknown SSL error code\n"
+#: fe-secure.c:349 fe-secure.c:428 fe-secure.c:1042
+msgid "unrecognized SSL error code\n"
 msgstr "未知的 SSL 错误码\n"
 
 # fe-lobj.c:498
-#: fe-secure.c:459
+#: fe-secure.c:490
 #, c-format
 msgid "error querying socket: %s\n"
 msgstr "查询套接字错误: %s\n"
 
 # fe-connect.c:1263
-#: fe-secure.c:481
+#: fe-secure.c:518
 #, c-format
 msgid "could not get information about host (%s): %s\n"
 msgstr "无法获取关于主机 (%s) 的信息: %s\n"
 
-#: fe-secure.c:500
+#: fe-secure.c:537
 msgid "unsupported protocol\n"
 msgstr "不支持的协议\n"
 
-#: fe-secure.c:522
+#: fe-secure.c:559
 #, c-format
 msgid "server common name \"%s\" does not resolve to %ld.%ld.%ld.%ld\n"
 msgstr "服务器名字 \"%s\" 不能解析到 %ld.%ld.%ld.%ld\n"
 
-#: fe-secure.c:529
+#: fe-secure.c:566
 #, c-format
 msgid "server common name \"%s\" does not resolve to peer address\n"
 msgstr "服务器名字 \"%s\" 不能解析到对端地址\n"
 
 # fe-connect.c:1263
-#: fe-secure.c:704
+#: fe-secure.c:749
 msgid "could not get user information\n"
 msgstr "无法获取用户信息\n"
 
 # fe-lobj.c:400 fe-lobj.c:483
-#: fe-secure.c:716
+#: fe-secure.c:761
 #, c-format
 msgid "could not open certificate (%s): %s\n"
 msgstr "无法打开证书 (%s): %s\n"
 
 # fe-lobj.c:400 fe-lobj.c:483
-#: fe-secure.c:723
+#: fe-secure.c:769
 #, c-format
 msgid "could not read certificate (%s): %s\n"
 msgstr "无法读取证书 (%s): %s\n"
 
-#: fe-secure.c:736
+#: fe-secure.c:783
 #, c-format
 msgid "certificate present, but not private key (%s)\n"
 msgstr "有证书, 但不是私钥 (%s)\n"
 
-#: fe-secure.c:745
+#: fe-secure.c:792
 #, c-format
 msgid "private key (%s) has wrong permissions\n"
 msgstr "私钥 (%s) 有错误的许可\n"
 
 # fe-lobj.c:400 fe-lobj.c:483
-#: fe-secure.c:752
+#: fe-secure.c:799
 #, c-format
 msgid "could not open private key file (%s): %s\n"
 msgstr "无法打开私钥文件 (%s): %s\n"
 
-#: fe-secure.c:761
+#: fe-secure.c:808
 #, c-format
 msgid "private key (%s) changed during execution\n"
 msgstr "在执行过程中私钥 (%s) 改变了\n"
 
 # fe-connect.c:891
-#: fe-secure.c:768
+#: fe-secure.c:816
 #, c-format
 msgid "could not read private key (%s): %s\n"
 msgstr "无法读取私钥 (%s): %s\n"
 
-#: fe-secure.c:780
+#: fe-secure.c:830
 #, c-format
 msgid "certificate/private key mismatch (%s): %s\n"
 msgstr "证书/私钥不匹配 (%s): %s\n"
 
-#: fe-secure.c:810
+#: fe-secure.c:909
 #, c-format
 msgid "could not create SSL context: %s\n"
 msgstr "无法创建 SSL 环境: %s\n"
 
 # fe-connect.c:891
-#: fe-secure.c:828 fe-secure.c:836
+#: fe-secure.c:953 fe-secure.c:962
 #, c-format
 msgid "could not read root certificate list (%s): %s\n"
 msgstr "无法读取根证书列表 (%s): %s\n"
 
-#: fe-secure.c:929
+#: fe-secure.c:1061
 #, c-format
 msgid "certificate could not be validated: %s\n"
 msgstr "无法验证证书: %s\n"
 
-#: fe-secure.c:941
+#: fe-secure.c:1074
 #, c-format
 msgid "certificate could not be obtained: %s\n"
 msgstr "无法获得证书: %s\n"
 
+# fe-misc.c:702
+#~ msgid "could not translate local service to address: %s\n"
+#~ msgstr "无法解释本地服务到地址: %s\n"
+
 # fe-connect.c:1010
 #~ msgid "server does not support SSL, and previous non-SSL attempt failed\n"
 #~ msgstr "服务器不支持 SSL, 并且先前非 SSL 尝试失败\n"