Skip to main content

pymysql-extension是一个基于pymysql的扩展,主要是为了解决pymysql在使用过程中的一些不便之处。

Project description

pymysql-extension

Author: Joker-desire

pymysql-extension是一个基于pymysql的扩展,主要是为了解决pymysql在使用过程中的一些不便之处。

注:只用到了pymysql库,所以不用担心兼容性问题。

实现的功能

  • 1.SQL阅读器
  • 2.SQL结果对象转换器

安装

pip install pymysql-extension

注意事项

1. SQL阅读器使用时SQL文件路径设置

方式一:设置SQL文件路径环境变量

export SQL_PATH=/path/to/sql

方式二:在代码中设置SQL文件路径

os.environ["SQL_PATH"] = "/path/to/sql"
方式三:不想设置环境变量,可直接在代码中设置SQL文件路径
sql = SqlReader.reader("/path/to/sql/example.sql")

2. SQL结果对象转换器使用时数据库连接配置

数据库配置(默认)

{
  "host": "localhost",
  "port": 3306,
  "user": "root",
  "password": "root",
  "db": "",
  "charset": "utf8"
}

自定义配置

方式一:
conf = {
    "host": "localhost",
    "user": "root",
    "password": "root",
    "db": "test",
}
converter = SqlObjectConverter(**conf)
方式二:
converter = SqlObjectConverter(host="localhost", user="root", password="root", db="test")

示例

from extension._sql_reader import SqlReader
from extension._sql_object_converter import SqlObjectConverter

if __name__ == '__main__':
    sql = SqlReader.reader("example.sql", user_name="Joker-desire")
    print(sql)
    # 创建SQL对象转换器
    converter = SqlObjectConverter()
    # 执行SQL,并获取结果
    results = converter.exec(sql).fetch_all()
    print(results)
    # 执行SQL,并获取结果
    result = converter.exec(sql).fetch_one()
    # 将结果转换成字典
    print(result.to_dict())

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pymysql_extension-1.0.0.tar.gz (3.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pymysql_extension-1.0.0-py3-none-any.whl (5.9 kB view details)

Uploaded Python 3

File details

Details for the file pymysql_extension-1.0.0.tar.gz.

File metadata

  • Download URL: pymysql_extension-1.0.0.tar.gz
  • Upload date:
  • Size: 3.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/33.0 requests/2.26.0 requests-toolbelt/0.9.1 urllib3/1.26.7 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.5

File hashes

Hashes for pymysql_extension-1.0.0.tar.gz
Algorithm Hash digest
SHA256 936daf8b3cea61a850697ff3758df99cce9bbe78b2e50c8644e1e3627736d1f8
MD5 bb920fddcf1b7703cc1ea493de500a1f
BLAKE2b-256 69b1e6d37c0178aa4d9fd7d02a54d5174fd55bbc05997a5951d5fc13f5da7bfe

See more details on using hashes here.

File details

Details for the file pymysql_extension-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: pymysql_extension-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 5.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/33.0 requests/2.26.0 requests-toolbelt/0.9.1 urllib3/1.26.7 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.5

File hashes

Hashes for pymysql_extension-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d46f947237ef49ad83d248d6bf431ec61fbed9223b5a40f1709520089c53f2a5
MD5 2a89786fe7bbd8e05b5145e18005d105
BLAKE2b-256 3af2a9c721de49a929de61da27a69dcf99209625abbd1541dbc17720f5aac20e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page