我正在尝试使用 Pyodbc 将数据从数据帧加载到 SQL Server,它逐行插入并且速度非常慢。
我已经尝试了 2 种在网上找到的方法(中等),但我没有发现性能有任何改进。
尝试在 SQL azure 中运行,因此 SQL Alchemy 不是一种简单的连接方法。请找到我遵循的方法,还有其他方法可以提高批量加载的性能。
方法一
cursor = sql_con.cursor()
cursor.fast_executemany = True
for row_count in range(0, df.shape[0]):
chunk = df.iloc[row_count:row_count + 1,:].values.tolist()
tuple_of_tuples = tuple(tuple(x) for x in chunk)
for index,row in ProductInventory.iterrows():
cursor.executemany("INSERT INTO table ([x]],[Y]) values (?,?)",tuple_of_tuples)
方法二
cursor = sql_con.cursor()
for row_count in range(0, ProductInventory.shape[0]):
chunk = ProductInventory.iloc[row_count:row_count + 1,:].values.tolist()
tuple_of_tuples = tuple(tuple(x) for x in chunk)
for index,row in ProductInventory.iterrows():
cursor.executemany(""INSERT INTO table ([x]],[Y]) values (?,?)",tuple_of_tuples
谁能告诉我为什么性能没有提高 1%?它仍然需要相同的时间