@使用Python将csv文件批量导入MySQL
使用Python将csv文件批量导入MySQL
小菜鸟在使用Python将csv文件批量导入mysql的时候踩了好多坑,磕磕绊绊也终于还是试成功了哈哈哈哈
总结几个坑点:
1,将csv批量导入mysql有的大佬建议用load data语句的方法参见(https://zhuanlan.zhihu.com/p/45533287),我试了很久,检查了很多遍,总是报1064的错误,后面也没查找到原因。。。于是我换成了先存入pandas,再转存MySQL
2,存入mysql的步骤一般自己设计好数据结构,保存好一套建表的sql,然后建好表再导入。我设计的数据结构过于简单粗暴了
3,csv文件的取名不要有空格啥的,不然也会报错
4,写SQL语句的时候,可以先print出来,放在Navicat里面试试,不然你很难知道自己摔哪个坑了[哭]
5,多写多练,遇到代码出错多百度,不懂就多问,奥利给!
附上代码:
#-- coding: utf-8 --
###换成读入pandas再读进SQL的方法
import pandas as pd
import numpy as np
import csv
from pandas import Series,DataFrame
##将CSV文件内容存入数据库
#首先导入PyMySQL库
import pymysql
# 参数设置 DictCursor使输出为字典模式 连接到本地
config = dict(host='localhost', user='root', password='******',
cursorclass=pymysql.cursors.DictCursor
)
# 建立连接
conn = pymysql.Connect(**config)
# 自动确认commit True
conn.autocommit(1)
# 设置光标
cursor = conn.cursor()
# 一个根据pandas自动识别type来设定table的type
def make_table_s