{"kind": "language", "major": "18", "item": {"slug": "plpythonu", "name": "plpythonu", "name_zh": "", "category": "PL/Python", "summary": "\u6240\u9009\u7248\u672c\u672a\u6536\u5f55\u6b64\u6761\u76ee\u3002", "aliases": [], "content_hash": "bd2458cd134d23f55d01de00a5ada6372fac4aa17da36f0e1abe4254a5fe8fcd", "versions": {"10": {"facts": [{"label": "\u79cd\u7c7b", "value": "\u968f\u6e90\u7801\u63d0\u4f9b\u7684\u8fc7\u7a0b\u8bed\u8a00\u53d8\u4f53"}, {"label": "\u64cd\u4f5c\u7b26\u5bb6\u65cf", "value": "PL/Python"}, {"label": "\u53ef\u4fe1", "value": "f"}, {"label": "\u5904\u7406\u51fd\u6570", "value": "plpython_call_handler"}, {"label": "\u5185\u8054\u4ee3\u7801\u5904\u7406\u51fd\u6570", "value": "plpython_inline_handler"}, {"label": "\u6821\u9a8c\u51fd\u6570", "value": "plpython_validator"}, {"label": "\u5e93", "value": "$libdir/plpython2"}, {"label": "\u9ed8\u8ba4\u7248\u672c", "value": "1.0"}, {"label": "\u6a21\u5757\u8def\u5f84", "value": "$libdir/plpython2"}, {"label": "\u6ce8\u91ca", "value": "PL/PythonU \u975e\u53ef\u4fe1\u8fc7\u7a0b\u8bed\u8a00"}], "tables": [], "aliases": [], "related": [{"url": "/docs/10/plpython-data.html", "label": "\u6570\u636e\u503c"}, {"url": "/docs/10/plpython-database.html", "label": "\u6570\u636e\u5e93\u8bbf\u95ee"}, {"url": "/docs/10/plpython-do.html", "label": "\u533f\u540d\u4ee3\u7801\u5757"}, {"url": "/docs/10/plpython-envar.html", "label": "\u73af\u5883\u53d8\u91cf"}, {"url": "/docs/10/plpython-funcs.html", "label": "PL/Python \u51fd\u6570"}, {"url": "/docs/10/plpython-python23.html", "label": "plpython-python23"}, {"url": "/docs/10/plpython-sharing.html", "label": "\u5171\u4eab\u6570\u636e"}, {"url": "/docs/10/plpython-subtransaction.html", "label": "\u663e\u5f0f\u5b50\u4e8b\u52a1"}, {"url": "/docs/10/plpython-trigger.html", "label": "\u89e6\u53d1\u5668\u51fd\u6570"}, {"url": "/docs/10/plpython-util.html", "label": "\u8f85\u52a9\u51fd\u6570"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v10.23/postgresql-10.23.tar.bz2", "label": "10.23", "major": "10", "channel": "historical", "revision": "94a4b2528372458e5662c18d406629266667c437198160a18cdfd2c4a4d6eee9", "source_sha256": "94a4b2528372458e5662c18d406629266667c437198160a18cdfd2c4a4d6eee9", "catalog_fingerprint": "691be281b476dde4374d7f805b2bacc2e75bdef40f1e9d3d42e91f97fe95cfd0"}, "sources": [{"url": "https://ftp.postgresql.org/pub/source/v10.23/postgresql-10.23.tar.bz2", "label": "Matching PostgreSQL source archive", "sha256": "94a4b2528372458e5662c18d406629266667c437198160a18cdfd2c4a4d6eee9"}, {"url": "/docs/10/plpython.html", "path": "plpython.html", "label": "PostgreSQL 10 English manual", "sha256": "777855a2e6a6df222fc5e19074d038225bdeba971ad195673ff034adb58aeff1"}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-structured-summary", "manual": {"url": "/zh/docs/10/plpython.html", "anchor": "", "locale": "zh-Hans", "version": "10", "build_id": 63, "page_key": "plpython.html", "extraction": "concept-introduction", "source_hash": "4f4e3be12b0d0f5f1adcc4e7007d4b7d9351ae46c70d8a69cb226a0055665a9a", "fragment_sha256": "4df1d89cd30392db16264df97cf58715d07ca94d90e189787ebda0184bd9b383", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "snapshot:sha256:62997ea80516ad012fbf6359de33f3b016b54c47e2df76e75606116b4baaf8e5", "translated_from_revision": null}, "body_sha256": "f283650d79b23ff01579fa05c48dc88909027f61b6e00da60e47a92e227b36c5", "runtime_rerun": false, "authored_translation": "source-derived-structured-summary", "source_facts_revision": "94a4b2528372458e5662c18d406629266667c437198160a18cdfd2c4a4d6eee9"}, "facts_zh": [{"label": "\u79cd\u7c7b", "value": "\u968f\u6e90\u7801\u63d0\u4f9b\u7684\u8fc7\u7a0b\u8bed\u8a00\u53d8\u4f53"}, {"label": "\u64cd\u4f5c\u7b26\u5bb6\u65cf", "value": "PL/Python"}, {"label": "\u53ef\u4fe1", "value": "f"}, {"label": "\u5904\u7406\u51fd\u6570", "value": "plpython_call_handler"}, {"label": "\u5185\u8054\u4ee3\u7801\u5904\u7406\u51fd\u6570", "value": "plpython_inline_handler"}, {"label": "\u6821\u9a8c\u51fd\u6570", "value": "plpython_validator"}, {"label": "\u5e93", "value": "$libdir/plpython2"}, {"label": "\u9ed8\u8ba4\u7248\u672c", "value": "1.0"}, {"label": "\u6a21\u5757\u8def\u5f84", "value": "$libdir/plpython2"}, {"label": "\u6ce8\u91ca", "value": "PL/PythonU \u975e\u53ef\u4fe1\u8fc7\u7a0b\u8bed\u8a00"}], "sections": [{"code": "/* src/pl/plpython/plpythonu--1.0.sql */\n\n/*\n * Currently, all the interesting stuff is done by CREATE LANGUAGE.\n * Later we will probably \"dumb down\" that command and put more of the\n * knowledge into this script.\n */\n\nCREATE PROCEDURAL LANGUAGE plpythonu;\n\nCOMMENT ON PROCEDURAL LANGUAGE plpythonu IS 'PL/PythonU untrusted procedural language';", "title": "\u540c\u6784\u5efa\u6e90\u7801\u4e2d\u7684\u5b89\u88c5\u5b9a\u4e49", "paragraphs": ["\u6b64\u6269\u5c55\u968f\u6e90\u7801\u63d0\u4f9b\uff1b\u6536\u5f55\u5b83\u5e76\u4e0d\u8868\u793a\u5df2\u5b89\u88c5\u8be5\u8bed\u8a00\u6216\u5916\u90e8\u8fd0\u884c\u65f6\u3002"]}], "center_zh": {"title": "plpythonu", "locale": "zh-Hans", "source": {"key": "plpythonu", "locale": "zh-Hans", "version": "10", "text_hash": "46919e532786f63e97d4479ffc2e4d70ace722b0c86e1750ab03d42cba160e86", "collection": "language", "dataset_hash": "7c31b524dfe136022d39a6ae8dcfac6b3bbd5f8fdaf422536599981252aff0c9", "source_database": "center", "source_revision": "94a4b2528372458e5662c18d406629266667c437198160a18cdfd2c4a4d6eee9"}, "payload": {"facts": [{"label": "\u79cd\u7c7b", "value": "\u968f\u6e90\u7801\u63d0\u4f9b\u7684\u8fc7\u7a0b\u8bed\u8a00\u53d8\u4f53"}, {"label": "\u64cd\u4f5c\u7b26\u5bb6\u65cf", "value": "PL/Python"}, {"label": "\u53ef\u4fe1", "value": "f"}, {"label": "\u5904\u7406\u51fd\u6570", "value": "plpython_call_handler"}, {"label": "\u5185\u8054\u4ee3\u7801\u5904\u7406\u51fd\u6570", "value": "plpython_inline_handler"}, {"label": "\u6821\u9a8c\u51fd\u6570", "value": "plpython_validator"}, {"label": "\u5e93", "value": "$libdir/plpython2"}, {"label": "\u9ed8\u8ba4\u7248\u672c", "value": "1.0"}, {"label": "\u6a21\u5757\u8def\u5f84", "value": "$libdir/plpython2"}, {"label": "\u6ce8\u91ca", "value": "PL/PythonU \u975e\u53ef\u4fe1\u8fc7\u7a0b\u8bed\u8a00"}], "tables": [], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-structured-summary", "manual": {"url": "/zh/docs/10/plpython.html", "anchor": "", "locale": "zh-Hans", "version": "10", "build_id": 63, "page_key": "plpython.html", "extraction": "concept-introduction", "source_hash": "4f4e3be12b0d0f5f1adcc4e7007d4b7d9351ae46c70d8a69cb226a0055665a9a", "fragment_sha256": "4df1d89cd30392db16264df97cf58715d07ca94d90e189787ebda0184bd9b383", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "snapshot:sha256:62997ea80516ad012fbf6359de33f3b016b54c47e2df76e75606116b4baaf8e5", "translated_from_revision": null}, "body_sha256": "f283650d79b23ff01579fa05c48dc88909027f61b6e00da60e47a92e227b36c5", "runtime_rerun": false, "authored_translation": "source-derived-structured-summary", "source_facts_revision": "94a4b2528372458e5662c18d406629266667c437198160a18cdfd2c4a4d6eee9"}, "sections": [{"code": "/* src/pl/plpython/plpythonu--1.0.sql */\n\n/*\n * Currently, all the interesting stuff is done by CREATE LANGUAGE.\n * Later we will probably \"dumb down\" that command and put more of the\n * knowledge into this script.\n */\n\nCREATE PROCEDURAL LANGUAGE plpythonu;\n\nCOMMENT ON PROCEDURAL LANGUAGE plpythonu IS 'PL/PythonU untrusted procedural language';", "title": "\u540c\u6784\u5efa\u6e90\u7801\u4e2d\u7684\u5b89\u88c5\u5b9a\u4e49", "paragraphs": ["\u6b64\u6269\u5c55\u968f\u6e90\u7801\u63d0\u4f9b\uff1b\u6536\u5f55\u5b83\u5e76\u4e0d\u8868\u793a\u5df2\u5b89\u88c5\u8be5\u8bed\u8a00\u6216\u5916\u90e8\u8fd0\u884c\u65f6\u3002"]}], "description_zh": "\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002", "description_zh_html": "<p>\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002</p><dl><dt>\u8fd0\u7b97\u7b26\u65cf</dt><dd><code>PL/Python</code></dd><dt>\u5904\u7406\u51fd\u6570</dt><dd><code>plpython_call_handler</code></dd><dt>\u5e93</dt><dd><code>$libdir/plpython2</code></dd><dt>\u53d7\u4fe1\u4efb</dt><dd><code>\u5426</code></dd><dt>\u9a8c\u8bc1\u51fd\u6570</dt><dd><code>plpython_validator</code></dd><dt>\u5185\u8054\u5904\u7406\u51fd\u6570</dt><dd><code>plpython_inline_handler</code></dd><dt>\u9ed8\u8ba4\u7248\u672c</dt><dd><code>1.0</code></dd><dt>\u6a21\u5757\u8def\u5f84</dt><dd><code>$libdir/plpython2</code></dd></dl><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p><span class=\"application\">PL/Python</span> \u8fc7\u7a0b\u8bed\u8a00\u5141\u8bb8\u7528 <a class=\"ulink\" href=\"http://www.python.org\">Python \u8bed\u8a00</a>\u7f16\u5199 <span class=\"productname\">PostgreSQL</span> \u51fd\u6570\u3002</p><p>  \u8981\u5728\u7279\u5b9a\u6570\u636e\u5e93\u4e2d\u5b89\u88c5 PL/Python\uff0c\u53ef\u4f7f\u7528 <code class=\"literal\">CREATE EXTENSION plpythonu</code>\uff08\u53e6\u89c1<a class=\"xref\" href=\"/zh/docs/10/plpython.html#PLPYTHON-PYTHON23\">\u7b2c\u00a045.1\u00a0\u8282</a>\uff09\u3002\n </p><p>  PL/Python \u53ea\u80fd\u4f5c\u4e3a\u4e00\u79cd<span class=\"quote\">\u201c<span class=\"quote\">\u4e0d\u53d7\u4fe1\u4efb\u7684</span>\u201d</span>\u8bed\u8a00\u4f7f\u7528\uff0c\u8fd9\u610f\u5473\u7740\u5b83\u4e0d\u63d0\u4f9b\u4efb\u4f55\u673a\u5236\u6765\u9650\u5236\u7528\u6237\u80fd\u5728\u5176\u4e2d\u505a\u4ec0\u4e48\uff0c\u56e0\u6b64\u5176\u540d\u79f0\u4e3a <code class=\"literal\">plpythonu</code>\u3002\u5982\u679c\u5c06\u6765\u80fd\u5728 Python \u4e2d\u5f00\u53d1\u51fa\u5b89\u5168\u7684\u6267\u884c\u673a\u5236\uff0c\u53d7\u4fe1\u4efb\u7684\u53d8\u4f53 <code class=\"literal\">plpython</code> \u53ef\u80fd\u4f1a\u51fa\u73b0\u3002\u4f7f\u7528\u4e0d\u53d7\u4fe1\u4efb\u7684 PL/Python \u7f16\u5199\u51fd\u6570\u65f6\uff0c\u51fd\u6570\u7f16\u5199\u8005\u5fc5\u987b\u786e\u4fdd\u8be5\u51fd\u6570\u4e0d\u4f1a\u88ab\u7528\u6765\u505a\u4efb\u4f55\u4e0d\u5e0c\u671b\u53d1\u751f\u7684\u4e8b\u60c5\uff0c\u56e0\u4e3a\u5b83\u80fd\u591f\u505a\u5230\u4efb\u4f55\u4ee5\u6570\u636e\u5e93\u7ba1\u7406\u5458\u8eab\u4efd\u767b\u5f55\u7684\u7528\u6237\u6240\u80fd\u505a\u7684\u4e8b\u60c5\u3002\u53ea\u6709\u8d85\u7ea7\u7528\u6237\u624d\u80fd\u5728 <code class=\"literal\">plpythonu</code> \u8fd9\u7c7b\u4e0d\u53d7\u4fe1\u4efb\u7684\u8bed\u8a00\u4e2d\u521b\u5efa\u51fd\u6570\u3002\n </p><p><a href=\"/zh/docs/10/plpython.html\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "summary": "\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002", "version": "10", "link_map": {"/zh/docs/10/plpython.html": "/docs/10/plpython.html", "/zh/docs/10/plpython.html#PLPYTHON-PYTHON23": "/docs/10/plpython.html#PLPYTHON-PYTHON23"}, "body_html": "<p>\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002</p><dl><dt>\u8fd0\u7b97\u7b26\u65cf</dt><dd><code>PL/Python</code></dd><dt>\u5904\u7406\u51fd\u6570</dt><dd><code>plpython_call_handler</code></dd><dt>\u5e93</dt><dd><code>$libdir/plpython2</code></dd><dt>\u53d7\u4fe1\u4efb</dt><dd><code>\u5426</code></dd><dt>\u9a8c\u8bc1\u51fd\u6570</dt><dd><code>plpython_validator</code></dd><dt>\u5185\u8054\u5904\u7406\u51fd\u6570</dt><dd><code>plpython_inline_handler</code></dd><dt>\u9ed8\u8ba4\u7248\u672c</dt><dd><code>1.0</code></dd><dt>\u6a21\u5757\u8def\u5f84</dt><dd><code>$libdir/plpython2</code></dd></dl><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p><span>PL/Python</span> \u8fc7\u7a0b\u8bed\u8a00\u5141\u8bb8\u7528 <a href=\"http://www.python.org\" rel=\"nofollow\">Python \u8bed\u8a00</a>\u7f16\u5199 <span>PostgreSQL</span> \u51fd\u6570\u3002</p><p>  \u8981\u5728\u7279\u5b9a\u6570\u636e\u5e93\u4e2d\u5b89\u88c5 PL/Python\uff0c\u53ef\u4f7f\u7528 <code>CREATE EXTENSION plpythonu</code>\uff08\u53e6\u89c1<a href=\"/zh/docs/10/plpython.html#PLPYTHON-PYTHON23\" rel=\"nofollow\">\u7b2c\u00a045.1\u00a0\u8282</a>\uff09\u3002\n </p><p>  PL/Python \u53ea\u80fd\u4f5c\u4e3a\u4e00\u79cd<span>\u201c<span>\u4e0d\u53d7\u4fe1\u4efb\u7684</span>\u201d</span>\u8bed\u8a00\u4f7f\u7528\uff0c\u8fd9\u610f\u5473\u7740\u5b83\u4e0d\u63d0\u4f9b\u4efb\u4f55\u673a\u5236\u6765\u9650\u5236\u7528\u6237\u80fd\u5728\u5176\u4e2d\u505a\u4ec0\u4e48\uff0c\u56e0\u6b64\u5176\u540d\u79f0\u4e3a <code>plpythonu</code>\u3002\u5982\u679c\u5c06\u6765\u80fd\u5728 Python \u4e2d\u5f00\u53d1\u51fa\u5b89\u5168\u7684\u6267\u884c\u673a\u5236\uff0c\u53d7\u4fe1\u4efb\u7684\u53d8\u4f53 <code>plpython</code> \u53ef\u80fd\u4f1a\u51fa\u73b0\u3002\u4f7f\u7528\u4e0d\u53d7\u4fe1\u4efb\u7684 PL/Python \u7f16\u5199\u51fd\u6570\u65f6\uff0c\u51fd\u6570\u7f16\u5199\u8005\u5fc5\u987b\u786e\u4fdd\u8be5\u51fd\u6570\u4e0d\u4f1a\u88ab\u7528\u6765\u505a\u4efb\u4f55\u4e0d\u5e0c\u671b\u53d1\u751f\u7684\u4e8b\u60c5\uff0c\u56e0\u4e3a\u5b83\u80fd\u591f\u505a\u5230\u4efb\u4f55\u4ee5\u6570\u636e\u5e93\u7ba1\u7406\u5458\u8eab\u4efd\u767b\u5f55\u7684\u7528\u6237\u6240\u80fd\u505a\u7684\u4e8b\u60c5\u3002\u53ea\u6709\u8d85\u7ea7\u7528\u6237\u624d\u80fd\u5728 <code>plpythonu</code> \u8fd9\u7c7b\u4e0d\u53d7\u4fe1\u4efb\u7684\u8bed\u8a00\u4e2d\u521b\u5efa\u51fd\u6570\u3002\n </p><p><a href=\"/zh/docs/10/plpython.html\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "body_sha256": "19eda237808a67b0fbd3b956f5c6186cecc3f4cd62daa9382236b9220ffe8ecd", "content_hash": "46919e532786f63e97d4479ffc2e4d70ace722b0c86e1750ab03d42cba160e86", "source_database": "center", "source_revision": "94a4b2528372458e5662c18d406629266667c437198160a18cdfd2c4a4d6eee9"}, "signature": "", "tables_zh": [], "attributes": {"kind": "Bundled procedural-language variant", "family": "PL/Python", "comment": "PL/PythonU untrusted procedural language", "handler": "plpython_call_handler", "library": "$libdir/plpython2", "trusted": "f", "validator": "plpython_validator", "inline_handler": "plpython_inline_handler", "default_version": "1.0", "module_pathname": "$libdir/plpython2"}, "description": ["\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002"], "manual_html": "", "manual_path": "/docs/10/plpython.html", "sections_zh": [{"code": "/* src/pl/plpython/plpythonu--1.0.sql */\n\n/*\n * Currently, all the interesting stuff is done by CREATE LANGUAGE.\n * Later we will probably \"dumb down\" that command and put more of the\n * knowledge into this script.\n */\n\nCREATE PROCEDURAL LANGUAGE plpythonu;\n\nCOMMENT ON PROCEDURAL LANGUAGE plpythonu IS 'PL/PythonU untrusted procedural language';", "title": "\u540c\u6784\u5efa\u6e90\u7801\u4e2d\u7684\u5b89\u88c5\u5b9a\u4e49", "paragraphs": ["\u6b64\u6269\u5c55\u968f\u6e90\u7801\u63d0\u4f9b\uff1b\u6536\u5f55\u5b83\u5e76\u4e0d\u8868\u793a\u5df2\u5b89\u88c5\u8be5\u8bed\u8a00\u6216\u5916\u90e8\u8fd0\u884c\u65f6\u3002"]}], "localization": {"status": "complete", "sources": [{"url": "/docs/10/plpython-data.html", "method": "same-major semantic node", "sha256": "e4220772a2b28ea3e4638b1ce4135fa910152956d5680caf0dbf7e909d0eabb2", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/10/plpython-database.html", "method": "same-major semantic node", "sha256": "9589d6ec7f61f98a440bbe8c7a2259e4f8964ad127c31971ba52f3d44e20ac21", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/10/plpython-do.html", "method": "same-major semantic node", "sha256": "643b5021861b4a9374e20903a9eb85b1707c11144990c35ac221e3c52e146776", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/10/plpython-envar.html", "method": "same-major semantic node", "sha256": "c79ca8728df0f1face330e5c545944d99a00837a7016643dd03064ad9642a40d", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/10/plpython-funcs.html", "method": "same-major semantic node", "sha256": "143ac8077d3d7cfb08b04324ccc55ea0e05e6fc8cb16c411ef3cfa9d65616e3b", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/10/plpython-sharing.html", "method": "same-major semantic node", "sha256": "7531b33091c90fb0a4c672d28ebf8621def3ab8ea8be09687cdc53babc24b9e1", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/10/plpython-subtransaction.html", "method": "same-major semantic node", "sha256": "a9b5f431a9988fd1ca6d29d1a578d270fb8c0312de279eb618d5013f7a15647b", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/10/plpython-trigger.html", "method": "same-major semantic node", "sha256": "498a545b8de7b47a04d2e560837baa9ed7830a49e9fa8b57f0084085a89fd00c", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/10/plpython-util.html", "method": "same-major semantic node", "sha256": "d121c159cf8ddd85765ed1382b2068dc7f594bba77a4ba32adea53505c3c6da8", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/10/plpython.html", "method": "same-major semantic node", "sha256": "4fcc10b7c72551a84bead734ecd8c7194f429d337fe25a6e1e77c822a6a69d99", "language": "zh", "matched_nodes": ["#PLPYTHON/h3[0]", "#PLPYTHON/h3[1]", "#PLPYTHON/p[1]", "#PLPYTHON/p[2]", "#PLPYTHON/p[3]", "#PLPYTHON/p[4]", "#PLPYTHON/p[5]"]}], "language": "zh", "original_text": {"/versions/10/description/0": "PL/PythonU untrusted procedural language", "/versions/10/facts/0/label": "Kind", "/versions/10/facts/0/value": "Bundled procedural-language variant", "/versions/10/facts/1/label": "Family", "/versions/10/facts/2/label": "Trusted", "/versions/10/facts/3/label": "Handler", "/versions/10/facts/4/label": "Inline handler", "/versions/10/facts/5/label": "Validator", "/versions/10/facts/6/label": "Library", "/versions/10/facts/7/label": "Default version", "/versions/10/facts/8/label": "Module pathname", "/versions/10/facts/9/label": "Comment", "/versions/10/facts/9/value": "PL/PythonU untrusted procedural language", "/versions/10/related/0/label": "plpython-data", "/versions/10/related/1/label": "plpython-database", "/versions/10/related/2/label": "plpython-do", "/versions/10/related/3/label": "plpython-envar", "/versions/10/related/4/label": "plpython-funcs", "/versions/10/related/6/label": "plpython-sharing", "/versions/10/related/7/label": "plpython-subtransaction", "/versions/10/related/8/label": "plpython-trigger", "/versions/10/related/9/label": "plpython-util", "/versions/10/sections/0/title": "Installation definition from the matching source archive", "/versions/10/sections/0/paragraphs/0": "This extension is shipped with the source. Its presence does not establish that the language or external runtime is installed."}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "5d4c3e6ca516fb88466c04dde8437f05ae0987ec56ac1e74432a56c41ccdb690", "canonical_center_text_hash": "46919e532786f63e97d4479ffc2e4d70ace722b0c86e1750ab03d42cba160e86"}, "source_files": {"src/pl/plpython/plpythonu.control": "1fa1af3f24d2dab852f17dc3c63e5a6c6ef92a835599202fa270252dce59d285", "src/pl/plpython/plpythonu--1.0.sql": "b4b9b801eefe7fe95b70411012755b4fe99401dd914e936bc9d0b14bf36956be"}, "description_zh": "\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002", "comparison_data": {"kind": "Bundled procedural-language variant", "family": "PL/Python", "handler": "plpython_call_handler", "library": "$libdir/plpython2", "trusted": "f", "validator": "plpython_validator", "inline_handler": "plpython_inline_handler", "default_version": "1.0"}, "comparison_hash": "4664ce2e8831b4283a479a5974c64e65ba0c0be65d66e50ede487408aea4c640", "manual_language": "zh", "description_zh_html": "<p>\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002</p><dl><dt>\u8fd0\u7b97\u7b26\u65cf</dt><dd><code>PL/Python</code></dd><dt>\u5904\u7406\u51fd\u6570</dt><dd><code>plpython_call_handler</code></dd><dt>\u5e93</dt><dd><code>$libdir/plpython2</code></dd><dt>\u53d7\u4fe1\u4efb</dt><dd><code>\u5426</code></dd><dt>\u9a8c\u8bc1\u51fd\u6570</dt><dd><code>plpython_validator</code></dd><dt>\u5185\u8054\u5904\u7406\u51fd\u6570</dt><dd><code>plpython_inline_handler</code></dd><dt>\u9ed8\u8ba4\u7248\u672c</dt><dd><code>1.0</code></dd><dt>\u6a21\u5757\u8def\u5f84</dt><dd><code>$libdir/plpython2</code></dd></dl><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p><span>PL/Python</span> \u8fc7\u7a0b\u8bed\u8a00\u5141\u8bb8\u7528 <a href=\"http://www.python.org\" rel=\"nofollow\">Python \u8bed\u8a00</a>\u7f16\u5199 <span>PostgreSQL</span> \u51fd\u6570\u3002</p><p>  \u8981\u5728\u7279\u5b9a\u6570\u636e\u5e93\u4e2d\u5b89\u88c5 PL/Python\uff0c\u53ef\u4f7f\u7528 <code>CREATE EXTENSION plpythonu</code>\uff08\u53e6\u89c1<a href=\"/zh/docs/10/plpython.html#PLPYTHON-PYTHON23\" rel=\"nofollow\">\u7b2c\u00a045.1\u00a0\u8282</a>\uff09\u3002\n </p><p>  PL/Python \u53ea\u80fd\u4f5c\u4e3a\u4e00\u79cd<span>\u201c<span>\u4e0d\u53d7\u4fe1\u4efb\u7684</span>\u201d</span>\u8bed\u8a00\u4f7f\u7528\uff0c\u8fd9\u610f\u5473\u7740\u5b83\u4e0d\u63d0\u4f9b\u4efb\u4f55\u673a\u5236\u6765\u9650\u5236\u7528\u6237\u80fd\u5728\u5176\u4e2d\u505a\u4ec0\u4e48\uff0c\u56e0\u6b64\u5176\u540d\u79f0\u4e3a <code>plpythonu</code>\u3002\u5982\u679c\u5c06\u6765\u80fd\u5728 Python \u4e2d\u5f00\u53d1\u51fa\u5b89\u5168\u7684\u6267\u884c\u673a\u5236\uff0c\u53d7\u4fe1\u4efb\u7684\u53d8\u4f53 <code>plpython</code> \u53ef\u80fd\u4f1a\u51fa\u73b0\u3002\u4f7f\u7528\u4e0d\u53d7\u4fe1\u4efb\u7684 PL/Python \u7f16\u5199\u51fd\u6570\u65f6\uff0c\u51fd\u6570\u7f16\u5199\u8005\u5fc5\u987b\u786e\u4fdd\u8be5\u51fd\u6570\u4e0d\u4f1a\u88ab\u7528\u6765\u505a\u4efb\u4f55\u4e0d\u5e0c\u671b\u53d1\u751f\u7684\u4e8b\u60c5\uff0c\u56e0\u4e3a\u5b83\u80fd\u591f\u505a\u5230\u4efb\u4f55\u4ee5\u6570\u636e\u5e93\u7ba1\u7406\u5458\u8eab\u4efd\u767b\u5f55\u7684\u7528\u6237\u6240\u80fd\u505a\u7684\u4e8b\u60c5\u3002\u53ea\u6709\u8d85\u7ea7\u7528\u6237\u624d\u80fd\u5728 <code>plpythonu</code> \u8fd9\u7c7b\u4e0d\u53d7\u4fe1\u4efb\u7684\u8bed\u8a00\u4e2d\u521b\u5efa\u51fd\u6570\u3002\n </p><p><a href=\"/zh/docs/10/plpython.html\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "11": {"facts": [{"label": "\u79cd\u7c7b", "value": "\u968f\u6e90\u7801\u63d0\u4f9b\u7684\u8fc7\u7a0b\u8bed\u8a00\u53d8\u4f53"}, {"label": "\u64cd\u4f5c\u7b26\u5bb6\u65cf", "value": "PL/Python"}, {"label": "\u53ef\u4fe1", "value": "f"}, {"label": "\u5904\u7406\u51fd\u6570", "value": "plpython_call_handler"}, {"label": "\u5185\u8054\u4ee3\u7801\u5904\u7406\u51fd\u6570", "value": "plpython_inline_handler"}, {"label": "\u6821\u9a8c\u51fd\u6570", "value": "plpython_validator"}, {"label": "\u5e93", "value": "$libdir/plpython2"}, {"label": "\u9ed8\u8ba4\u7248\u672c", "value": "1.0"}, {"label": "\u6a21\u5757\u8def\u5f84", "value": "$libdir/plpython2"}, {"label": "\u6ce8\u91ca", "value": "PL/PythonU \u975e\u53ef\u4fe1\u8fc7\u7a0b\u8bed\u8a00"}], "tables": [], "aliases": [], "related": [{"url": "/docs/11/plpython-data.html", "label": "\u6570\u636e\u503c"}, {"url": "/docs/11/plpython-database.html", "label": "\u6570\u636e\u5e93\u8bbf\u95ee"}, {"url": "/docs/11/plpython-do.html", "label": "\u533f\u540d\u4ee3\u7801\u5757"}, {"url": "/docs/11/plpython-envar.html", "label": "\u73af\u5883\u53d8\u91cf"}, {"url": "/docs/11/plpython-funcs.html", "label": "PL/Python \u51fd\u6570"}, {"url": "/docs/11/plpython-python23.html", "label": "plpython-python23"}, {"url": "/docs/11/plpython-sharing.html", "label": "\u5171\u4eab\u6570\u636e"}, {"url": "/docs/11/plpython-subtransaction.html", "label": "\u663e\u5f0f\u5b50\u4e8b\u52a1"}, {"url": "/docs/11/plpython-transactions.html", "label": "\u4e8b\u52a1\u7ba1\u7406"}, {"url": "/docs/11/plpython-trigger.html", "label": "\u89e6\u53d1\u5668\u51fd\u6570"}, {"url": "/docs/11/plpython-util.html", "label": "\u8f85\u52a9\u51fd\u6570"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v11.22/postgresql-11.22.tar.bz2", "label": "11.22", "major": "11", "channel": "historical", "revision": "2cb7c97d7a0d7278851bbc9c61f467b69c094c72b81740b751108e7892ebe1f0", "source_sha256": "2cb7c97d7a0d7278851bbc9c61f467b69c094c72b81740b751108e7892ebe1f0", "catalog_fingerprint": "8f21f4444b7f68923f4762af0eb7937fa2907026e91249483e79050de012c901"}, "sources": [{"url": "https://ftp.postgresql.org/pub/source/v11.22/postgresql-11.22.tar.bz2", "label": "Matching PostgreSQL source archive", "sha256": "2cb7c97d7a0d7278851bbc9c61f467b69c094c72b81740b751108e7892ebe1f0"}, {"url": "/docs/11/plpython.html", "path": "plpython.html", "label": "PostgreSQL 11 English manual", "sha256": "6612b4c6b8dba6b9955dcd42a8c833715fe386b40b40aac2c9ea3743516726c1"}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-structured-summary", "manual": {"url": "/zh/docs/11/plpython.html", "anchor": "", "locale": "zh-Hans", "version": "11", "build_id": 64, "page_key": "plpython.html", "extraction": "concept-introduction", "source_hash": "6fbdd5d4c3ceb9304bc005941f67d74fcd9a29ef4c1c3ca5615a5e3fd412093f", "fragment_sha256": "f29e90398f38eb74a99a63162364b860f0c3b8405e3edb249acafa22e6bdaeff", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "snapshot:sha256:ef5c7bc074acae9795db16e6b7482aea3b222bd4bcce0f76831332b97a21e8a1", "translated_from_revision": null}, "body_sha256": "1d027b47a360385e6b5d19ee1e8df7751dc2f683e4761022a42ca563a05d8886", "runtime_rerun": false, "authored_translation": "source-derived-structured-summary", "source_facts_revision": "2cb7c97d7a0d7278851bbc9c61f467b69c094c72b81740b751108e7892ebe1f0"}, "facts_zh": [{"label": "\u79cd\u7c7b", "value": "\u968f\u6e90\u7801\u63d0\u4f9b\u7684\u8fc7\u7a0b\u8bed\u8a00\u53d8\u4f53"}, {"label": "\u64cd\u4f5c\u7b26\u5bb6\u65cf", "value": "PL/Python"}, {"label": "\u53ef\u4fe1", "value": "f"}, {"label": "\u5904\u7406\u51fd\u6570", "value": "plpython_call_handler"}, {"label": "\u5185\u8054\u4ee3\u7801\u5904\u7406\u51fd\u6570", "value": "plpython_inline_handler"}, {"label": "\u6821\u9a8c\u51fd\u6570", "value": "plpython_validator"}, {"label": "\u5e93", "value": "$libdir/plpython2"}, {"label": "\u9ed8\u8ba4\u7248\u672c", "value": "1.0"}, {"label": "\u6a21\u5757\u8def\u5f84", "value": "$libdir/plpython2"}, {"label": "\u6ce8\u91ca", "value": "PL/PythonU \u975e\u53ef\u4fe1\u8fc7\u7a0b\u8bed\u8a00"}], "sections": [{"code": "/* src/pl/plpython/plpythonu--1.0.sql */\n\n/*\n * Currently, all the interesting stuff is done by CREATE LANGUAGE.\n * Later we will probably \"dumb down\" that command and put more of the\n * knowledge into this script.\n */\n\nCREATE PROCEDURAL LANGUAGE plpythonu;\n\nCOMMENT ON PROCEDURAL LANGUAGE plpythonu IS 'PL/PythonU untrusted procedural language';", "title": "\u540c\u6784\u5efa\u6e90\u7801\u4e2d\u7684\u5b89\u88c5\u5b9a\u4e49", "paragraphs": ["\u6b64\u6269\u5c55\u968f\u6e90\u7801\u63d0\u4f9b\uff1b\u6536\u5f55\u5b83\u5e76\u4e0d\u8868\u793a\u5df2\u5b89\u88c5\u8be5\u8bed\u8a00\u6216\u5916\u90e8\u8fd0\u884c\u65f6\u3002"]}], "center_zh": {"title": "plpythonu", "locale": "zh-Hans", "source": {"key": "plpythonu", "locale": "zh-Hans", "version": "11", "text_hash": "9b3af1493143bcefae2840a05e9d874331859bdfce78a9f5895fce411096761c", "collection": "language", "dataset_hash": "7c31b524dfe136022d39a6ae8dcfac6b3bbd5f8fdaf422536599981252aff0c9", "source_database": "center", "source_revision": "2cb7c97d7a0d7278851bbc9c61f467b69c094c72b81740b751108e7892ebe1f0"}, "payload": {"facts": [{"label": "\u79cd\u7c7b", "value": "\u968f\u6e90\u7801\u63d0\u4f9b\u7684\u8fc7\u7a0b\u8bed\u8a00\u53d8\u4f53"}, {"label": "\u64cd\u4f5c\u7b26\u5bb6\u65cf", "value": "PL/Python"}, {"label": "\u53ef\u4fe1", "value": "f"}, {"label": "\u5904\u7406\u51fd\u6570", "value": "plpython_call_handler"}, {"label": "\u5185\u8054\u4ee3\u7801\u5904\u7406\u51fd\u6570", "value": "plpython_inline_handler"}, {"label": "\u6821\u9a8c\u51fd\u6570", "value": "plpython_validator"}, {"label": "\u5e93", "value": "$libdir/plpython2"}, {"label": "\u9ed8\u8ba4\u7248\u672c", "value": "1.0"}, {"label": "\u6a21\u5757\u8def\u5f84", "value": "$libdir/plpython2"}, {"label": "\u6ce8\u91ca", "value": "PL/PythonU \u975e\u53ef\u4fe1\u8fc7\u7a0b\u8bed\u8a00"}], "tables": [], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-structured-summary", "manual": {"url": "/zh/docs/11/plpython.html", "anchor": "", "locale": "zh-Hans", "version": "11", "build_id": 64, "page_key": "plpython.html", "extraction": "concept-introduction", "source_hash": "6fbdd5d4c3ceb9304bc005941f67d74fcd9a29ef4c1c3ca5615a5e3fd412093f", "fragment_sha256": "f29e90398f38eb74a99a63162364b860f0c3b8405e3edb249acafa22e6bdaeff", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "snapshot:sha256:ef5c7bc074acae9795db16e6b7482aea3b222bd4bcce0f76831332b97a21e8a1", "translated_from_revision": null}, "body_sha256": "1d027b47a360385e6b5d19ee1e8df7751dc2f683e4761022a42ca563a05d8886", "runtime_rerun": false, "authored_translation": "source-derived-structured-summary", "source_facts_revision": "2cb7c97d7a0d7278851bbc9c61f467b69c094c72b81740b751108e7892ebe1f0"}, "sections": [{"code": "/* src/pl/plpython/plpythonu--1.0.sql */\n\n/*\n * Currently, all the interesting stuff is done by CREATE LANGUAGE.\n * Later we will probably \"dumb down\" that command and put more of the\n * knowledge into this script.\n */\n\nCREATE PROCEDURAL LANGUAGE plpythonu;\n\nCOMMENT ON PROCEDURAL LANGUAGE plpythonu IS 'PL/PythonU untrusted procedural language';", "title": "\u540c\u6784\u5efa\u6e90\u7801\u4e2d\u7684\u5b89\u88c5\u5b9a\u4e49", "paragraphs": ["\u6b64\u6269\u5c55\u968f\u6e90\u7801\u63d0\u4f9b\uff1b\u6536\u5f55\u5b83\u5e76\u4e0d\u8868\u793a\u5df2\u5b89\u88c5\u8be5\u8bed\u8a00\u6216\u5916\u90e8\u8fd0\u884c\u65f6\u3002"]}], "description_zh": "\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002", "description_zh_html": "<p>\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002</p><dl><dt>\u8fd0\u7b97\u7b26\u65cf</dt><dd><code>PL/Python</code></dd><dt>\u5904\u7406\u51fd\u6570</dt><dd><code>plpython_call_handler</code></dd><dt>\u5e93</dt><dd><code>$libdir/plpython2</code></dd><dt>\u53d7\u4fe1\u4efb</dt><dd><code>\u5426</code></dd><dt>\u9a8c\u8bc1\u51fd\u6570</dt><dd><code>plpython_validator</code></dd><dt>\u5185\u8054\u5904\u7406\u51fd\u6570</dt><dd><code>plpython_inline_handler</code></dd><dt>\u9ed8\u8ba4\u7248\u672c</dt><dd><code>1.0</code></dd><dt>\u6a21\u5757\u8def\u5f84</dt><dd><code>$libdir/plpython2</code></dd></dl><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n<span class=\"application\">PL/Python</span> \u8fc7\u7a0b\u8bed\u8a00\u5141\u8bb8\u4f7f\u7528 <a class=\"ulink\" href=\"https://www.python.org\">Python \u8bed\u8a00</a>\u7f16\u5199 <span class=\"productname\">PostgreSQL</span> \u51fd\u6570\u548c\u8fc7\u7a0b\u3002\n </p><p>\n  \u8981\u5728\u7279\u5b9a\u6570\u636e\u5e93\u4e2d\u5b89\u88c5 PL/Python\uff0c\u53ef\u4f7f\u7528 <code class=\"literal\">CREATE EXTENSION plpythonu</code>\uff08\u53e6\u89c1<a class=\"xref\" href=\"/zh/docs/11/plpython.html#PLPYTHON-PYTHON23\">\u7b2c\u00a046.1\u00a0\u8282</a>\uff09\u3002\n </p><p>\n  PL/Python \u53ea\u80fd\u4f5c\u4e3a\u4e00\u79cd<span class=\"quote\">\u201c<span class=\"quote\">\u4e0d\u53d7\u4fe1\u4efb\u7684</span>\u201d</span>\u8bed\u8a00\u4f7f\u7528\uff0c\u8fd9\u610f\u5473\u7740\u5b83\u4e0d\u63d0\u4f9b\u4efb\u4f55\u673a\u5236\u6765\u9650\u5236\u7528\u6237\u80fd\u5728\u5176\u4e2d\u505a\u4ec0\u4e48\uff0c\u56e0\u6b64\u5176\u540d\u79f0\u4e3a <code class=\"literal\">plpythonu</code>\u3002\u5982\u679c\u5c06\u6765\u80fd\u5728 Python \u4e2d\u5f00\u53d1\u51fa\u5b89\u5168\u7684\u6267\u884c\u673a\u5236\uff0c\u53d7\u4fe1\u4efb\u7684\u53d8\u4f53 <code class=\"literal\">plpython</code> \u53ef\u80fd\u4f1a\u51fa\u73b0\u3002\u4f7f\u7528\u4e0d\u53d7\u4fe1\u4efb\u7684 PL/Python \u7f16\u5199\u51fd\u6570\u65f6\uff0c\u51fd\u6570\u7f16\u5199\u8005\u5fc5\u987b\u786e\u4fdd\u8be5\u51fd\u6570\u4e0d\u4f1a\u88ab\u7528\u6765\u505a\u4efb\u4f55\u4e0d\u5e0c\u671b\u53d1\u751f\u7684\u4e8b\u60c5\uff0c\u56e0\u4e3a\u5b83\u80fd\u591f\u505a\u5230\u4efb\u4f55\u4ee5\u6570\u636e\u5e93\u7ba1\u7406\u5458\u8eab\u4efd\u767b\u5f55\u7684\u7528\u6237\u6240\u80fd\u505a\u7684\u4e8b\u60c5\u3002\u53ea\u6709\u8d85\u7ea7\u7528\u6237\u624d\u80fd\u5728 <code class=\"literal\">plpythonu</code> \u8fd9\u7c7b\u4e0d\u53d7\u4fe1\u4efb\u7684\u8bed\u8a00\u4e2d\u521b\u5efa\u51fd\u6570\u3002\n </p><p><a href=\"/zh/docs/11/plpython.html\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "summary": "\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002", "version": "11", "link_map": {"/zh/docs/11/plpython.html": "/docs/11/plpython.html", "/zh/docs/11/plpython.html#PLPYTHON-PYTHON23": "/docs/11/plpython.html#PLPYTHON-PYTHON23"}, "body_html": "<p>\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002</p><dl><dt>\u8fd0\u7b97\u7b26\u65cf</dt><dd><code>PL/Python</code></dd><dt>\u5904\u7406\u51fd\u6570</dt><dd><code>plpython_call_handler</code></dd><dt>\u5e93</dt><dd><code>$libdir/plpython2</code></dd><dt>\u53d7\u4fe1\u4efb</dt><dd><code>\u5426</code></dd><dt>\u9a8c\u8bc1\u51fd\u6570</dt><dd><code>plpython_validator</code></dd><dt>\u5185\u8054\u5904\u7406\u51fd\u6570</dt><dd><code>plpython_inline_handler</code></dd><dt>\u9ed8\u8ba4\u7248\u672c</dt><dd><code>1.0</code></dd><dt>\u6a21\u5757\u8def\u5f84</dt><dd><code>$libdir/plpython2</code></dd></dl><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n<span>PL/Python</span> \u8fc7\u7a0b\u8bed\u8a00\u5141\u8bb8\u4f7f\u7528 <a href=\"https://www.python.org\" rel=\"nofollow\">Python \u8bed\u8a00</a>\u7f16\u5199 <span>PostgreSQL</span> \u51fd\u6570\u548c\u8fc7\u7a0b\u3002\n </p><p>\n  \u8981\u5728\u7279\u5b9a\u6570\u636e\u5e93\u4e2d\u5b89\u88c5 PL/Python\uff0c\u53ef\u4f7f\u7528 <code>CREATE EXTENSION plpythonu</code>\uff08\u53e6\u89c1<a href=\"/zh/docs/11/plpython.html#PLPYTHON-PYTHON23\" rel=\"nofollow\">\u7b2c\u00a046.1\u00a0\u8282</a>\uff09\u3002\n </p><p>\n  PL/Python \u53ea\u80fd\u4f5c\u4e3a\u4e00\u79cd<span>\u201c<span>\u4e0d\u53d7\u4fe1\u4efb\u7684</span>\u201d</span>\u8bed\u8a00\u4f7f\u7528\uff0c\u8fd9\u610f\u5473\u7740\u5b83\u4e0d\u63d0\u4f9b\u4efb\u4f55\u673a\u5236\u6765\u9650\u5236\u7528\u6237\u80fd\u5728\u5176\u4e2d\u505a\u4ec0\u4e48\uff0c\u56e0\u6b64\u5176\u540d\u79f0\u4e3a <code>plpythonu</code>\u3002\u5982\u679c\u5c06\u6765\u80fd\u5728 Python \u4e2d\u5f00\u53d1\u51fa\u5b89\u5168\u7684\u6267\u884c\u673a\u5236\uff0c\u53d7\u4fe1\u4efb\u7684\u53d8\u4f53 <code>plpython</code> \u53ef\u80fd\u4f1a\u51fa\u73b0\u3002\u4f7f\u7528\u4e0d\u53d7\u4fe1\u4efb\u7684 PL/Python \u7f16\u5199\u51fd\u6570\u65f6\uff0c\u51fd\u6570\u7f16\u5199\u8005\u5fc5\u987b\u786e\u4fdd\u8be5\u51fd\u6570\u4e0d\u4f1a\u88ab\u7528\u6765\u505a\u4efb\u4f55\u4e0d\u5e0c\u671b\u53d1\u751f\u7684\u4e8b\u60c5\uff0c\u56e0\u4e3a\u5b83\u80fd\u591f\u505a\u5230\u4efb\u4f55\u4ee5\u6570\u636e\u5e93\u7ba1\u7406\u5458\u8eab\u4efd\u767b\u5f55\u7684\u7528\u6237\u6240\u80fd\u505a\u7684\u4e8b\u60c5\u3002\u53ea\u6709\u8d85\u7ea7\u7528\u6237\u624d\u80fd\u5728 <code>plpythonu</code> \u8fd9\u7c7b\u4e0d\u53d7\u4fe1\u4efb\u7684\u8bed\u8a00\u4e2d\u521b\u5efa\u51fd\u6570\u3002\n </p><p><a href=\"/zh/docs/11/plpython.html\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "body_sha256": "44142335e87048ee680b93560e212e1234cc00e7723ee583e20f24469de9fee2", "content_hash": "9b3af1493143bcefae2840a05e9d874331859bdfce78a9f5895fce411096761c", "source_database": "center", "source_revision": "2cb7c97d7a0d7278851bbc9c61f467b69c094c72b81740b751108e7892ebe1f0"}, "signature": "", "tables_zh": [], "attributes": {"kind": "Bundled procedural-language variant", "family": "PL/Python", "comment": "PL/PythonU untrusted procedural language", "handler": "plpython_call_handler", "library": "$libdir/plpython2", "trusted": "f", "validator": "plpython_validator", "inline_handler": "plpython_inline_handler", "default_version": "1.0", "module_pathname": "$libdir/plpython2"}, "description": ["\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002"], "manual_html": "", "manual_path": "/docs/11/plpython.html", "sections_zh": [{"code": "/* src/pl/plpython/plpythonu--1.0.sql */\n\n/*\n * Currently, all the interesting stuff is done by CREATE LANGUAGE.\n * Later we will probably \"dumb down\" that command and put more of the\n * knowledge into this script.\n */\n\nCREATE PROCEDURAL LANGUAGE plpythonu;\n\nCOMMENT ON PROCEDURAL LANGUAGE plpythonu IS 'PL/PythonU untrusted procedural language';", "title": "\u540c\u6784\u5efa\u6e90\u7801\u4e2d\u7684\u5b89\u88c5\u5b9a\u4e49", "paragraphs": ["\u6b64\u6269\u5c55\u968f\u6e90\u7801\u63d0\u4f9b\uff1b\u6536\u5f55\u5b83\u5e76\u4e0d\u8868\u793a\u5df2\u5b89\u88c5\u8be5\u8bed\u8a00\u6216\u5916\u90e8\u8fd0\u884c\u65f6\u3002"]}], "localization": {"status": "complete", "sources": [{"url": "/docs/11/plpython-data.html", "method": "same-major semantic node", "sha256": "f92102890cb634e02ba0721d96e8cd0d1a586e73fd0f62dfd7222d4f2c738a1a", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/11/plpython-database.html", "method": "same-major semantic node", "sha256": "7faf93b18525108eb8d4e65c5b9e3e2858e432e17cae9a711c7b499371ca195b", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/11/plpython-do.html", "method": "same-major semantic node", "sha256": "63f82de5387305aef6106abec1707f807da3b448129785b91efd15dc76b89593", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/11/plpython-envar.html", "method": "same-major semantic node", "sha256": "d4baaf2fc2f94e5bc20672626b1f3afbd3ac6ed6d8a09ea613ba1162e1975e9f", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/11/plpython-funcs.html", "method": "same-major semantic node", "sha256": "d96f97154ad397c197f4e96699c6176591512204776d8bb385ca77391ade269a", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/11/plpython-sharing.html", "method": "same-major semantic node", "sha256": "08f876aaa9339c495c63e5c7679c86daf16c4dac89cb78c1fdfea27b16212434", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/11/plpython-subtransaction.html", "method": "same-major semantic node", "sha256": "d31579f22ab904df15ad65a186373e190ec27b416fc12aae1cf2e77006c2b4bb", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/11/plpython-transactions.html", "method": "same-major semantic node", "sha256": "b4df6796a02e70412a7d0f700db45a56c2c4721b9bfbf97e98a88f7e13b858e2", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/11/plpython-trigger.html", "method": "same-major semantic node", "sha256": "d00395b3146774ec69b97c79d7a61f59ecfd528c7aba3c265b28d7e03d5dd0ce", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/11/plpython-util.html", "method": "same-major semantic node", "sha256": "2141b62ee41f7cbf479ddc0cb8ca66177cbe07bd35acc1a2aac347eb5ce012d6", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/11/plpython.html", "method": "same-major semantic node", "sha256": "cf9a52450dce86ac9ba6ceffb5b8b7079c352787c6b17443e515ca8fa027e069", "language": "zh", "matched_nodes": ["#PLPYTHON/h3[0]", "#PLPYTHON/h3[1]", "#PLPYTHON/p[1]", "#PLPYTHON/p[2]", "#PLPYTHON/p[3]", "#PLPYTHON/p[4]", "#PLPYTHON/p[5]"]}], "language": "zh", "original_text": {"/versions/11/description/0": "PL/PythonU untrusted procedural language", "/versions/11/facts/0/label": "Kind", "/versions/11/facts/0/value": "Bundled procedural-language variant", "/versions/11/facts/1/label": "Family", "/versions/11/facts/2/label": "Trusted", "/versions/11/facts/3/label": "Handler", "/versions/11/facts/4/label": "Inline handler", "/versions/11/facts/5/label": "Validator", "/versions/11/facts/6/label": "Library", "/versions/11/facts/7/label": "Default version", "/versions/11/facts/8/label": "Module pathname", "/versions/11/facts/9/label": "Comment", "/versions/11/facts/9/value": "PL/PythonU untrusted procedural language", "/versions/11/related/0/label": "plpython-data", "/versions/11/related/1/label": "plpython-database", "/versions/11/related/2/label": "plpython-do", "/versions/11/related/3/label": "plpython-envar", "/versions/11/related/4/label": "plpython-funcs", "/versions/11/related/6/label": "plpython-sharing", "/versions/11/related/7/label": "plpython-subtransaction", "/versions/11/related/8/label": "plpython-transactions", "/versions/11/related/9/label": "plpython-trigger", "/versions/11/related/10/label": "plpython-util", "/versions/11/sections/0/title": "Installation definition from the matching source archive", "/versions/11/sections/0/paragraphs/0": "This extension is shipped with the source. Its presence does not establish that the language or external runtime is installed."}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "e3d9f1c9cec90084073ce48f1ece0107037706dd70ea7f6eab15873abe6819ff", "canonical_center_text_hash": "9b3af1493143bcefae2840a05e9d874331859bdfce78a9f5895fce411096761c"}, "source_files": {"src/pl/plpython/plpythonu.control": "1fa1af3f24d2dab852f17dc3c63e5a6c6ef92a835599202fa270252dce59d285", "src/pl/plpython/plpythonu--1.0.sql": "b4b9b801eefe7fe95b70411012755b4fe99401dd914e936bc9d0b14bf36956be"}, "description_zh": "\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002", "comparison_data": {"kind": "Bundled procedural-language variant", "family": "PL/Python", "handler": "plpython_call_handler", "library": "$libdir/plpython2", "trusted": "f", "validator": "plpython_validator", "inline_handler": "plpython_inline_handler", "default_version": "1.0"}, "comparison_hash": "4664ce2e8831b4283a479a5974c64e65ba0c0be65d66e50ede487408aea4c640", "manual_language": "zh", "description_zh_html": "<p>\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002</p><dl><dt>\u8fd0\u7b97\u7b26\u65cf</dt><dd><code>PL/Python</code></dd><dt>\u5904\u7406\u51fd\u6570</dt><dd><code>plpython_call_handler</code></dd><dt>\u5e93</dt><dd><code>$libdir/plpython2</code></dd><dt>\u53d7\u4fe1\u4efb</dt><dd><code>\u5426</code></dd><dt>\u9a8c\u8bc1\u51fd\u6570</dt><dd><code>plpython_validator</code></dd><dt>\u5185\u8054\u5904\u7406\u51fd\u6570</dt><dd><code>plpython_inline_handler</code></dd><dt>\u9ed8\u8ba4\u7248\u672c</dt><dd><code>1.0</code></dd><dt>\u6a21\u5757\u8def\u5f84</dt><dd><code>$libdir/plpython2</code></dd></dl><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n<span>PL/Python</span> \u8fc7\u7a0b\u8bed\u8a00\u5141\u8bb8\u4f7f\u7528 <a href=\"https://www.python.org\" rel=\"nofollow\">Python \u8bed\u8a00</a>\u7f16\u5199 <span>PostgreSQL</span> \u51fd\u6570\u548c\u8fc7\u7a0b\u3002\n </p><p>\n  \u8981\u5728\u7279\u5b9a\u6570\u636e\u5e93\u4e2d\u5b89\u88c5 PL/Python\uff0c\u53ef\u4f7f\u7528 <code>CREATE EXTENSION plpythonu</code>\uff08\u53e6\u89c1<a href=\"/zh/docs/11/plpython.html#PLPYTHON-PYTHON23\" rel=\"nofollow\">\u7b2c\u00a046.1\u00a0\u8282</a>\uff09\u3002\n </p><p>\n  PL/Python \u53ea\u80fd\u4f5c\u4e3a\u4e00\u79cd<span>\u201c<span>\u4e0d\u53d7\u4fe1\u4efb\u7684</span>\u201d</span>\u8bed\u8a00\u4f7f\u7528\uff0c\u8fd9\u610f\u5473\u7740\u5b83\u4e0d\u63d0\u4f9b\u4efb\u4f55\u673a\u5236\u6765\u9650\u5236\u7528\u6237\u80fd\u5728\u5176\u4e2d\u505a\u4ec0\u4e48\uff0c\u56e0\u6b64\u5176\u540d\u79f0\u4e3a <code>plpythonu</code>\u3002\u5982\u679c\u5c06\u6765\u80fd\u5728 Python \u4e2d\u5f00\u53d1\u51fa\u5b89\u5168\u7684\u6267\u884c\u673a\u5236\uff0c\u53d7\u4fe1\u4efb\u7684\u53d8\u4f53 <code>plpython</code> \u53ef\u80fd\u4f1a\u51fa\u73b0\u3002\u4f7f\u7528\u4e0d\u53d7\u4fe1\u4efb\u7684 PL/Python \u7f16\u5199\u51fd\u6570\u65f6\uff0c\u51fd\u6570\u7f16\u5199\u8005\u5fc5\u987b\u786e\u4fdd\u8be5\u51fd\u6570\u4e0d\u4f1a\u88ab\u7528\u6765\u505a\u4efb\u4f55\u4e0d\u5e0c\u671b\u53d1\u751f\u7684\u4e8b\u60c5\uff0c\u56e0\u4e3a\u5b83\u80fd\u591f\u505a\u5230\u4efb\u4f55\u4ee5\u6570\u636e\u5e93\u7ba1\u7406\u5458\u8eab\u4efd\u767b\u5f55\u7684\u7528\u6237\u6240\u80fd\u505a\u7684\u4e8b\u60c5\u3002\u53ea\u6709\u8d85\u7ea7\u7528\u6237\u624d\u80fd\u5728 <code>plpythonu</code> \u8fd9\u7c7b\u4e0d\u53d7\u4fe1\u4efb\u7684\u8bed\u8a00\u4e2d\u521b\u5efa\u51fd\u6570\u3002\n </p><p><a href=\"/zh/docs/11/plpython.html\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "12": {"facts": [{"label": "\u79cd\u7c7b", "value": "\u968f\u6e90\u7801\u63d0\u4f9b\u7684\u8fc7\u7a0b\u8bed\u8a00\u53d8\u4f53"}, {"label": "\u64cd\u4f5c\u7b26\u5bb6\u65cf", "value": "PL/Python"}, {"label": "\u53ef\u4fe1", "value": "f"}, {"label": "\u5904\u7406\u51fd\u6570", "value": "plpython_call_handler"}, {"label": "\u5185\u8054\u4ee3\u7801\u5904\u7406\u51fd\u6570", "value": "plpython_inline_handler"}, {"label": "\u6821\u9a8c\u51fd\u6570", "value": "plpython_validator"}, {"label": "\u5e93", "value": "$libdir/plpython2"}, {"label": "\u9ed8\u8ba4\u7248\u672c", "value": "1.0"}, {"label": "\u6a21\u5757\u8def\u5f84", "value": "$libdir/plpython2"}, {"label": "\u6ce8\u91ca", "value": "PL/PythonU \u975e\u53ef\u4fe1\u8fc7\u7a0b\u8bed\u8a00"}], "tables": [], "aliases": [], "related": [{"url": "/docs/12/plpython-data.html", "label": "\u6570\u636e\u503c"}, {"url": "/docs/12/plpython-database.html", "label": "\u6570\u636e\u5e93\u8bbf\u95ee"}, {"url": "/docs/12/plpython-do.html", "label": "\u533f\u540d\u4ee3\u7801\u5757"}, {"url": "/docs/12/plpython-envar.html", "label": "\u73af\u5883\u53d8\u91cf"}, {"url": "/docs/12/plpython-funcs.html", "label": "PL/Python \u51fd\u6570"}, {"url": "/docs/12/plpython-python23.html", "label": "plpython-python23"}, {"url": "/docs/12/plpython-sharing.html", "label": "\u5171\u4eab\u6570\u636e"}, {"url": "/docs/12/plpython-subtransaction.html", "label": "\u663e\u5f0f\u5b50\u4e8b\u52a1"}, {"url": "/docs/12/plpython-transactions.html", "label": "\u4e8b\u52a1\u7ba1\u7406"}, {"url": "/docs/12/plpython-trigger.html", "label": "\u89e6\u53d1\u5668\u51fd\u6570"}, {"url": "/docs/12/plpython-util.html", "label": "\u8f85\u52a9\u51fd\u6570"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v12.22/postgresql-12.22.tar.bz2", "label": "12.22", "major": "12", "channel": "historical", "revision": "8df3c0474782589d3c6f374b5133b1bd14d168086edbc13c6e72e67dd4527a3b", "source_sha256": "8df3c0474782589d3c6f374b5133b1bd14d168086edbc13c6e72e67dd4527a3b", "catalog_fingerprint": "9f857f4ee4875f9c7de6bfc9df4b757dec8b3a0bb88eadb519c7bd267bd56149"}, "sources": [{"url": "https://ftp.postgresql.org/pub/source/v12.22/postgresql-12.22.tar.bz2", "label": "Matching PostgreSQL source archive", "sha256": "8df3c0474782589d3c6f374b5133b1bd14d168086edbc13c6e72e67dd4527a3b"}, {"url": "/docs/12/plpython.html", "path": "plpython.html", "label": "PostgreSQL 12 English manual", "sha256": "0f4eac1e31aff3e6ae5dc99e7bc6c34c50ab44222ab12d1c578a86ea5af19a33"}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-structured-summary", "manual": {"url": "/zh/docs/12/plpython.html", "anchor": "", "locale": "zh-Hans", "version": "12", "build_id": 65, "page_key": "plpython.html", "extraction": "concept-introduction", "source_hash": "fc45ab533e86574c5513a9ca8c4b2404cbb2fe4e4a727c70a84d0b49dd6549a1", "fragment_sha256": "11683c78fa3b42e1bf9455613c09a44a05f577189c7f4e4d5fd68dfb09c45b9f", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "snapshot:sha256:86d2ff781f93e1de17122ebc514d5e64fcb63fed15941f496d7e146c6dcc7a49", "translated_from_revision": null}, "body_sha256": "d2394270cd4644b6820045a675c4794ea0400bdab7e4034484478b4c678d9f03", "runtime_rerun": false, "authored_translation": "source-derived-structured-summary", "source_facts_revision": "8df3c0474782589d3c6f374b5133b1bd14d168086edbc13c6e72e67dd4527a3b"}, "facts_zh": [{"label": "\u79cd\u7c7b", "value": "\u968f\u6e90\u7801\u63d0\u4f9b\u7684\u8fc7\u7a0b\u8bed\u8a00\u53d8\u4f53"}, {"label": "\u64cd\u4f5c\u7b26\u5bb6\u65cf", "value": "PL/Python"}, {"label": "\u53ef\u4fe1", "value": "f"}, {"label": "\u5904\u7406\u51fd\u6570", "value": "plpython_call_handler"}, {"label": "\u5185\u8054\u4ee3\u7801\u5904\u7406\u51fd\u6570", "value": "plpython_inline_handler"}, {"label": "\u6821\u9a8c\u51fd\u6570", "value": "plpython_validator"}, {"label": "\u5e93", "value": "$libdir/plpython2"}, {"label": "\u9ed8\u8ba4\u7248\u672c", "value": "1.0"}, {"label": "\u6a21\u5757\u8def\u5f84", "value": "$libdir/plpython2"}, {"label": "\u6ce8\u91ca", "value": "PL/PythonU \u975e\u53ef\u4fe1\u8fc7\u7a0b\u8bed\u8a00"}], "sections": [{"code": "/* src/pl/plpython/plpythonu--1.0.sql */\n\n/*\n * Currently, all the interesting stuff is done by CREATE LANGUAGE.\n * Later we will probably \"dumb down\" that command and put more of the\n * knowledge into this script.\n */\n\nCREATE LANGUAGE plpythonu;\n\nCOMMENT ON LANGUAGE plpythonu IS 'PL/PythonU untrusted procedural language';", "title": "\u540c\u6784\u5efa\u6e90\u7801\u4e2d\u7684\u5b89\u88c5\u5b9a\u4e49", "paragraphs": ["\u6b64\u6269\u5c55\u968f\u6e90\u7801\u63d0\u4f9b\uff1b\u6536\u5f55\u5b83\u5e76\u4e0d\u8868\u793a\u5df2\u5b89\u88c5\u8be5\u8bed\u8a00\u6216\u5916\u90e8\u8fd0\u884c\u65f6\u3002"]}], "center_zh": {"title": "plpythonu", "locale": "zh-Hans", "source": {"key": "plpythonu", "locale": "zh-Hans", "version": "12", "text_hash": "0f5824e2b1b196c8ef18a6ad94998850251ef4ac1f3614d5bd11a871381976ac", "collection": "language", "dataset_hash": "7c31b524dfe136022d39a6ae8dcfac6b3bbd5f8fdaf422536599981252aff0c9", "source_database": "center", "source_revision": "8df3c0474782589d3c6f374b5133b1bd14d168086edbc13c6e72e67dd4527a3b"}, "payload": {"facts": [{"label": "\u79cd\u7c7b", "value": "\u968f\u6e90\u7801\u63d0\u4f9b\u7684\u8fc7\u7a0b\u8bed\u8a00\u53d8\u4f53"}, {"label": "\u64cd\u4f5c\u7b26\u5bb6\u65cf", "value": "PL/Python"}, {"label": "\u53ef\u4fe1", "value": "f"}, {"label": "\u5904\u7406\u51fd\u6570", "value": "plpython_call_handler"}, {"label": "\u5185\u8054\u4ee3\u7801\u5904\u7406\u51fd\u6570", "value": "plpython_inline_handler"}, {"label": "\u6821\u9a8c\u51fd\u6570", "value": "plpython_validator"}, {"label": "\u5e93", "value": "$libdir/plpython2"}, {"label": "\u9ed8\u8ba4\u7248\u672c", "value": "1.0"}, {"label": "\u6a21\u5757\u8def\u5f84", "value": "$libdir/plpython2"}, {"label": "\u6ce8\u91ca", "value": "PL/PythonU \u975e\u53ef\u4fe1\u8fc7\u7a0b\u8bed\u8a00"}], "tables": [], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-structured-summary", "manual": {"url": "/zh/docs/12/plpython.html", "anchor": "", "locale": "zh-Hans", "version": "12", "build_id": 65, "page_key": "plpython.html", "extraction": "concept-introduction", "source_hash": "fc45ab533e86574c5513a9ca8c4b2404cbb2fe4e4a727c70a84d0b49dd6549a1", "fragment_sha256": "11683c78fa3b42e1bf9455613c09a44a05f577189c7f4e4d5fd68dfb09c45b9f", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "snapshot:sha256:86d2ff781f93e1de17122ebc514d5e64fcb63fed15941f496d7e146c6dcc7a49", "translated_from_revision": null}, "body_sha256": "d2394270cd4644b6820045a675c4794ea0400bdab7e4034484478b4c678d9f03", "runtime_rerun": false, "authored_translation": "source-derived-structured-summary", "source_facts_revision": "8df3c0474782589d3c6f374b5133b1bd14d168086edbc13c6e72e67dd4527a3b"}, "sections": [{"code": "/* src/pl/plpython/plpythonu--1.0.sql */\n\n/*\n * Currently, all the interesting stuff is done by CREATE LANGUAGE.\n * Later we will probably \"dumb down\" that command and put more of the\n * knowledge into this script.\n */\n\nCREATE LANGUAGE plpythonu;\n\nCOMMENT ON LANGUAGE plpythonu IS 'PL/PythonU untrusted procedural language';", "title": "\u540c\u6784\u5efa\u6e90\u7801\u4e2d\u7684\u5b89\u88c5\u5b9a\u4e49", "paragraphs": ["\u6b64\u6269\u5c55\u968f\u6e90\u7801\u63d0\u4f9b\uff1b\u6536\u5f55\u5b83\u5e76\u4e0d\u8868\u793a\u5df2\u5b89\u88c5\u8be5\u8bed\u8a00\u6216\u5916\u90e8\u8fd0\u884c\u65f6\u3002"]}], "description_zh": "\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002", "description_zh_html": "<p>\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002</p><dl><dt>\u8fd0\u7b97\u7b26\u65cf</dt><dd><code>PL/Python</code></dd><dt>\u5904\u7406\u51fd\u6570</dt><dd><code>plpython_call_handler</code></dd><dt>\u5e93</dt><dd><code>$libdir/plpython2</code></dd><dt>\u53d7\u4fe1\u4efb</dt><dd><code>\u5426</code></dd><dt>\u9a8c\u8bc1\u51fd\u6570</dt><dd><code>plpython_validator</code></dd><dt>\u5185\u8054\u5904\u7406\u51fd\u6570</dt><dd><code>plpython_inline_handler</code></dd><dt>\u9ed8\u8ba4\u7248\u672c</dt><dd><code>1.0</code></dd><dt>\u6a21\u5757\u8def\u5f84</dt><dd><code>$libdir/plpython2</code></dd></dl><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n<span class=\"application\">PL/Python</span> \u8fc7\u7a0b\u8bed\u8a00\u5141\u8bb8\u4f7f\u7528 <a class=\"ulink\" href=\"https://www.python.org\">Python \u8bed\u8a00</a>\u7f16\u5199 <span class=\"productname\">PostgreSQL</span> \u51fd\u6570\u548c\u8fc7\u7a0b\u3002\n </p><p>\n  \u8981\u5728\u7279\u5b9a\u6570\u636e\u5e93\u4e2d\u5b89\u88c5 PL/Python\uff0c\u53ef\u4f7f\u7528 <code class=\"literal\">CREATE EXTENSION plpythonu</code>\uff08\u53e6\u89c1<a class=\"xref\" href=\"/zh/docs/12/plpython.html#PLPYTHON-PYTHON23\">\u7b2c\u00a045.1\u00a0\u8282</a>\uff09\u3002\n </p><p>\n  PL/Python \u53ea\u80fd\u4f5c\u4e3a\u4e00\u79cd<span class=\"quote\">\u201c<span class=\"quote\">\u4e0d\u53d7\u4fe1\u4efb\u7684</span>\u201d</span>\u8bed\u8a00\u4f7f\u7528\uff0c\u8fd9\u610f\u5473\u7740\u5b83\u4e0d\u63d0\u4f9b\u4efb\u4f55\u673a\u5236\u6765\u9650\u5236\u7528\u6237\u80fd\u5728\u5176\u4e2d\u505a\u4ec0\u4e48\uff0c\u56e0\u6b64\u5176\u540d\u79f0\u4e3a <code class=\"literal\">plpythonu</code>\u3002\u5982\u679c\u5c06\u6765\u80fd\u5728 Python \u4e2d\u5f00\u53d1\u51fa\u5b89\u5168\u7684\u6267\u884c\u673a\u5236\uff0c\u53d7\u4fe1\u4efb\u7684\u53d8\u4f53 <code class=\"literal\">plpython</code> \u53ef\u80fd\u4f1a\u51fa\u73b0\u3002\u4f7f\u7528\u4e0d\u53d7\u4fe1\u4efb\u7684 PL/Python \u7f16\u5199\u51fd\u6570\u65f6\uff0c\u51fd\u6570\u7f16\u5199\u8005\u5fc5\u987b\u786e\u4fdd\u8be5\u51fd\u6570\u4e0d\u4f1a\u88ab\u7528\u6765\u505a\u4efb\u4f55\u4e0d\u5e0c\u671b\u53d1\u751f\u7684\u4e8b\u60c5\uff0c\u56e0\u4e3a\u5b83\u80fd\u591f\u505a\u5230\u4efb\u4f55\u4ee5\u6570\u636e\u5e93\u7ba1\u7406\u5458\u8eab\u4efd\u767b\u5f55\u7684\u7528\u6237\u6240\u80fd\u505a\u7684\u4e8b\u60c5\u3002\u53ea\u6709\u8d85\u7ea7\u7528\u6237\u624d\u80fd\u5728 <code class=\"literal\">plpythonu</code> \u8fd9\u7c7b\u4e0d\u53d7\u4fe1\u4efb\u7684\u8bed\u8a00\u4e2d\u521b\u5efa\u51fd\u6570\u3002\n </p><p><a href=\"/zh/docs/12/plpython.html\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "summary": "\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002", "version": "12", "link_map": {"/zh/docs/12/plpython.html": "/docs/12/plpython.html", "/zh/docs/12/plpython.html#PLPYTHON-PYTHON23": "/docs/12/plpython.html#PLPYTHON-PYTHON23"}, "body_html": "<p>\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002</p><dl><dt>\u8fd0\u7b97\u7b26\u65cf</dt><dd><code>PL/Python</code></dd><dt>\u5904\u7406\u51fd\u6570</dt><dd><code>plpython_call_handler</code></dd><dt>\u5e93</dt><dd><code>$libdir/plpython2</code></dd><dt>\u53d7\u4fe1\u4efb</dt><dd><code>\u5426</code></dd><dt>\u9a8c\u8bc1\u51fd\u6570</dt><dd><code>plpython_validator</code></dd><dt>\u5185\u8054\u5904\u7406\u51fd\u6570</dt><dd><code>plpython_inline_handler</code></dd><dt>\u9ed8\u8ba4\u7248\u672c</dt><dd><code>1.0</code></dd><dt>\u6a21\u5757\u8def\u5f84</dt><dd><code>$libdir/plpython2</code></dd></dl><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n<span>PL/Python</span> \u8fc7\u7a0b\u8bed\u8a00\u5141\u8bb8\u4f7f\u7528 <a href=\"https://www.python.org\" rel=\"nofollow\">Python \u8bed\u8a00</a>\u7f16\u5199 <span>PostgreSQL</span> \u51fd\u6570\u548c\u8fc7\u7a0b\u3002\n </p><p>\n  \u8981\u5728\u7279\u5b9a\u6570\u636e\u5e93\u4e2d\u5b89\u88c5 PL/Python\uff0c\u53ef\u4f7f\u7528 <code>CREATE EXTENSION plpythonu</code>\uff08\u53e6\u89c1<a href=\"/zh/docs/12/plpython.html#PLPYTHON-PYTHON23\" rel=\"nofollow\">\u7b2c\u00a045.1\u00a0\u8282</a>\uff09\u3002\n </p><p>\n  PL/Python \u53ea\u80fd\u4f5c\u4e3a\u4e00\u79cd<span>\u201c<span>\u4e0d\u53d7\u4fe1\u4efb\u7684</span>\u201d</span>\u8bed\u8a00\u4f7f\u7528\uff0c\u8fd9\u610f\u5473\u7740\u5b83\u4e0d\u63d0\u4f9b\u4efb\u4f55\u673a\u5236\u6765\u9650\u5236\u7528\u6237\u80fd\u5728\u5176\u4e2d\u505a\u4ec0\u4e48\uff0c\u56e0\u6b64\u5176\u540d\u79f0\u4e3a <code>plpythonu</code>\u3002\u5982\u679c\u5c06\u6765\u80fd\u5728 Python \u4e2d\u5f00\u53d1\u51fa\u5b89\u5168\u7684\u6267\u884c\u673a\u5236\uff0c\u53d7\u4fe1\u4efb\u7684\u53d8\u4f53 <code>plpython</code> \u53ef\u80fd\u4f1a\u51fa\u73b0\u3002\u4f7f\u7528\u4e0d\u53d7\u4fe1\u4efb\u7684 PL/Python \u7f16\u5199\u51fd\u6570\u65f6\uff0c\u51fd\u6570\u7f16\u5199\u8005\u5fc5\u987b\u786e\u4fdd\u8be5\u51fd\u6570\u4e0d\u4f1a\u88ab\u7528\u6765\u505a\u4efb\u4f55\u4e0d\u5e0c\u671b\u53d1\u751f\u7684\u4e8b\u60c5\uff0c\u56e0\u4e3a\u5b83\u80fd\u591f\u505a\u5230\u4efb\u4f55\u4ee5\u6570\u636e\u5e93\u7ba1\u7406\u5458\u8eab\u4efd\u767b\u5f55\u7684\u7528\u6237\u6240\u80fd\u505a\u7684\u4e8b\u60c5\u3002\u53ea\u6709\u8d85\u7ea7\u7528\u6237\u624d\u80fd\u5728 <code>plpythonu</code> \u8fd9\u7c7b\u4e0d\u53d7\u4fe1\u4efb\u7684\u8bed\u8a00\u4e2d\u521b\u5efa\u51fd\u6570\u3002\n </p><p><a href=\"/zh/docs/12/plpython.html\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "body_sha256": "9ada6b423ca398fdcdf559fe57a6c48b8381ddbbb9cb262a140c0e9bde9d73f5", "content_hash": "0f5824e2b1b196c8ef18a6ad94998850251ef4ac1f3614d5bd11a871381976ac", "source_database": "center", "source_revision": "8df3c0474782589d3c6f374b5133b1bd14d168086edbc13c6e72e67dd4527a3b"}, "signature": "", "tables_zh": [], "attributes": {"kind": "Bundled procedural-language variant", "family": "PL/Python", "comment": "PL/PythonU untrusted procedural language", "handler": "plpython_call_handler", "library": "$libdir/plpython2", "trusted": "f", "validator": "plpython_validator", "inline_handler": "plpython_inline_handler", "default_version": "1.0", "module_pathname": "$libdir/plpython2"}, "description": ["\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002"], "manual_html": "", "manual_path": "/docs/12/plpython.html", "sections_zh": [{"code": "/* src/pl/plpython/plpythonu--1.0.sql */\n\n/*\n * Currently, all the interesting stuff is done by CREATE LANGUAGE.\n * Later we will probably \"dumb down\" that command and put more of the\n * knowledge into this script.\n */\n\nCREATE LANGUAGE plpythonu;\n\nCOMMENT ON LANGUAGE plpythonu IS 'PL/PythonU untrusted procedural language';", "title": "\u540c\u6784\u5efa\u6e90\u7801\u4e2d\u7684\u5b89\u88c5\u5b9a\u4e49", "paragraphs": ["\u6b64\u6269\u5c55\u968f\u6e90\u7801\u63d0\u4f9b\uff1b\u6536\u5f55\u5b83\u5e76\u4e0d\u8868\u793a\u5df2\u5b89\u88c5\u8be5\u8bed\u8a00\u6216\u5916\u90e8\u8fd0\u884c\u65f6\u3002"]}], "localization": {"status": "complete", "sources": [{"url": "/docs/12/plpython-data.html", "method": "same-major semantic node", "sha256": "f488f6a97b1e71e55099632c70b2e892e379860e411936a8f03ceca1c4242cba", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/12/plpython-database.html", "method": "same-major semantic node", "sha256": "227b2f7bab7b22723ecb31a2982f3bb0e17ec5adfe3f57ece8bd42a5b5ea1211", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/12/plpython-do.html", "method": "same-major semantic node", "sha256": "e82e58583d85d3405630258e84a6df4715b5e279a8a242cfd5f2711a915b76cd", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/12/plpython-envar.html", "method": "same-major semantic node", "sha256": "263862906618d35847ea9e43f868acb389948451e767bbc3063cc47fa3a435e9", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/12/plpython-funcs.html", "method": "same-major semantic node", "sha256": "9ab95ab6c02878133a3e726e905bcff5878f671ca99ac3fb0cb6eef3c6bf23ad", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/12/plpython-sharing.html", "method": "same-major semantic node", "sha256": "db900924b34cda6c270aa5f9d9bd38632be3c5a809a4e2708565c83ea8693cc0", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/12/plpython-subtransaction.html", "method": "same-major semantic node", "sha256": "72ec295c7ff674969736baf432bc277dfb928b86eefbe45fad7e19394aaaf995", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/12/plpython-transactions.html", "method": "same-major semantic node", "sha256": "c2625b4550bc0cc580cfa25ed44853132ff01b962456183daba0b5f5ac960550", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/12/plpython-trigger.html", "method": "same-major semantic node", "sha256": "05cc3497f6ddfd3880efbcc02354f50df0f9efb4e6ca29477b3d10ce281e88e4", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/12/plpython-util.html", "method": "same-major semantic node", "sha256": "e89b618bd7153fedca316861c59cbf1031794fd4498f3b57d33b3ce66b9465ac", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/12/plpython.html", "method": "same-major semantic node", "sha256": "84fcb5aa6ae3d590e33266bd30f128007ff28c9d454ece03e444b272e79c0c5a", "language": "zh", "matched_nodes": ["#PLPYTHON/h3[0]", "#PLPYTHON/h3[1]", "#PLPYTHON/p[1]", "#PLPYTHON/p[2]", "#PLPYTHON/p[3]", "#PLPYTHON/p[4]", "#PLPYTHON/p[5]"]}], "language": "zh", "original_text": {"/versions/12/description/0": "PL/PythonU untrusted procedural language", "/versions/12/facts/0/label": "Kind", "/versions/12/facts/0/value": "Bundled procedural-language variant", "/versions/12/facts/1/label": "Family", "/versions/12/facts/2/label": "Trusted", "/versions/12/facts/3/label": "Handler", "/versions/12/facts/4/label": "Inline handler", "/versions/12/facts/5/label": "Validator", "/versions/12/facts/6/label": "Library", "/versions/12/facts/7/label": "Default version", "/versions/12/facts/8/label": "Module pathname", "/versions/12/facts/9/label": "Comment", "/versions/12/facts/9/value": "PL/PythonU untrusted procedural language", "/versions/12/related/0/label": "plpython-data", "/versions/12/related/1/label": "plpython-database", "/versions/12/related/2/label": "plpython-do", "/versions/12/related/3/label": "plpython-envar", "/versions/12/related/4/label": "plpython-funcs", "/versions/12/related/6/label": "plpython-sharing", "/versions/12/related/7/label": "plpython-subtransaction", "/versions/12/related/8/label": "plpython-transactions", "/versions/12/related/9/label": "plpython-trigger", "/versions/12/related/10/label": "plpython-util", "/versions/12/sections/0/title": "Installation definition from the matching source archive", "/versions/12/sections/0/paragraphs/0": "This extension is shipped with the source. Its presence does not establish that the language or external runtime is installed."}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "77b5f59ebb3acb50c02fe62162f32ab92ebf97aea96bf28dc6d5e5667db81093", "canonical_center_text_hash": "0f5824e2b1b196c8ef18a6ad94998850251ef4ac1f3614d5bd11a871381976ac"}, "source_files": {"src/pl/plpython/plpythonu.control": "1fa1af3f24d2dab852f17dc3c63e5a6c6ef92a835599202fa270252dce59d285", "src/pl/plpython/plpythonu--1.0.sql": "28aa6cc99d0c72b9a8e69aaa537ff8c1489e72c6465a1f4ef8dc568f21ce57ff"}, "description_zh": "\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002", "comparison_data": {"kind": "Bundled procedural-language variant", "family": "PL/Python", "handler": "plpython_call_handler", "library": "$libdir/plpython2", "trusted": "f", "validator": "plpython_validator", "inline_handler": "plpython_inline_handler", "default_version": "1.0"}, "comparison_hash": "4664ce2e8831b4283a479a5974c64e65ba0c0be65d66e50ede487408aea4c640", "manual_language": "zh", "description_zh_html": "<p>\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002</p><dl><dt>\u8fd0\u7b97\u7b26\u65cf</dt><dd><code>PL/Python</code></dd><dt>\u5904\u7406\u51fd\u6570</dt><dd><code>plpython_call_handler</code></dd><dt>\u5e93</dt><dd><code>$libdir/plpython2</code></dd><dt>\u53d7\u4fe1\u4efb</dt><dd><code>\u5426</code></dd><dt>\u9a8c\u8bc1\u51fd\u6570</dt><dd><code>plpython_validator</code></dd><dt>\u5185\u8054\u5904\u7406\u51fd\u6570</dt><dd><code>plpython_inline_handler</code></dd><dt>\u9ed8\u8ba4\u7248\u672c</dt><dd><code>1.0</code></dd><dt>\u6a21\u5757\u8def\u5f84</dt><dd><code>$libdir/plpython2</code></dd></dl><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n<span>PL/Python</span> \u8fc7\u7a0b\u8bed\u8a00\u5141\u8bb8\u4f7f\u7528 <a href=\"https://www.python.org\" rel=\"nofollow\">Python \u8bed\u8a00</a>\u7f16\u5199 <span>PostgreSQL</span> \u51fd\u6570\u548c\u8fc7\u7a0b\u3002\n </p><p>\n  \u8981\u5728\u7279\u5b9a\u6570\u636e\u5e93\u4e2d\u5b89\u88c5 PL/Python\uff0c\u53ef\u4f7f\u7528 <code>CREATE EXTENSION plpythonu</code>\uff08\u53e6\u89c1<a href=\"/zh/docs/12/plpython.html#PLPYTHON-PYTHON23\" rel=\"nofollow\">\u7b2c\u00a045.1\u00a0\u8282</a>\uff09\u3002\n </p><p>\n  PL/Python \u53ea\u80fd\u4f5c\u4e3a\u4e00\u79cd<span>\u201c<span>\u4e0d\u53d7\u4fe1\u4efb\u7684</span>\u201d</span>\u8bed\u8a00\u4f7f\u7528\uff0c\u8fd9\u610f\u5473\u7740\u5b83\u4e0d\u63d0\u4f9b\u4efb\u4f55\u673a\u5236\u6765\u9650\u5236\u7528\u6237\u80fd\u5728\u5176\u4e2d\u505a\u4ec0\u4e48\uff0c\u56e0\u6b64\u5176\u540d\u79f0\u4e3a <code>plpythonu</code>\u3002\u5982\u679c\u5c06\u6765\u80fd\u5728 Python \u4e2d\u5f00\u53d1\u51fa\u5b89\u5168\u7684\u6267\u884c\u673a\u5236\uff0c\u53d7\u4fe1\u4efb\u7684\u53d8\u4f53 <code>plpython</code> \u53ef\u80fd\u4f1a\u51fa\u73b0\u3002\u4f7f\u7528\u4e0d\u53d7\u4fe1\u4efb\u7684 PL/Python \u7f16\u5199\u51fd\u6570\u65f6\uff0c\u51fd\u6570\u7f16\u5199\u8005\u5fc5\u987b\u786e\u4fdd\u8be5\u51fd\u6570\u4e0d\u4f1a\u88ab\u7528\u6765\u505a\u4efb\u4f55\u4e0d\u5e0c\u671b\u53d1\u751f\u7684\u4e8b\u60c5\uff0c\u56e0\u4e3a\u5b83\u80fd\u591f\u505a\u5230\u4efb\u4f55\u4ee5\u6570\u636e\u5e93\u7ba1\u7406\u5458\u8eab\u4efd\u767b\u5f55\u7684\u7528\u6237\u6240\u80fd\u505a\u7684\u4e8b\u60c5\u3002\u53ea\u6709\u8d85\u7ea7\u7528\u6237\u624d\u80fd\u5728 <code>plpythonu</code> \u8fd9\u7c7b\u4e0d\u53d7\u4fe1\u4efb\u7684\u8bed\u8a00\u4e2d\u521b\u5efa\u51fd\u6570\u3002\n </p><p><a href=\"/zh/docs/12/plpython.html\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "13": {"facts": [{"label": "\u79cd\u7c7b", "value": "\u968f\u6e90\u7801\u63d0\u4f9b\u7684\u8fc7\u7a0b\u8bed\u8a00\u53d8\u4f53"}, {"label": "\u64cd\u4f5c\u7b26\u5bb6\u65cf", "value": "PL/Python"}, {"label": "\u53ef\u4fe1", "value": "f"}, {"label": "\u5904\u7406\u51fd\u6570", "value": "plpython_call_handler"}, {"label": "\u5185\u8054\u4ee3\u7801\u5904\u7406\u51fd\u6570", "value": "plpython_inline_handler"}, {"label": "\u6821\u9a8c\u51fd\u6570", "value": "plpython_validator"}, {"label": "\u5e93", "value": "$libdir/plpython2"}, {"label": "\u9ed8\u8ba4\u7248\u672c", "value": "1.0"}, {"label": "\u6a21\u5757\u8def\u5f84", "value": "$libdir/plpython2"}, {"label": "\u6ce8\u91ca", "value": "PL/PythonU \u975e\u53ef\u4fe1\u8fc7\u7a0b\u8bed\u8a00"}], "tables": [], "aliases": [], "related": [{"url": "/docs/13/plpython-data.html", "label": "\u6570\u636e\u503c"}, {"url": "/docs/13/plpython-database.html", "label": "\u6570\u636e\u5e93\u8bbf\u95ee"}, {"url": "/docs/13/plpython-do.html", "label": "\u533f\u540d\u4ee3\u7801\u5757"}, {"url": "/docs/13/plpython-envar.html", "label": "\u73af\u5883\u53d8\u91cf"}, {"url": "/docs/13/plpython-funcs.html", "label": "PL/Python \u51fd\u6570"}, {"url": "/docs/13/plpython-python23.html", "label": "plpython-python23"}, {"url": "/docs/13/plpython-sharing.html", "label": "\u5171\u4eab\u6570\u636e"}, {"url": "/docs/13/plpython-subtransaction.html", "label": "\u663e\u5f0f\u5b50\u4e8b\u52a1"}, {"url": "/docs/13/plpython-transactions.html", "label": "\u4e8b\u52a1\u7ba1\u7406"}, {"url": "/docs/13/plpython-trigger.html", "label": "\u89e6\u53d1\u5668\u51fd\u6570"}, {"url": "/docs/13/plpython-util.html", "label": "\u8f85\u52a9\u51fd\u6570"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v13.23/postgresql-13.23.tar.bz2", "label": "13.23", "major": "13", "channel": "historical", "revision": "6ec3c82726af92b7dec873fa1cdf881eca92a4219787dfad05acb6b10e041fd6", "source_sha256": "6ec3c82726af92b7dec873fa1cdf881eca92a4219787dfad05acb6b10e041fd6", "catalog_fingerprint": "c7015c845255c9d721c547c8ab9ef37825d332588c9691d982e6906b7d571002"}, "sources": [{"url": "https://ftp.postgresql.org/pub/source/v13.23/postgresql-13.23.tar.bz2", "label": "Matching PostgreSQL source archive", "sha256": "6ec3c82726af92b7dec873fa1cdf881eca92a4219787dfad05acb6b10e041fd6"}, {"url": "/docs/13/plpython.html", "path": "plpython.html", "label": "PostgreSQL 13 English manual", "sha256": "5aee74b10a6edbfc58ef0eaea73e5b33975c31f01bdb30741676c261023e88c4"}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-structured-summary", "manual": {"url": "/zh/docs/13/plpython.html", "anchor": "", "locale": "zh-Hans", "version": "13", "build_id": 66, "page_key": "plpython.html", "extraction": "concept-introduction", "source_hash": "263340d5c3d8082ff290790ad6a6803c1aaa772ad4b38c1d3bc8091dee3ab1ff", "fragment_sha256": "1fa259717a31573b483bef1d8e5608ce7928309da29bfd4ed83f8bc2c488e165", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "snapshot:sha256:a13a825c39f0268ef1cfe9137e283e38d0da73b2d7894f0733c7b26372a4f6a4", "translated_from_revision": null}, "body_sha256": "0c4ab5d2d0a3ce1a5c19b1c58f2a7bddfc5ed75cf2591c2d304dc47d3347dcd4", "runtime_rerun": false, "authored_translation": "source-derived-structured-summary", "source_facts_revision": "6ec3c82726af92b7dec873fa1cdf881eca92a4219787dfad05acb6b10e041fd6"}, "facts_zh": [{"label": "\u79cd\u7c7b", "value": "\u968f\u6e90\u7801\u63d0\u4f9b\u7684\u8fc7\u7a0b\u8bed\u8a00\u53d8\u4f53"}, {"label": "\u64cd\u4f5c\u7b26\u5bb6\u65cf", "value": "PL/Python"}, {"label": "\u53ef\u4fe1", "value": "f"}, {"label": "\u5904\u7406\u51fd\u6570", "value": "plpython_call_handler"}, {"label": "\u5185\u8054\u4ee3\u7801\u5904\u7406\u51fd\u6570", "value": "plpython_inline_handler"}, {"label": "\u6821\u9a8c\u51fd\u6570", "value": "plpython_validator"}, {"label": "\u5e93", "value": "$libdir/plpython2"}, {"label": "\u9ed8\u8ba4\u7248\u672c", "value": "1.0"}, {"label": "\u6a21\u5757\u8def\u5f84", "value": "$libdir/plpython2"}, {"label": "\u6ce8\u91ca", "value": "PL/PythonU \u975e\u53ef\u4fe1\u8fc7\u7a0b\u8bed\u8a00"}], "sections": [{"code": "/* src/pl/plpython/plpythonu--1.0.sql */\n\nCREATE FUNCTION plpython_call_handler() RETURNS language_handler\n  LANGUAGE c AS 'MODULE_PATHNAME';\n\nCREATE FUNCTION plpython_inline_handler(internal) RETURNS void\n  STRICT LANGUAGE c AS 'MODULE_PATHNAME';\n\nCREATE FUNCTION plpython_validator(oid) RETURNS void\n  STRICT LANGUAGE c AS 'MODULE_PATHNAME';\n\nCREATE LANGUAGE plpythonu\n  HANDLER plpython_call_handler\n  INLINE plpython_inline_handler\n  VALIDATOR plpython_validator;\n\nCOMMENT ON LANGUAGE plpythonu IS 'PL/PythonU untrusted procedural language';", "title": "\u540c\u6784\u5efa\u6e90\u7801\u4e2d\u7684\u5b89\u88c5\u5b9a\u4e49", "paragraphs": ["\u6b64\u6269\u5c55\u968f\u6e90\u7801\u63d0\u4f9b\uff1b\u6536\u5f55\u5b83\u5e76\u4e0d\u8868\u793a\u5df2\u5b89\u88c5\u8be5\u8bed\u8a00\u6216\u5916\u90e8\u8fd0\u884c\u65f6\u3002"]}], "center_zh": {"title": "plpythonu", "locale": "zh-Hans", "source": {"key": "plpythonu", "locale": "zh-Hans", "version": "13", "text_hash": "7c542ca75c99896eb3242fe187a924c497a394ce8f39c7146ab2080050fbab31", "collection": "language", "dataset_hash": "7c31b524dfe136022d39a6ae8dcfac6b3bbd5f8fdaf422536599981252aff0c9", "source_database": "center", "source_revision": "6ec3c82726af92b7dec873fa1cdf881eca92a4219787dfad05acb6b10e041fd6"}, "payload": {"facts": [{"label": "\u79cd\u7c7b", "value": "\u968f\u6e90\u7801\u63d0\u4f9b\u7684\u8fc7\u7a0b\u8bed\u8a00\u53d8\u4f53"}, {"label": "\u64cd\u4f5c\u7b26\u5bb6\u65cf", "value": "PL/Python"}, {"label": "\u53ef\u4fe1", "value": "f"}, {"label": "\u5904\u7406\u51fd\u6570", "value": "plpython_call_handler"}, {"label": "\u5185\u8054\u4ee3\u7801\u5904\u7406\u51fd\u6570", "value": "plpython_inline_handler"}, {"label": "\u6821\u9a8c\u51fd\u6570", "value": "plpython_validator"}, {"label": "\u5e93", "value": "$libdir/plpython2"}, {"label": "\u9ed8\u8ba4\u7248\u672c", "value": "1.0"}, {"label": "\u6a21\u5757\u8def\u5f84", "value": "$libdir/plpython2"}, {"label": "\u6ce8\u91ca", "value": "PL/PythonU \u975e\u53ef\u4fe1\u8fc7\u7a0b\u8bed\u8a00"}], "tables": [], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-structured-summary", "manual": {"url": "/zh/docs/13/plpython.html", "anchor": "", "locale": "zh-Hans", "version": "13", "build_id": 66, "page_key": "plpython.html", "extraction": "concept-introduction", "source_hash": "263340d5c3d8082ff290790ad6a6803c1aaa772ad4b38c1d3bc8091dee3ab1ff", "fragment_sha256": "1fa259717a31573b483bef1d8e5608ce7928309da29bfd4ed83f8bc2c488e165", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "snapshot:sha256:a13a825c39f0268ef1cfe9137e283e38d0da73b2d7894f0733c7b26372a4f6a4", "translated_from_revision": null}, "body_sha256": "0c4ab5d2d0a3ce1a5c19b1c58f2a7bddfc5ed75cf2591c2d304dc47d3347dcd4", "runtime_rerun": false, "authored_translation": "source-derived-structured-summary", "source_facts_revision": "6ec3c82726af92b7dec873fa1cdf881eca92a4219787dfad05acb6b10e041fd6"}, "sections": [{"code": "/* src/pl/plpython/plpythonu--1.0.sql */\n\nCREATE FUNCTION plpython_call_handler() RETURNS language_handler\n  LANGUAGE c AS 'MODULE_PATHNAME';\n\nCREATE FUNCTION plpython_inline_handler(internal) RETURNS void\n  STRICT LANGUAGE c AS 'MODULE_PATHNAME';\n\nCREATE FUNCTION plpython_validator(oid) RETURNS void\n  STRICT LANGUAGE c AS 'MODULE_PATHNAME';\n\nCREATE LANGUAGE plpythonu\n  HANDLER plpython_call_handler\n  INLINE plpython_inline_handler\n  VALIDATOR plpython_validator;\n\nCOMMENT ON LANGUAGE plpythonu IS 'PL/PythonU untrusted procedural language';", "title": "\u540c\u6784\u5efa\u6e90\u7801\u4e2d\u7684\u5b89\u88c5\u5b9a\u4e49", "paragraphs": ["\u6b64\u6269\u5c55\u968f\u6e90\u7801\u63d0\u4f9b\uff1b\u6536\u5f55\u5b83\u5e76\u4e0d\u8868\u793a\u5df2\u5b89\u88c5\u8be5\u8bed\u8a00\u6216\u5916\u90e8\u8fd0\u884c\u65f6\u3002"]}], "description_zh": "\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002", "description_zh_html": "<p>\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002</p><dl><dt>\u8fd0\u7b97\u7b26\u65cf</dt><dd><code>PL/Python</code></dd><dt>\u5904\u7406\u51fd\u6570</dt><dd><code>plpython_call_handler</code></dd><dt>\u5e93</dt><dd><code>$libdir/plpython2</code></dd><dt>\u53d7\u4fe1\u4efb</dt><dd><code>\u5426</code></dd><dt>\u9a8c\u8bc1\u51fd\u6570</dt><dd><code>plpython_validator</code></dd><dt>\u5185\u8054\u5904\u7406\u51fd\u6570</dt><dd><code>plpython_inline_handler</code></dd><dt>\u9ed8\u8ba4\u7248\u672c</dt><dd><code>1.0</code></dd><dt>\u6a21\u5757\u8def\u5f84</dt><dd><code>$libdir/plpython2</code></dd></dl><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n<span class=\"application\">PL/Python</span> \u8fc7\u7a0b\u8bed\u8a00\u5141\u8bb8\u4f7f\u7528 <a class=\"ulink\" href=\"https://www.python.org\">Python \u8bed\u8a00</a>\u7f16\u5199 <span class=\"productname\">PostgreSQL</span> \u51fd\u6570\u548c\u8fc7\u7a0b\u3002\n </p><p>\n  \u8981\u5728\u7279\u5b9a\u6570\u636e\u5e93\u4e2d\u5b89\u88c5 PL/Python\uff0c\u53ef\u4f7f\u7528 <code class=\"literal\">CREATE EXTENSION plpythonu</code>\uff08\u53e6\u89c1<a class=\"xref\" href=\"/zh/docs/13/plpython.html#PLPYTHON-PYTHON23\">\u7b2c\u00a045.1\u00a0\u8282</a>\uff09\u3002\n </p><p>\n  PL/Python \u53ea\u80fd\u4f5c\u4e3a\u4e00\u79cd<span class=\"quote\">\u201c<span class=\"quote\">\u4e0d\u53d7\u4fe1\u4efb\u7684</span>\u201d</span>\u8bed\u8a00\u4f7f\u7528\uff0c\u8fd9\u610f\u5473\u7740\u5b83\u4e0d\u63d0\u4f9b\u4efb\u4f55\u673a\u5236\u6765\u9650\u5236\u7528\u6237\u80fd\u5728\u5176\u4e2d\u505a\u4ec0\u4e48\uff0c\u56e0\u6b64\u5176\u540d\u79f0\u4e3a <code class=\"literal\">plpythonu</code>\u3002\u5982\u679c\u5c06\u6765\u80fd\u5728 Python \u4e2d\u5f00\u53d1\u51fa\u5b89\u5168\u7684\u6267\u884c\u673a\u5236\uff0c\u53d7\u4fe1\u4efb\u7684\u53d8\u4f53 <code class=\"literal\">plpython</code> \u53ef\u80fd\u4f1a\u51fa\u73b0\u3002\u4f7f\u7528\u4e0d\u53d7\u4fe1\u4efb\u7684 PL/Python \u7f16\u5199\u51fd\u6570\u65f6\uff0c\u51fd\u6570\u7f16\u5199\u8005\u5fc5\u987b\u786e\u4fdd\u8be5\u51fd\u6570\u4e0d\u4f1a\u88ab\u7528\u6765\u505a\u4efb\u4f55\u4e0d\u5e0c\u671b\u53d1\u751f\u7684\u4e8b\u60c5\uff0c\u56e0\u4e3a\u5b83\u80fd\u591f\u505a\u5230\u4efb\u4f55\u4ee5\u6570\u636e\u5e93\u7ba1\u7406\u5458\u8eab\u4efd\u767b\u5f55\u7684\u7528\u6237\u6240\u80fd\u505a\u7684\u4e8b\u60c5\u3002\u53ea\u6709\u8d85\u7ea7\u7528\u6237\u624d\u80fd\u5728 <code class=\"literal\">plpythonu</code> \u8fd9\u7c7b\u4e0d\u53d7\u4fe1\u4efb\u7684\u8bed\u8a00\u4e2d\u521b\u5efa\u51fd\u6570\u3002\n </p><p><a href=\"/zh/docs/13/plpython.html\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "summary": "\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002", "version": "13", "link_map": {"/zh/docs/13/plpython.html": "/docs/13/plpython.html", "/zh/docs/13/plpython.html#PLPYTHON-PYTHON23": "/docs/13/plpython.html#PLPYTHON-PYTHON23"}, "body_html": "<p>\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002</p><dl><dt>\u8fd0\u7b97\u7b26\u65cf</dt><dd><code>PL/Python</code></dd><dt>\u5904\u7406\u51fd\u6570</dt><dd><code>plpython_call_handler</code></dd><dt>\u5e93</dt><dd><code>$libdir/plpython2</code></dd><dt>\u53d7\u4fe1\u4efb</dt><dd><code>\u5426</code></dd><dt>\u9a8c\u8bc1\u51fd\u6570</dt><dd><code>plpython_validator</code></dd><dt>\u5185\u8054\u5904\u7406\u51fd\u6570</dt><dd><code>plpython_inline_handler</code></dd><dt>\u9ed8\u8ba4\u7248\u672c</dt><dd><code>1.0</code></dd><dt>\u6a21\u5757\u8def\u5f84</dt><dd><code>$libdir/plpython2</code></dd></dl><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n<span>PL/Python</span> \u8fc7\u7a0b\u8bed\u8a00\u5141\u8bb8\u4f7f\u7528 <a href=\"https://www.python.org\" rel=\"nofollow\">Python \u8bed\u8a00</a>\u7f16\u5199 <span>PostgreSQL</span> \u51fd\u6570\u548c\u8fc7\u7a0b\u3002\n </p><p>\n  \u8981\u5728\u7279\u5b9a\u6570\u636e\u5e93\u4e2d\u5b89\u88c5 PL/Python\uff0c\u53ef\u4f7f\u7528 <code>CREATE EXTENSION plpythonu</code>\uff08\u53e6\u89c1<a href=\"/zh/docs/13/plpython.html#PLPYTHON-PYTHON23\" rel=\"nofollow\">\u7b2c\u00a045.1\u00a0\u8282</a>\uff09\u3002\n </p><p>\n  PL/Python \u53ea\u80fd\u4f5c\u4e3a\u4e00\u79cd<span>\u201c<span>\u4e0d\u53d7\u4fe1\u4efb\u7684</span>\u201d</span>\u8bed\u8a00\u4f7f\u7528\uff0c\u8fd9\u610f\u5473\u7740\u5b83\u4e0d\u63d0\u4f9b\u4efb\u4f55\u673a\u5236\u6765\u9650\u5236\u7528\u6237\u80fd\u5728\u5176\u4e2d\u505a\u4ec0\u4e48\uff0c\u56e0\u6b64\u5176\u540d\u79f0\u4e3a <code>plpythonu</code>\u3002\u5982\u679c\u5c06\u6765\u80fd\u5728 Python \u4e2d\u5f00\u53d1\u51fa\u5b89\u5168\u7684\u6267\u884c\u673a\u5236\uff0c\u53d7\u4fe1\u4efb\u7684\u53d8\u4f53 <code>plpython</code> \u53ef\u80fd\u4f1a\u51fa\u73b0\u3002\u4f7f\u7528\u4e0d\u53d7\u4fe1\u4efb\u7684 PL/Python \u7f16\u5199\u51fd\u6570\u65f6\uff0c\u51fd\u6570\u7f16\u5199\u8005\u5fc5\u987b\u786e\u4fdd\u8be5\u51fd\u6570\u4e0d\u4f1a\u88ab\u7528\u6765\u505a\u4efb\u4f55\u4e0d\u5e0c\u671b\u53d1\u751f\u7684\u4e8b\u60c5\uff0c\u56e0\u4e3a\u5b83\u80fd\u591f\u505a\u5230\u4efb\u4f55\u4ee5\u6570\u636e\u5e93\u7ba1\u7406\u5458\u8eab\u4efd\u767b\u5f55\u7684\u7528\u6237\u6240\u80fd\u505a\u7684\u4e8b\u60c5\u3002\u53ea\u6709\u8d85\u7ea7\u7528\u6237\u624d\u80fd\u5728 <code>plpythonu</code> \u8fd9\u7c7b\u4e0d\u53d7\u4fe1\u4efb\u7684\u8bed\u8a00\u4e2d\u521b\u5efa\u51fd\u6570\u3002\n </p><p><a href=\"/zh/docs/13/plpython.html\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "body_sha256": "0d2ab76404439d08ea61db5774092fec44e4a027bed149136a26c43e241d80de", "content_hash": "7c542ca75c99896eb3242fe187a924c497a394ce8f39c7146ab2080050fbab31", "source_database": "center", "source_revision": "6ec3c82726af92b7dec873fa1cdf881eca92a4219787dfad05acb6b10e041fd6"}, "signature": "", "tables_zh": [], "attributes": {"kind": "Bundled procedural-language variant", "family": "PL/Python", "comment": "PL/PythonU untrusted procedural language", "handler": "plpython_call_handler", "library": "$libdir/plpython2", "trusted": "f", "validator": "plpython_validator", "inline_handler": "plpython_inline_handler", "default_version": "1.0", "module_pathname": "$libdir/plpython2"}, "description": ["\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002"], "manual_html": "", "manual_path": "/docs/13/plpython.html", "sections_zh": [{"code": "/* src/pl/plpython/plpythonu--1.0.sql */\n\nCREATE FUNCTION plpython_call_handler() RETURNS language_handler\n  LANGUAGE c AS 'MODULE_PATHNAME';\n\nCREATE FUNCTION plpython_inline_handler(internal) RETURNS void\n  STRICT LANGUAGE c AS 'MODULE_PATHNAME';\n\nCREATE FUNCTION plpython_validator(oid) RETURNS void\n  STRICT LANGUAGE c AS 'MODULE_PATHNAME';\n\nCREATE LANGUAGE plpythonu\n  HANDLER plpython_call_handler\n  INLINE plpython_inline_handler\n  VALIDATOR plpython_validator;\n\nCOMMENT ON LANGUAGE plpythonu IS 'PL/PythonU untrusted procedural language';", "title": "\u540c\u6784\u5efa\u6e90\u7801\u4e2d\u7684\u5b89\u88c5\u5b9a\u4e49", "paragraphs": ["\u6b64\u6269\u5c55\u968f\u6e90\u7801\u63d0\u4f9b\uff1b\u6536\u5f55\u5b83\u5e76\u4e0d\u8868\u793a\u5df2\u5b89\u88c5\u8be5\u8bed\u8a00\u6216\u5916\u90e8\u8fd0\u884c\u65f6\u3002"]}], "localization": {"status": "complete", "sources": [{"url": "/docs/13/plpython-data.html", "method": "same-major semantic node", "sha256": "91fe00220d4b025bad9c5680c8ab25abda6101d6764671c30b8e57c460908cd2", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/13/plpython-database.html", "method": "same-major semantic node", "sha256": "26a7bd1527941c915fb8a232e1ac4383b7947cc5b22a19e776b6ca670ca35a94", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/13/plpython-do.html", "method": "same-major semantic node", "sha256": "7997ec146e66b831b0bcfbd45300ef4a18bc2dd9db9f3231347932539084169f", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/13/plpython-envar.html", "method": "same-major semantic node", "sha256": "1044aa28dc9f0b2249c56b7f00079eefed36d9e3b885e61a2fabf89e119b0f50", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/13/plpython-funcs.html", "method": "same-major semantic node", "sha256": "a69fd11cfe92f7358ae38ce0110fbed6e8c72b39d006a9e81952b4216a908a95", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/13/plpython-sharing.html", "method": "same-major semantic node", "sha256": "0799ab2a1d2a2a43cbb2326e552da819a34bedeb80eb6071e54d6826642afbbf", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/13/plpython-subtransaction.html", "method": "same-major semantic node", "sha256": "7521b68e3ecbb0e34017df86e15089daacbbc669ee769eff1b7f31da432115e9", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/13/plpython-transactions.html", "method": "same-major semantic node", "sha256": "6c5ce10571f6f375823b4eda83c346e8f43cee53873955d48f5e27d8e103c74c", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/13/plpython-trigger.html", "method": "same-major semantic node", "sha256": "536316cd0b0e638de95c02e91cd7c8df1e0bb3725a4a12d08d19850c8e16be60", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/13/plpython-util.html", "method": "same-major semantic node", "sha256": "cd294dba8cc9e555abfa13670de1df7bc2c4d947832bca1b460651fd9cbe28c4", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/13/plpython.html", "method": "same-major semantic node", "sha256": "ba208aa0503bb88a2d206f7228208348fb82bf3e79893a5a7fe344dfd8d7da17", "language": "zh", "matched_nodes": ["#PLPYTHON/h3[0]", "#PLPYTHON/h3[1]", "#PLPYTHON/p[1]", "#PLPYTHON/p[2]", "#PLPYTHON/p[3]", "#PLPYTHON/p[4]", "#PLPYTHON/p[5]"]}], "language": "zh", "original_text": {"/versions/13/description/0": "PL/PythonU untrusted procedural language", "/versions/13/facts/0/label": "Kind", "/versions/13/facts/0/value": "Bundled procedural-language variant", "/versions/13/facts/1/label": "Family", "/versions/13/facts/2/label": "Trusted", "/versions/13/facts/3/label": "Handler", "/versions/13/facts/4/label": "Inline handler", "/versions/13/facts/5/label": "Validator", "/versions/13/facts/6/label": "Library", "/versions/13/facts/7/label": "Default version", "/versions/13/facts/8/label": "Module pathname", "/versions/13/facts/9/label": "Comment", "/versions/13/facts/9/value": "PL/PythonU untrusted procedural language", "/versions/13/related/0/label": "plpython-data", "/versions/13/related/1/label": "plpython-database", "/versions/13/related/2/label": "plpython-do", "/versions/13/related/3/label": "plpython-envar", "/versions/13/related/4/label": "plpython-funcs", "/versions/13/related/6/label": "plpython-sharing", "/versions/13/related/7/label": "plpython-subtransaction", "/versions/13/related/8/label": "plpython-transactions", "/versions/13/related/9/label": "plpython-trigger", "/versions/13/related/10/label": "plpython-util", "/versions/13/sections/0/title": "Installation definition from the matching source archive", "/versions/13/sections/0/paragraphs/0": "This extension is shipped with the source. Its presence does not establish that the language or external runtime is installed."}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "4897e4f44aedfebf1e713fcdb4fc07814939eecb209a6fbf5a945fa0524db576", "canonical_center_text_hash": "7c542ca75c99896eb3242fe187a924c497a394ce8f39c7146ab2080050fbab31"}, "source_files": {"src/pl/plpython/plpythonu.control": "1fa1af3f24d2dab852f17dc3c63e5a6c6ef92a835599202fa270252dce59d285", "src/pl/plpython/plpythonu--1.0.sql": "70bad78157392ad1efe970053f5d54bae45a61e10670a373cca5432f2b91dce3"}, "description_zh": "\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002", "comparison_data": {"kind": "Bundled procedural-language variant", "family": "PL/Python", "handler": "plpython_call_handler", "library": "$libdir/plpython2", "trusted": "f", "validator": "plpython_validator", "inline_handler": "plpython_inline_handler", "default_version": "1.0"}, "comparison_hash": "4664ce2e8831b4283a479a5974c64e65ba0c0be65d66e50ede487408aea4c640", "manual_language": "zh", "description_zh_html": "<p>\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002</p><dl><dt>\u8fd0\u7b97\u7b26\u65cf</dt><dd><code>PL/Python</code></dd><dt>\u5904\u7406\u51fd\u6570</dt><dd><code>plpython_call_handler</code></dd><dt>\u5e93</dt><dd><code>$libdir/plpython2</code></dd><dt>\u53d7\u4fe1\u4efb</dt><dd><code>\u5426</code></dd><dt>\u9a8c\u8bc1\u51fd\u6570</dt><dd><code>plpython_validator</code></dd><dt>\u5185\u8054\u5904\u7406\u51fd\u6570</dt><dd><code>plpython_inline_handler</code></dd><dt>\u9ed8\u8ba4\u7248\u672c</dt><dd><code>1.0</code></dd><dt>\u6a21\u5757\u8def\u5f84</dt><dd><code>$libdir/plpython2</code></dd></dl><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n<span>PL/Python</span> \u8fc7\u7a0b\u8bed\u8a00\u5141\u8bb8\u4f7f\u7528 <a href=\"https://www.python.org\" rel=\"nofollow\">Python \u8bed\u8a00</a>\u7f16\u5199 <span>PostgreSQL</span> \u51fd\u6570\u548c\u8fc7\u7a0b\u3002\n </p><p>\n  \u8981\u5728\u7279\u5b9a\u6570\u636e\u5e93\u4e2d\u5b89\u88c5 PL/Python\uff0c\u53ef\u4f7f\u7528 <code>CREATE EXTENSION plpythonu</code>\uff08\u53e6\u89c1<a href=\"/zh/docs/13/plpython.html#PLPYTHON-PYTHON23\" rel=\"nofollow\">\u7b2c\u00a045.1\u00a0\u8282</a>\uff09\u3002\n </p><p>\n  PL/Python \u53ea\u80fd\u4f5c\u4e3a\u4e00\u79cd<span>\u201c<span>\u4e0d\u53d7\u4fe1\u4efb\u7684</span>\u201d</span>\u8bed\u8a00\u4f7f\u7528\uff0c\u8fd9\u610f\u5473\u7740\u5b83\u4e0d\u63d0\u4f9b\u4efb\u4f55\u673a\u5236\u6765\u9650\u5236\u7528\u6237\u80fd\u5728\u5176\u4e2d\u505a\u4ec0\u4e48\uff0c\u56e0\u6b64\u5176\u540d\u79f0\u4e3a <code>plpythonu</code>\u3002\u5982\u679c\u5c06\u6765\u80fd\u5728 Python \u4e2d\u5f00\u53d1\u51fa\u5b89\u5168\u7684\u6267\u884c\u673a\u5236\uff0c\u53d7\u4fe1\u4efb\u7684\u53d8\u4f53 <code>plpython</code> \u53ef\u80fd\u4f1a\u51fa\u73b0\u3002\u4f7f\u7528\u4e0d\u53d7\u4fe1\u4efb\u7684 PL/Python \u7f16\u5199\u51fd\u6570\u65f6\uff0c\u51fd\u6570\u7f16\u5199\u8005\u5fc5\u987b\u786e\u4fdd\u8be5\u51fd\u6570\u4e0d\u4f1a\u88ab\u7528\u6765\u505a\u4efb\u4f55\u4e0d\u5e0c\u671b\u53d1\u751f\u7684\u4e8b\u60c5\uff0c\u56e0\u4e3a\u5b83\u80fd\u591f\u505a\u5230\u4efb\u4f55\u4ee5\u6570\u636e\u5e93\u7ba1\u7406\u5458\u8eab\u4efd\u767b\u5f55\u7684\u7528\u6237\u6240\u80fd\u505a\u7684\u4e8b\u60c5\u3002\u53ea\u6709\u8d85\u7ea7\u7528\u6237\u624d\u80fd\u5728 <code>plpythonu</code> \u8fd9\u7c7b\u4e0d\u53d7\u4fe1\u4efb\u7684\u8bed\u8a00\u4e2d\u521b\u5efa\u51fd\u6570\u3002\n </p><p><a href=\"/zh/docs/13/plpython.html\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "14": {"facts": [{"label": "\u79cd\u7c7b", "value": "\u968f\u6e90\u7801\u63d0\u4f9b\u7684\u8fc7\u7a0b\u8bed\u8a00\u53d8\u4f53"}, {"label": "\u64cd\u4f5c\u7b26\u5bb6\u65cf", "value": "PL/Python"}, {"label": "\u53ef\u4fe1", "value": "f"}, {"label": "\u5904\u7406\u51fd\u6570", "value": "plpython_call_handler"}, {"label": "\u5185\u8054\u4ee3\u7801\u5904\u7406\u51fd\u6570", "value": "plpython_inline_handler"}, {"label": "\u6821\u9a8c\u51fd\u6570", "value": "plpython_validator"}, {"label": "\u5e93", "value": "$libdir/plpython2"}, {"label": "\u9ed8\u8ba4\u7248\u672c", "value": "1.0"}, {"label": "\u6a21\u5757\u8def\u5f84", "value": "$libdir/plpython2"}, {"label": "\u6ce8\u91ca", "value": "PL/PythonU \u975e\u53ef\u4fe1\u8fc7\u7a0b\u8bed\u8a00"}], "tables": [], "aliases": [], "related": [{"url": "/docs/14/plpython-data.html", "label": "\u6570\u636e\u503c"}, {"url": "/docs/14/plpython-database.html", "label": "\u6570\u636e\u5e93\u8bbf\u95ee"}, {"url": "/docs/14/plpython-do.html", "label": "\u533f\u540d\u4ee3\u7801\u5757"}, {"url": "/docs/14/plpython-envar.html", "label": "\u73af\u5883\u53d8\u91cf"}, {"url": "/docs/14/plpython-funcs.html", "label": "PL/Python \u51fd\u6570"}, {"url": "/docs/14/plpython-python23.html", "label": "plpython-python23"}, {"url": "/docs/14/plpython-sharing.html", "label": "\u5171\u4eab\u6570\u636e"}, {"url": "/docs/14/plpython-subtransaction.html", "label": "\u663e\u5f0f\u5b50\u4e8b\u52a1"}, {"url": "/docs/14/plpython-transactions.html", "label": "\u4e8b\u52a1\u7ba1\u7406"}, {"url": "/docs/14/plpython-trigger.html", "label": "\u89e6\u53d1\u5668\u51fd\u6570"}, {"url": "/docs/14/plpython-util.html", "label": "\u8f85\u52a9\u51fd\u6570"}], "release": {"ref": "https://ftp.postgresql.org/pub/source/v14.24/postgresql-14.24.tar.bz2", "label": "14.24", "major": "14", "channel": "stable", "revision": "a7fa7ed3d558172355f51406097a7bd4f6b473be80f311ef7cda96bf383d8897", "source_sha256": "a7fa7ed3d558172355f51406097a7bd4f6b473be80f311ef7cda96bf383d8897", "catalog_fingerprint": "b272e6a82e4c46efda81c3a6a4cdf7de6a83dfff7f02f226a392fbe9acdd3adb"}, "sources": [{"url": "https://ftp.postgresql.org/pub/source/v14.24/postgresql-14.24.tar.bz2", "label": "Matching PostgreSQL source archive", "sha256": "a7fa7ed3d558172355f51406097a7bd4f6b473be80f311ef7cda96bf383d8897"}, {"url": "/docs/14/plpython.html", "path": "plpython.html", "label": "PostgreSQL 14 English manual", "sha256": "3c84c78db04798bdd98ee4320a8d26749337373d29e6f05c0a76997f03b73b61"}], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-structured-summary", "manual": {"url": "/zh/docs/14/plpython.html", "anchor": "", "locale": "zh-Hans", "version": "14", "build_id": 99, "page_key": "plpython.html", "extraction": "concept-introduction", "source_hash": "fae3939e6c9852e6944ca39b7757c86c8696d043fdd7f7e838f98b37879829b5", "fragment_sha256": "6fb8a4fe51d57cd773d8c8a19483e2791ae7ab9db689a17f7c531a746e600963", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:87e6aa4fd6e1ec85c5f4a6de4f5647cfd9e5de734ca2c266d32b6d6192c662ef", "translated_from_revision": null}, "body_sha256": "e1fd07d388dc31535c98ba2d0bed611537ebdd5a881c7ca1e548492d11fb79d6", "runtime_rerun": false, "authored_translation": "source-derived-structured-summary", "source_facts_revision": "a7fa7ed3d558172355f51406097a7bd4f6b473be80f311ef7cda96bf383d8897"}, "facts_zh": [{"label": "\u79cd\u7c7b", "value": "\u968f\u6e90\u7801\u63d0\u4f9b\u7684\u8fc7\u7a0b\u8bed\u8a00\u53d8\u4f53"}, {"label": "\u64cd\u4f5c\u7b26\u5bb6\u65cf", "value": "PL/Python"}, {"label": "\u53ef\u4fe1", "value": "f"}, {"label": "\u5904\u7406\u51fd\u6570", "value": "plpython_call_handler"}, {"label": "\u5185\u8054\u4ee3\u7801\u5904\u7406\u51fd\u6570", "value": "plpython_inline_handler"}, {"label": "\u6821\u9a8c\u51fd\u6570", "value": "plpython_validator"}, {"label": "\u5e93", "value": "$libdir/plpython2"}, {"label": "\u9ed8\u8ba4\u7248\u672c", "value": "1.0"}, {"label": "\u6a21\u5757\u8def\u5f84", "value": "$libdir/plpython2"}, {"label": "\u6ce8\u91ca", "value": "PL/PythonU \u975e\u53ef\u4fe1\u8fc7\u7a0b\u8bed\u8a00"}], "sections": [{"code": "/* src/pl/plpython/plpythonu--1.0.sql */\n\nCREATE FUNCTION plpython_call_handler() RETURNS language_handler\n  LANGUAGE c AS 'MODULE_PATHNAME';\n\nCREATE FUNCTION plpython_inline_handler(internal) RETURNS void\n  STRICT LANGUAGE c AS 'MODULE_PATHNAME';\n\nCREATE FUNCTION plpython_validator(oid) RETURNS void\n  STRICT LANGUAGE c AS 'MODULE_PATHNAME';\n\nCREATE LANGUAGE plpythonu\n  HANDLER plpython_call_handler\n  INLINE plpython_inline_handler\n  VALIDATOR plpython_validator;\n\nCOMMENT ON LANGUAGE plpythonu IS 'PL/PythonU untrusted procedural language';", "title": "\u540c\u6784\u5efa\u6e90\u7801\u4e2d\u7684\u5b89\u88c5\u5b9a\u4e49", "paragraphs": ["\u6b64\u6269\u5c55\u968f\u6e90\u7801\u63d0\u4f9b\uff1b\u6536\u5f55\u5b83\u5e76\u4e0d\u8868\u793a\u5df2\u5b89\u88c5\u8be5\u8bed\u8a00\u6216\u5916\u90e8\u8fd0\u884c\u65f6\u3002"]}], "center_zh": {"title": "plpythonu", "locale": "zh-Hans", "source": {"key": "plpythonu", "locale": "zh-Hans", "version": "14", "text_hash": "2630cbceea409c06cb086a5e1f85650e2d2fd65825761615ede6cffdc61a97ae", "collection": "language", "dataset_hash": "7c31b524dfe136022d39a6ae8dcfac6b3bbd5f8fdaf422536599981252aff0c9", "source_database": "center", "source_revision": "a7fa7ed3d558172355f51406097a7bd4f6b473be80f311ef7cda96bf383d8897"}, "payload": {"facts": [{"label": "\u79cd\u7c7b", "value": "\u968f\u6e90\u7801\u63d0\u4f9b\u7684\u8fc7\u7a0b\u8bed\u8a00\u53d8\u4f53"}, {"label": "\u64cd\u4f5c\u7b26\u5bb6\u65cf", "value": "PL/Python"}, {"label": "\u53ef\u4fe1", "value": "f"}, {"label": "\u5904\u7406\u51fd\u6570", "value": "plpython_call_handler"}, {"label": "\u5185\u8054\u4ee3\u7801\u5904\u7406\u51fd\u6570", "value": "plpython_inline_handler"}, {"label": "\u6821\u9a8c\u51fd\u6570", "value": "plpython_validator"}, {"label": "\u5e93", "value": "$libdir/plpython2"}, {"label": "\u9ed8\u8ba4\u7248\u672c", "value": "1.0"}, {"label": "\u6a21\u5757\u8def\u5f84", "value": "$libdir/plpython2"}, {"label": "\u6ce8\u91ca", "value": "PL/PythonU \u975e\u53ef\u4fe1\u8fc7\u7a0b\u8bed\u8a00"}], "tables": [], "zh_from": {"kind": "same-version-chinese-manual-with-source-derived-structured-summary", "manual": {"url": "/zh/docs/14/plpython.html", "anchor": "", "locale": "zh-Hans", "version": "14", "build_id": 99, "page_key": "plpython.html", "extraction": "concept-introduction", "source_hash": "fae3939e6c9852e6944ca39b7757c86c8696d043fdd7f7e838f98b37879829b5", "fragment_sha256": "6fb8a4fe51d57cd773d8c8a19483e2791ae7ab9db689a17f7c531a746e600963", "source_revision": "unknown:rendered-translation-baseline", "translation_revision": "git:b1b500221dbe5437cfca004d6b04d3f6e422765d;html-sha256:87e6aa4fd6e1ec85c5f4a6de4f5647cfd9e5de734ca2c266d32b6d6192c662ef", "translated_from_revision": null}, "body_sha256": "e1fd07d388dc31535c98ba2d0bed611537ebdd5a881c7ca1e548492d11fb79d6", "runtime_rerun": false, "authored_translation": "source-derived-structured-summary", "source_facts_revision": "a7fa7ed3d558172355f51406097a7bd4f6b473be80f311ef7cda96bf383d8897"}, "sections": [{"code": "/* src/pl/plpython/plpythonu--1.0.sql */\n\nCREATE FUNCTION plpython_call_handler() RETURNS language_handler\n  LANGUAGE c AS 'MODULE_PATHNAME';\n\nCREATE FUNCTION plpython_inline_handler(internal) RETURNS void\n  STRICT LANGUAGE c AS 'MODULE_PATHNAME';\n\nCREATE FUNCTION plpython_validator(oid) RETURNS void\n  STRICT LANGUAGE c AS 'MODULE_PATHNAME';\n\nCREATE LANGUAGE plpythonu\n  HANDLER plpython_call_handler\n  INLINE plpython_inline_handler\n  VALIDATOR plpython_validator;\n\nCOMMENT ON LANGUAGE plpythonu IS 'PL/PythonU untrusted procedural language';", "title": "\u540c\u6784\u5efa\u6e90\u7801\u4e2d\u7684\u5b89\u88c5\u5b9a\u4e49", "paragraphs": ["\u6b64\u6269\u5c55\u968f\u6e90\u7801\u63d0\u4f9b\uff1b\u6536\u5f55\u5b83\u5e76\u4e0d\u8868\u793a\u5df2\u5b89\u88c5\u8be5\u8bed\u8a00\u6216\u5916\u90e8\u8fd0\u884c\u65f6\u3002"]}], "description_zh": "\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002", "description_zh_html": "<p>\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002</p><dl><dt>\u8fd0\u7b97\u7b26\u65cf</dt><dd><code>PL/Python</code></dd><dt>\u5904\u7406\u51fd\u6570</dt><dd><code>plpython_call_handler</code></dd><dt>\u5e93</dt><dd><code>$libdir/plpython2</code></dd><dt>\u53d7\u4fe1\u4efb</dt><dd><code>\u5426</code></dd><dt>\u9a8c\u8bc1\u51fd\u6570</dt><dd><code>plpython_validator</code></dd><dt>\u5185\u8054\u5904\u7406\u51fd\u6570</dt><dd><code>plpython_inline_handler</code></dd><dt>\u9ed8\u8ba4\u7248\u672c</dt><dd><code>1.0</code></dd><dt>\u6a21\u5757\u8def\u5f84</dt><dd><code>$libdir/plpython2</code></dd></dl><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n<span class=\"application\">PL/Python</span> \u8fc7\u7a0b\u8bed\u8a00\u5141\u8bb8\u4f7f\u7528 <a class=\"ulink\" href=\"https://www.python.org\">Python \u8bed\u8a00</a>\u7f16\u5199 <span class=\"productname\">PostgreSQL</span> \u51fd\u6570\u548c\u8fc7\u7a0b\u3002\n </p><p>\n  \u8981\u5728\u7279\u5b9a\u6570\u636e\u5e93\u4e2d\u5b89\u88c5 PL/Python\uff0c\u53ef\u4f7f\u7528 <code class=\"literal\">CREATE EXTENSION plpythonu</code>\uff08\u53e6\u89c1<a class=\"xref\" href=\"/zh/docs/14/plpython.html#PLPYTHON-PYTHON23\">\u7b2c\u00a046.1\u00a0\u8282</a>\uff09\u3002\n </p><p>\n  PL/Python \u53ea\u80fd\u4f5c\u4e3a\u4e00\u79cd<span class=\"quote\">\u201c<span class=\"quote\">\u4e0d\u53d7\u4fe1\u4efb\u7684</span>\u201d</span>\u8bed\u8a00\u4f7f\u7528\uff0c\u8fd9\u610f\u5473\u7740\u5b83\u4e0d\u63d0\u4f9b\u4efb\u4f55\u673a\u5236\u6765\u9650\u5236\u7528\u6237\u80fd\u5728\u5176\u4e2d\u505a\u4ec0\u4e48\uff0c\u56e0\u6b64\u5176\u540d\u79f0\u4e3a <code class=\"literal\">plpythonu</code>\u3002\u5982\u679c\u5c06\u6765\u80fd\u5728 Python \u4e2d\u5f00\u53d1\u51fa\u5b89\u5168\u7684\u6267\u884c\u673a\u5236\uff0c\u53d7\u4fe1\u4efb\u7684\u53d8\u4f53 <code class=\"literal\">plpython</code> \u53ef\u80fd\u4f1a\u51fa\u73b0\u3002\u4f7f\u7528\u4e0d\u53d7\u4fe1\u4efb\u7684 PL/Python \u7f16\u5199\u51fd\u6570\u65f6\uff0c\u51fd\u6570\u7f16\u5199\u8005\u5fc5\u987b\u786e\u4fdd\u8be5\u51fd\u6570\u4e0d\u4f1a\u88ab\u7528\u6765\u505a\u4efb\u4f55\u4e0d\u5e0c\u671b\u53d1\u751f\u7684\u4e8b\u60c5\uff0c\u56e0\u4e3a\u5b83\u80fd\u591f\u505a\u5230\u4efb\u4f55\u4ee5\u6570\u636e\u5e93\u7ba1\u7406\u5458\u8eab\u4efd\u767b\u5f55\u7684\u7528\u6237\u6240\u80fd\u505a\u7684\u4e8b\u60c5\u3002\u53ea\u6709\u8d85\u7ea7\u7528\u6237\u624d\u80fd\u5728 <code class=\"literal\">plpythonu</code> \u8fd9\u7c7b\u4e0d\u53d7\u4fe1\u4efb\u7684\u8bed\u8a00\u4e2d\u521b\u5efa\u51fd\u6570\u3002\n </p><p><a href=\"/zh/docs/14/plpython.html\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}, "summary": "\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002", "version": "14", "link_map": {"/zh/docs/14/plpython.html": "/docs/14/plpython.html", "/zh/docs/14/plpython.html#PLPYTHON-PYTHON23": "/docs/14/plpython.html#PLPYTHON-PYTHON23"}, "body_html": "<p>\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002</p><dl><dt>\u8fd0\u7b97\u7b26\u65cf</dt><dd><code>PL/Python</code></dd><dt>\u5904\u7406\u51fd\u6570</dt><dd><code>plpython_call_handler</code></dd><dt>\u5e93</dt><dd><code>$libdir/plpython2</code></dd><dt>\u53d7\u4fe1\u4efb</dt><dd><code>\u5426</code></dd><dt>\u9a8c\u8bc1\u51fd\u6570</dt><dd><code>plpython_validator</code></dd><dt>\u5185\u8054\u5904\u7406\u51fd\u6570</dt><dd><code>plpython_inline_handler</code></dd><dt>\u9ed8\u8ba4\u7248\u672c</dt><dd><code>1.0</code></dd><dt>\u6a21\u5757\u8def\u5f84</dt><dd><code>$libdir/plpython2</code></dd></dl><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n<span>PL/Python</span> \u8fc7\u7a0b\u8bed\u8a00\u5141\u8bb8\u4f7f\u7528 <a href=\"https://www.python.org\" rel=\"nofollow\">Python \u8bed\u8a00</a>\u7f16\u5199 <span>PostgreSQL</span> \u51fd\u6570\u548c\u8fc7\u7a0b\u3002\n </p><p>\n  \u8981\u5728\u7279\u5b9a\u6570\u636e\u5e93\u4e2d\u5b89\u88c5 PL/Python\uff0c\u53ef\u4f7f\u7528 <code>CREATE EXTENSION plpythonu</code>\uff08\u53e6\u89c1<a href=\"/zh/docs/14/plpython.html#PLPYTHON-PYTHON23\" rel=\"nofollow\">\u7b2c\u00a046.1\u00a0\u8282</a>\uff09\u3002\n </p><p>\n  PL/Python \u53ea\u80fd\u4f5c\u4e3a\u4e00\u79cd<span>\u201c<span>\u4e0d\u53d7\u4fe1\u4efb\u7684</span>\u201d</span>\u8bed\u8a00\u4f7f\u7528\uff0c\u8fd9\u610f\u5473\u7740\u5b83\u4e0d\u63d0\u4f9b\u4efb\u4f55\u673a\u5236\u6765\u9650\u5236\u7528\u6237\u80fd\u5728\u5176\u4e2d\u505a\u4ec0\u4e48\uff0c\u56e0\u6b64\u5176\u540d\u79f0\u4e3a <code>plpythonu</code>\u3002\u5982\u679c\u5c06\u6765\u80fd\u5728 Python \u4e2d\u5f00\u53d1\u51fa\u5b89\u5168\u7684\u6267\u884c\u673a\u5236\uff0c\u53d7\u4fe1\u4efb\u7684\u53d8\u4f53 <code>plpython</code> \u53ef\u80fd\u4f1a\u51fa\u73b0\u3002\u4f7f\u7528\u4e0d\u53d7\u4fe1\u4efb\u7684 PL/Python \u7f16\u5199\u51fd\u6570\u65f6\uff0c\u51fd\u6570\u7f16\u5199\u8005\u5fc5\u987b\u786e\u4fdd\u8be5\u51fd\u6570\u4e0d\u4f1a\u88ab\u7528\u6765\u505a\u4efb\u4f55\u4e0d\u5e0c\u671b\u53d1\u751f\u7684\u4e8b\u60c5\uff0c\u56e0\u4e3a\u5b83\u80fd\u591f\u505a\u5230\u4efb\u4f55\u4ee5\u6570\u636e\u5e93\u7ba1\u7406\u5458\u8eab\u4efd\u767b\u5f55\u7684\u7528\u6237\u6240\u80fd\u505a\u7684\u4e8b\u60c5\u3002\u53ea\u6709\u8d85\u7ea7\u7528\u6237\u624d\u80fd\u5728 <code>plpythonu</code> \u8fd9\u7c7b\u4e0d\u53d7\u4fe1\u4efb\u7684\u8bed\u8a00\u4e2d\u521b\u5efa\u51fd\u6570\u3002\n </p><p><a href=\"/zh/docs/14/plpython.html\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>", "body_sha256": "632b48dd030613f95ea6632ff0f647310b81bfffeb816769935ee4f331c4cc31", "content_hash": "2630cbceea409c06cb086a5e1f85650e2d2fd65825761615ede6cffdc61a97ae", "source_database": "center", "source_revision": "a7fa7ed3d558172355f51406097a7bd4f6b473be80f311ef7cda96bf383d8897"}, "signature": "", "tables_zh": [], "attributes": {"kind": "Bundled procedural-language variant", "family": "PL/Python", "comment": "PL/PythonU untrusted procedural language", "handler": "plpython_call_handler", "library": "$libdir/plpython2", "trusted": "f", "validator": "plpython_validator", "inline_handler": "plpython_inline_handler", "default_version": "1.0", "module_pathname": "$libdir/plpython2"}, "description": ["\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002"], "manual_html": "", "manual_path": "/docs/14/plpython.html", "sections_zh": [{"code": "/* src/pl/plpython/plpythonu--1.0.sql */\n\nCREATE FUNCTION plpython_call_handler() RETURNS language_handler\n  LANGUAGE c AS 'MODULE_PATHNAME';\n\nCREATE FUNCTION plpython_inline_handler(internal) RETURNS void\n  STRICT LANGUAGE c AS 'MODULE_PATHNAME';\n\nCREATE FUNCTION plpython_validator(oid) RETURNS void\n  STRICT LANGUAGE c AS 'MODULE_PATHNAME';\n\nCREATE LANGUAGE plpythonu\n  HANDLER plpython_call_handler\n  INLINE plpython_inline_handler\n  VALIDATOR plpython_validator;\n\nCOMMENT ON LANGUAGE plpythonu IS 'PL/PythonU untrusted procedural language';", "title": "\u540c\u6784\u5efa\u6e90\u7801\u4e2d\u7684\u5b89\u88c5\u5b9a\u4e49", "paragraphs": ["\u6b64\u6269\u5c55\u968f\u6e90\u7801\u63d0\u4f9b\uff1b\u6536\u5f55\u5b83\u5e76\u4e0d\u8868\u793a\u5df2\u5b89\u88c5\u8be5\u8bed\u8a00\u6216\u5916\u90e8\u8fd0\u884c\u65f6\u3002"]}], "localization": {"status": "complete", "sources": [{"url": "/docs/14/plpython-data.html", "method": "same-major semantic node", "sha256": "177e1d8d2aa7791808809b72417a982c4b0bb7c12069b266580ef0d7d93fbee9", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/14/plpython-database.html", "method": "same-major semantic node", "sha256": "a1b0b8d2cd2ddb274fe1ac35b5be35e3a68994b2c5f89a3b7b1610614043675d", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/14/plpython-do.html", "method": "same-major semantic node", "sha256": "19dada5307d92528838e5939a218e3713b5aded97fc7d8b17901e4cf227fbc44", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/14/plpython-envar.html", "method": "same-major semantic node", "sha256": "eaada9c8e2438fffeda89ac85c75caab26b991be48cd4edcbbc140918dcd8063", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/14/plpython-funcs.html", "method": "same-major semantic node", "sha256": "a4095930aa7cc4977ca5b4e5ceb148db75087eaca3dd8a45a6dff84444b11574", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/14/plpython-sharing.html", "method": "same-major semantic node", "sha256": "25419bc6e4cf4f20ee4afbfc659a4d5272da264709cf750fabaf49b56f381167", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/14/plpython-subtransaction.html", "method": "same-major semantic node", "sha256": "912f32bbb4b1ff6695b46fada307f3f9f4886e78873a5462738ffa0199794a43", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/14/plpython-transactions.html", "method": "same-major semantic node", "sha256": "6a2b0bd0b49893ca2ca1684fbad0350aac4d874ddbbcaf284c1cfd4d0d796a64", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/14/plpython-trigger.html", "method": "same-major semantic node", "sha256": "524a1cc3750b2e09dba2f434b11b503bb245f475baf0e7db84f206fdee1c1c99", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/14/plpython-util.html", "method": "same-major semantic node", "sha256": "3d86410d4d244de6c0cf20ef95552fa930ff50bd18ea3d70dd957b5a772aa344", "language": "zh", "matched_nodes": ["page-title/h2"]}, {"url": "/docs/14/plpython.html", "method": "same-major semantic node", "sha256": "970b6a414751b416498b035edb6818c2e91b8bdd668c7afbce5f7d905767231b", "language": "zh", "matched_nodes": ["#PLPYTHON/h3[0]", "#PLPYTHON/h3[1]", "#PLPYTHON/p[1]", "#PLPYTHON/p[2]", "#PLPYTHON/p[3]", "#PLPYTHON/p[4]", "#PLPYTHON/p[5]"]}], "language": "zh", "original_text": {"/summary": "PL/PythonU untrusted procedural language", "/versions/14/description/0": "PL/PythonU untrusted procedural language", "/versions/14/facts/0/label": "Kind", "/versions/14/facts/0/value": "Bundled procedural-language variant", "/versions/14/facts/1/label": "Family", "/versions/14/facts/2/label": "Trusted", "/versions/14/facts/3/label": "Handler", "/versions/14/facts/4/label": "Inline handler", "/versions/14/facts/5/label": "Validator", "/versions/14/facts/6/label": "Library", "/versions/14/facts/7/label": "Default version", "/versions/14/facts/8/label": "Module pathname", "/versions/14/facts/9/label": "Comment", "/versions/14/facts/9/value": "PL/PythonU untrusted procedural language", "/versions/14/related/0/label": "plpython-data", "/versions/14/related/1/label": "plpython-database", "/versions/14/related/2/label": "plpython-do", "/versions/14/related/3/label": "plpython-envar", "/versions/14/related/4/label": "plpython-funcs", "/versions/14/related/6/label": "plpython-sharing", "/versions/14/related/7/label": "plpython-subtransaction", "/versions/14/related/8/label": "plpython-transactions", "/versions/14/related/9/label": "plpython-trigger", "/versions/14/related/10/label": "plpython-util", "/versions/14/sections/0/title": "Installation definition from the matching source archive", "/versions/14/sections/0/paragraphs/0": "This extension is shipped with the source. Its presence does not establish that the language or external runtime is installed."}, "fallback_fields": [], "source_language": "en", "original_snapshot_sha256": "aabdee80badfd9bc720464a1efebe0995f3410c46ab86d243bcfde9d5d622083", "canonical_center_text_hash": "2630cbceea409c06cb086a5e1f85650e2d2fd65825761615ede6cffdc61a97ae"}, "source_files": {"src/pl/plpython/plpythonu.control": "1fa1af3f24d2dab852f17dc3c63e5a6c6ef92a835599202fa270252dce59d285", "src/pl/plpython/plpythonu--1.0.sql": "70bad78157392ad1efe970053f5d54bae45a61e10670a373cca5432f2b91dce3"}, "description_zh": "\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002", "comparison_data": {"kind": "Bundled procedural-language variant", "family": "PL/Python", "handler": "plpython_call_handler", "library": "$libdir/plpython2", "trusted": "f", "validator": "plpython_validator", "inline_handler": "plpython_inline_handler", "default_version": "1.0"}, "comparison_hash": "4664ce2e8831b4283a479a5974c64e65ba0c0be65d66e50ede487408aea4c640", "manual_language": "zh", "description_zh_html": "<p>\u8fc7\u7a0b\u8bed\u8a00 plpythonu\u3002</p><dl><dt>\u8fd0\u7b97\u7b26\u65cf</dt><dd><code>PL/Python</code></dd><dt>\u5904\u7406\u51fd\u6570</dt><dd><code>plpython_call_handler</code></dd><dt>\u5e93</dt><dd><code>$libdir/plpython2</code></dd><dt>\u53d7\u4fe1\u4efb</dt><dd><code>\u5426</code></dd><dt>\u9a8c\u8bc1\u51fd\u6570</dt><dd><code>plpython_validator</code></dd><dt>\u5185\u8054\u5904\u7406\u51fd\u6570</dt><dd><code>plpython_inline_handler</code></dd><dt>\u9ed8\u8ba4\u7248\u672c</dt><dd><code>1.0</code></dd><dt>\u6a21\u5757\u8def\u5f84</dt><dd><code>$libdir/plpython2</code></dd></dl><h3>\u540c\u7248\u672c\u4e2d\u6587\u624b\u518c\u8282\u9009</h3><p>\n<span>PL/Python</span> \u8fc7\u7a0b\u8bed\u8a00\u5141\u8bb8\u4f7f\u7528 <a href=\"https://www.python.org\" rel=\"nofollow\">Python \u8bed\u8a00</a>\u7f16\u5199 <span>PostgreSQL</span> \u51fd\u6570\u548c\u8fc7\u7a0b\u3002\n </p><p>\n  \u8981\u5728\u7279\u5b9a\u6570\u636e\u5e93\u4e2d\u5b89\u88c5 PL/Python\uff0c\u53ef\u4f7f\u7528 <code>CREATE EXTENSION plpythonu</code>\uff08\u53e6\u89c1<a href=\"/zh/docs/14/plpython.html#PLPYTHON-PYTHON23\" rel=\"nofollow\">\u7b2c\u00a046.1\u00a0\u8282</a>\uff09\u3002\n </p><p>\n  PL/Python \u53ea\u80fd\u4f5c\u4e3a\u4e00\u79cd<span>\u201c<span>\u4e0d\u53d7\u4fe1\u4efb\u7684</span>\u201d</span>\u8bed\u8a00\u4f7f\u7528\uff0c\u8fd9\u610f\u5473\u7740\u5b83\u4e0d\u63d0\u4f9b\u4efb\u4f55\u673a\u5236\u6765\u9650\u5236\u7528\u6237\u80fd\u5728\u5176\u4e2d\u505a\u4ec0\u4e48\uff0c\u56e0\u6b64\u5176\u540d\u79f0\u4e3a <code>plpythonu</code>\u3002\u5982\u679c\u5c06\u6765\u80fd\u5728 Python \u4e2d\u5f00\u53d1\u51fa\u5b89\u5168\u7684\u6267\u884c\u673a\u5236\uff0c\u53d7\u4fe1\u4efb\u7684\u53d8\u4f53 <code>plpython</code> \u53ef\u80fd\u4f1a\u51fa\u73b0\u3002\u4f7f\u7528\u4e0d\u53d7\u4fe1\u4efb\u7684 PL/Python \u7f16\u5199\u51fd\u6570\u65f6\uff0c\u51fd\u6570\u7f16\u5199\u8005\u5fc5\u987b\u786e\u4fdd\u8be5\u51fd\u6570\u4e0d\u4f1a\u88ab\u7528\u6765\u505a\u4efb\u4f55\u4e0d\u5e0c\u671b\u53d1\u751f\u7684\u4e8b\u60c5\uff0c\u56e0\u4e3a\u5b83\u80fd\u591f\u505a\u5230\u4efb\u4f55\u4ee5\u6570\u636e\u5e93\u7ba1\u7406\u5458\u8eab\u4efd\u767b\u5f55\u7684\u7528\u6237\u6240\u80fd\u505a\u7684\u4e8b\u60c5\u3002\u53ea\u6709\u8d85\u7ea7\u7528\u6237\u624d\u80fd\u5728 <code>plpythonu</code> \u8fd9\u7c7b\u4e0d\u53d7\u4fe1\u4efb\u7684\u8bed\u8a00\u4e2d\u521b\u5efa\u51fd\u6570\u3002\n </p><p><a href=\"/zh/docs/14/plpython.html\" rel=\"nofollow\">\u67e5\u770b\u5b8c\u6574\u4e2d\u6587\u624b\u518c\u4e0e\u4e0a\u4e0b\u6587</a>\u3002</p>"}}}, "snapshot": null, "comparison": {"left": "17", "right": "18", "status": "unchanged", "diff": ""}}