次のように executemany を使用できることはわかっています。
sql = "insert into a(c1,c2,c3) values(%s,%s,%s)"
seq_of_parameters = [('a','b','c'),('a','b','c')]
cu.executemany(sql,seq_of_parameters)
なぜこれが機能しないのだろうか:
sql = "insert into a(c1,c2,c3) values(%(c1)s,%(c2)s,%(c3)s)"
seq_of_parameters = [{'c1':'a','c2':'b','c3':'c'},{'c1':'a','c2':'b','c3':'c'}]
cu.executemany(sql,seq_of_parameters)
PEP249 Python データベース API 仕様 v2.0 より
.executemany(操作、seq_of_parameters)
データベース操作 (クエリまたはコマンド) を準備 し、シーケンス seq_of_parameters で見つかったすべてのパラメーターシーケンスまたはマッピングに対して実行します。