У меня возникли проблемы с загрузкой CSV-файла в таблицу на MS SQL Server. Файл CSV имеет 25 столбцов, а заголовок имеет то же имя, что и таблица в SQL, которая также имеет 25 столбцов. Когда я запускаю сценарий, он выдает ошибкуИмпорт CSV-файла в SQL Server с использованием Python
params arg (<class 'list'>) can be only a tuple or a dictionary
Каков наилучший способ импорта этих данных в MS SQL? Обе таблицы CSV и SQL имеют одинаковые имена столбцов.
Вот код:
import csv
import pymssql
conn = pymssql.connect(
server="xx.xxx.xx.90",
port = 2433,
user='SQLAdmin',
password='xxxxxxxx',
database='NasrWeb'
)
cursor = conn.cursor()
customer_data = csv.reader('cleanNVG.csv') #25 columns with same header as SQL
for row in customer_data:
cursor.execute('INSERT INTO zzzOracle_Extract([Customer Name]\
,[Customer #]\
,[Account Name]\
,[Identifying Address Flag]\
,[Address1]\
,[Address2]\
,[Address3]\
,[Address4]\
,[City]\
,[County]\
,[State]\
,[Postal Code]\
,[Country]\
,[Category ]\
,[Class]\
,[Reference]\
,[Party Status]\
,[Address Status]\
,[Site Status]\
,[Ship To or Bill To]\
,[Default Warehouse]\
,[Default Order Type]\
,[Default Shipping Method]\
,[Optifacts Customer Number]\
,[Salesperson])''VALUES(%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,)',row)
conn.commit()
cursor.close()
print("Done")
conn.close()
Это то, что первые строки из файла CSV выглядит
Не могли бы вы отобразить первые строки файла CSV (или первые столбцы первых строк ...), чтобы мы могли видеть, на что это похоже? –
Только что снял скриншот, как выглядят данные. @SergeBallesta – Cesar
Вы должны скопировать текст CSV, не снимать скриншот Excel, который удаляет разделители файла –