{ "info": { "author": "dchess", "author_email": "dc.hess@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "README\n======\n\n.. image:: https://img.shields.io/badge/python-3.7-blue.svg \n :target: https://www.python.org/downloads/release/python-370/\n\n.. image:: https://img.shields.io/badge/license-MIT-green\n :target: https://github.com/dchess/sqlsorcery/blob/master/LICENSE\n\n.. image:: https://img.shields.io/static/v1?label=pipenv&message=latest&color=green\n :target: https://pipenv.kennethreitz.org/en/latest/\n\n----\n\n**SQLSorcery**: Dead simple wrapper for pandas and sqlalchemy\n\nSQLSorcery is just some good old fashion syntactic sugar \ud83c\udf6c. It really \ndoesn't do anything new. It just makes doing it a little bit easier. It\nstarted as a connection wrapper for SQLAlchemy to cut down on the need for\nboilerplate code that was used to keep the database credentials secret,\nconnect to the database, and then pass the connection to Pandas for \nqueries and inserts.\n\nIt wasn't much code, but needing to cut and paste it for each new project\nseemed like a recipe for bugs. So here we are. We've added more utility \nmethods to the module as well as added all of the basic dialects of SQL \nthat SQLAlchemy supports.\n\nIn many cases, the methods available are less robust than the underlying \nlibraries and are more of a shortcut. When you need something that is \noutside the bounds of the defaults you can always drop back down into \nPandas or SQLAlchemy to get more functionality/flexibility.\n\nGetting Started\n---------------\n\nInstall this library\n^^^^^^^^^^^^^^^^^^^^\n\n.. code-block:: bash\n\n $ pipenv install sqlsorcery\n\nBy default, **sqlsorcery** does not install the sql dialect specific \npython drivers. To install these, you can specify the dialects as a \ncomma separated list of each dialect you will need drivers for.\n\n.. code-block:: bash\n\n $ pipenv install sqlsorcery[mssql]\n\nOR\n\n.. code-block:: bash\n\n $ pipenv install sqlsorcery[mysql,postgres]\n\n\nSetup .env file with credentials\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nFor use with a single database:\n\n.. code-block:: bash\n\n DB_SERVER=\n DB_PORT=\n DB=\n DB_SCHEMA=\n DB_USER=\n DB_PWD=\n\nOtherwise, refer to the `documentation `_ for instructions.\n\nExamples\n--------\n\nQuery a table\n^^^^^^^^^^^^^\n\n.. code-block:: python\n\n from sqlsorcery import MSSQL\n\n\n sql = MSSQL()\n df = sql.query(\"SELECT * FROM my_table\")\n print(df)\n\n\nQuery from a `.sql` file\n^^^^^^^^^^^^^^^^^^^^^^^^\n\n.. code-block:: python\n\n from sqlsorcery import MSSQL\n\n\n sql = MSSQL()\n df = sql.query_from_file(\"filename.sql\")\n print(df)\n\n\nInsert into a table\n^^^^^^^^^^^^^^^^^^^\n\n.. code-block:: python\n\n from sqlsorcery import MSSQL\n import pandas as pd\n\n\n sample_data = [\n { \"name\": \"Test 1\", \"value\": 98 },\n { \"name\": \"Test 2\", \"value\": 100 },\n ]\n\n df = pd.DataFrame(sample_data)\n sql = MSSQL()\n sql.insert_into(\"table_name\", df) \n\n\nExecute a stored procedure\n^^^^^^^^^^^^^^^^^^^^^^^^^^\n\n.. code-block:: python\n\n from sqlsorcery import MSSQL\n\n\n sql = MSSQL()\n sql.exec_sproc(\"sproc_name\")\n\nDocumentation\n---------------\n\nDocumentation and tutorials available at `sqlsorcery.readthedocs.io `_\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": "http://github.com/dchess/sqlsorcery", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "sqlsorcery", "package_url": "https://pypi.org/project/sqlsorcery/", "platform": "", "project_url": "https://pypi.org/project/sqlsorcery/", "project_urls": { "Homepage": "http://github.com/dchess/sqlsorcery" }, "release_url": "https://pypi.org/project/sqlsorcery/0.1.3/", "requires_dist": [ "pandas", "sqlalchemy", "pyodbc ; extra == 'mssql'", "PyMySQL ; extra == 'mysql'", "cx-Oracle ; extra == 'oracle'", "psycopg2-binary ; extra == 'postgres'" ], "requires_python": "", "summary": "Dead simple wrapper for pandas and sqlalchemy", "version": "0.1.3" }, "last_serial": 6001333, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "ab7be70b9e8d8041e84e88edbf8f92b1", "sha256": "e784f6bf334dcce8142667126fa99b9388b6025be6e663ea50c6bf7f86a24411" }, "downloads": -1, "filename": "sqlsorcery-0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "ab7be70b9e8d8041e84e88edbf8f92b1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 2680, "upload_time": "2019-08-17T05:02:08", "url": "https://files.pythonhosted.org/packages/f4/91/2170deabb1317c89579aaf891374ded00cdfd8d0da3680e183ca726e1af8/sqlsorcery-0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7720cffad55d3b314b5e08e1a3611ba7", "sha256": "a54e08b9ce129ecd42df2f666b1683499b644b185ddf00bae5a4e506d520fdf4" }, "downloads": -1, "filename": "sqlsorcery-0.1.tar.gz", "has_sig": false, "md5_digest": "7720cffad55d3b314b5e08e1a3611ba7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1483, "upload_time": "2019-08-17T05:02:10", "url": "https://files.pythonhosted.org/packages/15/2d/929f6d7b079b86fd89252c47641caf1f9ce9914fe0ce2a6ebd5d0452208e/sqlsorcery-0.1.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "27a843151caa1310a1ae530725aff34b", "sha256": "af89dfc9b225060f1b7b1da71d1ff1aaa091399be34578c8e40a9e0e31d8c516" }, "downloads": -1, "filename": "sqlsorcery-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "27a843151caa1310a1ae530725aff34b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3596, "upload_time": "2019-08-29T02:55:10", "url": "https://files.pythonhosted.org/packages/03/a6/f0009220c96108c64a08200bc5b46076305114b567c9e139941861c56d74/sqlsorcery-0.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0e4b3c08ee2c74e7e4b4549fa6200230", "sha256": "046b2762f3d2bdb39c8a98951b5b1c0a288ddbedf613dd9e0ca8ef6df949771b" }, "downloads": -1, "filename": "sqlsorcery-0.1.1.tar.gz", "has_sig": false, "md5_digest": "0e4b3c08ee2c74e7e4b4549fa6200230", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2728, "upload_time": "2019-08-29T02:55:11", "url": "https://files.pythonhosted.org/packages/eb/27/fc83fd6377f53c773a800eb84234a22b6d9292f9e71105de1d4440133f95/sqlsorcery-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "ca3094fcd266e73058f9c83774d9c54b", "sha256": "ecef471b3a8c477a1a8f8febbd9bad75778871cb45f0c8feb9f7b6e5508c2953" }, "downloads": -1, "filename": "sqlsorcery-0.1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "ca3094fcd266e73058f9c83774d9c54b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3625, "upload_time": "2019-09-04T17:13:50", "url": "https://files.pythonhosted.org/packages/d9/36/23a65b634503619153b081480eab90fbbbea41bca354cdc5f5d385a6f9d4/sqlsorcery-0.1.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "66309a2a30b364c9af9088b7959dd971", "sha256": "487676bba6b863b87f8ef556fa6e66f4dc02cfa64a4bd16028f816dd7cf71520" }, "downloads": -1, "filename": "sqlsorcery-0.1.2.tar.gz", "has_sig": false, "md5_digest": "66309a2a30b364c9af9088b7959dd971", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2745, "upload_time": "2019-09-04T17:13:51", "url": "https://files.pythonhosted.org/packages/68/69/6bcf7dd43fa923f53daefd62470dc1f249288b1e9f101d9947bdf85208e4/sqlsorcery-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "9277fb2c9591c8fb774888c8722966a0", "sha256": "d2bf5bc1996a7c4dd9bf3a65fb0998bfb9452b2a383d04a9d007cfdd9257d1d9" }, "downloads": -1, "filename": "sqlsorcery-0.1.3-py3-none-any.whl", "has_sig": false, "md5_digest": "9277fb2c9591c8fb774888c8722966a0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10252, "upload_time": "2019-10-19T23:43:29", "url": "https://files.pythonhosted.org/packages/64/54/ee2a3615b747eb08b78d98621db7cd04eff21d7573d9ba58957b726145d8/sqlsorcery-0.1.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e9dab95922512b36af41ee8b34f15ca4", "sha256": "b270292a2ce5da7ddd2adadd21b4b00f92b7fa684db9c68d588ce8be65eba711" }, "downloads": -1, "filename": "sqlsorcery-0.1.3.tar.gz", "has_sig": false, "md5_digest": "e9dab95922512b36af41ee8b34f15ca4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5602, "upload_time": "2019-10-19T23:43:31", "url": "https://files.pythonhosted.org/packages/e3/28/4b341c94cc1ce529984c2c8b2b8d661f564d3b6612485aba00c739ab6d8a/sqlsorcery-0.1.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "9277fb2c9591c8fb774888c8722966a0", "sha256": "d2bf5bc1996a7c4dd9bf3a65fb0998bfb9452b2a383d04a9d007cfdd9257d1d9" }, "downloads": -1, "filename": "sqlsorcery-0.1.3-py3-none-any.whl", "has_sig": false, "md5_digest": "9277fb2c9591c8fb774888c8722966a0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10252, "upload_time": "2019-10-19T23:43:29", "url": "https://files.pythonhosted.org/packages/64/54/ee2a3615b747eb08b78d98621db7cd04eff21d7573d9ba58957b726145d8/sqlsorcery-0.1.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e9dab95922512b36af41ee8b34f15ca4", "sha256": "b270292a2ce5da7ddd2adadd21b4b00f92b7fa684db9c68d588ce8be65eba711" }, "downloads": -1, "filename": "sqlsorcery-0.1.3.tar.gz", "has_sig": false, "md5_digest": "e9dab95922512b36af41ee8b34f15ca4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5602, "upload_time": "2019-10-19T23:43:31", "url": "https://files.pythonhosted.org/packages/e3/28/4b341c94cc1ce529984c2c8b2b8d661f564d3b6612485aba00c739ab6d8a/sqlsorcery-0.1.3.tar.gz" } ] }