数据库工具
Project description
使用说明
变量环境设置(数据库的链接信息存储在变量环境中)
# 设置环境变量 user 是用户名,password 是密码,192.168.1.10:22484 数据库地址
os.environ['SQLALCHEMY_DATABASE_URI'] = 'mysql+pymysql://user:password@192.168.1.10:22484/'
# 获取环境变量,如果不存在则使用默认值
value = os.environ.get('SQLALCHEMY_DATABASE_URI', 'default_value')
print(value+"DY_DSLP")
windwow cmd 设置永久环境变量
setx SQLALCHEMY_DATABASE_URI "mysql+pymysql://user:password@192.168.1.10:22484/"
1、安装包模块
pip install mjsqltool
pip install --upgrade mjsqltool
2、引入包模块
from mjsqltool import SqlConnect,DataConvert,SqlExecute
SqlConnect
链接数据库,使用完毕后自动关闭
# 数据库名称
db = 'database'
with SqlConnect(db) as cn:
.....
DataConvert
数据转换 1、清洗数据 2、数据转SQL
convert = DataConvert()
df = pd.read_exce("jjjj.xlsx")
# 清洗数据
df = convert.convert_to_cleandata(df)
# 转成SQL语句 sql_type: 保存类型 有两个可选参数 'INSERT' 和 'REPLACE'
data = df
table_name = '测试表格'
sql_type='REPLACE'
query = convert.convert_to_sqlstring(data,table_name, sql_type)
SqlExecute
SqlExecute 将数据保存到MySQL SqlExecute 继承了 DataConvert,
from mjsqltool import SqlConnect,DataConvert,SqlExecute
import pandas as pd
with SqlConnect("MJ_DATA") as cn:
df = pd.read_excel(r"C:\Users\manji\Downloads\联盟订单.xlsx")
SqlExecute().data_cleanerSave_tosql(df,"测试表格",cn)
SqlExecute().data_cleanerSave_tosql
参数说明
sql_type='INSERT',
# sql_type='INSERT' 自动忽略重复主键记录 有两个可选参数 'INSERT' 和 'REPLACE'
datalong = None,
# datalong="only" 为 only时,只写入mysql中存在的数据字段
chunk_size=10000
# 每次最大写入数据的数据记录,例如90条数据,每次写入10条,则自动拆分成10次写入
使用pandas读取MySQL数据
reportSql = 'select * from TB_table'
with SqlConnect(database="TB_GGTF") as cn:
reportSql = text(reportSql) # 将字符串转换为可执行的 SQL 对象
df = pd.read_sql_query(reportSql,cn)
print(df)
打包
python setup.py sdist bdist_wheel
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
mjsqltool-2.1.2.tar.gz
(14.1 kB
view details)
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
mjsqltool-2.1.2-py3-none-any.whl
(15.9 kB
view details)
File details
Details for the file mjsqltool-2.1.2.tar.gz.
File metadata
- Download URL: mjsqltool-2.1.2.tar.gz
- Upload date:
- Size: 14.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d9d0afb94165053056c4c9baa1c09e24b96882883fe02fcea9d1ea01f05cc1a8
|
|
| MD5 |
11bd18fb03d6d5ee1afe4ba160010cc2
|
|
| BLAKE2b-256 |
433acfca8021b91d86f5f056f8016cbf5b239cc2e1151f61e45a9732bbfc4a27
|
File details
Details for the file mjsqltool-2.1.2-py3-none-any.whl.
File metadata
- Download URL: mjsqltool-2.1.2-py3-none-any.whl
- Upload date:
- Size: 15.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
42a9091be76e5452fca7b2eb3f731c0ee53e30e49ed94afb66fcda5fcab13cee
|
|
| MD5 |
d6793944f783d93c8fe6a28d5d52f947
|
|
| BLAKE2b-256 |
1a339c4e314b62543464e668ad728a2fadb089591e30e15d9714d3fba65dd98b
|