一个工作遇到的问题,将excel文件的内容插入到mysql数据库中。

总体思路是 excel文件-->转换成csv文件-->csv文件读取-->读取数据插入mysql数据库

用到python的两个库csv和MySQLdb

下面是具体的code:

代码中数据库部分没啥好记录的,特别记录一下csv库的用法:

# Insert data from csv file.
csv_file = file('3D_PTlabs.csv', 'rb')
csv_reader = csv.reader(csv_file)
csv_reader生成的是一个迭代器,将迭代器内的内容重新整成list便于操作。
rows = [row for row in csv_reader]        
print len(rows[0])
print rows[0]

 # coding: utf-8

 import csv
import MySQLdb create_tablesql = """CREATE TABLE 3DLabInfo (
UserName VARCHAR(20) NOT NULL,
Platform VARCHAR(10),
Craft VARCHAR(20),
OAM VARCHAR(20),
Location VARCHAR(10),
VoicecardType VARCHAR(20),
VoicecardSN VARCHAR(20),
intraIP VARCHAR(10),
PCInternet VARCHAR(20),
PCDNS VARCHAR(20),
SignalIP VARCHAR(20),
ATESipResource VARCHAR(50),
3vlanIP VARCHAR(20),
H248resource VARCHAR(50),
H248SigIP VARCHAR(20),
H248Numbers VARCHAR(50),
GatewayUserID VARCHAR(50),
IsdnAteNum VARCHAR(20),
Comments VARCHAR(50)
)"""
insert_tablesql = " INSERT INTO 3DLabInfo (UserName, \
Platform, Craft, OAM, Location, VoicecardType, VoicecardSN, intraIP, \
PCInternet, PCDNS, SignalIP, ATESipResource, 3vlanIP, H248resource, \
H248SigIP, H248Numbers, GatewayUserID, IsdnAteNum, Comments) VALUES"
# Open Mysql connect
db = MySQLdb.connect("localhost","","","test") cursor = db.cursor()
# Drop the table if existed.
cursor.execute("DROP TABLE IF EXISTS 3DLabInfo")
# Create sql table.
cursor.execute(create_tablesql) # Insert data from csv file.
csv_file = file('3D_PTlabs.csv', 'rb')
csv_reader = csv.reader(csv_file) rows = [row for row in csv_reader]
print len(rows[0])
print rows[0] for data_list in rows[1:]:
insert_sql = insert_tablesql + str(tuple(data_list))
print insert_sql
try:
cursor.execute(insert_sql)
db.commit()
except:
db.rollback()
db.close()

python 从csv文件插入mysql数据库的更多相关文章

  1. 使用pandas中的raad_html函数爬取TOP500超级计算机表格数据并保存到csv文件和mysql数据库中

    参考链接:https://www.makcyun.top/web_scraping_withpython2.html #!/usr/bin/env python # -*- coding: utf-8 ...

  2. Linux 用 shell 脚本 批量 导入 csv 文件 到 mysql 数据库

    前提: 每个csv文件第一行为字段名 创建的数据库字段名同csv 文件的字段名 1. 批量导入 多个 csv 文件 for file in ./*.csv;do mv $file tablename. ...

  3. Spark1.6.2 java实现读取json数据文件插入MySql数据库

    public class Main implements Serializable { /** * */ private static final long serialVersionUID = -8 ...

  4. Spark1.6.2 java实现读取txt文件插入MySql数据库代码

    package com.gosun.spark1; import java.util.ArrayList;import java.util.List;import java.util.Properti ...

  5. JAVA读取CSV文件到MySQL数据库中

    maven项目pom配置: <dependency> <groupId>net.sourceforge.javacsv</groupId> <artifact ...

  6. PHP Apache Access Log 分析工具 拆分字段成CSV文件并插入Mysql数据库分析

    现在需要分析访问日志,怎么办? 比如分析D:\Servers\Apache2.2\logs\access2014-05-22.log http://my.oschina.net/cart/针对这个问题 ...

  7. Python datatime 格式转换,插入MySQL数据库

    Python datatime 格式转换,插入MySQL数据库 zoerywzhou@163.com http://www.cnblogs.com/swje/ 作者:Zhouwan 2017-11-2 ...

  8. CSV文件插入到mysql表中指定列

    参考资料: -CSV文件插入到mysql表中指定列

  9. JSON文件存入MySQL数据库

    目标:将不同格式的JSON文件存入MySQL数据库 涉及的点有: 1. java处理JSON对象,直接见源码. 2. java.sql.SQLException: Incorrect string v ...

随机推荐

  1. alert(1) to win 6

    function escape(s) { // Slightly too lazy to make two input fields. // Pass in something like " ...

  2. TS中补充的六个类型

    1.  元组 元组可以看做是数组的拓展,它表示已知元素数量和类型的数组.确切地说,是已知数组中每一个位置上的元素的类型 当我们为 元组 赋值时:各个位置上的元素类型都要对应,元素个数也要一致. let ...

  3. threading包的例子和queue包的例子

    参考:https://www.cnblogs.com/tkqasn/p/5700281.html 参考:https://www.cnblogs.com/tkqasn/p/5700281.html th ...

  4. Web上传文件的三种解决方案

    第一点:Java代码实现文件上传 FormFile file = manform.getFile(); String newfileName = null; String newpathname =  ...

  5. 最大独立点集&最小点覆盖

    1.最大独立点集: 在二分图中,选最多的点,使得任意两个点之间没有直接边连接. 最大独立集= 最小边覆盖 = 总点数- 最大匹配 (条件:在二分图中) 2.最小边覆盖: 在二分图中,求最少的边,使得他 ...

  6. Microsoft SQL Server 简介

    SQL Server 是Microsoft 公司推出的关系型数据库管理系统.具有使用方便可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft Windows 98 的膝上型电脑到运行M ...

  7. [CSP-S模拟测试]:Dinner(二分)

    题目描述 清儿今天请好朋友们吃饭,一共$N$个人坐在坐在圆桌旁.吃饭的第一步当然是点餐了.服务员拿来了$M$份菜单.第$i$个人阅读菜单并点出自己喜欢的菜需要花费时间$T_i$.当一个人点完菜之后,就 ...

  8. 原来在UNITY中使用system.io下的所有函数都可以用相对路径 : Assets/xx

    代码如下图,这样就不用在绝对路径和相对路径之间不断转换了. 想要得到绝对路径时就傅 Application.dataPath  + xxx using System.Collections; usin ...

  9. 刚性方程 Stiff equation

    In mathematics, a stiff equation is a differential equation for which certain numerical methods for ...

  10. elasticsearch 集群搭建及启动常见错误

    1.系统环境 三台服务器(最好是单数台,跟master选举方式有关),确保机器互相ping的通,且都需要装了jdk 8环境,机器IP和 elasticsearch 的节点名称如下: cluster n ...