{ "info": { "author": "Aryeh Leib Taurog", "author_email": "python@aryehleib.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Database" ], "description": ".. home-start\n\npgcopy\n=======\n\n.. image:: https://travis-ci.org/altaurog/pgcopy.svg?branch=master\n :target: https://travis-ci.org/altaurog/pgcopy\n\n.. image:: https://coveralls.io/repos/github/altaurog/pgcopy/badge.svg?branch=master\n :target: https://coveralls.io/github/altaurog/pgcopy?branch=master\n\n.. image:: https://img.shields.io/pypi/l/pgcopy.svg\n :target: https://pypi.org/project/pgcopy/\n\n.. image:: https://img.shields.io/pypi/wheel/pgcopy.svg\n :target: https://pypi.org/project/pgcopy/\n\n.. image:: https://img.shields.io/pypi/pyversions/pgcopy.svg\n :target: https://pypi.org/project/pgcopy/\n\nUse pgcopy_ for fast data loading into\nPostgreSQL with `binary copy`_.\n\n.. _binary copy: http://www.postgresql.org/docs/9.3/static/sql-copy.html\n.. _pgcopy: https://pgcopy.readthedocs.io/en/latest/\n\nFeatures\n---------\n* Support for many data types\n* Support for multi-dimensional array types\n* Support for schema and schema search path\n* Transparent string encoding\n* Utility for replacing entire table\n\nQuickstart\n-----------\n\n.. quickstart-start\n\n::\n\n from datetime import datetime\n from pgcopy import CopyManager\n import psycopg2\n cols = ('id', 'timestamp', 'location', 'temperature')\n now = datetime.now()\n records = [\n (0, now, 'Jerusalem', 72.2),\n (1, now, 'New York', 75.6),\n (2, now, 'Moscow', 54.3),\n ]\n conn = psycopg2.connect(database='weather_db')\n mgr = CopyManager(conn, 'measurements_table', cols)\n mgr.copy(records)\n\n # don't forget to commit!\n conn.commit()\n\n.. home-end\n\nSupported datatypes\n-------------------\n\npgcopy supports the following PostgreSQL scalar types:\n\n* bool\n* smallint\n* integer\n* bigint\n* real\n* double precision\n* char\n* varchar\n* text\n* bytea\n* date\n* timestamp\n* timestamp with time zone\n* numeric\n* json\n* jsonb\n* uuid\n* arrays\n\nDocumentation\n--------------\n\n`Read the docs.`_\n\n.. _Read the docs.: pgcopy_\n\nSee Also\n--------\n\ncpgcopy_, a Cython implementation, about twice as fast.\n\n\n.. _binary copy: http://www.postgresql.org/docs/9.3/static/sql-copy.html\n.. _psycopg2: https://pypi.org/project/psycopg2/\n.. _pytz: https://pypi.org/project/pytz/\n.. _pytest: https://pypi.org/project/pytest/\n.. _cpgcopy: https://github.com/altaurog/cpgcopy\n.. _Tox: https://tox.readthedocs.io/en/latest/\n\n\n", "description_content_type": "text/x-rst", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://pgcopy.readthedocs.io/en/latest/", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "pgcopy", "package_url": "https://pypi.org/project/pgcopy/", "platform": "", "project_url": "https://pypi.org/project/pgcopy/", "project_urls": { "Homepage": "https://pgcopy.readthedocs.io/en/latest/" }, "release_url": "https://pypi.org/project/pgcopy/1.4.0/", "requires_dist": [ "psycopg2", "pytz" ], "requires_python": "", "summary": "Fast db insert with postgresql binary copy", "version": "1.4.0" }, "last_serial": 5520195, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "99ddf47e19be10e2dcd11c71f2520cac", "sha256": "3c4fe40b6b36a0d3e2cc59517787743f8b5602528d10e603d54cf14a8b14f9bd" }, "downloads": -1, "filename": "pgcopy-1.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "99ddf47e19be10e2dcd11c71f2520cac", "packagetype": "bdist_wheel", "python_version": "any", "requires_python": null, "size": 11359, "upload_time": "2017-01-18T21:56:18", "url": "https://files.pythonhosted.org/packages/63/f5/61d8cf9b6748c9b1b94c34fd9e2bd1928f3bd4de893cead16d96083d19f6/pgcopy-1.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4b53fcd573c6265df4005cb566d14234", "sha256": "24353ee668b9689c1a12259ea5500478a2ae3fdc4d101f551b598e1462097440" }, "downloads": -1, "filename": "pgcopy-1.0.0.tar.gz", "has_sig": false, "md5_digest": "4b53fcd573c6265df4005cb566d14234", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9134, "upload_time": "2017-01-18T21:56:00", "url": "https://files.pythonhosted.org/packages/ff/a9/0fdf80f7961e9fbe2b773ce2a4f3de6fedc84dba682acf3740daa9148c8f/pgcopy-1.0.0.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "9245e56994f11ea12d556a3e08b9354b", "sha256": "b3d2d056d39d245d03c607be0dcb8d3b687ebabd35d1da8ef20561762df20938" }, "downloads": -1, "filename": "pgcopy-1.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "9245e56994f11ea12d556a3e08b9354b", "packagetype": "bdist_wheel", "python_version": "any", "requires_python": null, "size": 12097, "upload_time": "2017-01-26T18:25:11", "url": "https://files.pythonhosted.org/packages/fb/29/62a36db269f9947a9347bb367d5002e8493005e01bde81e501db783bf843/pgcopy-1.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6b4c6a37af313beb93ac615000c6fc56", "sha256": "7be81703a8e505d7d981881757c750cbcddf8a5d51576c8aa0a9b644c9a58ab6" }, "downloads": -1, "filename": "pgcopy-1.1.0.tar.gz", "has_sig": false, "md5_digest": "6b4c6a37af313beb93ac615000c6fc56", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9788, "upload_time": "2017-01-26T18:24:50", "url": "https://files.pythonhosted.org/packages/1d/ae/e43ba315d67907dfb02743e446f8e47add4843b763c2fbcc7c8c3d4a4076/pgcopy-1.1.0.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "6477f2a766ca48cb591d108f29acd200", "sha256": "1b7e8b780a95b9524a4cd2836be02080e340c7380d2347ffbcb31d2db97f1b9b" }, "downloads": -1, "filename": "pgcopy-1.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "6477f2a766ca48cb591d108f29acd200", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 12340, "upload_time": "2017-03-25T20:05:42", "url": "https://files.pythonhosted.org/packages/ac/00/fb00549a610f0b31fee04a3d9bbc76fc921f31c9957e638bde2501c1754c/pgcopy-1.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e84c12101b68e4543fe70e1b1c618fa4", "sha256": "b8b5c21b687a55aa6aab2df01cbf600bddb785e476b5646270961c79eedfcfb7" }, "downloads": -1, "filename": "pgcopy-1.2.0.tar.gz", "has_sig": false, "md5_digest": "e84c12101b68e4543fe70e1b1c618fa4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9985, "upload_time": "2017-03-25T20:05:44", "url": "https://files.pythonhosted.org/packages/5f/2f/4a4cc9bddbcc0d2d6915019d5e83766f8e3181cf5d05f2119cf29307662d/pgcopy-1.2.0.tar.gz" } ], "1.3.0": [ { "comment_text": "", "digests": { "md5": "ab36e34c04584229b71aeeb5499b8563", "sha256": "85e0bef74eb51a6700c3b1094da74562d2b6585cbaed6df3f40cac1c3f6ade6a" }, "downloads": -1, "filename": "pgcopy-1.3.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "ab36e34c04584229b71aeeb5499b8563", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 12832, "upload_time": "2017-08-22T12:30:45", "url": "https://files.pythonhosted.org/packages/d3/4c/69a138f1e4f7aa2e366b000574dcfbd2878aa080d3f21e5fa4b6ef175a24/pgcopy-1.3.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ae3bc5262792826035bb49cff6378690", "sha256": "e5ab831e372669a207b11a788df570635f0eaa7a343a27ecf4a0c21a12ec4118" }, "downloads": -1, "filename": "pgcopy-1.3.0.tar.gz", "has_sig": false, "md5_digest": "ae3bc5262792826035bb49cff6378690", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10350, "upload_time": "2017-08-22T12:30:47", "url": "https://files.pythonhosted.org/packages/b1/19/05cf564a2489c2f6a8c4fbfa2513c296464255772325d4691ae8635daf07/pgcopy-1.3.0.tar.gz" } ], "1.3.1": [ { "comment_text": "", "digests": { "md5": "563c16c594c02866a18064d5612f119c", "sha256": "44b3a3bc895fb509fe2b02168705835b8816662c13f7fad08e79ef0c59dece8e" }, "downloads": -1, "filename": "pgcopy-1.3.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "563c16c594c02866a18064d5612f119c", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 12978, "upload_time": "2018-02-14T14:13:41", "url": "https://files.pythonhosted.org/packages/85/97/74577eebb7588c886b127fbbab25dcd8c66a4b342ce106e49161f32e322f/pgcopy-1.3.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "866474994a464cc545293990b4ac1db5", "sha256": "a18c74dc61d9d99846f7af9c5977adca80cbb520bb85da68298e3ad97bafd017" }, "downloads": -1, "filename": "pgcopy-1.3.1.tar.gz", "has_sig": false, "md5_digest": "866474994a464cc545293990b4ac1db5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10910, "upload_time": "2018-02-14T14:13:43", "url": "https://files.pythonhosted.org/packages/31/cd/1912ae23c1494f8340a55a5ba0f5a9ea8a73148dcab36fa3fe63b0aa3088/pgcopy-1.3.1.tar.gz" } ], "1.4.0": [ { "comment_text": "", "digests": { "md5": "8d4e82bfdb70d1d556b20bc8da449014", "sha256": "d2a567163c93480a4ffa2790a53bb2fd91085c613dfeb86f6c3ebed6aefa595a" }, "downloads": -1, "filename": "pgcopy-1.4.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "8d4e82bfdb70d1d556b20bc8da449014", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 11363, "upload_time": "2019-07-11T21:01:12", "url": "https://files.pythonhosted.org/packages/a1/87/85c9a6ec8e0439fbff3676495ec7e4f3bed413fb85fc9210c99924dfb5c1/pgcopy-1.4.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "dd1a9d4fc8b5597c84b288857c3b5f2a", "sha256": "e71f84807559f5d13549e8cf690d29c220b704f950c3060cf7cc5ac6d92b24f0" }, "downloads": -1, "filename": "pgcopy-1.4.0.tar.gz", "has_sig": false, "md5_digest": "dd1a9d4fc8b5597c84b288857c3b5f2a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11550, "upload_time": "2019-07-11T21:01:13", "url": "https://files.pythonhosted.org/packages/2e/22/dc51f19bb88630975f5e7d0f986aaa2ae0afb892b9f2a71d0e7cb4ee52ca/pgcopy-1.4.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "8d4e82bfdb70d1d556b20bc8da449014", "sha256": "d2a567163c93480a4ffa2790a53bb2fd91085c613dfeb86f6c3ebed6aefa595a" }, "downloads": -1, "filename": "pgcopy-1.4.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "8d4e82bfdb70d1d556b20bc8da449014", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 11363, "upload_time": "2019-07-11T21:01:12", "url": "https://files.pythonhosted.org/packages/a1/87/85c9a6ec8e0439fbff3676495ec7e4f3bed413fb85fc9210c99924dfb5c1/pgcopy-1.4.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "dd1a9d4fc8b5597c84b288857c3b5f2a", "sha256": "e71f84807559f5d13549e8cf690d29c220b704f950c3060cf7cc5ac6d92b24f0" }, "downloads": -1, "filename": "pgcopy-1.4.0.tar.gz", "has_sig": false, "md5_digest": "dd1a9d4fc8b5597c84b288857c3b5f2a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11550, "upload_time": "2019-07-11T21:01:13", "url": "https://files.pythonhosted.org/packages/2e/22/dc51f19bb88630975f5e7d0f986aaa2ae0afb892b9f2a71d0e7cb4ee52ca/pgcopy-1.4.0.tar.gz" } ] }