暑期实训个人工作记录2021.7.1

tushare库的保存数据

  python的tushare库获取的数据都是dataframe类型,所以可以使用to_sql()方法或to_excel()方法将其快速保存

to_excel

df.to_excel('D:name.xlsx',index = False)

to_sql

1、安装依赖包
  sqlalchemy、mysqlclient
2、安装MySQL
  对于MySQL版本,没有特别的要求,mysql 5+、mysql 8+ 都可以,如果是最新版mysql,需要将sqlalchemy升级到最新版。具体的安装过程,这里不做介绍,大家可自行baidu,有很多参考材料。
3、编写入库代码
  由于用了sqlalchemy,这个过程非常简单。用户无需首先在数据库中建表就可以执行数据入库,但这种默认方式所创建的数据表并不是最有的数据结构,可以参考第4条进行优化。

res=df.to_sql('stock_basic',engine_ts,index=False,if_exists='append',chunksize=5000)

4、数据结构优化
  对于默认创建的表,会有一些不太符合实际应用,比如数据结构类型比较单一,没有主键和索引等约束,没有comments等等。我们可以在数据库客户端对所建立的表进行修改,使其符合实际的最优设计。比如将一般的str类型转成varchar2数据类型,而不是text数据类型。

python修改MySQL数据库注意事项

  以下是一次python对数据库的删除操作。这段代码能正常运行且不会报错,但MySQL数据库内的对应数据没有被删除。

import pymysql
db=pymysql.connect(host='localhost',port=3306,user='root',password='root',database='dbname',charset='utf8')
cursor = db.cursor()
sql = "delete from table where name='Li'"
cursor.execute(sql)
cursor.close()
db.close()

  python对MySQL数据库进行增、删、改操作时,需要提交并刷新数据库后,才能完成对应操作。故需要在sql语句被执行后使用commit()方法提交并刷新数据库。
  以下是修改完善后的代码:

import pymysql
db=pymysql.connect(host='localhost',port=3306,user='root',password='root',database='dbname',charset='utf8')
cursor = db.cursor()
sql = "delete from table where name='Li'"
cursor.execute(sql)

db.commit() #添加的代码

cursor.close()
db.close()
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值