批量插入數據,兩種方法:
- execute()
- executemany()
executemany()效率遠遠高於execute(),推薦使用executemany()
代碼如下:
1 import MySQLdb 2 3 conn = MySQLdb.connect( 4 host='fjkdasjfkdas.aliyuncs.com', 5 port=3306, 6 user='fdasf', 7 passwd='fdasfda', 8 db='datav', 9 charset='utf8' 10 ) 11 12 cur = conn.cursor() 13 14 f = open('test.txt', 'rt') # 讀取文件 15 lines = f.readlines() 16 lists = [] # 定義一個數組 17 for line in lines: 18 s = (str(line.split(',')[0]),int(line.split(',')[1])) # 構造一個元組 19 print(s) 20 lists.append(s) # 將元組添加到數組中 21 22 print(lists) 23 cur.executemany(f"insert into zy_1(name, score) values(%s,%s)",lists) # 批量插入 24 conn.commit() 25 26 cur.close() 27 conn.close()
