A functional enhancement package that focus on crud based PyMySQL
Project description
PyMySQLDao
Introduce
PyMySQLDao是建立在PyMySQL上的功能增强库,方便用户进行CRUD;
在不影响任何代码的情况下,只需要简单几行代码,便可获得表的CRUD功能!
欢迎提出修改意见!🥳🥳🥳
Requirements
Install
(venv)$ pip install pymysql-dao
说明:如果上述的命令无法下载,请考虑使用下列命令:
pypi官方
$ pip install pymysql-dao --index-url https://pypi.org/simple/清华源
$ pip install pymysql-dao --index-url https://pypi.tuna.tsinghua.edu.cn/simple/
Examples
1)使用pymysqldao进行CRUD
假设使用此SQL文件
# !/usr/bin/env python
# -*- coding: utf-8 -*-
import pymysql
from pymysqldao import CRUDHelper
conn = pymysql.connect(
host='localhost',
user='root',
password='',
database='python_example',
cursorclass=pymysql.cursors.DictCursor
)
class ClassDao(CRUDHelper):
def __init__(self):
super().__init__(connection=conn, table_name="class", size=500)
if __name__ == '__main__':
# print(ClassDao.__mro__)
dao = ClassDao()
# select * from class limit 20
dao.select_list()
# select * from class limit 2
dao.select_list(2)
# select * from class where class_name='火箭班' limit 20
dao.select_by_field("class_name", "火箭班")
# select * from class where class_name='骏马班' limit 10
dao.select_by_field("class_name", "骏马班", size=10)
# select * from class where id=1
dao.select_by_id(1)
# select * from class where id in (1, 2, 3)
dao.select_by_id_list([1, 2, 3])
# insert into class("class_name") values("少年班")
dao.insert_one({"class_name": "少年班"})
# update by id
result = dao.select_by_field("class_name", "少年班")
result[0]["class_name"] = "少年班修改"
dao.update_by_id(result[0])
# delete by id
dao.delete_by_id(result[0]["id"])
2)使用自己定义的log格式
import sys
import logging
import pymysql
from pymysqldao import CRUDHelper, LOGGER
LOGGER.setLevel(logging.DEBUG)
LOGGER.addHandler(logging.StreamHandler(sys.stderr))
conn = pymysql.connect(
host='localhost',
user='root',
password='',
database='python_example',
cursorclass=pymysql.cursors.DictCursor
)
class ClassDao(CRUDHelper):
def __init__(self):
super().__init__(connection=conn, table_name="class", size=500, use_own_log_config=True)
if __name__ == '__main__':
# print(ClassDao.__mro__)
dao = ClassDao()
# select * from class limit 20
dao.select_list()
# select * from class limit 2
dao.select_list(2)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pymysql_dao-0.0.11.tar.gz.
File metadata
- Download URL: pymysql_dao-0.0.11.tar.gz
- Upload date:
- Size: 9.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.8.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1eb466f544128fcb70e4afc71240548f91c84b5490c909ce6706726a20db0832
|
|
| MD5 |
7ed85c025b27f63c03f2b31bc6c4bf14
|
|
| BLAKE2b-256 |
d730f68acf3240e310876be747c56bfaa893ad4d557d651718f7787cc111bb44
|
File details
Details for the file pymysql_dao-0.0.11-py3-none-any.whl.
File metadata
- Download URL: pymysql_dao-0.0.11-py3-none-any.whl
- Upload date:
- Size: 15.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.8.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
17ef8ec208fd66cae243907efeeb6cdd468bc15274c709906ef9ef06145cdbc6
|
|
| MD5 |
e72fcadf15920906cbd09fe45d6b603c
|
|
| BLAKE2b-256 |
176d93afa4d76e65935fb214cc8107885d0add0a20d58463b85dbffd0a7c05d6
|