0
csvファイル(ローカルデスクトップ上)からリモートSQLデータベースにデータをアップロードしようとしています。これは私のクエリですPython 3のSQL挿入クエリでエラーが発生しました。「列カウントが行の値の数と一致しません」
dsn = "dsnname";pwd="password"
import pyodbc
csv_data =open(r'C:\Users\folder\Desktop\filename.csv')
def func(dsn):
cnnctn=pyodbc.connect(dsn)
cnnctn.autocommit =True
cur=cnnctn.cursor()
for rows in csv_data:
cur.execute("insert into database.tablename (colname) value(?)", rows)
cur.commit()
cnnctn.commit()
cur.close()
cnnctn.close()
return()
c=func(dsn)
問題は、すべてのデータが指定した1つの列にアップロードされることです。 col名を指定しないと、実行されません。私はデータベースのテーブルに9列あり、このデータを別々の列にアップロードしたいと思います。
ありがとうございます。私の場合は、どのように挿入するか指定することができます。したがって、csvファイルには1200行以上のものがあります。どのように私は、各列のアカウントを自分のSQLクエリを述べることができます – Blue
私はあなたの質問を理解するか分からない。 csvの列に基づいて動的に挿入しますか? – meyer9
はい。だから私はテーブルに9列を挿入し、私のファイルに9があると言うことができます。ファイルからそれらの列を挿入したいと思います。だから私は何を求めているのですか?私はすべての列の名前を書く必要がありますか?また値を取得する方法。 – Blue