Excel 批量导入Mysql(创建表-追加数据)
时间:2019-11-07
本文章向大家介绍Excel 批量导入Mysql(创建表-追加数据),主要包括Excel 批量导入Mysql(创建表-追加数据)使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
之前弄数据库的时候, 测试excel导mysql, 中间用pandas 处理后再入库. 直接上代码, 此种有真意, 尽在不言中.
1 #!/usr/bin/env python 2 # coding: utf-8 3 # author: chenjie131@ke.com 4 5 ''' 6 应用场景: 7 将excel等存储的数据导入到 Mysql, 适用于追加表, 或者追加数据. 8 9 1. 数据库表已存在, 可在需表后面添加数据. 10 2. 数据库表不存在, 导入时直接创建表在数据库中. 11 3. 特点: 12 3.1 这里用pandas.to_sql()方法, 以块的方式导入效率高, 10000行100列的表,2.5s 导完. 13 3.2 替代品,sql方式可参考load data local .... 14 3.3 缺点是如果表存在, 且设置主键约束, 就不适用 15 16 17 ''' 18 19 import pandas as pd 20 from sqlalchemy import create_engine 21 22 23 文件路径 = "C:\\Users\beike\\Desktop\\8月带看明细8.15.xls" 24 25 # 1. 读取excel, sheet_name: 默认读取Sheet1,按需指定 26 table = pd.read_excel(文件路径, sheet_name="明细") 27 28 29 # 2. 连接MySql数据库, //后的参数为: 用户名, 密码, 主机, 数据库名 30 engine = create_engine("mysql+pymysql://zmj:123456@192.168.6.81:3306/new_house") 31 32 # 3. 连接测试 33 try: 34 pd.read_sql("show tables;", con=engine); print("connect successfully!") 35 except Exception as error: 36 print("connect fail! because of :", error) 37 38 # 4. to_sql()方法插入数据, 更多细节自行查文档 39 40 # 参数1: 表的名字,建议不要用中文 41 # con: 之前创建的连接对象 42 # if_exists: 43 # "replace": 如果传入的表名在库里存在, 则会删掉该表, 重新创建 44 # "append": 如果传入的表名在库里存在, 则会追加数据, 注意字段顺序一致, 注意当有主键约束则易报错 45 try: 46 table.to_sql("测试表", con=engine, index=False, if_exists="replace"); 47 48 print("insert successfully!") 49 except Exception as error: print("insert fail! because of:", error) 50 51 52 print("##"*20) 53 print("done!")
原文地址:https://www.cnblogs.com/chenjieyouge/p/11811784.html
- IDEA使用总结
- Maven就是这么简单
- SVN就是这么简单
- 01 深入理解JVM的内存区域
- 设置Windows默认中文、Putty掉线解决、SublimeText3常用设置
- 通过oracle类比MySQL中的字节字符问题(r4笔记第44天)
- Spring MVC的配置和使用
- Oracle总结【SQL细节、多表查询、分组查询、分页】
- 关于内存异常的一个猜想(r4笔记第43天)
- WebSocket就是这么简单
- 09(01)总结final,多态,抽象类,接口
- 01 Mybatis 的配置和使用
- Oracle总结【视图、索引、事务、用户权限、批量操作】
- 02 使用Mybatis的逆向工程自动生成代码
- MySQL 教程
- MySQL 安装
- MySQL 管理与配置
- MySQL PHP 语法
- MySQL 连接
- MySQL 创建数据库
- MySQL 删除数据库
- MySQL 选择数据库
- MySQL 数据类型
- MySQL 创建数据表
- MySQL 删除数据表
- MySQL 插入数据
- MySQL 查询数据
- MySQL where 子句
- MySQL UPDATE 查询
- MySQL DELETE 语句
- MySQL LIKE 子句
- mysql order by
- Mysql Join的使用
- MySQL NULL 值处理
- MySQL 正则表达式
- MySQL 事务
- MySQL ALTER命令
- MySQL 索引
- MySQL 临时表
- MySQL 复制表
- 查看MySQL 元数据
- MySQL 序列 AUTO_INCREMENT
- MySQL 处理重复数据
- MySQL 及 SQL 注入
- MySQL 导出数据
- MySQL 导入数据
- MYSQL 函数大全
- MySQL Group By 实例讲解
- MySQL Max()函数实例讲解
- mysql count函数实例
- MYSQL UNION和UNION ALL实例
- MySQL IN 用法
- MySQL between and 实例讲解