学习笔记 executemany()方法 pymysql的executemany()方法,在一次数据库的IO操作中,可以插入多条记录。在大量数据传输中,它相比于execute()方法,不仅方便,而且提高了效率。 语法 executema
学习笔记
executemany()方法
pymysql的executemany()方法,在一次数据库的IO操作中,可以插入多条记录。在大量数据传输中,它相比于execute()方法,不仅方便,而且提高了效率。
- 语法
#sql就是我们要执行的sql语句
#data_list是一个包含多行数据的列表,每行数据可以用列表[]包裹,也可以用元祖()包裹
#比如:[(1, '小明', 10), (2, '小白', 20)]
#或:[['Ada', 100, 92], ['Jack', 89, 97]]
- 例子
下面就是我们要操作stu数据库里的test_table数据表的结构:
我们用pymysql向其中添加数据行:
import pymysqldata01 = [['1', 'Ada', '23'],
['2', 'Black', '19'],
['3', 'Tim', '30']]
data02 = [('4', 'Green', '25'), ('5', 'Bai', '32')]
db = pymysql.connect(host = '127.0.0.1',
port = 3306,
user = 'root',
password = '19970928',
database = 'stu',
charset = 'utf8')
cur = db.cursor()
try:
sql = 'insert into test_table \
values(%s, %s, %s);'
cur.executemany(sql, data01)
cur.executemany(sql, data02)
db.commit()
print('成功...')
except Exception as e:
db.rollback()
print("错误信息:", e)
cur.close()
db.close()
备注:值得一提的是,貌似所有数据格式都要求是字符串类型的。好吧,真的是这样么??以后继续研究
运行后,查看mysql中的数据表:
成功导入数据!