Pandas在一般情况下可以很简单的进行mysql的操作
连接mysql
可以使用sqlalchemy这个库来链接mysql
from sqlalchemy import create_engine
import os
db_user = os.environ.get('DB_USER', '') # 数据库用户名
db_password = os.environ.get('DB_PASSWORD', '') # 数据库密码
db_host = os.environ.get('DB_HOST', '') # 数据库主机地址
db_port = os.environ.get('DB_PORT', '3306') # 数据库端口
db_name = os.environ.get('DB_NAME', '') # 数据库名称
DB_STRING = f'mysql+mysqldb://{db_user}:{db_password}@{db_host}:{db_port}/{db_name}?charset=utf8'
engine = create_engine(DB_STRING)
读取和操作mysql
使用pandas读取
cls.df = pd.read_sql_query(f"SELECT * FROM `table_name` where `column` like '%S'", con=engine)
可以把读取的数据直接分配给一个df
使用纯sql语句
connection = engine.connect()
sql_cmd = text(f"delete FROM `{table_names['main_sheet']}` WHERE `content` ='' or `date` ='' ")
result = connection.execute(sql_cmd)
connection.commit()
写入sql
df_row.to_sql(f"`table_name`, con=engine, if_exists='append', index=False)
to_sql命令可以把df数组写入table_name的表里,可以采用新建或者追加的方式
原创文章,作者:熊阿初,如若转载,请注明出处:https://www.guofc.com/1186.html
评论列表(8条)
cheap viagra
cheap viagra
metoprolol tart
metoprolol tart
remeron weight gain
remeron weight gain
diflucan yeast medication
diflucan yeast medication
lasix diuretico
lasix diuretico
voriconazole injection price
voriconazole injection price
orlistat tablet classification
orlistat tablet classification
agv viagra reviews
agv viagra reviews