Skip to content

Instantly share code, notes, and snippets.

@lewangdev
Created August 7, 2018 09:41
Show Gist options
  • Save lewangdev/014830ce29ddd6d1f6433b05a11c7395 to your computer and use it in GitHub Desktop.
Save lewangdev/014830ce29ddd6d1f6433b05a11c7395 to your computer and use it in GitHub Desktop.
Bulket insert data to MySQL by python
#coding=utf8
import MySQLdb
class Connectdb():
def __init__(self):
self._conn = MySQLdb.connect("localhost", "root", "letmein",
"db_test", charset="utf8")
def __enter__(self):
return self._conn
def __exit__(self, exc_type, exc_val, exc_tb):
self._conn.close()
def connectdb():
return Connectdb()
if __name__ == '__main__':
with connectdb() as conn:
cursor = conn.cursor()
cursor.execute("SELECT VERSION()")
data = cursor.fetchone()
print("Database version : %s " % data)
# Insert data
sql = "insert into t_limit(val, source) values(%s, %s)"
for j in xrange(50):
param = []
for i in xrange(100000):
param.append((i, i))
try:
cursor.executemany(sql, param)
conn.commit()
print("batch %s done" % j)
except:
conn.rollback()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment