Попробуйте этот метод.В идеале это должно ускорить выполнение.
query = "INSERT INTO DB_Name (UserId, Timestamp, ChurnPropensity) VALUES ({},'{}',{});"
df.apply(lambda row: cursor.execute(query.format(row['UserId'],
row['Timestamp'],
row['ChurnPropensity'])),
axis=1)
По моему опыту, сам метод execute
медленный, поэтому вы можете ускорить процесс, пытаясь выполнить несколько запросов одновременно.
query = "INSERT INTO DB_Name (UserId, Timestamp, ChurnPropensity) VALUES ({},'{}',{});"
queries_list = df.apply(lambda row: query.format(row['UserId'],
row['Timestamp'],
row['ChurnPropensity']), axis=1).values.tolist()
queries = ' '.join(queries_list)
cursor.execute(queries, multi=True)