之前弄数据库的时候, 测试excel导mysql, 中间用pandas 处理后再入库.  直接上代码, 此种有真意, 尽在不言中.

 #!/usr/bin/env python
# coding: utf-8
# author: chenjie131@ke.com '''
应用场景:
将excel等存储的数据导入到 Mysql, 适用于追加表, 或者追加数据. 1. 数据库表已存在, 可在需表后面添加数据.
2. 数据库表不存在, 导入时直接创建表在数据库中.
3. 特点:
3.1 这里用pandas.to_sql()方法, 以块的方式导入效率高, 10000行100列的表,2.5s 导完.
3.2 替代品,sql方式可参考load data local ....
3.3 缺点是如果表存在, 且设置主键约束, 就不适用 ''' import pandas as pd
from sqlalchemy import create_engine 文件路径 = "C:\\Users\beike\\Desktop\\8月带看明细8.15.xls" # 1. 读取excel, sheet_name: 默认读取Sheet1,按需指定
table = pd.read_excel(文件路径, sheet_name="明细") # 2. 连接MySql数据库, //后的参数为: 用户名, 密码, 主机, 数据库名
engine = create_engine("mysql+pymysql://zmj:123456@192.168.6.81:3306/new_house") # 3. 连接测试
try:
pd.read_sql("show tables;", con=engine); print("connect successfully!")
except Exception as error:
print("connect fail! because of :", error) # 4. to_sql()方法插入数据, 更多细节自行查文档 # 参数1: 表的名字,建议不要用中文
# con: 之前创建的连接对象
# if_exists:
# "replace": 如果传入的表名在库里存在, 则会删掉该表, 重新创建
# "append": 如果传入的表名在库里存在, 则会追加数据, 注意字段顺序一致, 注意当有主键约束则易报错
try:
table.to_sql("测试表", con=engine, index=False, if_exists="replace"); print("insert successfully!")
except Exception as error: print("insert fail! because of:", error) print("##"*20)
print("done!")

最新文章

  1. do{...}while(0)的妙用
  2. BZOJ3659 : Which Dreamed It
  3. 导出excel乱码问题
  4. Java多线程编程详解
  5. 修改tomcat的logo
  6. Mysql安全配置【转】
  7. poj 1017 Packets 裸贪心
  8. android app性能优化大汇总(google官方Android性能优化典范 - 第1季)
  9. 修改tabbarcontroller选中图片及选中颜色
  10. SqlServer更新视图存储过程函数脚本
  11. fsck 修复ext3文件系统(用于linux系统时间不对,文件系统信息有错引起的die with exit status等的一些问题)
  12. 使用PowerDesigner创建数据库表图文并茂版
  13. python3.4 安装 scrapy 报错 VS2010
  14. hdu4597 Play Game 区间DP
  15. Excel Microsoft.Jet.OLEDB.4.0 外部数据库驱动程序中(1)的意外错误
  16. [LeetCode] Soup Servings 供应汤
  17. vue中created、mounted、 computed,watch,method 等方法整理
  18. C语言学习IDE和基本程序结构
  19. zabbix3.4.6之自动发现与自动注册
  20. configure.*和Makefile.*之间的关系

热门文章

  1. 洛谷 U96762 小R与三角形 题解
  2. 【题解】hdu1506 Largest Rectangle in a Histogram
  3. Maven 教程(17)— Maven Profile 和 Filtering 简介
  4. Maven 教程(16)— pom.xml 文件详解
  5. Python【每日一问】28
  6. Docker从入门到实践(3)
  7. 【转帖】威盛x86 AI处理器架构、性能公布:媲美Intel 32核心
  8. MySQL远程连接ERROR 2003 (HY000):Can't connect to MySQL server on'XXXXX'(111) 的问题
  9. C# 填充客户端提交的值到T对象
  10. C#拼音帮助类