接口测试 - python - 向数据库中批量插入、批量修改数据

可以批量插入数据,批量修改数据等

 

例如1: 插入6条数据

import MySQLdb

conn = MySQLdb.connect(
    host='192.168.0.0',
    port=3306,
    user='abc',
    passwd='abc',
    db='abc',
    charset='utf8'
)

cur = conn.cursor()

# 插入6条数据
for i in range(100000, 100006):
    sql = f'insert into test.tb_test (num) VALUES ({i})'
    cur.execute(sql)

conn.commit()


cur.close()
conn.close()

结果如下:

 

 

例2:修改特定列的数据(当id为空时,顺序插入数据)

sql1 = "select * from test.tb_test where id is null"
cur.execute(sql1)
c = cur.fetchall()
nn = len(c)
print(nn)  # id为null的行有nn个

for n in range(nn):
    sql2 = f'update test.tb_test set id = {n} where id is null limit 1'
    cur.execute(sql2)

conn.commit()

结果如下:

 

 

 

例3:批量插入10条姓名信息

import MySQLdb
import random


conn = MySQLdb.connect(
    host='192.168.3.70',
    port=3306,
    user='root',
    passwd='y123456',
    db='test',
    autocommit=True
)
cur = conn.cursor()

sql = 'select version()'

lst_first = [
    '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '',
    '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '',
    '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '',
    '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '',
    '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '',
    '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '',
    '', '', '', '', '', '', '', '']
lst_last = [
    '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '',
    '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '',
    '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '',
    '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '',
    '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '',
    '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '',
    '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '',
    '退', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '',
    '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '',
    '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '',
    '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '',
    '', '']


for i in range(10):
    sql2 = f"insert into t1 (id, name) VALUES ({i}, '{random.choice(lst_first)}{''.join(random.choices(lst_last, k=2))}')"
    # sql2 = f"insert into t1 (id, name) VALUES ({i}, '{random.choice(lst_first)}{random.choice(lst_last)}')"
    cur.execute(sql2)

cur.fetchall()

cur.close()
conn.close()

 

posted @ 2021-11-04 11:13  小虫虫大虫虫  阅读(749)  评论(0)    收藏  举报