我使用mysql.connector并且对于某些任务,例如在本地mysql数据库中插入数据,该过程采用0.0436846 s。平均来说,有一些方法可以改善它吗?
import mysql.connector
from mysql.connector import errorcode
class Dal:
@profile
def __init__(self, dic):
try:
self.cnx = mysql.connector.connect(user=dic['user'],
password=dic['password'],
host=dic['host'],
database=dic['database'])
self.cursor = self.cnx.cursor()
except mysql.connector.Error as err:
if err.errno == errorcode.ER_ACCESS_DENIED_ERROR:
print("User/Pass Fails")
elif err.errno == errorcode.ER_BAD_DB_ERROR:
print("BD no exist")
else:
print(err)
def insert_event(self,dic):
ins_ev = ("INSERT INTO events "
"(device, type, index, datetime, c1,\
c2, vel, head, pfm, age,vod,created_on ) "
"VALUES (%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)"
)
self.cursor.execute(ins_ev, dic)
self.cnx.commit()
也许是另一种方法?
答案 0 :(得分:2)
mysql.connector
是纯Python模块。连接C库的MySQL-python或者我的任何一个都应该为至少通信部分提供更好的性能。其他优化包括禁用索引和执行延迟插入。