用python批量向数据库(MySQL)中导入数据

  • 现有数十万条数据,如下的经过打乱处理过的数据进行导入

  • 数据库内部的表格的数据格式如下与下面的表格结构相同
Current database: python_test_1

+-------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| name | varchar(20) | YES | | NULL | |
| maile | varchar(50) | YES | | NULL | |
| wchat | varchar(50) | YES | | NULL | |
| phone | varchar(50) | YES | | NULL | |
| brith | varchar(50) | YES | | NULL | |
+-------+-------------+------+-----+---------+----------------+
6 rows in set (0.18 sec)

实现方法

import re
from pymysql import connect # 建立链接
conn = connect(host='localhost', port=3306, db='python_test_1', user='root', password='mysql', charset='utf8')
# 获取游标
cur = conn.cursor()
# 打开文件,读取所有文件存成列表
with open("/home/python/Desktop/code/data01.txt", "r") as file:
# 可以选择readline或者read的方式,但下面的代码要有所变化
data_list = file.readlines()
# 遍历列表
for t in data_list: # 正则方式匹配处理字符串
text_list = re.split(r"\n", t)
text = re.split(r"\t", text_list[0])
# print(text)
# sql语句
sql = "insert into test_db values (0,%s,%s,%s,%s,%s)"
print(sql)
# 参数化方式传参
row_count = cur.execute(sql,[text[0],text[1],text[2],text[3],text[4]])
# 显示操作结果
print("SQL语句影响的行数为%d" % row_count)
# 统一提交
conn.commit()
# 关闭游标 
cur.close()
# 关闭连接
conn.close()

用python批量向数据库(MySQL)中导入数据的更多相关文章

  1. 搜索引擎Solr系列(二): Solr6.2.1 从MySql中导入数据

     一:建立MySql测试表,如下图: 二:solr导入配置: 1.新建demo core文件夹,并修改managed-schema里面的配置文件建立索引字段: 2.把mysql-connector-j ...

  2. python从Microsoft Excel文件中导入数据

    excel中后缀为csv和xls,二者区别如下:1.xls 文件就是Microsoft excel电子表格的文件格式.2.csv是最通用的一种文件格式,它可以非常容易地被导入各种PC表格及数据库中. ...

  3. 从MySQL中导入数据到MongoDB中

    从sql中导出需要的数据为csv格式的数据 select field1,field2,...,fieldn from TABLE into outfile '/test.csv' fields ter ...

  4. 如何按规定的格式向mysql中导入数据

    1.首先我们拿到数据,数据必须按照一定的格式书写的.如用|区分字段,换行区分row 12107 | 心情1 | 今天的心情很不好啊. 12108 | 天气 | 今天天气还行. 12109 | 臭美 | ...

  5. 使用phpstudy向mysql中导入数据

  6. PHP如何批量更新MYSQL中的数据

    最近项目需要用到批量更新数据库里的数据,在网上找了一下这方面的例子,觉得这个还不错,分享给大家. 在这个业务里里面涉及到了更新两张数据表,那么大家是不是会想到非常简单,马上上代码 $sql ,type ...

  7. PHP批量更新MYSQL中的数据

    原文链接:https://blog.csdn.net/wuming19900801/article/details/62893429 $sql = "update newhouse_clic ...

  8. 学习 MySQL中导入 导出CSV

    学习 MySQL中导入 导出CSV http://blog.csdn.net/sara_yhl/article/details/6850107    速度是很快的 导出 select * from t ...

  9. ArcCatalog中通过ArcSDE向Oracle数据库中导入数据

    将数据导入到Oracle指定的表空间的具体内容如下: 首先,在ArcCatalog中建立指定表空间的数据库连接(要以指定表空间的用户登录): 然后,在ArcCatlog中定位到数据源,选中并拷贝图层; ...

随机推荐

  1. vue实现双向数据绑定之Object.defineProperty()篇

    前言 vue.js中使用ES5的Object.defineProperty()实现数据的双向绑定 Object.defineProperty()原理 Object.defineProperty()可以 ...

  2. Oracle 表空间不足引起的问题及解决方法

    -- 1 向数据库导入数据时报了ORA-01653: unable to extend table错误,网上查了下原因是由于表空间不足引起的: 查询表空间使用情况语句 select a.tablesp ...

  3. MySQL 单个表锁死 对查询语句无响应

    这个时候应该怀疑读取都被加锁,应该尝试使用 show processlist 查看每一个正在运行的进程. 可以看到这样一个列表,里面有使用者即用户,正在使用数据库的 host, 使用的 db 目前的 ...

  4. 一、Composer

    一.Composer -依赖管理工具 Composer 会帮你安装这些依赖的库文件

  5. PHPStorm 配置命名空间

    文件-设置-Directories 选中:application     点击顶部:Sources,右侧会出现 Source Floders 配置项 点击:p进行设置 输入app\

  6. nginx反向代理(动静分离)

    使用反向代理(动静分离)可以让nginx专注静态内容,把动态请求交给apache来处理,发挥各自的优势,而且整个架构更加清晰: 这里假设你已经搭建好了nginx环境; 为了简单起见,就不用源码编译安装 ...

  7. oracle判断是否包含字符串的方法

    首先想到的就是contains,contains用法如下: select * from students where contains(address,  ‘beijing’) 但是,使用contai ...

  8. React 学习(三) ---- state 和 事件处理函数

    在上两节中,我们讲述了props, 组件使用props进行渲染,但是这是一次性的, props渲染完成之后就不做任何事情了,但是现实中却不是这样的,当我们点击购物车上的加减按钮时,数量会自动加1或减1 ...

  9. iOS一些高效代码

    一. [Bugly startWithAppId:BUGLY_APP_ID #if DEBUG developmentDevice:YES #endif config:config]; 二.

  10. 【C/C++】龙格库塔+亚当姆斯求解数值微分初值问题

    /* 解数值微分初值问题: 龙格-库塔法求前k个初值 + 亚当姆斯法 */ #include<bits/stdc++.h> using namespace std; double f(do ...