python读写mysql数据库,python把数据写入数据库
从python读取数据自动写入MySQL数据库。这个需求在工作中很常见,主要涉及Python操作数据库,读写更新等。本文总结了三种Python写入MySQL数据库的方式,有需要的可以参考一下。
00-1010场景1:数据不需要频繁写入mysql场景2:数据是增量的,需要自动化,频繁写入mysql模式1和模式2。总结大家好,python读取数据,自动写入MySQL数据库。这个需求在工作中很常见,主要涉及Python操作数据库,读写更新等。数据库可能是mongodb和es,处理思路差不多。他们所需要的只是改变操作数据库的语法。
本文将和大家分享如何将数据写入mysql,分为两种场景,三种方式。
目录
使用navicat工具的导入向导功能。它支持多种文件格式,可以根据文件的字段自动建表,也可以将数据插入到已有的表格中,非常快捷方便。
场景一:数据不需要频繁的写入mysql
测试数据:csv格式,约1200万行
进口熊猫作为pd
data=pd.read_csv(。/天池_手机_推荐_火车_用户. CSV’)
数据.形状
打印结果
场景二:数据是增量的,需要自动化并频繁写入mysql
Python MySQL库
安装pymysql命令
pip安装pymysql
代码实现:
导入pymysql
#数据库连接信息
conn=pymysql.connect(
host=127.0.0.1 ,
user=root ,
passwd=王余庆,
db=test01 ,
端口=3306,
charset=utf8 )
#块处理
big_size=100000
#对mysql的块遍历写入
用pd.read_csv(。/Tianchi _ mobile _ recommend _ train _ user . CSV ,chunksize=big_size)作为读者:
对于reader:中的df
数据=[]
Print(处理:,len(df))
#打印(df)
对于df.iterrows():中的I,j
data=(j[user_id],j[item_id],j[behavior_type],
j[项目_类别],j[时间])
datas.append(数据)
_values=,。联接([%s ,] * 5)
sql= 插入到用户(用户标识,项目标识,行为类型
,item_category,time)值(% s)“% _值
cursor=conn.cursor()
cursor.executemany(sql,datas)
conn.commit()
#关闭服务
conn.close()
cursor.close()
打印(保存成功!)
方式一
PANDAS sqlACHEMY: PANDAS需要引入sqlACHEMY来支持SQL。在SQLACHEMY的支持下,可以实现所有常用数据库类型的查询、更新等操作。
代码实现:
从sqlalchemy导入创建引擎
engine=create _ engine( MySQL pymysql ://root : Wang Yuqing @ localhost :3306/test 01 )
data=pd.read_csv(。/天池_手机_推荐_火车_用户. CSV’)
data.to_sql(user02 ,engine,chunksize=100000,index=None)
打印(保存成功!)
方式二
Pymysql方法耗时12分47秒,耗时较长,代码量较大。熊猫只需要五行代码就可以实现这个需求,而且只需要4分钟左右。
最后,第一种方法需要提前建表,而第二种方法不需要。
所以我们推荐你用第二种方法,方便高效。如果还是觉得慢的朋友,可以考虑加入多进程多线程。
将数据存储到MySQL数据库的三种最完整的方法:
直接保存,这里用navicat的导入向导函数Python pymysqlPandas sqlalchemy。这篇文章详细解释了Python写入MySQL数据库的三种方式。关于Python写入MySQL的更多信息,请搜索热门IT软件开发工作室之前的文章或者继续浏览下面的相关文章。希望大家以后多多支持热门的IT软件开发工作室!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。