DataFrame存入mysql以及读取操作

需要使用到的包以及环境

  • sqlalchemy,pandas,pymysql,ipykernel
  • pycharm

开始

  1. mysql创建一个库用于测试
bash 复制代码
mysql> create database df2sql;
Query OK, 1 row affected (0.02 sec)
  1. pycharm中准备DataFrame类型数据准备开测
python 复制代码
import pandas as pd
df = pd.DataFrame({"age":[20,22,18,10],"name":['niko','zzz','nox','ze'],"id":[101,102,103,104]})
df.set_index("id",inplace=True) #tips:让id作为列索引
df
  1. 创建sqlalchemy引擎
python 复制代码
from sqlalchemy import create_engine
engine=create_engine(
    "mysql+pymysql://root:HHCzio20@localhost:3306/df2sql"
)
  1. 配置存入数据库
python 复制代码
df.to_sql(
    name="demo2sql",
    con=engine,
    if_exists="replace",
    index=False, #tips:不将DataFrame的索引写入数据库
    chunksize=1000,#tips:批量插入的大小,对于大数据集很有用
)
print('数据成功导出到数据库')
  1. 从数据库中读取到DataFrame
python 复制代码
df2 = pd.read_sql(
    "select * from demo2sql",
    con=engine
)
df2
  1. 验证读取到的数据类型
python 复制代码
type(df2)

主要其实还是sqlalchemy的数据库引擎配置需要注意写法就OK

相关推荐
CNSSIRD数据库27 分钟前
中国企业环境信用数据库2003-2026
大数据·数据库·数据分析·论文笔记
fd32001 小时前
达梦数据库更新统计信息后仍走旧执行计划解决方案
数据库
gCode Teacher 格码致知1 小时前
Pandas教学-6:coerce详解
python·pandas
百万蹄蹄向前冲1 小时前
密码都对Node.js却连不上Linux数据库
linux·mysql
华章酱1 小时前
MySQL幻读是怎么出现的
数据库·mysql·幻读
浅念-2 小时前
Redis基础详解:单线程模型、String与Hash数据结构
服务器·数据库·redis·sql·mysql·nosql数据库·nosql
updayday8542 小时前
离职域账号状态变更与Ping64操作记录核对
大数据·网络·数据库·安全·智能路由器
aramae2 小时前
MySQL内置函数(7)
开发语言·笔记·后端·mysql·其他
Nturmoils2 小时前
只恢复一张表,别把整个库都还回去
数据库
龙腾AI白云3 小时前
大语言模型:从语言理解到通用智能的跃迁
数据库·人工智能·机器学习·知识图谱