之前都是在mysql的存储过程中插入数据,毕竟mysql语法函数有限,很多都有限制。突然想到学了python正好可以练练手。
首先需要安装pymysql模块包(模块包安装请自行百度)

pip install pymysql

mysql语句的符号一定要看清楚,否则运行不生成数据,运行结果又没有错误提示很难定位问题,博主就因为一个符号浪费大量的时间。
不多说了,直接上代码(注意符合,注意符合,注意符合!!!)

#encoding:utf-8
import pymysql
import time
import random
#连接mysql
db = pymysql.connect(host='14.29.249.74',port=3306,user='kx_admin',passwd='密码',db='ilock')
#获取mysql操作光标
cursor = db.cursor()
#初始化变量
count = 0
#设置sql语句循环次数
while count <= 100:
count += 1
#定义mysql字段的范围随机数变量
num = random.randint(0,2)
memo_num = random.randint(100,111)
city_list = ['长沙','湘潭','株洲','衡阳']
a = random.choice(city_list)
#生成mysql语句插入语句
sql ="insert into iodn_city(city_code,city_name,memo)values({},'{}',{})".format(num,a,memo_num)#执行sql语句
try:
cursor.execute(sql)
db.commit()
#错误回滚
except:
db.rollback()
#关闭mysql
db.close()

python连接mysql循环插入千万条数据脚本的更多相关文章

  1. mysql循环插入千万级数据

    mysql使用存储过程循环插入大量数据,简单的一条条循环插入,效率会很低,需要考虑批量插入. 测试准备: 1.建表: CREATE TABLE `mysql_genarate` ( `id` ) NO ...

  2. 【JDBC】使用Spring提供的JDBCTemplate通过Statement向MySql数据库插入千万条数据,耗时4m55s,使用insert语句批量插入方式二

    这回依然是使用 insert批量插入这种方式 insert into emp(name,age,cdate) values ('A' , 20, '2019-10-13 00:00:00'), ('B ...

  3. 【JDBC】使用Spring提供的JDBCTemplate通过PrepareStatement向MySql数据库插入千万条数据,耗时32m47s,速度提升有限

    数据库环境还和原来一样,只是从Statement换成了PrepareStatement,都说PrepareStatement因为预编译比Statement快,但是实际运行真快不了多少. 代码如下: p ...

  4. 通过python代码连接MySQL以及插入和显示数据

    通过python代码连接MySQL以及插入和显示数据: 数据库huahui创建一个shibie的表,里面有两个varcahr(100)的字段,num和result. import pymysql im ...

  5. 用一条mysql语句插入多条数据

    这篇文章主要介绍了在mysql中使用一条sql语句插入多条数据,效率非常高,但是原理其实很简单,希望对大家有所帮助 假如有一个数据表A: id name title addtime 如果需要插入n条数 ...

  6. 你向 Mysql 数据库插入 100w 条数据用了多久?

    阅读本文大概需要 2 分钟. ▌目录 多线程插入(单表) 多线程插入(多表) 预处理 SQL 多值插入 SQL 事务( N 条提交一次) ▌多线程插入(单表) 问:为何对同一个表的插入多线程会比单线程 ...

  7. java之5分钟插入千万条数据

    虽说不一定5分钟就插入完毕,因为取决去所插入的字段,如果字段过多会稍微慢点,但不至于太慢.10分钟内基本能看到结果. 之前我尝试用多线程来实现数据插入(百万条数据),半个多小时才二十多万条数据. 线程 ...

  8. 关于如何在mysql中插入一条数据后,返回这条数据的id

    简单的总结一下如何在mysql中出入一条数据后,返回该条数据的id ,假如之后代码需要这个id,这样做起来就变得非常方便,内容如下: <insert id="insertAndGetI ...

  9. python+mysql:实现一千万条数据插入数据库

    作业要求 构建一个关系模式和课本中的关系movies(title,year,length,movietype,studioname,producerC)一样的关系,名称自定,在这个关系中插入1000万 ...

随机推荐

  1. Altium Designer中如何批量修改元器件封装?

    我想你说的应该是altium里的封装管理库吧.1,Tools -> Footprint Manager -> ...2,在Component List里选择要改的器件3,在View and ...

  2. 操作安装docker

    在本地建造起vue-cli服务 参考项目:https : //gitee.com/QiHanXiBei/myvue 在本地建造起一个django项目架构,通过/ hello能够打印出helloworl ...

  3. 想买保时捷的运维李先生学Java性能之 垃圾收集算法

    前言 从原来只知道-Xms.-Xmx是设置内存的,到现在稍微理解了一些堆内存等Java虚拟机的一些知识.明白了技术这一个东西还是得要有输入才能实践,原理与实践要相辅相成,后续把JVM的监控好好总结一下 ...

  4. 使用 beeline 连接 hive 数据库报错处理

    一.beeline连接hive报错 1. User: root is not allowed to impersonate root (state=08S01,code=0) 在初次搭建完hadoop ...

  5. 1.DRF初始化

    1.DRF框架的8个核心功能   1.认证(用户登录校验用户名密码或者token是否合法) 2.权限(根据不同的用户角色,可以操作不同的表) 3.限流(限制接口访问速度) 4.序列化(返回json) ...

  6. 初步配置基于Struts的maven的Web项目demo

    1.创建mavenweb项目 eclipse | Idea 中创建maven项目,具体步骤PASS. 2.导入Struts2核心架包 Idea中在maven项目上,选择ADD FRAMEWORK ec ...

  7. 关于windows下activeMQ的安装

    1.下载地址http://activemq.apache.org/activemq-5154-release.html 2.修改登录账号和密码,在配置文件jetty-realm.properties中 ...

  8. html+canvas实现很真实的下雨雨落

    原素材地址:http://www.htmlsucai.com/demo-9782.html <!DOCTYPE html> <html> <head> <me ...

  9. numpy矩阵

    一.创建矩阵 Numpy提供了ndarray来进行矩阵的操作,在Numpy中 矩阵继承于NumPy中的二维数组对象,但矩阵区别于数组,不可共用数组的运算规律. 1.mat("第0行:第1行: ...

  10. linux的mysql修改默认端口3306

    linux 修改mysql默认端口3306 cd /etc/mysql/my.cnf 修改两处 客户端的port=3306 和mysqld的服务器端口port=3306 [client] port=3 ...