我正在尝试将 Excel 数据导入 Teradata,我有超过 15000 行。
当我使用 execute 测试 50 行时,它运行良好,但导入超过 15000 行就太慢了。
然后我搜索了几个小时,我使用了 executemany,但我什至无法导入 1 行。
我错过了什么吗?
import pyodbc
import pandas
df=pd.read_excel(Srpath,sheet_name="Sheet1")
connection = pyodbc.connect(r"Driver={Teradata Database ODBC Driver 16.20};DBCNAME=TDPROD1;AUTHENTICATION=LDAP;UID=" + username + ";PWD=" + password)
cursor = connection.cursor()
for index, row in df.iterrows():
cursor.executemany(
"INSERT INTO Table(Cal_yr_num, Cak_pd_num, Banner, Company_code, Document_Number, GL_Account, Text_Info, Cheque_No, General_Ledger_Amount, Profit_Center, Cost_Center, CoCode_ChqNo, Account_Name) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?,?, ?, ?, ?)",
row[0], row[1], row[2], row[3], row[4], row[5], row[6], row[7], row[8], row[9], row[10], row[11], row[12])
connection.commit()
cursor.close()
connection.close()
执行许多并执行