{"kind": "protocol", "major": "18", "item": {"slug": "copydone-f-and-b", "name": "CopyDone", "name_zh": "", "category": "\u53cc\u5411\u6d88\u606f", "summary": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "aliases": ["CopyDone", "Byte1('c')"], "content_hash": "8091f599660c241952c2062c27c1668703932974f14e0005fa08717ec1099b31", "versions": {"10": {"facts": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "fields": [{"format": "Byte1('c')", "description": "Identifies the message as a COPY -complete indicator."}, {"format": "Int32(4)", "description": "Length of message contents in bytes, including self."}], "tables": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "related": [{"url": "/docs/10/protocol-flow.html", "label": "\u534f\u8bae\u6d41\u7a0b\u4e0e\u4ea4\u4e92\u793a\u4f8b"}, {"url": "/docs/10/protocol-overview.html", "label": "\u534f\u8bae\u6982\u8ff0"}, {"url": "/docs/10/protocol-flow.html#PROTOCOL-COPY", "label": "COPY \u64cd\u4f5c"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v10.23/postgresql-10.23.tar.bz2", "label": "10.23", "major": "10", "channel": "stable", "revision": "94a4b2528372458e5662c18d406629266667c437198160a18cdfd2c4a4d6eee9"}, "sources": [{"url": "/docs/10/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS", "path": "protocol-message-formats.html", "label": "PostgreSQL 10 English manual", "sha256": "b730a205dfc348a67edbc1e9687f2c2df69005fe30c062ef76e37b474538e4f8"}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/10/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS", "anchor": "PROTOCOL-MESSAGE-FORMATS", "locale": "zh-Hans", "version": "10", "build_id": 63, "page_key": "protocol-message-formats.html", "extraction": "exact-definition", "source_hash": "e8128c15b60fa3298facda053424e38e11bcd21152f2d35599f1f5894d9dd8db", "fragment_sha256": "af60cc1b9eba0f3ada7e313944e49c1221d7ac238854b5dc8cec9c4773fb6ebe", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "snapshot:sha256:62997ea80516ad012fbf6359de33f3b016b54c47e2df76e75606116b4baaf8e5", "translated_from_revision": null}, "body_sha256": "e35cc26355f5f88974c6c1043973b191ce93ed2f9179de5bcde55bc5cc59ffaf", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "94a4b2528372458e5662c18d406629266667c437198160a18cdfd2c4a4d6eee9"}, "facts_zh": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "sections": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "center_zh": {"title": "CopyDone", "locale": "zh-Hans", "source": {"key": "copydone-f-and-b", "locale": "zh-Hans", "version": "10", "text_hash": "c1e3221add9f192cb6d0ee542ead068e4ad0b9d196adb2b2d4913370e3d6237c", "collection": "protocol", "dataset_hash": "7c31b524dfe136022d39a6ae8dcfac6b3bbd5f8fdaf422536599981252aff0c9", "source_database": "center", "source_revision": "94a4b2528372458e5662c18d406629266667c437198160a18cdfd2c4a4d6eee9"}, "payload": {"facts": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "tables": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/10/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS", "anchor": "PROTOCOL-MESSAGE-FORMATS", "locale": "zh-Hans", "version": "10", "build_id": 63, "page_key": "protocol-message-formats.html", "extraction": "exact-definition", "source_hash": "e8128c15b60fa3298facda053424e38e11bcd21152f2d35599f1f5894d9dd8db", "fragment_sha256": "af60cc1b9eba0f3ada7e313944e49c1221d7ac238854b5dc8cec9c4773fb6ebe", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "snapshot:sha256:62997ea80516ad012fbf6359de33f3b016b54c47e2df76e75606116b4baaf8e5", "translated_from_revision": null}, "body_sha256": "e35cc26355f5f88974c6c1043973b191ce93ed2f9179de5bcde55bc5cc59ffaf", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "94a4b2528372458e5662c18d406629266667c437198160a18cdfd2c4a4d6eee9"}, "sections": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "description_zh": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "description_zh_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><p>\n</p><div class=\"variablelist\"><dl class=\"variablelist\"><dt><span class=\"term\">        Byte1('c')</span></dt><dd><p>         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code class=\"command\">COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span class=\"term\">Int32(4)</span></dt><dd><p>\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002</p></dd></dl></div><p>\n</p></dd><p><a href=\"/zh/docs/10/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "summary": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "version": "10", "link_map": {"/zh/docs/10/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS": "/docs/10/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS"}, "body_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><p>\n</p><div><dl><dt><span>        Byte1(&#39;c&#39;)</span></dt><dd><p>         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code>COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span>Int32(4)</span></dt><dd><p>\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002</p></dd></dl></div><p>\n</p></dd><p><a href=\"/zh/docs/10/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "body_sha256": "6918ade6602c083ffad6d832ab9ca97bead1e20d8627a66c2766ff5569804c52", "content_hash": "c1e3221add9f192cb6d0ee542ead068e4ad0b9d196adb2b2d4913370e3d6237c", "source_database": "center", "source_revision": "94a4b2528372458e5662c18d406629266667c437198160a18cdfd2c4a4d6eee9"}, "direction": "F & B", "signature": "CopyDone (F & B)", "tables_zh": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "description": ["Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"], "manual_html": "", "manual_path": "/docs/10/protocol-message-formats.html", "sections_zh": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "localization": {"status": "complete", "sources": [{"url": "/docs/10/protocol-message-formats.html", "method": "same-major semantic node", "sha256": "fb3f5382c61e7fcc0eaa29589ac1811e59b1cc7a8bd23c1ebe5fc8f17c9819b2", "language": "zh", "matched_nodes": ["#PROTOCOL-MESSAGE-FORMATS/div[2]/dl[0]/dd[1]/div[0]/dl[0]/dd[3]", "#PROTOCOL-MESSAGE-FORMATS/div[2]/dl[0]/dd[39]/div[0]/dl[0]/dd[1]"]}], "language": "zh", "original_text": {"/versions/10/description/0": "CopyDone is a bidirectional protocol message. Identifies the message as a COPY -complete indicator.", "/versions/10/facts/0/label": "Direction", "/versions/10/facts/0/value": "Frontend \u2194 backend", "/versions/10/facts/1/label": "First wire field", "/versions/10/facts/2/label": "Field entries", "/versions/10/facts/3/label": "Documented flow contexts", "/versions/10/facts/3/value": "COPY Operations", "/versions/10/tables/0/title": "Wire fields in documented order", "/versions/10/related/0/label": "Protocol flow and exchange examples", "/versions/10/related/1/label": "Protocol overview", "/versions/10/related/2/label": "COPY Operations", "/versions/10/sections/0/title": "Framing and repetition", "/versions/10/tables/0/rows/0/c2": "Identifies the message as a COPY -complete indicator.", "/versions/10/tables/0/rows/1/c2": "Length of message contents in bytes, including self.", "/versions/10/sections/0/paragraphs/0": "The complete definition below retains repetition, counts and conditional fields. A numbered table row is a documented field definition, not a fixed byte offset. Integer encodings and flow rules follow the same-version protocol chapter.", "/versions/10/tables/0/columns/0/label": "Position", "/versions/10/tables/0/columns/1/label": "Format", "/versions/10/tables/0/columns/2/label": "Meaning"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "21f5ac8382f42d8df6d2d3136ad980c3d4dcb72993af51f1622e00a285f427db", "canonical_center_text_hash": "c1e3221add9f192cb6d0ee542ead068e4ad0b9d196adb2b2d4913370e3d6237c"}, "description_zh": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "comparison_data": {"fields": [{"format": "Byte1('c')", "description": "Identifies the message as a COPY -complete indicator."}, {"format": "Int32(4)", "description": "Length of message contents in bytes, including self."}], "direction": "F & B"}, "comparison_hash": "484bf6e6dbb4b6de88a436069b7f81e5ad6f5631662fa4d6062699e26b515083", "manual_language": "zh", "description_zh_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><p>\n</p><div><dl><dt><span>        Byte1(&#39;c&#39;)</span></dt><dd><p>         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code>COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span>Int32(4)</span></dt><dd><p>\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002</p></dd></dl></div><p>\n</p></dd><p><a href=\"/zh/docs/10/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "11": {"facts": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "fields": [{"format": "Byte1('c')", "description": "Identifies the message as a COPY -complete indicator."}, {"format": "Int32(4)", "description": "Length of message contents in bytes, including self."}], "tables": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "related": [{"url": "/docs/11/protocol-flow.html", "label": "\u534f\u8bae\u6d41\u7a0b\u4e0e\u4ea4\u4e92\u793a\u4f8b"}, {"url": "/docs/11/protocol-overview.html", "label": "\u534f\u8bae\u6982\u8ff0"}, {"url": "/docs/11/protocol-flow.html#PROTOCOL-COPY", "label": "COPY \u64cd\u4f5c"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v11.22/postgresql-11.22.tar.bz2", "label": "11.22", "major": "11", "channel": "stable", "revision": "2cb7c97d7a0d7278851bbc9c61f467b69c094c72b81740b751108e7892ebe1f0"}, "sources": [{"url": "/docs/11/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS", "path": "protocol-message-formats.html", "label": "PostgreSQL 11 English manual", "sha256": "a6087693de687f5a6582bfa6529356ecb8a089e2d56694482352a55eb6ccfdf1"}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/11/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS", "anchor": "PROTOCOL-MESSAGE-FORMATS", "locale": "zh-Hans", "version": "11", "build_id": 64, "page_key": "protocol-message-formats.html", "extraction": "exact-definition", "source_hash": "b86aa7c7a982503a5943f3f5501cf5ca27ea5cf1f9d48418c461cf096d15c4db", "fragment_sha256": "24f4ed458936d572e37ab5a2926671ca94bf57e993b65fa6eac0b2a8bae26850", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "snapshot:sha256:ef5c7bc074acae9795db16e6b7482aea3b222bd4bcce0f76831332b97a21e8a1", "translated_from_revision": null}, "body_sha256": "d8ab1f0889f009a8c59ee017b8139c2a26e8dd3c05068425d7ada03585070e40", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "2cb7c97d7a0d7278851bbc9c61f467b69c094c72b81740b751108e7892ebe1f0"}, "facts_zh": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "sections": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "center_zh": {"title": "CopyDone", "locale": "zh-Hans", "source": {"key": "copydone-f-and-b", "locale": "zh-Hans", "version": "11", "text_hash": "7d8b4c3a24184626ae01404fb5afb4fb189d580bbfdb944de41d6fb81fb37220", "collection": "protocol", "dataset_hash": "7c31b524dfe136022d39a6ae8dcfac6b3bbd5f8fdaf422536599981252aff0c9", "source_database": "center", "source_revision": "2cb7c97d7a0d7278851bbc9c61f467b69c094c72b81740b751108e7892ebe1f0"}, "payload": {"facts": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "tables": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/11/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS", "anchor": "PROTOCOL-MESSAGE-FORMATS", "locale": "zh-Hans", "version": "11", "build_id": 64, "page_key": "protocol-message-formats.html", "extraction": "exact-definition", "source_hash": "b86aa7c7a982503a5943f3f5501cf5ca27ea5cf1f9d48418c461cf096d15c4db", "fragment_sha256": "24f4ed458936d572e37ab5a2926671ca94bf57e993b65fa6eac0b2a8bae26850", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "snapshot:sha256:ef5c7bc074acae9795db16e6b7482aea3b222bd4bcce0f76831332b97a21e8a1", "translated_from_revision": null}, "body_sha256": "d8ab1f0889f009a8c59ee017b8139c2a26e8dd3c05068425d7ada03585070e40", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "2cb7c97d7a0d7278851bbc9c61f467b69c094c72b81740b751108e7892ebe1f0"}, "sections": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "description_zh": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "description_zh_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><p>\n</p><div class=\"variablelist\"><dl class=\"variablelist\"><dt><span class=\"term\">\n        Byte1('c')\n</span></dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code class=\"command\">COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span class=\"term\">Int32(4)</span></dt><dd><p>\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002</p></dd></dl></div><p>\n</p></dd><p><a href=\"/zh/docs/11/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "summary": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "version": "11", "link_map": {"/zh/docs/11/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS": "/docs/11/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS"}, "body_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><p>\n</p><div><dl><dt><span>\n        Byte1(&#39;c&#39;)\n</span></dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code>COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span>Int32(4)</span></dt><dd><p>\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002</p></dd></dl></div><p>\n</p></dd><p><a href=\"/zh/docs/11/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "body_sha256": "fc5fd54b26b4579d4a79ab3ad132c7f2b32ef097a299bfa119c7f3daf1959d0b", "content_hash": "7d8b4c3a24184626ae01404fb5afb4fb189d580bbfdb944de41d6fb81fb37220", "source_database": "center", "source_revision": "2cb7c97d7a0d7278851bbc9c61f467b69c094c72b81740b751108e7892ebe1f0"}, "direction": "F & B", "signature": "CopyDone (F & B)", "tables_zh": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "description": ["Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"], "manual_html": "", "manual_path": "/docs/11/protocol-message-formats.html", "sections_zh": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "localization": {"status": "complete", "sources": [{"url": "/docs/11/protocol-message-formats.html", "method": "same-major semantic node", "sha256": "9726c6197a98d51a4e85474eefe4eebef23c1e01c1accd23e4633aa0e78288ea", "language": "zh", "matched_nodes": ["#PROTOCOL-MESSAGE-FORMATS/div[2]/dl[0]/dd[1]/div[0]/dl[0]/dd[3]", "#PROTOCOL-MESSAGE-FORMATS/div[2]/dl[0]/dd[39]/div[0]/dl[0]/dd[1]"]}], "language": "zh", "original_text": {"/versions/11/description/0": "CopyDone is a bidirectional protocol message. Identifies the message as a COPY -complete indicator.", "/versions/11/facts/0/label": "Direction", "/versions/11/facts/0/value": "Frontend \u2194 backend", "/versions/11/facts/1/label": "First wire field", "/versions/11/facts/2/label": "Field entries", "/versions/11/facts/3/label": "Documented flow contexts", "/versions/11/facts/3/value": "COPY Operations", "/versions/11/tables/0/title": "Wire fields in documented order", "/versions/11/related/0/label": "Protocol flow and exchange examples", "/versions/11/related/1/label": "Protocol overview", "/versions/11/related/2/label": "COPY Operations", "/versions/11/sections/0/title": "Framing and repetition", "/versions/11/tables/0/rows/0/c2": "Identifies the message as a COPY -complete indicator.", "/versions/11/tables/0/rows/1/c2": "Length of message contents in bytes, including self.", "/versions/11/sections/0/paragraphs/0": "The complete definition below retains repetition, counts and conditional fields. A numbered table row is a documented field definition, not a fixed byte offset. Integer encodings and flow rules follow the same-version protocol chapter.", "/versions/11/tables/0/columns/0/label": "Position", "/versions/11/tables/0/columns/1/label": "Format", "/versions/11/tables/0/columns/2/label": "Meaning"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "f675d311e839932ee0c9ce5c2ca43a904f43c21eddc5d196792d63f57f0ef20a", "canonical_center_text_hash": "7d8b4c3a24184626ae01404fb5afb4fb189d580bbfdb944de41d6fb81fb37220"}, "description_zh": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "comparison_data": {"fields": [{"format": "Byte1('c')", "description": "Identifies the message as a COPY -complete indicator."}, {"format": "Int32(4)", "description": "Length of message contents in bytes, including self."}], "direction": "F & B"}, "comparison_hash": "484bf6e6dbb4b6de88a436069b7f81e5ad6f5631662fa4d6062699e26b515083", "manual_language": "zh", "description_zh_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><p>\n</p><div><dl><dt><span>\n        Byte1(&#39;c&#39;)\n</span></dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code>COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span>Int32(4)</span></dt><dd><p>\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002</p></dd></dl></div><p>\n</p></dd><p><a href=\"/zh/docs/11/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "12": {"facts": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "fields": [{"format": "Byte1('c')", "description": "Identifies the message as a COPY -complete indicator."}, {"format": "Int32(4)", "description": "Length of message contents in bytes, including self."}], "tables": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "related": [{"url": "/docs/12/protocol-flow.html", "label": "\u534f\u8bae\u6d41\u7a0b\u4e0e\u4ea4\u4e92\u793a\u4f8b"}, {"url": "/docs/12/protocol-overview.html", "label": "\u534f\u8bae\u6982\u8ff0"}, {"url": "/docs/12/protocol-flow.html#PROTOCOL-COPY", "label": "COPY \u64cd\u4f5c"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v12.22/postgresql-12.22.tar.bz2", "label": "12.22", "major": "12", "channel": "stable", "revision": "8df3c0474782589d3c6f374b5133b1bd14d168086edbc13c6e72e67dd4527a3b"}, "sources": [{"url": "/docs/12/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS", "path": "protocol-message-formats.html", "label": "PostgreSQL 12 English manual", "sha256": "00f6cafbcaad89c7e7982faed10a2896b7188de151ac9137633021207f7c2b70"}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/12/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS", "anchor": "PROTOCOL-MESSAGE-FORMATS", "locale": "zh-Hans", "version": "12", "build_id": 65, "page_key": "protocol-message-formats.html", "extraction": "exact-definition", "source_hash": "b465bd771c4b398671c853d51262347b617bc7e6f5b1d26744df95ddd9cb26a1", "fragment_sha256": "24f4ed458936d572e37ab5a2926671ca94bf57e993b65fa6eac0b2a8bae26850", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "snapshot:sha256:86d2ff781f93e1de17122ebc514d5e64fcb63fed15941f496d7e146c6dcc7a49", "translated_from_revision": null}, "body_sha256": "b644e72aaff9c710bd1a8336107767996bc6b975c93d2656b977547031b05df0", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "8df3c0474782589d3c6f374b5133b1bd14d168086edbc13c6e72e67dd4527a3b"}, "facts_zh": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "sections": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "center_zh": {"title": "CopyDone", "locale": "zh-Hans", "source": {"key": "copydone-f-and-b", "locale": "zh-Hans", "version": "12", "text_hash": "f333769a6a63ef890c4f077576473a841ef4b2e6f1a0f6d22a5a166dbec4defd", "collection": "protocol", "dataset_hash": "7c31b524dfe136022d39a6ae8dcfac6b3bbd5f8fdaf422536599981252aff0c9", "source_database": "center", "source_revision": "8df3c0474782589d3c6f374b5133b1bd14d168086edbc13c6e72e67dd4527a3b"}, "payload": {"facts": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "tables": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/12/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS", "anchor": "PROTOCOL-MESSAGE-FORMATS", "locale": "zh-Hans", "version": "12", "build_id": 65, "page_key": "protocol-message-formats.html", "extraction": "exact-definition", "source_hash": "b465bd771c4b398671c853d51262347b617bc7e6f5b1d26744df95ddd9cb26a1", "fragment_sha256": "24f4ed458936d572e37ab5a2926671ca94bf57e993b65fa6eac0b2a8bae26850", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "snapshot:sha256:86d2ff781f93e1de17122ebc514d5e64fcb63fed15941f496d7e146c6dcc7a49", "translated_from_revision": null}, "body_sha256": "b644e72aaff9c710bd1a8336107767996bc6b975c93d2656b977547031b05df0", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "8df3c0474782589d3c6f374b5133b1bd14d168086edbc13c6e72e67dd4527a3b"}, "sections": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "description_zh": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "description_zh_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><p>\n</p><div class=\"variablelist\"><dl class=\"variablelist\"><dt><span class=\"term\">\n        Byte1('c')\n</span></dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code class=\"command\">COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span class=\"term\">Int32(4)</span></dt><dd><p>\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002</p></dd></dl></div><p>\n</p></dd><p><a href=\"/zh/docs/12/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "summary": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "version": "12", "link_map": {"/zh/docs/12/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS": "/docs/12/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS"}, "body_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><p>\n</p><div><dl><dt><span>\n        Byte1(&#39;c&#39;)\n</span></dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code>COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span>Int32(4)</span></dt><dd><p>\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002</p></dd></dl></div><p>\n</p></dd><p><a href=\"/zh/docs/12/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "body_sha256": "3ddc89d2806a133193a11f79906beb02ee42e0a220586e29e38de75f4a83b490", "content_hash": "f333769a6a63ef890c4f077576473a841ef4b2e6f1a0f6d22a5a166dbec4defd", "source_database": "center", "source_revision": "8df3c0474782589d3c6f374b5133b1bd14d168086edbc13c6e72e67dd4527a3b"}, "direction": "F & B", "signature": "CopyDone (F & B)", "tables_zh": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "description": ["Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"], "manual_html": "", "manual_path": "/docs/12/protocol-message-formats.html", "sections_zh": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "localization": {"status": "complete", "sources": [{"url": "/docs/12/protocol-message-formats.html", "method": "same-major semantic node", "sha256": "1d8b90803d96546f1f4c7412e486a669852503476ec078069948005061c1122c", "language": "zh", "matched_nodes": ["#PROTOCOL-MESSAGE-FORMATS/div[2]/dl[0]/dd[1]/div[0]/dl[0]/dd[3]", "#PROTOCOL-MESSAGE-FORMATS/div[2]/dl[0]/dd[39]/div[0]/dl[0]/dd[1]"]}], "language": "zh", "original_text": {"/versions/12/description/0": "CopyDone is a bidirectional protocol message. Identifies the message as a COPY -complete indicator.", "/versions/12/facts/0/label": "Direction", "/versions/12/facts/0/value": "Frontend \u2194 backend", "/versions/12/facts/1/label": "First wire field", "/versions/12/facts/2/label": "Field entries", "/versions/12/facts/3/label": "Documented flow contexts", "/versions/12/facts/3/value": "COPY Operations", "/versions/12/tables/0/title": "Wire fields in documented order", "/versions/12/related/0/label": "Protocol flow and exchange examples", "/versions/12/related/1/label": "Protocol overview", "/versions/12/related/2/label": "COPY Operations", "/versions/12/sections/0/title": "Framing and repetition", "/versions/12/tables/0/rows/0/c2": "Identifies the message as a COPY -complete indicator.", "/versions/12/tables/0/rows/1/c2": "Length of message contents in bytes, including self.", "/versions/12/sections/0/paragraphs/0": "The complete definition below retains repetition, counts and conditional fields. A numbered table row is a documented field definition, not a fixed byte offset. Integer encodings and flow rules follow the same-version protocol chapter.", "/versions/12/tables/0/columns/0/label": "Position", "/versions/12/tables/0/columns/1/label": "Format", "/versions/12/tables/0/columns/2/label": "Meaning"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "6f32076e99d818bc9398b3a6b3e65186e8c6e9a604201e90bf0084afeb71cf6a", "canonical_center_text_hash": "f333769a6a63ef890c4f077576473a841ef4b2e6f1a0f6d22a5a166dbec4defd"}, "description_zh": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "comparison_data": {"fields": [{"format": "Byte1('c')", "description": "Identifies the message as a COPY -complete indicator."}, {"format": "Int32(4)", "description": "Length of message contents in bytes, including self."}], "direction": "F & B"}, "comparison_hash": "484bf6e6dbb4b6de88a436069b7f81e5ad6f5631662fa4d6062699e26b515083", "manual_language": "zh", "description_zh_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><p>\n</p><div><dl><dt><span>\n        Byte1(&#39;c&#39;)\n</span></dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code>COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span>Int32(4)</span></dt><dd><p>\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002</p></dd></dl></div><p>\n</p></dd><p><a href=\"/zh/docs/12/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "13": {"facts": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "fields": [{"format": "Byte1('c')", "description": "Identifies the message as a COPY -complete indicator."}, {"format": "Int32(4)", "description": "Length of message contents in bytes, including self."}], "tables": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "related": [{"url": "/docs/13/protocol-flow.html", "label": "\u534f\u8bae\u6d41\u7a0b\u4e0e\u4ea4\u4e92\u793a\u4f8b"}, {"url": "/docs/13/protocol-overview.html", "label": "\u534f\u8bae\u6982\u8ff0"}, {"url": "/docs/13/protocol-flow.html#PROTOCOL-COPY", "label": "COPY \u64cd\u4f5c"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v13.23/postgresql-13.23.tar.bz2", "label": "13.23", "major": "13", "channel": "stable", "revision": "6ec3c82726af92b7dec873fa1cdf881eca92a4219787dfad05acb6b10e041fd6"}, "sources": [{"url": "/docs/13/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS", "path": "protocol-message-formats.html", "label": "PostgreSQL 13 English manual", "sha256": "86bc62b343a9bd881a6832cced7d81285a9924985ea598ee2b207bbb4ba9666e"}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/13/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS", "anchor": "PROTOCOL-MESSAGE-FORMATS", "locale": "zh-Hans", "version": "13", "build_id": 66, "page_key": "protocol-message-formats.html", "extraction": "exact-definition", "source_hash": "f528933d3d49a628dc271c84fe2e25f517ee866bbb01914a395c3d878a1873f3", "fragment_sha256": "24f4ed458936d572e37ab5a2926671ca94bf57e993b65fa6eac0b2a8bae26850", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "snapshot:sha256:a13a825c39f0268ef1cfe9137e283e38d0da73b2d7894f0733c7b26372a4f6a4", "translated_from_revision": null}, "body_sha256": "caeb0b65076b0259c21719ce94e5e92e1b6bf0406a67cf46a02a0d7e5bd78f44", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "6ec3c82726af92b7dec873fa1cdf881eca92a4219787dfad05acb6b10e041fd6"}, "facts_zh": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "sections": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "center_zh": {"title": "CopyDone", "locale": "zh-Hans", "source": {"key": "copydone-f-and-b", "locale": "zh-Hans", "version": "13", "text_hash": "8090cf9f70cf96a0c449fc76d0bedcbbda14c042ba2e08e2b94bf7fb06b9ed1a", "collection": "protocol", "dataset_hash": "7c31b524dfe136022d39a6ae8dcfac6b3bbd5f8fdaf422536599981252aff0c9", "source_database": "center", "source_revision": "6ec3c82726af92b7dec873fa1cdf881eca92a4219787dfad05acb6b10e041fd6"}, "payload": {"facts": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "tables": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/13/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS", "anchor": "PROTOCOL-MESSAGE-FORMATS", "locale": "zh-Hans", "version": "13", "build_id": 66, "page_key": "protocol-message-formats.html", "extraction": "exact-definition", "source_hash": "f528933d3d49a628dc271c84fe2e25f517ee866bbb01914a395c3d878a1873f3", "fragment_sha256": "24f4ed458936d572e37ab5a2926671ca94bf57e993b65fa6eac0b2a8bae26850", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "snapshot:sha256:a13a825c39f0268ef1cfe9137e283e38d0da73b2d7894f0733c7b26372a4f6a4", "translated_from_revision": null}, "body_sha256": "caeb0b65076b0259c21719ce94e5e92e1b6bf0406a67cf46a02a0d7e5bd78f44", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "6ec3c82726af92b7dec873fa1cdf881eca92a4219787dfad05acb6b10e041fd6"}, "sections": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "description_zh": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "description_zh_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><p>\n</p><div class=\"variablelist\"><dl class=\"variablelist\"><dt><span class=\"term\">\n        Byte1('c')\n</span></dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code class=\"command\">COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span class=\"term\">Int32(4)</span></dt><dd><p>\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002</p></dd></dl></div><p>\n</p></dd><p><a href=\"/zh/docs/13/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "summary": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "version": "13", "link_map": {"/zh/docs/13/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS": "/docs/13/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS"}, "body_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><p>\n</p><div><dl><dt><span>\n        Byte1(&#39;c&#39;)\n</span></dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code>COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span>Int32(4)</span></dt><dd><p>\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002</p></dd></dl></div><p>\n</p></dd><p><a href=\"/zh/docs/13/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "body_sha256": "6ec3e19e3545c52eb16191bbad11351102a3ee1435dae626f8141ad6513c9342", "content_hash": "8090cf9f70cf96a0c449fc76d0bedcbbda14c042ba2e08e2b94bf7fb06b9ed1a", "source_database": "center", "source_revision": "6ec3c82726af92b7dec873fa1cdf881eca92a4219787dfad05acb6b10e041fd6"}, "direction": "F & B", "signature": "CopyDone (F & B)", "tables_zh": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "description": ["Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"], "manual_html": "", "manual_path": "/docs/13/protocol-message-formats.html", "sections_zh": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "localization": {"status": "complete", "sources": [{"url": "/docs/13/protocol-message-formats.html", "method": "same-major semantic node", "sha256": "90801323e211e99834ac2c19f534fccad08d74098fbce82899c1e1970d871906", "language": "zh", "matched_nodes": ["#PROTOCOL-MESSAGE-FORMATS/div[2]/dl[0]/dd[1]/div[0]/dl[0]/dd[3]", "#PROTOCOL-MESSAGE-FORMATS/div[2]/dl[0]/dd[39]/div[0]/dl[0]/dd[1]"]}], "language": "zh", "original_text": {"/versions/13/description/0": "CopyDone is a bidirectional protocol message. Identifies the message as a COPY -complete indicator.", "/versions/13/facts/0/label": "Direction", "/versions/13/facts/0/value": "Frontend \u2194 backend", "/versions/13/facts/1/label": "First wire field", "/versions/13/facts/2/label": "Field entries", "/versions/13/facts/3/label": "Documented flow contexts", "/versions/13/facts/3/value": "COPY Operations", "/versions/13/tables/0/title": "Wire fields in documented order", "/versions/13/related/0/label": "Protocol flow and exchange examples", "/versions/13/related/1/label": "Protocol overview", "/versions/13/related/2/label": "COPY Operations", "/versions/13/sections/0/title": "Framing and repetition", "/versions/13/tables/0/rows/0/c2": "Identifies the message as a COPY -complete indicator.", "/versions/13/tables/0/rows/1/c2": "Length of message contents in bytes, including self.", "/versions/13/sections/0/paragraphs/0": "The complete definition below retains repetition, counts and conditional fields. A numbered table row is a documented field definition, not a fixed byte offset. Integer encodings and flow rules follow the same-version protocol chapter.", "/versions/13/tables/0/columns/0/label": "Position", "/versions/13/tables/0/columns/1/label": "Format", "/versions/13/tables/0/columns/2/label": "Meaning"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "0af3a5eb5360bf30e653b09803a0bf46185f96a9318ee0f23646ac8a2c37cd36", "canonical_center_text_hash": "8090cf9f70cf96a0c449fc76d0bedcbbda14c042ba2e08e2b94bf7fb06b9ed1a"}, "description_zh": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "comparison_data": {"fields": [{"format": "Byte1('c')", "description": "Identifies the message as a COPY -complete indicator."}, {"format": "Int32(4)", "description": "Length of message contents in bytes, including self."}], "direction": "F & B"}, "comparison_hash": "484bf6e6dbb4b6de88a436069b7f81e5ad6f5631662fa4d6062699e26b515083", "manual_language": "zh", "description_zh_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><p>\n</p><div><dl><dt><span>\n        Byte1(&#39;c&#39;)\n</span></dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code>COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span>Int32(4)</span></dt><dd><p>\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002</p></dd></dl></div><p>\n</p></dd><p><a href=\"/zh/docs/13/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "14": {"facts": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "fields": [{"format": "Byte1('c')", "description": "Identifies the message as a COPY -complete indicator."}, {"format": "Int32(4)", "description": "Length of message contents in bytes, including self."}], "tables": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "related": [{"url": "/docs/14/protocol-flow.html", "label": "\u534f\u8bae\u6d41\u7a0b\u4e0e\u4ea4\u4e92\u793a\u4f8b"}, {"url": "/docs/14/protocol-overview.html", "label": "\u534f\u8bae\u6982\u8ff0"}, {"url": "/docs/14/protocol-flow.html#PROTOCOL-COPY", "label": "COPY \u64cd\u4f5c"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v14.24/postgresql-14.24.tar.bz2", "label": "14.24", "major": "14", "channel": "stable", "revision": "a7fa7ed3d558172355f51406097a7bd4f6b473be80f311ef7cda96bf383d8897"}, "sources": [{"url": "/docs/14/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS", "path": "protocol-message-formats.html", "label": "PostgreSQL 14 English manual", "sha256": "250fd6a2529964948260a546f72931e259885bb222b62c3bdbf5ab402b72987b"}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/14/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS", "anchor": "PROTOCOL-MESSAGE-FORMATS", "locale": "zh-Hans", "version": "14", "build_id": 99, "page_key": "protocol-message-formats.html", "extraction": "exact-definition", "source_hash": "4cb6571b756c2b8f4e3e5f0710a5f70b495f4f380a8eea05e2db265978d27607", "fragment_sha256": "7fcb732a484317082a2086ba991fe292a155c4a1e4e44b0ab901e35e4c9e0865", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:87e6aa4fd6e1ec85c5f4a6de4f5647cfd9e5de734ca2c266d32b6d6192c662ef", "translated_from_revision": null}, "body_sha256": "342946146ccbde9228846df0b6ed6d934e52d195b403771cf256e5365ce4fbcb", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "a7fa7ed3d558172355f51406097a7bd4f6b473be80f311ef7cda96bf383d8897"}, "facts_zh": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "sections": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "center_zh": {"title": "CopyDone", "locale": "zh-Hans", "source": {"key": "copydone-f-and-b", "locale": "zh-Hans", "version": "14", "text_hash": "3dcef0cf13bf1ebcfcd5c84bfc9866df3d77a117d60f173cdf21ff11282f1352", "collection": "protocol", "dataset_hash": "7c31b524dfe136022d39a6ae8dcfac6b3bbd5f8fdaf422536599981252aff0c9", "source_database": "center", "source_revision": "a7fa7ed3d558172355f51406097a7bd4f6b473be80f311ef7cda96bf383d8897"}, "payload": {"facts": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "tables": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/14/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS", "anchor": "PROTOCOL-MESSAGE-FORMATS", "locale": "zh-Hans", "version": "14", "build_id": 99, "page_key": "protocol-message-formats.html", "extraction": "exact-definition", "source_hash": "4cb6571b756c2b8f4e3e5f0710a5f70b495f4f380a8eea05e2db265978d27607", "fragment_sha256": "7fcb732a484317082a2086ba991fe292a155c4a1e4e44b0ab901e35e4c9e0865", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:87e6aa4fd6e1ec85c5f4a6de4f5647cfd9e5de734ca2c266d32b6d6192c662ef", "translated_from_revision": null}, "body_sha256": "342946146ccbde9228846df0b6ed6d934e52d195b403771cf256e5365ce4fbcb", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "a7fa7ed3d558172355f51406097a7bd4f6b473be80f311ef7cda96bf383d8897"}, "sections": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "description_zh": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "description_zh_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><div class=\"variablelist\"><dl class=\"variablelist\"><dt><span class=\"term\">Byte1('c')</span></dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code class=\"command\">COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span class=\"term\">Int32(4)</span></dt><dd><p>\n         \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002\n        </p></dd></dl></div></dd><p><a href=\"/zh/docs/14/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "summary": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "version": "14", "link_map": {"/zh/docs/14/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS": "/docs/14/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS"}, "body_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><div><dl><dt><span>Byte1(&#39;c&#39;)</span></dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code>COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span>Int32(4)</span></dt><dd><p>\n         \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002\n        </p></dd></dl></div></dd><p><a href=\"/zh/docs/14/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "body_sha256": "4c6b5fee79b6e053670a0d5bb7906043bb826ee42b509f6c3918ca4ee23e7746", "content_hash": "3dcef0cf13bf1ebcfcd5c84bfc9866df3d77a117d60f173cdf21ff11282f1352", "source_database": "center", "source_revision": "a7fa7ed3d558172355f51406097a7bd4f6b473be80f311ef7cda96bf383d8897"}, "direction": "F & B", "signature": "CopyDone (F & B)", "tables_zh": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "description": ["Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"], "manual_html": "", "manual_path": "/docs/14/protocol-message-formats.html", "sections_zh": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "localization": {"status": "complete", "sources": [{"url": "/docs/14/protocol-message-formats.html", "method": "same-major semantic node", "sha256": "a125a259c8ea8299be50b5d5d8241c513d8b38df4c6f16cf53b7949a63e2f8aa", "language": "zh", "matched_nodes": ["#PROTOCOL-MESSAGE-FORMATS/div[2]/dl[0]/dd[1]/div[0]/dl[0]/dd[3]", "#PROTOCOL-MESSAGE-FORMATS/div[2]/dl[0]/dd[39]/div[0]/dl[0]/dd[1]"]}], "language": "zh", "original_text": {"/versions/14/description/0": "CopyDone is a bidirectional protocol message. Identifies the message as a COPY -complete indicator.", "/versions/14/facts/0/label": "Direction", "/versions/14/facts/0/value": "Frontend \u2194 backend", "/versions/14/facts/1/label": "First wire field", "/versions/14/facts/2/label": "Field entries", "/versions/14/facts/3/label": "Documented flow contexts", "/versions/14/facts/3/value": "COPY Operations", "/versions/14/tables/0/title": "Wire fields in documented order", "/versions/14/related/0/label": "Protocol flow and exchange examples", "/versions/14/related/1/label": "Protocol overview", "/versions/14/related/2/label": "COPY Operations", "/versions/14/sections/0/title": "Framing and repetition", "/versions/14/tables/0/rows/0/c2": "Identifies the message as a COPY -complete indicator.", "/versions/14/tables/0/rows/1/c2": "Length of message contents in bytes, including self.", "/versions/14/sections/0/paragraphs/0": "The complete definition below retains repetition, counts and conditional fields. A numbered table row is a documented field definition, not a fixed byte offset. Integer encodings and flow rules follow the same-version protocol chapter.", "/versions/14/tables/0/columns/0/label": "Position", "/versions/14/tables/0/columns/1/label": "Format", "/versions/14/tables/0/columns/2/label": "Meaning"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "3ce35c239da3644195eeff2ce760275a19faf557464f6f8bbce11de99034bf38", "canonical_center_text_hash": "3dcef0cf13bf1ebcfcd5c84bfc9866df3d77a117d60f173cdf21ff11282f1352"}, "description_zh": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "comparison_data": {"fields": [{"format": "Byte1('c')", "description": "Identifies the message as a COPY -complete indicator."}, {"format": "Int32(4)", "description": "Length of message contents in bytes, including self."}], "direction": "F & B"}, "comparison_hash": "484bf6e6dbb4b6de88a436069b7f81e5ad6f5631662fa4d6062699e26b515083", "manual_language": "zh", "description_zh_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><div><dl><dt><span>Byte1(&#39;c&#39;)</span></dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code>COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span>Int32(4)</span></dt><dd><p>\n         \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002\n        </p></dd></dl></div></dd><p><a href=\"/zh/docs/14/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "15": {"facts": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "fields": [{"format": "Byte1('c')", "description": "Identifies the message as a COPY -complete indicator."}, {"format": "Int32(4)", "description": "Length of message contents in bytes, including self."}], "tables": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "related": [{"url": "/docs/15/protocol-flow.html", "label": "\u534f\u8bae\u6d41\u7a0b\u4e0e\u4ea4\u4e92\u793a\u4f8b"}, {"url": "/docs/15/protocol-overview.html", "label": "\u534f\u8bae\u6982\u8ff0"}, {"url": "/docs/15/protocol-flow.html#PROTOCOL-COPY", "label": "COPY \u64cd\u4f5c"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v15.19/postgresql-15.19.tar.bz2", "label": "15.19", "major": "15", "channel": "stable", "revision": "e1a64a87a46b825b88c082e4518161a47aab53c45694964f8ba1df28f7859f89"}, "sources": [{"url": "/docs/15/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE", "path": "protocol-message-formats.html", "label": "PostgreSQL 15 English manual", "sha256": "8c5c191eef74cd3249dabab5d6714b0f516b88c4658da4d6cce6c003bc45d919"}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/15/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE", "anchor": "PROTOCOL-MESSAGE-FORMATS-COPYDONE", "locale": "zh-Hans", "version": "15", "build_id": 101, "page_key": "protocol-message-formats.html", "extraction": "exact-definition", "source_hash": "61228a8f3b29eea0148a7f9a8936a49ecbb8eafec865a1b7c96990b74b854a82", "fragment_sha256": "b6a95b00bd552ba6880226d2cf5e4e02bddc9ba437b5be35e5d0628ae7793b43", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:6bce1a2df9170cb1146a1411c5547190856638221a6539e618ee1016c9f493ad", "translated_from_revision": null}, "body_sha256": "d7dbfbb69913720cd379d0bdd3350083c3e4a4ec0e7f8ed2951f8e8fa6cebb6c", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "e1a64a87a46b825b88c082e4518161a47aab53c45694964f8ba1df28f7859f89"}, "facts_zh": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "sections": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "center_zh": {"title": "CopyDone", "locale": "zh-Hans", "source": {"key": "copydone-f-and-b", "locale": "zh-Hans", "version": "15", "text_hash": "2b3be9f2ab6659763712fffa92f98eef2fff02cdf5b3db95ce424ae7ebd70856", "collection": "protocol", "dataset_hash": "7c31b524dfe136022d39a6ae8dcfac6b3bbd5f8fdaf422536599981252aff0c9", "source_database": "center", "source_revision": "e1a64a87a46b825b88c082e4518161a47aab53c45694964f8ba1df28f7859f89"}, "payload": {"facts": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "tables": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/15/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE", "anchor": "PROTOCOL-MESSAGE-FORMATS-COPYDONE", "locale": "zh-Hans", "version": "15", "build_id": 101, "page_key": "protocol-message-formats.html", "extraction": "exact-definition", "source_hash": "61228a8f3b29eea0148a7f9a8936a49ecbb8eafec865a1b7c96990b74b854a82", "fragment_sha256": "b6a95b00bd552ba6880226d2cf5e4e02bddc9ba437b5be35e5d0628ae7793b43", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:6bce1a2df9170cb1146a1411c5547190856638221a6539e618ee1016c9f493ad", "translated_from_revision": null}, "body_sha256": "d7dbfbb69913720cd379d0bdd3350083c3e4a4ec0e7f8ed2951f8e8fa6cebb6c", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "e1a64a87a46b825b88c082e4518161a47aab53c45694964f8ba1df28f7859f89"}, "sections": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "description_zh": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "description_zh_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><div class=\"variablelist\"><dl class=\"variablelist\"><dt><span class=\"term\">Byte1('c')</span> </dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code class=\"command\">COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span class=\"term\">Int32(4)</span> </dt><dd><p>\n         \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002\n        </p></dd></dl></div></dd><p><a href=\"/zh/docs/15/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "summary": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "version": "15", "link_map": {"/zh/docs/15/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE": "/docs/15/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE"}, "body_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><div><dl><dt><span>Byte1(&#39;c&#39;)</span> </dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code>COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span>Int32(4)</span> </dt><dd><p>\n         \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002\n        </p></dd></dl></div></dd><p><a href=\"/zh/docs/15/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "body_sha256": "d1810883340bb753cfc34eac3be61f956468b925988b932b87112221e8dd5101", "content_hash": "2b3be9f2ab6659763712fffa92f98eef2fff02cdf5b3db95ce424ae7ebd70856", "source_database": "center", "source_revision": "e1a64a87a46b825b88c082e4518161a47aab53c45694964f8ba1df28f7859f89"}, "direction": "F & B", "signature": "CopyDone (F & B)", "tables_zh": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "description": ["Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"], "manual_html": "", "manual_path": "/docs/15/protocol-message-formats.html", "sections_zh": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "localization": {"status": "complete", "sources": [{"url": "/docs/15/protocol-message-formats.html", "method": "same-major semantic node", "sha256": "bbc89cd7e243ed7051f6e82b92f54fe8a97cbf4a673c2c4b39d9e8c8b7c422d3", "language": "zh", "matched_nodes": ["#PROTOCOL-MESSAGE-FORMATS/div[2]/dl[0]/dd[1]/div[0]/dl[0]/dd[3]", "#PROTOCOL-MESSAGE-FORMATS/div[2]/dl[0]/dd[39]/div[0]/dl[0]/dd[1]"]}], "language": "zh", "original_text": {"/versions/15/description/0": "CopyDone is a bidirectional protocol message. Identifies the message as a COPY -complete indicator.", "/versions/15/facts/0/label": "Direction", "/versions/15/facts/0/value": "Frontend \u2194 backend", "/versions/15/facts/1/label": "First wire field", "/versions/15/facts/2/label": "Field entries", "/versions/15/facts/3/label": "Documented flow contexts", "/versions/15/facts/3/value": "COPY Operations", "/versions/15/tables/0/title": "Wire fields in documented order", "/versions/15/related/0/label": "Protocol flow and exchange examples", "/versions/15/related/1/label": "Protocol overview", "/versions/15/related/2/label": "COPY Operations", "/versions/15/sections/0/title": "Framing and repetition", "/versions/15/tables/0/rows/0/c2": "Identifies the message as a COPY -complete indicator.", "/versions/15/tables/0/rows/1/c2": "Length of message contents in bytes, including self.", "/versions/15/sections/0/paragraphs/0": "The complete definition below retains repetition, counts and conditional fields. A numbered table row is a documented field definition, not a fixed byte offset. Integer encodings and flow rules follow the same-version protocol chapter.", "/versions/15/tables/0/columns/0/label": "Position", "/versions/15/tables/0/columns/1/label": "Format", "/versions/15/tables/0/columns/2/label": "Meaning"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "ecd7cb3cdb68d2de9ac46b237043bb3372008a09affe6a01d1d935e27e4b610d", "canonical_center_text_hash": "2b3be9f2ab6659763712fffa92f98eef2fff02cdf5b3db95ce424ae7ebd70856"}, "description_zh": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "comparison_data": {"fields": [{"format": "Byte1('c')", "description": "Identifies the message as a COPY -complete indicator."}, {"format": "Int32(4)", "description": "Length of message contents in bytes, including self."}], "direction": "F & B"}, "comparison_hash": "484bf6e6dbb4b6de88a436069b7f81e5ad6f5631662fa4d6062699e26b515083", "manual_language": "zh", "description_zh_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><div><dl><dt><span>Byte1(&#39;c&#39;)</span> </dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code>COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span>Int32(4)</span> </dt><dd><p>\n         \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002\n        </p></dd></dl></div></dd><p><a href=\"/zh/docs/15/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "16": {"facts": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "fields": [{"format": "Byte1('c')", "description": "Identifies the message as a COPY -complete indicator."}, {"format": "Int32(4)", "description": "Length of message contents in bytes, including self."}], "tables": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "related": [{"url": "/docs/16/protocol-flow.html", "label": "\u534f\u8bae\u6d41\u7a0b\u4e0e\u4ea4\u4e92\u793a\u4f8b"}, {"url": "/docs/16/protocol-overview.html", "label": "\u534f\u8bae\u6982\u8ff0"}, {"url": "/docs/16/protocol-flow.html#PROTOCOL-COPY", "label": "COPY \u64cd\u4f5c"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v16.15/postgresql-16.15.tar.bz2", "label": "16.15", "major": "16", "channel": "stable", "revision": "c1575341fa7bd40f5274ea465b34390f4dc64cdd0770af327005caaeb9f6b7ed"}, "sources": [{"url": "/docs/16/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE", "path": "protocol-message-formats.html", "label": "PostgreSQL 16 English manual", "sha256": "c15646b30727f469cdac3bd411e50dc9b14ee85982a9c9c8a2b3e16449b39a46"}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/16/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE", "anchor": "PROTOCOL-MESSAGE-FORMATS-COPYDONE", "locale": "zh-Hans", "version": "16", "build_id": 103, "page_key": "protocol-message-formats.html", "extraction": "exact-definition", "source_hash": "4839ba322435aae8b017cce12a6053ecf0cd532cf596b9d2eb86481c2ed7a3ab", "fragment_sha256": "7fcb732a484317082a2086ba991fe292a155c4a1e4e44b0ab901e35e4c9e0865", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:80579a071736780f9c4022bb5148e1fb1256f1a33591306af67816e9e9bf3a9b", "translated_from_revision": null}, "body_sha256": "ea000a4ec28d75efa34103c62da8de56c45687b347d890f38844b640decbbf24", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "c1575341fa7bd40f5274ea465b34390f4dc64cdd0770af327005caaeb9f6b7ed"}, "facts_zh": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "sections": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "center_zh": {"title": "CopyDone", "locale": "zh-Hans", "source": {"key": "copydone-f-and-b", "locale": "zh-Hans", "version": "16", "text_hash": "7b6ae41ca012c779ff3d6f994c6e8ac9b6f92cb84b744baa52086ecbd8222496", "collection": "protocol", "dataset_hash": "7c31b524dfe136022d39a6ae8dcfac6b3bbd5f8fdaf422536599981252aff0c9", "source_database": "center", "source_revision": "c1575341fa7bd40f5274ea465b34390f4dc64cdd0770af327005caaeb9f6b7ed"}, "payload": {"facts": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "tables": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/16/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE", "anchor": "PROTOCOL-MESSAGE-FORMATS-COPYDONE", "locale": "zh-Hans", "version": "16", "build_id": 103, "page_key": "protocol-message-formats.html", "extraction": "exact-definition", "source_hash": "4839ba322435aae8b017cce12a6053ecf0cd532cf596b9d2eb86481c2ed7a3ab", "fragment_sha256": "7fcb732a484317082a2086ba991fe292a155c4a1e4e44b0ab901e35e4c9e0865", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:80579a071736780f9c4022bb5148e1fb1256f1a33591306af67816e9e9bf3a9b", "translated_from_revision": null}, "body_sha256": "ea000a4ec28d75efa34103c62da8de56c45687b347d890f38844b640decbbf24", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "c1575341fa7bd40f5274ea465b34390f4dc64cdd0770af327005caaeb9f6b7ed"}, "sections": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "description_zh": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "description_zh_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><div class=\"variablelist\"><dl class=\"variablelist\"><dt><span class=\"term\">Byte1('c')</span></dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code class=\"command\">COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span class=\"term\">Int32(4)</span></dt><dd><p>\n         \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002\n        </p></dd></dl></div></dd><p><a href=\"/zh/docs/16/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "summary": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "version": "16", "link_map": {"/zh/docs/16/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE": "/docs/16/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE"}, "body_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><div><dl><dt><span>Byte1(&#39;c&#39;)</span></dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code>COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span>Int32(4)</span></dt><dd><p>\n         \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002\n        </p></dd></dl></div></dd><p><a href=\"/zh/docs/16/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "body_sha256": "167bbcc03362dba0188a7a8b6dc2b972ec53867aabcd5298aac97ca9ef550864", "content_hash": "7b6ae41ca012c779ff3d6f994c6e8ac9b6f92cb84b744baa52086ecbd8222496", "source_database": "center", "source_revision": "c1575341fa7bd40f5274ea465b34390f4dc64cdd0770af327005caaeb9f6b7ed"}, "direction": "F & B", "signature": "CopyDone (F & B)", "tables_zh": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "description": ["Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"], "manual_html": "", "manual_path": "/docs/16/protocol-message-formats.html", "sections_zh": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "localization": {"status": "complete", "sources": [{"url": "/docs/16/protocol-message-formats.html", "method": "same-major semantic node", "sha256": "638e90eeb4ff3d56cd0c9c95e1203af6bb87aa147ec72623c9dd5eb4b9605ec3", "language": "zh", "matched_nodes": ["#PROTOCOL-MESSAGE-FORMATS/div[2]/dl[0]/dd[1]/div[0]/dl[0]/dd[3]", "#PROTOCOL-MESSAGE-FORMATS/div[2]/dl[0]/dd[37]/div[0]/dl[0]/dd[1]"]}], "language": "zh", "original_text": {"/versions/16/description/0": "CopyDone is a bidirectional protocol message. Identifies the message as a COPY -complete indicator.", "/versions/16/facts/0/label": "Direction", "/versions/16/facts/0/value": "Frontend \u2194 backend", "/versions/16/facts/1/label": "First wire field", "/versions/16/facts/2/label": "Field entries", "/versions/16/facts/3/label": "Documented flow contexts", "/versions/16/facts/3/value": "COPY Operations", "/versions/16/tables/0/title": "Wire fields in documented order", "/versions/16/related/0/label": "Protocol flow and exchange examples", "/versions/16/related/1/label": "Protocol overview", "/versions/16/related/2/label": "COPY Operations", "/versions/16/sections/0/title": "Framing and repetition", "/versions/16/tables/0/rows/0/c2": "Identifies the message as a COPY -complete indicator.", "/versions/16/tables/0/rows/1/c2": "Length of message contents in bytes, including self.", "/versions/16/sections/0/paragraphs/0": "The complete definition below retains repetition, counts and conditional fields. A numbered table row is a documented field definition, not a fixed byte offset. Integer encodings and flow rules follow the same-version protocol chapter.", "/versions/16/tables/0/columns/0/label": "Position", "/versions/16/tables/0/columns/1/label": "Format", "/versions/16/tables/0/columns/2/label": "Meaning"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "caf97a8592196f2300a0f53a732138c61ab4d462543db1a523d27ad90166fd5f", "canonical_center_text_hash": "7b6ae41ca012c779ff3d6f994c6e8ac9b6f92cb84b744baa52086ecbd8222496"}, "description_zh": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "comparison_data": {"fields": [{"format": "Byte1('c')", "description": "Identifies the message as a COPY -complete indicator."}, {"format": "Int32(4)", "description": "Length of message contents in bytes, including self."}], "direction": "F & B"}, "comparison_hash": "484bf6e6dbb4b6de88a436069b7f81e5ad6f5631662fa4d6062699e26b515083", "manual_language": "zh", "description_zh_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><div><dl><dt><span>Byte1(&#39;c&#39;)</span></dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code>COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span>Int32(4)</span></dt><dd><p>\n         \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002\n        </p></dd></dl></div></dd><p><a href=\"/zh/docs/16/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "17": {"facts": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "fields": [{"format": "Byte1('c')", "description": "Identifies the message as a COPY -complete indicator."}, {"format": "Int32(4)", "description": "Length of message contents in bytes, including self."}], "tables": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "related": [{"url": "/docs/17/protocol-flow.html", "label": "\u534f\u8bae\u6d41\u7a0b\u4e0e\u4ea4\u4e92\u793a\u4f8b"}, {"url": "/docs/17/protocol-overview.html", "label": "\u534f\u8bae\u6982\u8ff0"}, {"url": "/docs/17/protocol-flow.html#PROTOCOL-COPY", "label": "COPY \u64cd\u4f5c"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v17.11/postgresql-17.11.tar.bz2", "label": "17.11", "major": "17", "channel": "stable", "revision": "dd27f2b3c59e73ed14aa3324901242bf69a032a6347805f274e6260322d42979"}, "sources": [{"url": "/docs/17/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE", "path": "protocol-message-formats.html", "label": "PostgreSQL 17 English manual", "sha256": "3c0e7b8a1a8f7ec5026226eab83d6704b7c5199ec9ba1aaaf91ea517609eed4e"}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/17/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE", "anchor": "PROTOCOL-MESSAGE-FORMATS-COPYDONE", "locale": "zh-Hans", "version": "17", "build_id": 105, "page_key": "protocol-message-formats.html", "extraction": "exact-definition", "source_hash": "e8c9ba58e397deab7bd056f274a895a459624a355e846ab7cb026235b394e05e", "fragment_sha256": "b6a95b00bd552ba6880226d2cf5e4e02bddc9ba437b5be35e5d0628ae7793b43", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:7340767258d21c21b36f373f1fff6bab2be18e0daca13a865129db6105c09efd", "translated_from_revision": null}, "body_sha256": "3027943049091cf0fd75f5bbdabe0d9de2794e98f8bd033fa5398fd5f12b35bc", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "dd27f2b3c59e73ed14aa3324901242bf69a032a6347805f274e6260322d42979"}, "facts_zh": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "sections": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "center_zh": {"title": "CopyDone", "locale": "zh-Hans", "source": {"key": "copydone-f-and-b", "locale": "zh-Hans", "version": "17", "text_hash": "dce33fefdebba0060518c64b1987a5ebf583f2d2092bb00e5ec14dc43f9d2b11", "collection": "protocol", "dataset_hash": "7c31b524dfe136022d39a6ae8dcfac6b3bbd5f8fdaf422536599981252aff0c9", "source_database": "center", "source_revision": "dd27f2b3c59e73ed14aa3324901242bf69a032a6347805f274e6260322d42979"}, "payload": {"facts": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "tables": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/17/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE", "anchor": "PROTOCOL-MESSAGE-FORMATS-COPYDONE", "locale": "zh-Hans", "version": "17", "build_id": 105, "page_key": "protocol-message-formats.html", "extraction": "exact-definition", "source_hash": "e8c9ba58e397deab7bd056f274a895a459624a355e846ab7cb026235b394e05e", "fragment_sha256": "b6a95b00bd552ba6880226d2cf5e4e02bddc9ba437b5be35e5d0628ae7793b43", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:7340767258d21c21b36f373f1fff6bab2be18e0daca13a865129db6105c09efd", "translated_from_revision": null}, "body_sha256": "3027943049091cf0fd75f5bbdabe0d9de2794e98f8bd033fa5398fd5f12b35bc", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "dd27f2b3c59e73ed14aa3324901242bf69a032a6347805f274e6260322d42979"}, "sections": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "description_zh": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "description_zh_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><div class=\"variablelist\"><dl class=\"variablelist\"><dt><span class=\"term\">Byte1('c')</span> </dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code class=\"command\">COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span class=\"term\">Int32(4)</span> </dt><dd><p>\n         \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002\n        </p></dd></dl></div></dd><p><a href=\"/zh/docs/17/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "summary": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "version": "17", "link_map": {"/zh/docs/17/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE": "/docs/17/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE"}, "body_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><div><dl><dt><span>Byte1(&#39;c&#39;)</span> </dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code>COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span>Int32(4)</span> </dt><dd><p>\n         \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002\n        </p></dd></dl></div></dd><p><a href=\"/zh/docs/17/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "body_sha256": "f0d7b92e17e2fd12e6526390db06d68700dd1025bb46f9476db919b42c229370", "content_hash": "dce33fefdebba0060518c64b1987a5ebf583f2d2092bb00e5ec14dc43f9d2b11", "source_database": "center", "source_revision": "dd27f2b3c59e73ed14aa3324901242bf69a032a6347805f274e6260322d42979"}, "direction": "F & B", "signature": "CopyDone (F & B)", "tables_zh": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "description": ["Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"], "manual_html": "", "manual_path": "/docs/17/protocol-message-formats.html", "sections_zh": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "localization": {"status": "complete", "sources": [{"url": "/docs/17/protocol-message-formats.html", "method": "same-major semantic node", "sha256": "d6412ab936b8b40cbe8abcad969c38c282e7039b7b2c6805eb126a28008f973d", "language": "zh", "matched_nodes": ["#PROTOCOL-MESSAGE-FORMATS/div[2]/dl[0]/dd[1]/div[0]/dl[0]/dd[3]", "#PROTOCOL-MESSAGE-FORMATS/div[2]/dl[0]/dd[37]/div[0]/dl[0]/dd[1]"]}], "language": "zh", "original_text": {"/versions/17/description/0": "CopyDone is a bidirectional protocol message. Identifies the message as a COPY -complete indicator.", "/versions/17/facts/0/label": "Direction", "/versions/17/facts/0/value": "Frontend \u2194 backend", "/versions/17/facts/1/label": "First wire field", "/versions/17/facts/2/label": "Field entries", "/versions/17/facts/3/label": "Documented flow contexts", "/versions/17/facts/3/value": "COPY Operations", "/versions/17/tables/0/title": "Wire fields in documented order", "/versions/17/related/0/label": "Protocol flow and exchange examples", "/versions/17/related/1/label": "Protocol overview", "/versions/17/related/2/label": "COPY Operations", "/versions/17/sections/0/title": "Framing and repetition", "/versions/17/tables/0/rows/0/c2": "Identifies the message as a COPY -complete indicator.", "/versions/17/tables/0/rows/1/c2": "Length of message contents in bytes, including self.", "/versions/17/sections/0/paragraphs/0": "The complete definition below retains repetition, counts and conditional fields. A numbered table row is a documented field definition, not a fixed byte offset. Integer encodings and flow rules follow the same-version protocol chapter.", "/versions/17/tables/0/columns/0/label": "Position", "/versions/17/tables/0/columns/1/label": "Format", "/versions/17/tables/0/columns/2/label": "Meaning"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "822987c4b42121afa2fb80d3deb1e1e5db998aeba97b6a930220f130f246e606", "canonical_center_text_hash": "dce33fefdebba0060518c64b1987a5ebf583f2d2092bb00e5ec14dc43f9d2b11"}, "description_zh": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "comparison_data": {"fields": [{"format": "Byte1('c')", "description": "Identifies the message as a COPY -complete indicator."}, {"format": "Int32(4)", "description": "Length of message contents in bytes, including self."}], "direction": "F & B"}, "comparison_hash": "484bf6e6dbb4b6de88a436069b7f81e5ad6f5631662fa4d6062699e26b515083", "manual_language": "zh", "description_zh_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><div><dl><dt><span>Byte1(&#39;c&#39;)</span> </dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code>COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span>Int32(4)</span> </dt><dd><p>\n         \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002\n        </p></dd></dl></div></dd><p><a href=\"/zh/docs/17/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "18": {"facts": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "fields": [{"format": "Byte1('c')", "description": "Identifies the message as a COPY -complete indicator."}, {"format": "Int32(4)", "description": "Length of message contents in bytes, including self."}], "tables": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "related": [{"url": "/docs/18/protocol-flow.html", "label": "\u534f\u8bae\u6d41\u7a0b\u4e0e\u4ea4\u4e92\u793a\u4f8b"}, {"url": "/docs/18/protocol-overview.html", "label": "\u534f\u8bae\u6982\u8ff0"}, {"url": "/docs/18/protocol-flow.html#PROTOCOL-COPY", "label": "COPY \u64cd\u4f5c"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v18.6/postgresql-18.6.tar.bz2", "label": "18.6", "major": "18", "channel": "stable", "revision": "555610c24d53e4316da5b7d3fc25c279d96856d5e0e23ee308c328c5fa881d9f"}, "sources": [{"url": "/docs/18/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE", "path": "protocol-message-formats.html", "label": "PostgreSQL 18 English manual", "sha256": "53f37652ac2c089e30ada87d8aee7bdd0f26695b03f275302e526a807d2a1f23"}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/18/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE", "anchor": "PROTOCOL-MESSAGE-FORMATS-COPYDONE", "locale": "zh-Hans", "version": "18", "build_id": 107, "page_key": "protocol-message-formats.html", "extraction": "exact-definition", "source_hash": "0be0a37b38d80c96c157ca9fcfe9222995654664aad8136f7ac2b1b552f6753a", "fragment_sha256": "b6a95b00bd552ba6880226d2cf5e4e02bddc9ba437b5be35e5d0628ae7793b43", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:08e987a66af27b98444a8057c256314eafa13611a3fb9e888214fc436824244b", "translated_from_revision": null}, "body_sha256": "6a7904a4a5d0b9e4722ef09acbac7f8aa316843f52587a50033d0b0d46c1637a", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "555610c24d53e4316da5b7d3fc25c279d96856d5e0e23ee308c328c5fa881d9f"}, "facts_zh": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "sections": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "center_zh": {"title": "CopyDone", "locale": "zh-Hans", "source": {"key": "copydone-f-and-b", "locale": "zh-Hans", "version": "18", "text_hash": "06b62ff318015559e5f8989383acae881210aa3e0e72bdcb8787b26c4076112a", "collection": "protocol", "dataset_hash": "7c31b524dfe136022d39a6ae8dcfac6b3bbd5f8fdaf422536599981252aff0c9", "source_database": "center", "source_revision": "555610c24d53e4316da5b7d3fc25c279d96856d5e0e23ee308c328c5fa881d9f"}, "payload": {"facts": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "tables": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/18/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE", "anchor": "PROTOCOL-MESSAGE-FORMATS-COPYDONE", "locale": "zh-Hans", "version": "18", "build_id": 107, "page_key": "protocol-message-formats.html", "extraction": "exact-definition", "source_hash": "0be0a37b38d80c96c157ca9fcfe9222995654664aad8136f7ac2b1b552f6753a", "fragment_sha256": "b6a95b00bd552ba6880226d2cf5e4e02bddc9ba437b5be35e5d0628ae7793b43", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:08e987a66af27b98444a8057c256314eafa13611a3fb9e888214fc436824244b", "translated_from_revision": null}, "body_sha256": "6a7904a4a5d0b9e4722ef09acbac7f8aa316843f52587a50033d0b0d46c1637a", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "555610c24d53e4316da5b7d3fc25c279d96856d5e0e23ee308c328c5fa881d9f"}, "sections": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "description_zh": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "description_zh_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><div class=\"variablelist\"><dl class=\"variablelist\"><dt><span class=\"term\">Byte1('c')</span> </dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code class=\"command\">COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span class=\"term\">Int32(4)</span> </dt><dd><p>\n         \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002\n        </p></dd></dl></div></dd><p><a href=\"/zh/docs/18/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "summary": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "version": "18", "link_map": {"/zh/docs/18/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE": "/docs/18/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE"}, "body_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><div><dl><dt><span>Byte1(&#39;c&#39;)</span> </dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code>COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span>Int32(4)</span> </dt><dd><p>\n         \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002\n        </p></dd></dl></div></dd><p><a href=\"/zh/docs/18/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "body_sha256": "c431fbca62c5ab76fe0bac77ca39e5fefa423db548ca56a2a96de7d63092abe7", "content_hash": "06b62ff318015559e5f8989383acae881210aa3e0e72bdcb8787b26c4076112a", "source_database": "center", "source_revision": "555610c24d53e4316da5b7d3fc25c279d96856d5e0e23ee308c328c5fa881d9f"}, "direction": "F & B", "signature": "CopyDone (F & B)", "tables_zh": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "description": ["Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"], "manual_html": "", "manual_path": "/docs/18/protocol-message-formats.html", "sections_zh": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "localization": {"status": "complete", "sources": [{"url": "/docs/18/protocol-message-formats.html", "method": "same-major semantic node", "sha256": "add610bc3053cbc2f8d57b8a89e7e9d17dca8906d66221e9268c1dd1b390d0b5", "language": "zh", "matched_nodes": ["#PROTOCOL-MESSAGE-FORMATS/div[2]/dl[0]/dd[1]/div[0]/dl[0]/dd[3]", "#PROTOCOL-MESSAGE-FORMATS/div[2]/dl[0]/dd[37]/div[0]/dl[0]/dd[1]"]}], "language": "zh", "original_text": {"/versions/18/description/0": "CopyDone is a bidirectional protocol message. Identifies the message as a COPY -complete indicator.", "/versions/18/facts/0/label": "Direction", "/versions/18/facts/0/value": "Frontend \u2194 backend", "/versions/18/facts/1/label": "First wire field", "/versions/18/facts/2/label": "Field entries", "/versions/18/facts/3/label": "Documented flow contexts", "/versions/18/facts/3/value": "COPY Operations", "/versions/18/tables/0/title": "Wire fields in documented order", "/versions/18/related/0/label": "Protocol flow and exchange examples", "/versions/18/related/1/label": "Protocol overview", "/versions/18/related/2/label": "COPY Operations", "/versions/18/sections/0/title": "Framing and repetition", "/versions/18/tables/0/rows/0/c2": "Identifies the message as a COPY -complete indicator.", "/versions/18/tables/0/rows/1/c2": "Length of message contents in bytes, including self.", "/versions/18/sections/0/paragraphs/0": "The complete definition below retains repetition, counts and conditional fields. A numbered table row is a documented field definition, not a fixed byte offset. Integer encodings and flow rules follow the same-version protocol chapter.", "/versions/18/tables/0/columns/0/label": "Position", "/versions/18/tables/0/columns/1/label": "Format", "/versions/18/tables/0/columns/2/label": "Meaning"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "419cfe9751ea3cdd35f825680b582a53a9828a418bfee000dbbd150f57df71be", "canonical_center_text_hash": "06b62ff318015559e5f8989383acae881210aa3e0e72bdcb8787b26c4076112a"}, "description_zh": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "comparison_data": {"fields": [{"format": "Byte1('c')", "description": "Identifies the message as a COPY -complete indicator."}, {"format": "Int32(4)", "description": "Length of message contents in bytes, including self."}], "direction": "F & B"}, "comparison_hash": "484bf6e6dbb4b6de88a436069b7f81e5ad6f5631662fa4d6062699e26b515083", "manual_language": "zh", "description_zh_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><div><dl><dt><span>Byte1(&#39;c&#39;)</span> </dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code>COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span>Int32(4)</span> </dt><dd><p>\n         \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002\n        </p></dd></dl></div></dd><p><a href=\"/zh/docs/18/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "center_zh_rendered": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><div><dl><dt><span>Byte1('c')</span> </dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code>COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span>Int32(4)</span> </dt><dd><p>\n         \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002\n        </p></dd></dl></div></dd><p><a href=\"/docs/18/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "19": {"facts": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "fields": [{"format": "Byte1('c')", "description": "Identifies the message as a COPY -complete indicator."}, {"format": "Int32(4)", "description": "Length of message contents in bytes, including self."}], "tables": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "related": [{"url": "/docs/19/protocol-flow.html", "label": "\u534f\u8bae\u6d41\u7a0b\u4e0e\u4ea4\u4e92\u793a\u4f8b"}, {"url": "/docs/19/protocol-overview.html", "label": "\u534f\u8bae\u6982\u8ff0"}, {"url": "/docs/19/protocol-flow.html#PROTOCOL-COPY", "label": "COPY \u64cd\u4f5c"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v19rc1/postgresql-19rc1.tar.bz2", "label": "19rc1", "major": "19", "channel": "preview", "revision": "af105fc8e960fc836a09fc2cd7f582b49fd17675d9d36631abe3a565bfd7d701"}, "sources": [{"url": "/docs/19/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE", "path": "protocol-message-formats.html", "label": "PostgreSQL 19 English manual", "sha256": "2c15f7acfa00dccea808b6f5fc4406e3c41821ff2f6b2248c92a21d3b837500b"}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/19/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE", "anchor": "PROTOCOL-MESSAGE-FORMATS-COPYDONE", "locale": "zh-Hans", "version": "19", "build_id": 109, "page_key": "protocol-message-formats.html", "extraction": "exact-definition", "source_hash": "c7757832f98d9d448104b5321ace56ebfd57a45dc4795a1c5ab7985f6f61fb1c", "fragment_sha256": "b6a95b00bd552ba6880226d2cf5e4e02bddc9ba437b5be35e5d0628ae7793b43", "source_revision": "sha256:af105fc8e960fc836a09fc2cd7f582b49fd17675d9d36631abe3a565bfd7d701", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:65fda1f1b62a89992b84014c9157e61b67dbe8190e93945826efec668fad038c", "translated_from_revision": "sha256:af105fc8e960fc836a09fc2cd7f582b49fd17675d9d36631abe3a565bfd7d701"}, "body_sha256": "fa5a18f48201096fbef429a430dc795d1b0f39548df87bc63b3554b2acd3baa5", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "af105fc8e960fc836a09fc2cd7f582b49fd17675d9d36631abe3a565bfd7d701"}, "facts_zh": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "sections": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "center_zh": {"title": "CopyDone", "locale": "zh-Hans", "source": {"key": "copydone-f-and-b", "locale": "zh-Hans", "version": "19", "text_hash": "152a5b0b15b741d5ecec6827709f442c85445f73deee812f54cbf435c143ee0f", "collection": "protocol", "dataset_hash": "7c31b524dfe136022d39a6ae8dcfac6b3bbd5f8fdaf422536599981252aff0c9", "source_database": "center", "source_revision": "af105fc8e960fc836a09fc2cd7f582b49fd17675d9d36631abe3a565bfd7d701"}, "payload": {"facts": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "tables": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/19/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE", "anchor": "PROTOCOL-MESSAGE-FORMATS-COPYDONE", "locale": "zh-Hans", "version": "19", "build_id": 109, "page_key": "protocol-message-formats.html", "extraction": "exact-definition", "source_hash": "c7757832f98d9d448104b5321ace56ebfd57a45dc4795a1c5ab7985f6f61fb1c", "fragment_sha256": "b6a95b00bd552ba6880226d2cf5e4e02bddc9ba437b5be35e5d0628ae7793b43", "source_revision": "sha256:af105fc8e960fc836a09fc2cd7f582b49fd17675d9d36631abe3a565bfd7d701", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:65fda1f1b62a89992b84014c9157e61b67dbe8190e93945826efec668fad038c", "translated_from_revision": "sha256:af105fc8e960fc836a09fc2cd7f582b49fd17675d9d36631abe3a565bfd7d701"}, "body_sha256": "fa5a18f48201096fbef429a430dc795d1b0f39548df87bc63b3554b2acd3baa5", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "af105fc8e960fc836a09fc2cd7f582b49fd17675d9d36631abe3a565bfd7d701"}, "sections": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "description_zh": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "description_zh_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><div class=\"variablelist\"><dl class=\"variablelist\"><dt><span class=\"term\">Byte1('c')</span> </dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code class=\"command\">COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span class=\"term\">Int32(4)</span> </dt><dd><p>\n         \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002\n        </p></dd></dl></div></dd><p><a href=\"/zh/docs/19/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "summary": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "version": "19", "link_map": {"/zh/docs/19/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE": "/docs/19/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE"}, "body_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><div><dl><dt><span>Byte1(&#39;c&#39;)</span> </dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code>COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span>Int32(4)</span> </dt><dd><p>\n         \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002\n        </p></dd></dl></div></dd><p><a href=\"/zh/docs/19/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "body_sha256": "f7c800e7cc8cde75224ea5c14b86f207bea1c68797ca97c8070261f7bb88dd0d", "content_hash": "152a5b0b15b741d5ecec6827709f442c85445f73deee812f54cbf435c143ee0f", "source_database": "center", "source_revision": "af105fc8e960fc836a09fc2cd7f582b49fd17675d9d36631abe3a565bfd7d701"}, "direction": "F & B", "signature": "CopyDone (F & B)", "tables_zh": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "description": ["Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"], "manual_html": "", "manual_path": "/docs/19/protocol-message-formats.html", "sections_zh": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "localization": {"status": "complete", "sources": [{"url": "/docs/19/protocol-message-formats.html", "method": "same-major semantic node", "sha256": "c1bf02758e5b347662df055d3c8807b753fab16fc7238ed640efe95863588bff", "language": "zh", "matched_nodes": ["#PROTOCOL-MESSAGE-FORMATS/div[2]/dl[0]/dd[1]/div[0]/dl[0]/dd[3]", "#PROTOCOL-MESSAGE-FORMATS/div[2]/dl[0]/dd[37]/div[0]/dl[0]/dd[1]"]}], "language": "zh", "original_text": {"/versions/19/description/0": "CopyDone is a bidirectional protocol message. Identifies the message as a COPY -complete indicator.", "/versions/19/facts/0/label": "Direction", "/versions/19/facts/0/value": "Frontend \u2194 backend", "/versions/19/facts/1/label": "First wire field", "/versions/19/facts/2/label": "Field entries", "/versions/19/facts/3/label": "Documented flow contexts", "/versions/19/facts/3/value": "COPY Operations", "/versions/19/tables/0/title": "Wire fields in documented order", "/versions/19/related/0/label": "Protocol flow and exchange examples", "/versions/19/related/1/label": "Protocol overview", "/versions/19/related/2/label": "COPY Operations", "/versions/19/sections/0/title": "Framing and repetition", "/versions/19/tables/0/rows/0/c2": "Identifies the message as a COPY -complete indicator.", "/versions/19/tables/0/rows/1/c2": "Length of message contents in bytes, including self.", "/versions/19/sections/0/paragraphs/0": "The complete definition below retains repetition, counts and conditional fields. A numbered table row is a documented field definition, not a fixed byte offset. Integer encodings and flow rules follow the same-version protocol chapter.", "/versions/19/tables/0/columns/0/label": "Position", "/versions/19/tables/0/columns/1/label": "Format", "/versions/19/tables/0/columns/2/label": "Meaning"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "8af93e346aa1203b12569dbcba78bbf37501b0b8782329d12bc4bf30d6dade27", "canonical_center_text_hash": "152a5b0b15b741d5ecec6827709f442c85445f73deee812f54cbf435c143ee0f"}, "description_zh": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "comparison_data": {"fields": [{"format": "Byte1('c')", "description": "Identifies the message as a COPY -complete indicator."}, {"format": "Int32(4)", "description": "Length of message contents in bytes, including self."}], "direction": "F & B"}, "comparison_hash": "484bf6e6dbb4b6de88a436069b7f81e5ad6f5631662fa4d6062699e26b515083", "manual_language": "zh", "description_zh_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><div><dl><dt><span>Byte1(&#39;c&#39;)</span> </dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code>COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span>Int32(4)</span> </dt><dd><p>\n         \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002\n        </p></dd></dl></div></dd><p><a href=\"/zh/docs/19/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "source_revalidation": {"kind": "static-same-version-source-and-manual-replay", "audit": "wiki-audit-20261023", "runtime_rerun": false, "compared_fields": "entity membership and source-derived facts; presentation markup normalized", "source_revision": "af105fc8e960fc836a09fc2cd7f582b49fd17675d9d36631abe3a565bfd7d701", "previous_source_revision": "83157ee9c599d03b2f7a3d73ef3a56ec24e0e79cc2b3501a64d1364f56398c86"}}, "20": {"facts": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "fields": [{"format": "Byte1('c')", "description": "Identifies the message as a COPY -complete indicator."}, {"format": "Int32(4)", "description": "Length of message contents in bytes, including self."}], "tables": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "related": [{"url": "/docs/devel/protocol-flow.html", "label": "\u534f\u8bae\u6d41\u7a0b\u4e0e\u4ea4\u4e92\u793a\u4f8b"}, {"url": "/docs/devel/protocol-overview.html", "label": "\u534f\u8bae\u6982\u8ff0"}, {"url": "/docs/devel/protocol-flow.html#PROTOCOL-COPY", "label": "COPY \u64cd\u4f5c"}], "release": {"ref": "https://ftp.postgresql.org/pub/snapshot/dev/postgresql-snapshot.tar.bz2", "label": "20devel", "major": "20", "channel": "devel", "revision": "49c73aa4c9cacef8ca979276a28ac416c08e9e54c9baee4ae5fd116a35fa13ac"}, "sources": [{"url": "/docs/devel/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE", "path": "protocol-message-formats.html", "label": "PostgreSQL 20 English manual", "sha256": "139753a4086271f4e3eaec3d9dae795c6d6f73bf0af9ca2c02fc2c177e5526fd"}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/devel/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE", "anchor": "PROTOCOL-MESSAGE-FORMATS-COPYDONE", "locale": "zh-Hans", "version": "20", "build_id": 111, "page_key": "protocol-message-formats.html", "extraction": "exact-definition", "source_hash": "bbca20c3d3805e49be06abbe10fde73aa69797265af25fde9edd06acdcac49cd", "fragment_sha256": "b6a95b00bd552ba6880226d2cf5e4e02bddc9ba437b5be35e5d0628ae7793b43", "source_revision": "sha256:49c73aa4c9cacef8ca979276a28ac416c08e9e54c9baee4ae5fd116a35fa13ac", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:98c980963b401d40bd50df72b909e7523e3148b8fdb48edd897de2efb67e5235", "translated_from_revision": "sha256:49c73aa4c9cacef8ca979276a28ac416c08e9e54c9baee4ae5fd116a35fa13ac"}, "body_sha256": "d43b27b2e8865be4bc09bd5f507b2152b77bda8e6e592503232789a99940e4d9", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "49c73aa4c9cacef8ca979276a28ac416c08e9e54c9baee4ae5fd116a35fa13ac"}, "facts_zh": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "sections": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "center_zh": {"title": "CopyDone", "locale": "zh-Hans", "source": {"key": "copydone-f-and-b", "locale": "zh-Hans", "version": "20", "text_hash": "2fc51a85597a75bf97b5df1714b69b6b2305556578b3952e9f9e13e0a3415ebd", "collection": "protocol", "dataset_hash": "7c31b524dfe136022d39a6ae8dcfac6b3bbd5f8fdaf422536599981252aff0c9", "source_database": "center", "source_revision": "49c73aa4c9cacef8ca979276a28ac416c08e9e54c9baee4ae5fd116a35fa13ac"}, "payload": {"facts": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "tables": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/devel/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE", "anchor": "PROTOCOL-MESSAGE-FORMATS-COPYDONE", "locale": "zh-Hans", "version": "20", "build_id": 111, "page_key": "protocol-message-formats.html", "extraction": "exact-definition", "source_hash": "bbca20c3d3805e49be06abbe10fde73aa69797265af25fde9edd06acdcac49cd", "fragment_sha256": "b6a95b00bd552ba6880226d2cf5e4e02bddc9ba437b5be35e5d0628ae7793b43", "source_revision": "sha256:49c73aa4c9cacef8ca979276a28ac416c08e9e54c9baee4ae5fd116a35fa13ac", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:98c980963b401d40bd50df72b909e7523e3148b8fdb48edd897de2efb67e5235", "translated_from_revision": "sha256:49c73aa4c9cacef8ca979276a28ac416c08e9e54c9baee4ae5fd116a35fa13ac"}, "body_sha256": "d43b27b2e8865be4bc09bd5f507b2152b77bda8e6e592503232789a99940e4d9", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "49c73aa4c9cacef8ca979276a28ac416c08e9e54c9baee4ae5fd116a35fa13ac"}, "sections": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "description_zh": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "description_zh_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><div class=\"variablelist\"><dl class=\"variablelist\"><dt><span class=\"term\">Byte1('c')</span> </dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code class=\"command\">COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span class=\"term\">Int32(4)</span> </dt><dd><p>\n         \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002\n        </p></dd></dl></div></dd><p><a href=\"/zh/docs/devel/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "summary": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "version": "20", "link_map": {"/zh/docs/devel/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE": "/docs/devel/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE"}, "body_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><div><dl><dt><span>Byte1(&#39;c&#39;)</span> </dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code>COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span>Int32(4)</span> </dt><dd><p>\n         \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002\n        </p></dd></dl></div></dd><p><a href=\"/zh/docs/devel/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "body_sha256": "74f0c717524d3a263aff3ac64ef0b843b3c68898aca0f028d68f887f5a026ba1", "content_hash": "2fc51a85597a75bf97b5df1714b69b6b2305556578b3952e9f9e13e0a3415ebd", "source_database": "center", "source_revision": "49c73aa4c9cacef8ca979276a28ac416c08e9e54c9baee4ae5fd116a35fa13ac"}, "direction": "F & B", "signature": "CopyDone (F & B)", "tables_zh": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "description": ["Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"], "manual_html": "", "manual_path": "/docs/devel/protocol-message-formats.html", "sections_zh": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "localization": {"status": "complete", "sources": [{"url": "/docs/devel/protocol-message-formats.html", "method": "same-major semantic node", "sha256": "cacb5413fe2995ee79c58230881c08df2077aa918b5f243895b62e065ee7448e", "language": "zh", "matched_nodes": ["#PROTOCOL-MESSAGE-FORMATS/div[2]/dl[0]/dd[1]/div[0]/dl[0]/dd[3]", "#PROTOCOL-MESSAGE-FORMATS/div[2]/dl[0]/dd[37]/div[0]/dl[0]/dd[1]"]}], "language": "zh", "original_text": {"/summary": "CopyDone is a bidirectional protocol message. Identifies the message as a COPY -complete indicator.", "/category": "Bidirectional messages", "/versions/20/description/0": "CopyDone is a bidirectional protocol message. Identifies the message as a COPY -complete indicator.", "/versions/20/facts/0/label": "Direction", "/versions/20/facts/0/value": "Frontend \u2194 backend", "/versions/20/facts/1/label": "First wire field", "/versions/20/facts/2/label": "Field entries", "/versions/20/facts/3/label": "Documented flow contexts", "/versions/20/facts/3/value": "COPY Operations", "/versions/20/tables/0/title": "Wire fields in documented order", "/versions/20/related/0/label": "Protocol flow and exchange examples", "/versions/20/related/1/label": "Protocol overview", "/versions/20/related/2/label": "COPY Operations", "/versions/20/sections/0/title": "Framing and repetition", "/versions/20/tables/0/rows/0/c2": "Identifies the message as a COPY -complete indicator.", "/versions/20/tables/0/rows/1/c2": "Length of message contents in bytes, including self.", "/versions/20/sections/0/paragraphs/0": "The complete definition below retains repetition, counts and conditional fields. A numbered table row is a documented field definition, not a fixed byte offset. Integer encodings and flow rules follow the same-version protocol chapter.", "/versions/20/tables/0/columns/0/label": "Position", "/versions/20/tables/0/columns/1/label": "Format", "/versions/20/tables/0/columns/2/label": "Meaning"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "24ea19969493f3bb49473e75ec9b7c5e189c6a8460821aab289f9f79ee458175", "canonical_center_text_hash": "2fc51a85597a75bf97b5df1714b69b6b2305556578b3952e9f9e13e0a3415ebd"}, "description_zh": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "comparison_data": {"fields": [{"format": "Byte1('c')", "description": "Identifies the message as a COPY -complete indicator."}, {"format": "Int32(4)", "description": "Length of message contents in bytes, including self."}], "direction": "F & B"}, "comparison_hash": "484bf6e6dbb4b6de88a436069b7f81e5ad6f5631662fa4d6062699e26b515083", "manual_language": "zh", "description_zh_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><div><dl><dt><span>Byte1(&#39;c&#39;)</span> </dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code>COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span>Int32(4)</span> </dt><dd><p>\n         \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002\n        </p></dd></dl></div></dd><p><a href=\"/zh/docs/devel/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "source_revalidation": {"kind": "static-same-version-source-and-manual-replay", "audit": "wiki-audit-20261023", "runtime_rerun": false, "compared_fields": "entity membership and source-derived facts; presentation markup normalized", "source_revision": "49c73aa4c9cacef8ca979276a28ac416c08e9e54c9baee4ae5fd116a35fa13ac", "previous_source_revision": "4d3346909b201ac1648232cf290462a7070c119326f56196f1f0253ed80fae41"}}}}, "snapshot": {"facts": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "fields": [{"format": "Byte1('c')", "description": "Identifies the message as a COPY -complete indicator."}, {"format": "Int32(4)", "description": "Length of message contents in bytes, including self."}], "tables": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "related": [{"url": "/docs/18/protocol-flow.html", "label": "\u534f\u8bae\u6d41\u7a0b\u4e0e\u4ea4\u4e92\u793a\u4f8b"}, {"url": "/docs/18/protocol-overview.html", "label": "\u534f\u8bae\u6982\u8ff0"}, {"url": "/docs/18/protocol-flow.html#PROTOCOL-COPY", "label": "COPY \u64cd\u4f5c"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v18.6/postgresql-18.6.tar.bz2", "label": "18.6", "major": "18", "channel": "stable", "revision": "555610c24d53e4316da5b7d3fc25c279d96856d5e0e23ee308c328c5fa881d9f"}, "sources": [{"url": "/docs/18/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE", "path": "protocol-message-formats.html", "label": "PostgreSQL 18 English manual", "sha256": "53f37652ac2c089e30ada87d8aee7bdd0f26695b03f275302e526a807d2a1f23"}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/18/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE", "anchor": "PROTOCOL-MESSAGE-FORMATS-COPYDONE", "locale": "zh-Hans", "version": "18", "build_id": 107, "page_key": "protocol-message-formats.html", "extraction": "exact-definition", "source_hash": "0be0a37b38d80c96c157ca9fcfe9222995654664aad8136f7ac2b1b552f6753a", "fragment_sha256": "b6a95b00bd552ba6880226d2cf5e4e02bddc9ba437b5be35e5d0628ae7793b43", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:08e987a66af27b98444a8057c256314eafa13611a3fb9e888214fc436824244b", "translated_from_revision": null}, "body_sha256": "6a7904a4a5d0b9e4722ef09acbac7f8aa316843f52587a50033d0b0d46c1637a", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "555610c24d53e4316da5b7d3fc25c279d96856d5e0e23ee308c328c5fa881d9f"}, "facts_zh": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "sections": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "center_zh": {"title": "CopyDone", "locale": "zh-Hans", "source": {"key": "copydone-f-and-b", "locale": "zh-Hans", "version": "18", "text_hash": "06b62ff318015559e5f8989383acae881210aa3e0e72bdcb8787b26c4076112a", "collection": "protocol", "dataset_hash": "7c31b524dfe136022d39a6ae8dcfac6b3bbd5f8fdaf422536599981252aff0c9", "source_database": "center", "source_revision": "555610c24d53e4316da5b7d3fc25c279d96856d5e0e23ee308c328c5fa881d9f"}, "payload": {"facts": [{"label": "\u65b9\u5411", "value": "\u524d\u7aef \u2194 \u540e\u7aef"}, {"label": "\u9996\u4e2a\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "value": "Byte1('c')"}, {"label": "\u5b57\u6bb5\u6761\u76ee", "value": "2"}, {"label": "\u624b\u518c\u4e2d\u7684\u4ea4\u4e92\u9636\u6bb5", "value": "COPY \u64cd\u4f5c"}], "tables": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-identity", "manual": {"url": "/zh/docs/18/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE", "anchor": "PROTOCOL-MESSAGE-FORMATS-COPYDONE", "locale": "zh-Hans", "version": "18", "build_id": 107, "page_key": "protocol-message-formats.html", "extraction": "exact-definition", "source_hash": "0be0a37b38d80c96c157ca9fcfe9222995654664aad8136f7ac2b1b552f6753a", "fragment_sha256": "b6a95b00bd552ba6880226d2cf5e4e02bddc9ba437b5be35e5d0628ae7793b43", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:08e987a66af27b98444a8057c256314eafa13611a3fb9e888214fc436824244b", "translated_from_revision": null}, "body_sha256": "6a7904a4a5d0b9e4722ef09acbac7f8aa316843f52587a50033d0b0d46c1637a", "runtime_rerun": false, "authored_translation": "source-derived-identity", "source_facts_revision": "555610c24d53e4316da5b7d3fc25c279d96856d5e0e23ee308c328c5fa881d9f"}, "sections": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "description_zh": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "description_zh_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><div class=\"variablelist\"><dl class=\"variablelist\"><dt><span class=\"term\">Byte1('c')</span> </dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code class=\"command\">COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span class=\"term\">Int32(4)</span> </dt><dd><p>\n         \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002\n        </p></dd></dl></div></dd><p><a href=\"/zh/docs/18/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "summary": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "version": "18", "link_map": {"/zh/docs/18/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE": "/docs/18/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE"}, "body_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><div><dl><dt><span>Byte1(&#39;c&#39;)</span> </dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code>COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span>Int32(4)</span> </dt><dd><p>\n         \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002\n        </p></dd></dl></div></dd><p><a href=\"/zh/docs/18/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "body_sha256": "c431fbca62c5ab76fe0bac77ca39e5fefa423db548ca56a2a96de7d63092abe7", "content_hash": "06b62ff318015559e5f8989383acae881210aa3e0e72bdcb8787b26c4076112a", "source_database": "center", "source_revision": "555610c24d53e4316da5b7d3fc25c279d96856d5e0e23ee308c328c5fa881d9f"}, "direction": "F & B", "signature": "CopyDone (F & B)", "tables_zh": [{"key": "fields", "rows": [{"c0": "1", "c1": "Byte1('c')", "c2": "\u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002"}, {"c0": "2", "c1": "Int32(4)", "c2": "\u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"}], "title": "\u6309\u624b\u518c\u987a\u5e8f\u6392\u5217\u7684\u7ebf\u4e0a\u534f\u8bae\u5b57\u6bb5", "columns": [{"key": "c0", "label": "\u4f4d\u7f6e"}, {"key": "c1", "label": "\u683c\u5f0f"}, {"key": "c2", "label": "\u542b\u4e49"}]}], "description": ["Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002"], "manual_html": "", "manual_path": "/docs/18/protocol-message-formats.html", "sections_zh": [{"title": "\u6d88\u606f\u8fb9\u754c\u4e0e\u91cd\u590d\u5b57\u6bb5", "paragraphs": ["\u4e0b\u65b9\u5b8c\u6574\u5b9a\u4e49\u4fdd\u7559\u91cd\u590d\u9879\u3001\u8ba1\u6570\u4e0e\u6761\u4ef6\u5b57\u6bb5\u3002\u8868\u683c\u884c\u53f7\u8868\u793a\u6587\u6863\u4e2d\u7684\u5b57\u6bb5\u5b9a\u4e49\uff0c\u5e76\u975e\u56fa\u5b9a\u5b57\u8282\u504f\u79fb\u91cf\u3002\u6574\u6570\u7f16\u7801\u4e0e\u4ea4\u4e92\u6d41\u7a0b\u4ee5\u540c\u7248\u672c\u534f\u8bae\u7ae0\u8282\u4e3a\u51c6\u3002"]}], "localization": {"status": "complete", "sources": [{"url": "/docs/18/protocol-message-formats.html", "method": "same-major semantic node", "sha256": "add610bc3053cbc2f8d57b8a89e7e9d17dca8906d66221e9268c1dd1b390d0b5", "language": "zh", "matched_nodes": ["#PROTOCOL-MESSAGE-FORMATS/div[2]/dl[0]/dd[1]/div[0]/dl[0]/dd[3]", "#PROTOCOL-MESSAGE-FORMATS/div[2]/dl[0]/dd[37]/div[0]/dl[0]/dd[1]"]}], "language": "zh", "original_text": {"/versions/18/description/0": "CopyDone is a bidirectional protocol message. Identifies the message as a COPY -complete indicator.", "/versions/18/facts/0/label": "Direction", "/versions/18/facts/0/value": "Frontend \u2194 backend", "/versions/18/facts/1/label": "First wire field", "/versions/18/facts/2/label": "Field entries", "/versions/18/facts/3/label": "Documented flow contexts", "/versions/18/facts/3/value": "COPY Operations", "/versions/18/tables/0/title": "Wire fields in documented order", "/versions/18/related/0/label": "Protocol flow and exchange examples", "/versions/18/related/1/label": "Protocol overview", "/versions/18/related/2/label": "COPY Operations", "/versions/18/sections/0/title": "Framing and repetition", "/versions/18/tables/0/rows/0/c2": "Identifies the message as a COPY -complete indicator.", "/versions/18/tables/0/rows/1/c2": "Length of message contents in bytes, including self.", "/versions/18/sections/0/paragraphs/0": "The complete definition below retains repetition, counts and conditional fields. A numbered table row is a documented field definition, not a fixed byte offset. Integer encodings and flow rules follow the same-version protocol chapter.", "/versions/18/tables/0/columns/0/label": "Position", "/versions/18/tables/0/columns/1/label": "Format", "/versions/18/tables/0/columns/2/label": "Meaning"}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "419cfe9751ea3cdd35f825680b582a53a9828a418bfee000dbbd150f57df71be", "canonical_center_text_hash": "06b62ff318015559e5f8989383acae881210aa3e0e72bdcb8787b26c4076112a"}, "description_zh": "Byte1('c') \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a COPY \u5b8c\u6210\u6307\u793a\u7b26\u3002 Int32(4) \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002", "comparison_data": {"fields": [{"format": "Byte1('c')", "description": "Identifies the message as a COPY -complete indicator."}, {"format": "Int32(4)", "description": "Length of message contents in bytes, including self."}], "direction": "F & B"}, "comparison_hash": "484bf6e6dbb4b6de88a436069b7f81e5ad6f5631662fa4d6062699e26b515083", "manual_language": "zh", "description_zh_html": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><div><dl><dt><span>Byte1(&#39;c&#39;)</span> </dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code>COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span>Int32(4)</span> </dt><dd><p>\n         \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002\n        </p></dd></dl></div></dd><p><a href=\"/zh/docs/18/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "center_zh_rendered": "<p>\u534f\u8bae\u6d88\u606f CopyDone (F &amp; B)\u3002</p><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u5b9a\u4e49</h3><dd><div><dl><dt><span>Byte1('c')</span> </dt><dd><p>\n         \u5c06\u6d88\u606f\u6807\u8bc6\u4e3a <code>COPY</code> \u5b8c\u6210\u6307\u793a\u7b26\u3002\n        </p></dd><dt><span>Int32(4)</span> </dt><dd><p>\n         \u6d88\u606f\u5185\u5bb9\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\uff0c\u5305\u62ec\u5176\u81ea\u8eab\u3002\n        </p></dd></dl></div></dd><p><a href=\"/docs/18/protocol-message-formats.html#PROTOCOL-MESSAGE-FORMATS-COPYDONE\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "comparison": {"left": "17", "right": "18", "status": "unchanged", "diff": ""}}