我13-15MB原始文件,以它的數據加載到數據庫,並且它大約需要50-55mins插入使用executemany各地30K-35K行與pyodbc和它工作正常,但其處理時間很長。語法錯誤與參數化查詢從pyodbc切換後pymssql
爲了測試我試圖pymssql的性能,但它顯示這裏語法錯誤
x = [('a',1),('b',2).... ] # inserting only 999 rows at a time
qry = "INSERT INTO ["+tablename+"] VALUES({}) ".format(placeholders)
cursor.executemany(qry,x)
print qry
# INSERT INTO [my_T] VALUES(?,?,?,?,?,?,?,?,?,?,?,?...)
AT executemany(),它是異常觸發誤差
錯誤:
Error in loadData (102, "Incorrect syntax near '?'.DB-Lib error message 20018, severity 15:\nGeneral SQL Server error: Check messages from the SQL Server\n"
什麼是「佔位符」? –
這些是(?,?,....)是大約89列..與pyodbc相同的語法 –
對於pymssql,您將需要將佔位符從'?改變爲'%s'。 –