csvからinsertするsql文を可能なだけ動的にしようとしております。
csvフォーマット
- 1行目: tableのカラム名
- 2行目以降: 投入用データ
やろうとしていること
-
sql = 'INSERT INTO tblnm (col1,col2) VALUES (%s,%s)'
-
data = ['value1','value2']
ここまでを確認するために以下のprintを行ったところエラーとなってしまいました。
print( sql % (','.join(data)))
以下エラー
`print(sql % (','.join(data)))
TypeError: not enough arguments for format string`
期待する結果
INSERT INTO tblnm (col1,col2) VALUES (value1,value2) のように文字列が入るだろうと考えておりましたが、期待通りにはゆきませんでした。 おそらくsqlという変数が展開されていないのではと推測をしておりますが、これを可能にする場合はどのようにしたらよいでしょうか。 どなたかご教示いただけたらと存じます。
どのような結果を求めているかも記載すると良いかと思います。
回答1件
あなたの回答
tips
プレビュー