可以批量插入数据,批量修改数据等
例如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()